uCosminexus DocumentBroker Version 3 クラスライブラリ C++ 解説
![[目次]](figure/content.gif)
![[用語]](figure/gloss.gif)
![[索引]](figure/index.gif)
![[前へ]](figure/front.gif)
既存のオブジェクトを操作するためには,まず,そのオブジェクトに接続する必要があります。オブジェクトに接続するメソッドには,次の2種類があります。
これらのメソッドの主な違いは,処理性能です。SetOIIDメソッドを使用すると,接続時にオブジェクトにロックを設定しない(データベースにアクセスしない)ため,ConnectObjectメソッドを使用する場合に比べて高速な処理が実現できます。
ここでは,それぞれのメソッドの特長について説明します。ロックについての詳細は,「3.14 排他制御」を参照してください。
また,既存のオブジェクトに接続する場合,そのオブジェクトのOIIDを指定します。OIIDがわからない場合は,事前に検索等を実行して,OIIDを取得しておく必要があります。
検索については,「4. オブジェクトの検索」を参照してください。
SetOIIDメソッドは,ロックを設定しないでオブジェクトに接続するメソッドです。ロックを設定する場合に比べて,高速に処理できます。
SetOIIDメソッドをコールしてオブジェクトに接続した場合,それ以降の操作で,必要に応じてロックを設定します。
SetOIIDメソッドを使用したコールシーケンスの例を次に示します。
CdbrDocument ObjDoc; pSession->Begin(); //ObjDocにOIIDを設定する ObjDoc.SetOIID(pSession,pOIID); //プロパティを参照すると同時に,WRITEロックを設定する ObjDoc.GetPropertyValuesAndLock(...,DMA_LOCK_WRITE); //プロパティを更新する ObjDoc.PutPropertyValues(...); ObjDoc.ReleaseObject(); pSession->Commit();
ConnectObjectメソッドは,ロックを設定してオブジェクトに接続するメソッドです。引数に指定した種類のロックがオブジェクトに設定されます。
ConnectObjectメソッドを使用したコールシーケンスの例を次に示します。
CdbrDocument ObjDoc; pSession->Begin(); //データベースにアクセスして,ObjDocにWRITEロックを設定する ObjDoc.ConnectObject(pSession,DMA_LOCK_WRITE,pOIID); //WRITEロックを設定したオブジェクトのプロパティを参照する ObjDoc.GetPropertyValues(...); //プロパティを更新する ObjDoc.PutPropertyValues(...); ObjDoc.ReleaseObject(); pSession->Commit();
All Rights Reserved. Copyright (C) 2006, Hitachi, Ltd.
All Rights Reserved. Copyright (C) 2006, 2013, Hitachi Solutions, Ltd.