例: GMTTime property (NotesDateTime - LotusScript®)

  1. 次のスクリプトは GMTTime プロパティの値を表示します。
    Dim dateTime As New NotesDateTime( "04/16/96 05:36 PM" )
    Messagebox( dateTime.GMTTime )
    • スクリプトが東部標準時に設定されているコンピュータで実行され、サマータイムが設定されている場合、dateTime オブジェクトの TimeZone プロパティの値は 5 となります。したがって、GMTTime プロパティは文字列「04/16/96 09:36:00 PM GMT」を返します。
    • スクリプトがベーリング標準時に設定されているコンピュータで実行された場合、dateTime オブジェクトの TimeZone プロパティの値は 11 となります。GMTTime プロパティは文字列「04/17/96 03:36:00 AM GMT」を返します。
  2. 次のスクリプトは支部報告書を作成します。作成には、異なるタイムゾーンで作業をしているユーザーが作成した文書のコレクションを使用します。各文書の PostedDate アイテムは送信日時と現地のタイムゾーンを示します。Event アイテムは現在報告されているイベントを示します。支部報告書の本文に、タイムゾーンを統一して各文書の PostedDate を表示するため、GMTTime プロパティを使用して各日時をグリニッジ標準時に変換します。
    Sub Initialize
      Dim session As New NotesSession
      Dim db As NotesDatabase
      Dim collection As NotesDocumentCollection
      Dim doc As NotesDocument
      Dim report As NotesDocument
      Dim reportBody As NotesRichTextItem
      Dim item As NotesItem
      Dim dateTime As NotesDateTime
      Set db = session.CurrentDatabase
      Set collection = db.FTSearch("GMTTime",0)
      Set doc = Collection.GetFirstdocument()
      Set report = New NotesDocument( db )
      Set reportBody = New NotesRichTextItem( report, "Body" )
      report.Form = "Branch Office Report"
      While Not(doc Is Nothing)
        Set item = doc.GetFirstItem( "PostedDate" )
        Set dateTime = item.DateTimeValue
        Call reportBody.AppendText( dateTime.GMTTime )
        Call reportBody.AppendText( " " )
        Call reportBody.AppendText( doc.Event( 0 ) )
        Call reportBody.AddNewLine( 1 )
        Set doc = collection.GetNextDocument(doc)
      Wend
      Call report.Save( True, True )
    End Sub

    例えば、コレクションに 3 つの文書があり、それぞれがグリニッジ標準時、太平洋標準時、中部標準時で作成されている場合、報告書の本文は次のようになります。

    08/06/95 06:12:14 PM GMT London office posts results

    08/06/95 06:17:11 PM GMT San Francisco office obtains proposal

    08/06/95 08:50:58 PM GMT Chicago office receives sketches