9.3.4 文書の履歴の取得・削除・更新

文書の履歴を取得,削除,更新する場合のコーディング例を次に示します。

<この項の構成>
(1) 文書の履歴を取得後に削除する
(2) 関連ファイルの過去のバージョンのプロパティを取得する
(3) 文書の履歴を更新する(チェックアウトしてからチェックインする)

(1) 文書の履歴を取得後に削除する

1  //////////////////////////////////////////////////////////////////
2  // decmFactory    : DecmFactoryインスタンス
3  // docOiid        : 操作対象文書のバージョニングOIID
4  // dvOiid         : 操作対象文書のバージョンオブジェクトのOIID
5  //////////////////////////////////////////////////////////////////
6
7  // 文書操作用のインスタンスを取得
8  DecmDoc doc = decmFactory.createDecmDoc();
9
10 // 文書に接続
11 doc.setOiid( docOiid );
12
13 // 履歴取得
14 Vector<DecmDocProp> verPropList = doc.fetchDocHistory( true );
15
16 // 履歴削除
17 doc.deleteDocHistory( dvOiid,
18                       true );

(2) 関連ファイルの過去のバージョンのプロパティを取得する

1  ///////////////////////////////////////////////////////////////////////////////
2  // decmFactory    : DecmFactoryインスタンス
3  // docOiid        : 操作対象文書のバージョニングOIID
4  // dvOiid         : 取得対象となる主ファイルのバージョンオブジェクトのOIID
5  ///////////////////////////////////////////////////////////////////////////////
6
7  // 文書操作用のインスタンスを取得
8  DecmDoc doc = decmFactory.createDecmDoc();
9
10 // 文書に接続
11 doc.setOiid( docOiid );
12
13 // 関連ファイルリストを取得
14 Vector<DecmSubFile> subFileList = doc.fetchSubFile( dvOiid );
15
16 // プロパティを取得
17 DecmDocProp docProp = subFileList.get( 0 ).fetchFileProp( true );

(3) 文書の履歴を更新する(チェックアウトしてからチェックインする)

1  ///////////////////////////////////////////////////////////////////////////////
2  // decmFactory      : DecmFactoryインスタンス
3  // docOiid          : 操作対象文書のバージョニングOIID
4  // dvOiid           : 取得対象となる主ファイルのバージョンオブジェクトのOIID
5  // updateMasterFile : 更新後の主ファイルに登録するローカルパス
6  // updateSubFile1   : 更新後の関連ファイルに登録するローカルパス
7  // updateSubFile2   : 更新後の関連ファイルに登録するローカルパス
8  ///////////////////////////////////////////////////////////////////////////////
9
10 // 文書操作用のインスタンスを取得
11 DecmDoc doc = decmFactory.createDecmDoc();
12
13 // 文書に接続
14 doc.setOiid( docOiid );
15
16 // チェックアウト
17 doc.checkoutDoc( true );
18
19 // 更新するファイルを設定(主ファイル)
20 doc.setFilePath( updateMasterFile );
21
22 // 関連ファイルを取得
23 Vector<DecmSubFile> subFileList = doc.fetchSubFile( dvOiid );
24
25 // 更新するファイルを設定(関連ファイル)
26 subFileList.get( 0 ).setFilePath( updateSubFile1 );
27 subFileList.get( 1 ).setFilePath( updateSubFile2 );
28
29 // 関連ファイルを設定
30 doc.setSubFileList( subFileList );
31
32 // チェックイン
33 doc.checkinDoc( false,
34                 true );