当ブログに掲載しているサンプルは、すべて利用者の自己責任とします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。
記事そのもののリンクについてはご自由に行っていただいてよいです。
xxのようなサンプルを作って欲しいとかxxxの作り方を教えて欲しいというお問い合わせには応じていません。
このようなお問い合わせは、株式会社エフまでご一報ください。

2020年2月13日木曜日

InitiallyModifiedについて

皆さん、こんにちは。

今日もヘルプに載っていない機能についての話です。
ですが、あまりにも簡単で、なおかつ、ヒント自体はヘルプに出ているので 、日本語のみの投稿とします。

今回は、NotesDocumentクラスのInitiallyModifiedプロパティです。

まずはいつものようにコードアシスタントを確認してみます。
コードアシスタントに表示される
このようにNotesDocumentクラスのプロパティとして候補に表示されるのがわかります。
さて、ではヘルプを確認してみましょう。
NotesDocumentクラスのプロパティ一覧

見事なまでにないのがわかりますね・・・

しかし、今回はここであきらめずに検索してみました。
ヘルプの検索結果
おや?検索結果が出てきましたね。
JavaScriptクラスのメンバーとして検索されました。
これによると、
『読み取り専用。文書が最初に変更された日付/時刻。』とのことです。

ここで勘の鋭い方はNotesDocumentクラスのLastModifiedプロパティを思い出すのではないでしょうか?
はい、InitiallyModifiedはこのプロパティと対になっているものです。

では、具体的にどういったものかについて説明します。
InitiallyModifiedは文書のプロパティのうち、「更新日(初回)」を取得するものです。
対して、 LastModifiedは文書のプロパティのうち、「更新日(現在のファイル)」を取得するものです。
どのプロパティを取得する?

本当にそうなのかを確認するために、以下のようなサンプルを作成してみました。
Sub Click(Source As Button)
    On Error Goto ErrProc
    
    Dim session As New NotesSession
    Dim db      As     NotesDatabase
    Dim docs    As     NotesDocumentCollection
    Dim doc     As     NotesDocument
    
    Set db   = session.CurrentDatabase
    Set docs = db.UnprocessedDocuments
    Set doc  = docs.GetFirstDocument
    
    Msgbox _
    "InitiallyModified: " & Cstr(doc.InitiallyModified) & Chr$(10) & _
    "LastModified     : " & Cstr(doc.LastModified), _
    0 + 64, "InitiallyModified"
    
    Exit Sub
    
ErrProc:
    Msgbox _
    "エラー行数:" & Cstr(Erl) & Chr$(10) & _
    "エラー番号:" & Cstr(Err) & Chr$(10) & _
    "エラー内容:" & Error, 0 + 16, "InitiallyModifiedとLastModified"
    
    Exit Sub
End Sub


これはビューアクションです。
ビューで選択した最初の文書のプロパティを取得して画面に表示するものです。

結果はこちら。
実行結果

どうでしょう?説明の通りになっていますね。
実はこのInitiallyModifiedは「@Modified」関数で代用できるそうです。なので、使わなくても何とかなるでしょう。ただ、ソースコードに統一性を持たせたいのであれば、こちらを使ったほうがいいかもしれません。

詳しくは、
[Notes/Domino] 設計の更新日時を取得する方法
を読むと良いでしょう。


ちなみに、このプロパティはDomino 8.5から実装されたものになります。
どうりでJavaScriptのヘルプに載っているんですね…




それでは今日はこの辺で…






Notes/Dominoで困ったことがあれば、弊社にお問い合わせください。
HCL Masterの私が承ります!
お問い合わせはこちらから→Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

0 件のコメント: