Lotus Notes/Domino (R) をこよなく愛して。。。。

ようこそ、Notes/Domino ファン & ブロガーのみなさん !


【ご注意】 このブログはビジネスに活用いただくためのものですので、以下の点を守ってご利用願います。


1. 他社あるいは他人への誹謗中傷のコメントはご遠慮ください。

2. コメントはビジネスとして問題のない言葉、表現を使ってください。

3. Webで一般公開されていない、具体的な個人や法人を特定するコメントはご遠慮ください。

4. 個人情報の記載は行わないでください。


上記を守られないコメントは、こちらの判断で削除させていただきますのでご了承願います。


尚、このサイトの掲載内容は私自身の見解であり、メーカーとは全く関係はありません。

また、メーカーのビジネスに利害を及ぼすために記載している訳ではありません。


ここに記載されている内容は、私自身の経験からの記載であり、内容が正確でない場合もあることをご理解の上、ご利用願います。


ご利用に際しては、左側のフレームに記載しております【注】をご一読の上、利用条件を守ってご利用ください。

1 | 2 | 3 | 4 | 5 | 最初次のページへ >>
May 25, 2019

xPages及びJava Applicationの新元号対応

テーマ:News

Dominoの新元号対応のFixは既に出ていますが、Java Application(xPages)の対応Fixは、まだ公開されていません。

 

ところが、New Era Fixの中にこのような回避策がありました。

 

要するに、JVMのcalendars.propertiesファイルを修正し、新元号を追加するというものです。

 

As a manual workaround, open the file <program directory>\jvm\lib\calendars.properties with Text Editor and append the setting of the new Era to the parameter calendar.japanese.eras as follows:

 

calendar.japanese.eras: \
    name=Meiji,abbr=M,since=-3218832000000;  \
    name=Taisho,abbr=T,since=-1812153600000; \
    name=Showa,abbr=S,since=-1357603200000;  \
    name=Heisei,abbr=H,since=600220800000; \
    name=\u4ee4\u548c,abbr=R,since=1556668800000
 
これで、令和表示になるのかは試せてはいませんが、このファイルの修正だけで出来るのであれば、非常にありがたいです。
 
ただ、この定義を見ていると、昭和とかの名前がローマ字表記になっているのが気になります。
実際に、calendars.propertiesを見てみると、ローマ字表記でした。
 
 
May 16, 2019

iNotesのPreview Paneを禁止する ? -2-

テーマ:iNotes (DWA)

<話題の履歴>

 

iNotesのPreview Paneを禁止する ? -1-

 

前回は、iNotesのPreviewが利用されているかどうかを調べる方法を検討しました。

 

今回は、調査用の簡単なCodeを記述してみます。

 

前回の調査から、iNotesViewProfileの以下の値を取得して判断すれば良いことは分かっています。

尚、Previewを使ったことが無い人は、ProfileにFieldが生成されていないことも分っていますので、これを前提としたCodeを書きます。

 

name    "PreviewPaneOptions"
type    Text
class    Text
flags    Summary
length    7
value    "R|1||40"

Sub Initialize
    Dim ss As New NotesSession
    Dim db As NotesDatabase
    Dim prof As NotesDocument
    Dim prevopt As String
    Dim previtem As Variant
    Dim useprev As Boolean
    
    Const srv = "DomSrv9/Lotus"
    Const path = "mail\siwama.nsf"
    
    Set db = ss.Getdatabase(srv, path, False)
    Set prof = db.Getprofiledocument("inotesviewprofile")

    If prof.Hasitem("PreviewPaneOptions") Then
        prevopt = prof.PreviewPaneOptions(0)
        previtem = Split(prevopt,"|")
        If previtem(1) <> "0" Then
            useprev = True
        Else

            useprev = False
        End If
    Else

        prevopt = "None"

        useprev = False
    End If
    MessageBox "Preview Options : " & prevopt & Chr(10) &"Use Preview? : " & useprev
End Sub

 

非常に簡単なCodeでPreviewを利用しているかどうかがCheck出来る訳です。

これをCheck対象のUserに対して実行し、違反者をMailでManagerに送信するようにすることも可能です。

 

さて、Previewの利用状態がCheckできることはこれで分かりました。

では、Previewの利用を禁止してしまうことは出来るのでしょうか?

 

実は、"PreviewPaneOptions"の値を"H|0"に書き換えてしまうことで実現できるのです。

最初のHはHideの略です。

 

では実際に書き換えてみます。以下のようなCodeで簡単に書き換えることができます。

 

Sub Initialize
    Dim ss As New NotesSession
    Dim db As NotesDatabase
    Dim prof As NotesDocument
    Dim prevopt As String
    Dim previtem As Variant
    Dim useprev As Boolean
    Dim ans As Integer
    
    Const srv = "DomSrv9/Lotus"
    Const path = "mail\siwama.nsf"
    
    Set db = ss.Getdatabase(srv, path, False)
    Set prof = db.Getprofiledocument("inotesviewprofile")

    If prof.Hasitem("PreviewPaneOptions") Then
        prevopt = prof.PreviewPaneOptions(0)
        previtem = Split(prevopt,"|")
        If previtem(1) <> "0" Then
            useprev = True
        Else
            useprev = False
        End If
    Else
        prevopt = "None"
        useprev = False
    End If
    MessageBox "Preview Options : " & prevopt & Chr(10) &"Use Preview? : " & useprev
    If useprev = True Then
        ans = MessageBox("Enforce non-preview ?",36,"Change preview options")
        If ans = 6 Then
            prof.PreviewPaneOptions = "H|0"
            Call prof.save(True,False)
        End If
    End If
End Sub

 

これを実行すると以下のようになります。

 

 

表示メニューからPreviewに関するメニューは一切なくなるのです。

"PreviewPaneOptions" FieldはUserがUIから変更できるFieldではありませんので、これで完全にPreviewが禁止できたことになります。

但し、Mailを開いた状態で、次や前の文書への移動を禁止できる訳ではありませんのでご注意ください。

 

 

今回紹介した方法でPreview PaneでMailを見ることは出来なくなり、UserがVirus Mailの危険にさらされることは低減できますが、Unti-Virusという訳ではありません。

Userの使い勝手とSecurityを天秤に掛けて実装を判断してください。

 

<終わり>

 

May 13, 2019

iNotesのPreview Paneを禁止する ? -1-

テーマ:iNotes (DWA)

皆さんもNotesやiNotesのPreview Paneを便利に活用されているのではないかと思います。

 

しかし、近年、Remote Imageを使ったフィッシングメールなど、Virus Mailが蔓延っています。

 

「NotesはRichtextだから安心だ !」 なんて思っておられる方もいらっしゃいますが、MIME優先(Default値)で外部から受け取ったメールなどはNotes Clientで表示される時にWeb Browserと同様の動きをします。

当然、iNotesはBrowser BaseのMailですので、危険性はある訳です。

iNotesではRemote ImageはDefaultで表示しないようになっていますが、警告が出るだけで、Userが意図的に表示することが可能ですし、PreferenceでDefaultを変更することも可能です。

 

 

勿論、Mail PolicyでDefaultを変更できなくすることは可能ですが、Userが表示を許可すれば表示されてしまいます。

 

 

ということで、PreviewでMailを見ているUserは、Virus Mailの影響を受ける可能性は否定できない訳です。

 

会社によってはPreviewを禁止するという通達を出したりして、Userに利用を控えるようにしている場合もありますが、PreviewはUserが勝手に使えてしまうため、完全に禁止することはできません。

 

先ず、PreviewをUserが利用しているかどうか調べる方法はあるのでしょうか?

 

実際にiNotesを使っているUserのMail DBをNotesPeekで覗いてみます。

Profile文書の中に、iNotesViewProfileというProfile文書があり、その中の"PreviewPaneOptions"というFieldに状態を保持しているのです。

 

 

ここには、以下のような値が格納されています。

 

value    "B|1|31|42"
 

このUserはPreviewを下に開いているということになります。

右にPreviewを開くと、以下のように値が変わります。

 

value    "R|1|31|42"

 

右に開けたPreviewの画面サイズを変更すると、以下のように変わります。

 

value    "R|1|31|74"

下に開けたPreviewの画面サイズを変更すると、以下のように変わります。

 

value    "B|1|66|74"

 

Previewを閉じると、以下のように変わります。

 

value    "B|0|45|74"

value    "R|0|45|51"
 

これでもうお分かり頂けたと思いますが、"|"で区切られた値はそれぞれ以下の意味となっています。

 

1番目:R or B (Previewの位置がRightかBottomかを表す)

2番目:0 or 1 (Previewが開かれているかどうかを表す)

3番目:PreviewをBottomに開いた場合の画面の割合(%) Default:45

4番目:PreviewをRightに開いた場合の画面の割合(%) Default:51

 

尚、3番目と4番目はPreviewを閉じるとDefault値に戻すようになっています。

 

これで、Previewを開いているかどうかは2番目の値で判断できることが分かります。

 

ここで注意して頂きたいのは、一度もPreviewを使ったことがないUserです。

以下のようにiNotesViewProfileには、"PreviewPaneOptions" Field自体存在しません。

 

 

また、PreviewをBottomでしか開いたことのない人は、以下のようになっています。

 

value    "B|1|40"

更に、PreviewをRightでしか開いたことのない人は、以下のようになっています。

 

value    "R|1||40"

このFieldの値は、Previewを開いた時のみ生成され、"|"で区切られた値は可変となっているということです。

Previewを使っているかどうかを判断するだけであれば、"|"で値をSplitしてVariantに入れてやり、2番目の値を取り出せば良いと言うことです。

 

記事がながくなってしまいますので、今回はこの辺にしておきます。

 

今回は、iNotesのPreviewが利用されているかどうかを調べる方法を検討しました。

次回は、調査用の簡単なCodeを記述してみます。

 

<続く>

 

1 | 2 | 3 | 4 | 5 | 最初次のページへ >>

Ameba人気のブログ