ドミノ オブジェクト

Java でドミノにアクセスするためには、ドミノオブジェクトの階層をだいたい理解しておく必要があります。

といってもそんなに難しいことではなく、まずセッションがあって、データベースを開いて、さらにビューを選んで、何か文書を開けるとフィールドがあって、という順番がそのまま階層です。

サーブレットやスタンドアローンの Java プログラムはまず NotesFactory にお願いして session オブジェクトを作成する必要があります。

エージェントの場合はもうセッションが出来た状態で起動されますから、この過程は要りません。「新規エージェント」で「Java」を選択すると、もうスケルトンのコードが入った状態になりますが、その中を見てみると

Session session = getSession();

という文から始まっています。

getSession() で現在のセッションを取得して、次に

AgentContext agentContext = session.getAgentContext();

でその取得したセッションから、現在のエージェントの実行環境を得ています。この後は実際のコードを書いていけばいいわけです。

こんな風にまずはセッションを取得し、後はそのセッションオブジェクトをもとにいろいろなノーツの設計要素にアクセスしていく、という段取りになります。

以上のようなことはこちらにも書いてありますので、参考にしてください。

では、エージェントを例にとって簡単にドミノオブジェクトへのアクセスのしかたを見ていきましょう。


エージェントを起動したデータベースへのアクセス

上の説明の通り、現在の実行環境を取得していますので、その AgentContext のオブジェクト経由で getCurrentDatabase() メソッドを発行することによってそのエージェントが現在アクセスしているデータベースを取得できます。

Database currentdb = agentContext.getCurrentDatabase();

別のデータベースへのアクセスのしかた

ワークフローなどのアプリケーションで別のデータベースを処理したいケースもあるでしょう。そういった場合には取得したセッションオブジェクトに対して getDatabase() メソッドが使用できます。

また、同じディレクトリのものであれば、以下のようにしてパス情報を切り出して、データベース名と合わせてアクセスする、というようなコーディングが使えます。

String server = session.getServerName();
Database currentdb = agentContext.getCurrentDatabase();
String dbpath = currentdb.getFilePath().substring(0, currentdb.getFilePath().length() - currentdb.getFileName().length());
Database db = session.getDatabase(server, dbpath + "DatabaseName");

ビューへのアクセスのしかた

getDatabase() でも getCurrentDatabase() でも、取得されるのは データベース (Database) オブジェクトです。

そのデータベースオブジェクトから、ビューを取得することができます。

View view = db.getView("ViewName");
Document doc = vew.getFirstDocument();
while(doc != null) {
//do something like retrievedData = doc.getItemValue("Filed1");
doc = view.getNextDocument(doc);
}

新しい文書の作成

さらにデータベースオブジェクトに対して、新しい文書を作成することができます。

フォームは以下のようにアイテムのひとつの値を変更する形で指定します。

Document newdoc = db.createDocument();
newdoc.appendItemValue("Form", "Form1");
newdoc.appendItemValue("Field1", "Value1");
newdoc.appendItemValue("Field2", "Value2");
newdoc.save();

[Top Pageに戻る]

[PR] | ハウスクリーニング葬儀 東京韓国食材転職サイトSEOアクセス解析ハウスメーカーレンタルオフィスSEO対策消費者金融不動産担保ローン時計車 買取ハワイ挙式アスクル転職生命保険テンプレート沖縄旅行動画免許合宿二輪引越し消費者金融税理士ゴルフ会員権留学レーシックマッサージFX投資信託くりっく365アフィリエイト育毛剤FXホームページ制作デイトレードFXホノルルマラソンベスト ハワイ ホテル レーツバリ島ハワイウエディングHawaii hotelsHawaii Activitiesbhhr
【運営会社「パラダイムシフト」サービス】 ハワイ現地オプショナルツアーリラックマ.ビジネスクラス ハワイ) - ビジネスクラス航空券 - 格安航空券(1) - 格安航空券(2) - 海外ホテル - 韓国旅行
無料ホームページ作成 - レンタルサーバー - 携帯ホームページ - ブログ - ホテル 予約 - タイムシェア - ヴィラ - ハワイ コンドミニアム - バリ島 ホテル - ハワイ 不動産 - プーケット ホテル
[PR] カードローンの事を調べるならこちらから!まずは比較をして賢く選択