Skip to main content link. Accesskey S
  • Help
  • HCL Logo
  • HCL Notes and Domino Application Development wiki
  • THIS WIKI IS READ-ONLY. Individual names altered for privacy purposes.
  • HCL Forums and Blogs
  • Home
  • Product Documentation
  • Community Articles
  • Learning Center
  • API Documentation
Search
Community Articles > 日本語 - Japanese > XPagesにおける日付/時刻型データの取り扱い
  • Share Show Menu▼
  • Subscribe Show Menu▼

Recent articles by this author

XPagesにおける日付/時刻型データの取り扱い

XPagesで日付時刻型のデータを取り扱う方法及び注意点について記述します。

XPages Extension Library「Accordion」の利用

XPages Extension Library「Accordion」の利用方法について記述する。

XPages Extension Library「Dojo Accordion Container」と「Dojo Accordion Pane」の利用

XPages Extension Library「Dojo Accordion Container」及び「Dojo Accordion Pane」の利用方法について記述する。

XPagesでのタグクラウドコントロールの利用方法

Lotus NotesDomino 8.5.3 Upgrade Pcak 1 では、XPages アプリケーションを円滑に作成するためのコントロールがいくつも追加されました。その中の一つである、タグクラウド(Tag Cloud)コントロールの設定方法について説明します。
Community articleXPagesにおける日付/時刻型データの取り扱い
Added by ~Samuel Bretoogenobu on November 2, 2012 | Version 1
  • Actions Show Menu▼
expanded Abstract
collapsed Abstract
XPagesで日付/時刻型のデータを取り扱う方法及び注意点について記述します。
Tags: XPages, Date-time values
ShowTable of Contents
HideTable of Contents
  • 1 概要
  • 2 値の取得方法
    • 2.1 画面上の日付コントロールの値
    • 2.2 NotesXSPDocumentの値
    • 2.3 NotesDocumentの値
  • 3 データ型
  • 4 データ型の変換
    • 4.1 java.util.Dateからlotus.domino.local.DateTimeへの変換
    • 4.2 lotus.domino.local.DateTimeからjava.util.Dateへの変換
  • 5 データ型の確認

概要

XPagesで文書に格納されているアイテムの値を取得する場合、以下の3つの場面が考えられます。

ここでは、そのアイテムが「日付/時刻」タイプであった場合の取得方法や取り扱い時の注意点について述べます。

1.画面上の日付コントロールの値を取得
2.NotesXSPDocumentの値を取得
3.NotesDocumentの値を取得
 

値の取得方法

画面上の日付コントロールの値

getComponent( "コントロール名" ).getValue();

で取得できます。

コントロール名は、「すべてのプロパティ」で表示される「id」項目の値を指します。

NotesXSPDocumentの値

document1.getItemValueDate( "アイテム名" );

document1.getItemValueDateTime( "アイテム名" );

の2種類の方法で取得できます。

document1はデータソース名を表します。

アイテム名は、文書上のアイテムの名前です(通常は、フォームのフィールド名と同じです)。

NotesDocumentの値

doc.getItemValueDateTimeArray( "アイテム名" );

で取得できます。

docはJavaScriptのDominoクラスにあるNotesDocumentオブジェクトです。

 

データ型

getComponent( "コントロール名" ).getValue();

document1.getItemValueDate( "アイテム名" );

で取得される値は、java.util.Dateクラスというデータ型になります。

 

document1.getItemValueDateTime( "アイテム名" );

で取得される値は、

lotus.domino.local.DateTimeクラスというデータ型になります。これは、JavaScriptのDominoクラスの一つであるNotesDateTimeクラスの事を指します。

 

doc.getItemValueDateTimeArray( "アイテム名" );

で取得される値は、

java.util.Vectorクラスという配列のデータ型になります。

ノーツ文書は複数値を保有することが出来るため、このような形になっていると考えられます。

なお、この配列の各要素は、それぞれNotesDateTimeか、もしくはNotesDateRangeクラスになっています。

NotesDateRangeは日付/時刻を「複数値を許可」にして、時刻だけの設定にした場合に有効になるもので、2つの時刻の範囲(Range)を示しています。

 

このように、java.util.Dateとlotus.domino.local.DateTimeという2種類の結果が存在することが分かります。

これらは型が異なるため、比較や計算などの演算は行えません。

また、@Adjust()や@Year()、@Month()等の@関数の引数はjava.util.Dateクラスだったり、

NotesDatabase.getCreated()やNotesDocument.replaceItemValue()の引数はNotesDateTimeクラスだったりするので、

片方だけ使えれば良いと言うことはありません。

そこで、データ型の変換が必要になります。

 

データ型の変換

java.util.Dateからlotus.domino.local.DateTimeへの変換

session.createDateTime( "java.util.Date型の値" );

でNotesDateTimeクラスのオブジェクトにすることが出来ます。

 

lotus.domino.local.DateTimeからjava.util.Dateへの変換

notesDateTime.toJavaDate();

notesDateTimeはNotesDateTimeクラスのオブジェクトを指します。

これで、java.util.Dateクラスに変換出来ます。

 

データ型の確認

取得した変数のデータ型が分からない場合は、

getClass()というメソッドを使うことで判断出来ます。

これは、どのクラスにも共通して利用できるメソッドなので、便利です。

例えば、

var hiduke = getComponent( "date1" ).getValue();
print( "hidukeのクラスは、" + hiduke.getClass() );

とすれば、Dominoサーバコンソールにdate1コントロールのデータ型が表示されます。

 


  • Actions Show Menu▼


expanded Attachments (0)
collapsed Attachments (0)
Edit the article to add or modify attachments.
expanded Versions (1)
collapsed Versions (1)
Version Comparison     
VersionDateChanged by              Summary of changes
This version (1)Nov 2, 2012, 9:25:04 AM~Samuel Bretoogenobu  
expanded Comments (0)
collapsed Comments (0)
Copy and paste this wiki markup to link to this article from another article in this wiki.
Go ElsewhereStay ConnectedAbout
  • HCL Software
  • HCL Digital Solutions community
  • HCL Software support
  • BlogsDigital Solutions blog
  • Community LinkHCL Software forums and blogs
  • About HCL
  • Privacy
  • Accessibility