uCosminexus 電子フォームワークフロー 解説
12.1.3 完了案件削除ユティリティを使用するための環境設定
(1) 環境変数の確認
完了案件削除ユティリティを実行する場合,次に示す環境変数に正しい値が設定されていることを確認してください。
- COSMINEXUS_HOME
COSMINEXUS_HOME環境変数に,Cosminexusのインストールディレクトリが正しく設定されていることを確認してください。
COSMINEXUS_HOME=<Cosminexusインストールディレクトリ>
|
- CSCIW_HOME
CSCIW_HOME環境変数に,CSCIWのインストールディレクトリが正しく設定されていることを確認してください。
CSCIW_HOME=<CSCIWインストールディレクトリ>
|
- BLC2_HOME
BLC2_HOME環境変数に,BLCのインストールディレクトリが正しく設定されていることを確認してください。
BLC2_HOME=<BLC2のインストールディレクトリ>
|
(2) ユティリティ設定ファイルの編集
完了案件削除ユティリティで使用する完了案件削除ユティリティ設定ファイルを編集してください。編集する内容については,「付録E.4(1) 完了案件削除ユティリティ設定ファイル」を参照してください。
BLCDelPI_conf.bat.samファイルを,BLCDelPI_conf.batというファイル名でコピーし,BLCDelPI_conf.batファイルを使用する環境に合わせて編集してください。BLCDelPI_conf.bat.samファイルは,アプリケーションサーバの次のディレクトリに格納されています。
- Windows版の場合
<BLC2のインストールディレクトリ>\conf
(3) プロパティファイルの編集
完了案件削除ユティリティで使用する完了案件削除BLCプロパティファイルを編集してください。編集する内容については,「付録E.4(2) 完了案件削除BLCプロパティファイル」を参照してください。
DELPI.BLCproperties.samファイルを,DELPI.BLCpropertiesというファイル名でコピーし,DELPI.BLCpropertiesファイルを使用する環境に合わせて編集してください。DELPI.BLCproperties.samファイルは,アプリケーションサーバの次のディレクトリに格納されています。
- Windows版の場合
<BLC2のインストールディレクトリ>\conf
(4) 作業用ディレクトリの作成
作業用ディレクトリを新規作成してください。
作成したディレクトリをDELPI.BLCpropertiesファイルのWorkPathパラメタにフルパス名で指定してください。
BLCインストールディレクトリ下に,「tmp」という作業用ディレクトリを作成する場合の例を次に示します。
- Windows版の場合
<BLC2のインストールディレクトリ>\tmp
なお,作業用ディレクトリには,完了案件削除ユティリティが使用する,ロックファイルおよびワークファイルが作成されます。
(5) 保管用データベースファイル領域の作成
業務完了案件を保管する場合,保管用テーブルを作成するためのデータベースファイル領域を確保してください。保管用テーブルについては,「付録D.5 完了案件の保管用データベース」を参照してください。
(a) データベースの容量見積もり
データベースの容量見積もりの基となる各テーブルのサイズおよびインデックスのサイズ(単位=バイト)を次に示します。
- BLC_BK_INBOX_Tテーブル容量=3364×a,インデックス容量=646×a
- BLC_BK_SENTLOG_Tテーブル容量=1502×b×a,インデックス容量=308×b×a
- BLC_BK_FORM_DATA_Tテーブル容量=4,114×c×a,インデックス容量=200×c×a
- BLC_BK_FILE_Tテーブル容量=(3,570+d)×e,インデックス容量=166×e
- BLC_BK_HISTORY_Tテーブル容量=356×f×a,インデックス容量=166×f×a
- (凡例)
- a:削除案件の総数
- b:ビジネスプロセス一つ当たりの作業者数(申請者の確認作業など,同一ユーザIDで複数の作業が明らかな場合は,まとめて一つの作業とします)。
- c:帳票一つ当たりのレコード数
↑システムデータ/3,800↑+↑案件履歴データ/3,800↑+Σ(帳票モジュール数){↑帳票データ/3,800↑}
|
- (上記計算式は,運用中の帳票のデータに依存しているため,「3+帳票モジュール数」を目安に計算してください)。
- d:BLOB型のデータ長
- e:添付ファイル数(添付ファイル機能を使用する場合に必要です)。
- f:申請ID一つ当たりの履歴数
なお,テーブル内のカラム詳細については,「付録D.5 完了案件の保管用データベース」を参照してください。
また,データベースの容量見積もりについては,お使いのデータベースのマニュアルを参照してください。
(b) 容量見積もりの例
次に示す条件で容量を見積もった場合,テーブル容量=10,173,720,000(バイト),インデックス容量=483,912,000(バイト)となります。
・サンプルビジネスプロセス定義,サンプル帳票(販売契約稟議)を使用
・完了案件削除ユティリティの実行頻度:1回/月
・1回の実行で削除される業務完了案件数:1,000件
・保存用テーブルに保存する期間:10年間
(a:120,000,b:5,c:5,d:500KB,e:12,000,f:5)
|
- 業務データベースを保存する場合は,業務データベースの保存用テーブルのディスク占有量を求めて,データベースファイル領域に追加する必要があります。
- 保存用データベースファイル領域は,業務で使用するデータベースファイル領域とは別のデータベースファイル領域に確保することを推奨します。ただし,BLCデータベースと同じデータベースに作成してください。
(6) 保管用テーブルの作成
業務完了案件を保管する場合,データベースに保管用テーブルを作成してください。保管用テーブルについては,「付録D.5 完了案件の保管用データベース」を参照してください。
業務データベースを保管する場合は,各テーブル作成SQLを参考に,業務データベースの保管用テーブルを作成してください。
保管用テーブルの作成手順を次に示します。
作成手順
- サンプルファイルを編集します。
サンプルファイルに含まれている各ファイルを,使用する環境に合わせて編集してください。保管用テーブルは,「(5) 保管用データベースファイル領域の作成」で作成したデータベースファイル領域に割り当ててください。保管用データベースファイル領域は,業務で使用するデータベースファイル領域とは別のデータベースファイル領域に確保することを推奨します。ただし,BLCデータベースと同じデータベースに作成してください。
- バッチファイルを実行します。
サンプルファイルに含まれている,バッチファイルを実行して,保管用テーブルを作成してください。
(a) サンプルファイルの説明
BLCでは,保管用テーブルを作成するサンプルファイルを提供しています。サンプルファイルは,アプリケーションサーバの次のディレクトリに格納されています。
- Windows版の場合
<BLC2のインストールディレクトリ>\blc\setup\sql\<データベース種別>
サンプルファイルの一覧(Windows版の場合)を次に示します。
表12-2 サンプルファイル一覧(Windows版の場合)
ファイル名 |
内容 |
備考 |
createBackUp.bat |
バッチファイル |
使用する環境に合わせて編集してください。 |
BLCBKTable.txt |
保管用テーブル作成SQL(添付ファイル以外) |
表領域を修正してください。 |
BLCBKFile.txt |
添付ファイル保管用テーブル作成SQL※ |
- 注※
- 添付ファイル機能を使用する場合は必要です。
(b) サンプルファイルの実行
サンプルファイルを,テキストエディタ(メモ帳,viなど)で環境に合わせて編集し,バッチファイルを実行してください。
テーブル作成SQLの編集個所(HiRDBの場合)を次に示します。下線部分を環境に合わせて編集してください。
図12-3 テーブル作成SQLの編集個所(HiRDBの場合)
テーブル作成SQLの編集個所(Oracleの場合)を次に示します。下線部分を環境に合わせて編集してください。
図12-4 テーブル作成SQLの編集個所(Oracleの場合)
テーブル作成SQLの編集個所(SQL Serverの場合)を次に示します。下線部分を環境に合わせて編集してください。
図12-5 テーブル作成SQLの編集個所(SQL Serverの場合)
バッチファイルの編集個所(Windows版の場合)を次に示します。下線部分を環境に合わせて編集してください。
図12-6 バッチファイルの編集個所(Windows版の場合)
(7) プロシージャの登録
業務データベースを保管または削除する場合,プロシージャを作成し,データベースに登録してください。プロシージャの詳細については,各データベースのマニュアルを参照してください。
(a) プロシージャの仕様
プロシージャの仕様は次のとおりです。
- 入力パラメタで案件名を,出力パラメタで完了コードを指定します。完了コードの意味は次のとおりです。
表12-3 完了コード一覧
完了コード |
意味 |
0 |
正常時 |
-1 |
異常時 |
1 |
キー重複時※ |
2 |
該当データなし |
- 注※
- キー重複は業務データベース保管用プロシージャだけです。
- 業務データベース保管用プロシージャは,業務データベースを保管するとき,保管用テーブルにすでに同じ案件が保管されていた場合,完了コードの1を返すように作成してください。
(b) プロシージャサンプルの説明
BLCでは,プロシージャサンプルを提供しています。プロシージャサンプルは,アプリケーションサーバの次のディレクトリに格納されています。
- Windows版の場合
<BLC2のインストールディレクトリ>\blc\setup\sql\<データベース種別>
プロシージャサンプルの一覧を次に示します。
表12-4 プロシージャサンプルの一覧
ファイル名 |
内容 |
プロシージャ名 |
BLCDelPISaveUDB.txt |
業務データベース保管用プロシージャのサンプル |
SaveUDB※ |
BLCDelPIDeleteUDB.txt |
業務データベース削除用プロシージャのサンプル |
DeleteUDB※ |
- 注※
- プロシージャ名は,使用する環境に合わせて変更してください。変更したプロシージャ名は,プロパティファイルに設定する必要があります。詳細は,「付録E.4 完了案件削除ユティリティのプロパティファイル」を参照してください。
プロシージャサンプルは,使用する環境に合わせて変更してください。なお,プロシージャサンプルは,次のことを想定しています。
- 業務データベースにテーブルを想定しています。
想定しているテーブル(HiRDBの場合)を次に示します。
図12-7 想定している業務データベースのテーブル(HiRDBの場合)
想定しているテーブル(Oracleの場合)を次に示します。
図12-8 想定している業務データベースのテーブル(Oracleの場合)
想定しているテーブル(SQL Serverの場合)を次に示します。
図12-9 想定している業務データベースのテーブル(SQL Serverの場合)
- 業務データベースの保管用テーブルは,テーブル名を「USER_BK_T」として,テーブルフォーマットは業務データベースと同一のものを想定しています。
●業務データベース保管用プロシージャ
業務データベース保管用プロシージャに,業務データベースから保管用テーブルへ案件を保管する処理を記述してください。作成した業務データベース保管用プロシージャは,データベースによって次のSQLを使用して登録してください。
- HiRDBの場合
HiRDB SQL Executer
- Oracleの場合
SQL*Plus
- SQL Serverの場合
SQL Server Management Studioまたはsqlcmd
業務データベース保管用プロシージャのサンプル(HiRDBの場合)を次に示します。
図12-10 業務データベース保管用プロシージャのサンプル(HiRDBの場合)
図の説明
- プロシージャ名はSaveUDBです。SQLパラメタは,次のとおりです。
- incdpinameは入力パラメタで,案件名を入力します。
- outstatusは出力パラメタで,完了コードを出力します。
- データ保証レベルは2です。変更する場合は,システムの運用を考慮して行ってください。
- キー重複が発生した場合,SQLパラメタのoutstatusに1を設定してプロシージャを終了します。
- SQLERRORが発生した場合,SQLパラメタのoutstatusに-1を設定してプロシージャを終了します。
- NOT FOUNDが発生した場合,SQLパラメタのoutstatusに2を設定してプロシージャを終了します。
業務データベース保管用プロシージャのサンプル(Oracleの場合)を次に示します。
図12-11 業務データベース保管用プロシージャのサンプル(Oracleの場合)
図の説明
- プロシージャ名はSaveUDBです。SQLパラメタは,次のとおりです。
- incdpinameは入力パラメタで,案件名を入力します。
- outstatusは出力パラメタで,完了コードを出力します。
- select文で該当するデータがない(SQL%NOTFOUND)場合,SQLパラメタのoutstatusに2を設定してプロシージャを終了します。
- insert文で挿入された件数(SQL%ROWCOUNT)が0の場合,SQLパラメタのoutstatusに-1を設定してプロシージャを終了します。
- 例外処理です。エラーが発生したときに実行されます。
キーが重複した場合(dup_val_on_index),SQLパラメタのoutstatusに1を設定してプロシージャを終了します。
キー重複以外の例外が発生した場合(others),SQLパラメタのoutstatusに-1を設定してプロシージャを終了します。
業務データベース保管用プロシージャのサンプル(SQL Serverの場合)を次に示します。
図12-12 業務データベース保管用プロシージャのサンプル(SQL Serverの場合)
図の説明
- プロシージャ名はSaveUDBです。SQLパラメタは,次のとおりです。
- @incdpinameは入力パラメタで,案件名を入力します。
- @outstatusは出力パラメタで,完了コードを出力します。
- insert文で挿入された件数(@@ROWCOUNT)が0の場合,SQLパラメタの@outstatusに2を設定してプロシージャを終了します。
- 例外処理です。エラーが発生したときに実行されます。
キーが重複した場合(ERROR_NUMBER() = 2627),SQLパラメタのoutstatusに1を設定してプロシージャを終了します。
キー重複以外の例外が発生した場合(ELSE),SQLパラメタの@outstatusに-1を設定してプロシージャを終了します。
●業務データベース削除用プロシージャ
業務データベース削除用プロシージャに,業務データベースから案件を削除する処理を記述してください。作成した業務データベース削除用プロシージャは,データベースによって次のSQLを使用して登録してください。
- HiRDBの場合
HiRDB SQL Executer
- Oracleの場合
SQL*Plus
- SQL Serverの場合
SQL Server Management Studioまたはsqlcmd
業務データベース削除用プロシージャのサンプル(HiRDBの場合)を次に示します。
図12-13 業務データベース削除用プロシージャのサンプル(HiRDBの場合)
図の説明
- プロシージャ名はDeleteUDBです。SQLパラメタは,次のとおりです。
- incdpinameは入力パラメタで,案件名を入力します。
- outstatusは出力パラメタで,完了コードを出力します。
- データ保証レベルは2としています。変更する場合は,システムの運用を考慮して行ってください。
- SQLERRORが発生した場合,SQLパラメタのoutstatusに-1を設定してプロシージャを終了します。
- NOT FOUNDが発生した場合,SQLパラメタのoutstatusに2を設定してプロシージャを終了します。
業務データベース削除用プロシージャのサンプル(Oracleの場合)を次に示します。
図12-14 業務データベース削除用プロシージャのサンプル(Oracleの場合)
図の説明
- プロシージャ名はDeleteUDBです。SQLパラメタは,次のとおりです。
- incdpinameは入力パラメタで,案件名を入力します。
- outstatusは出力パラメタで,完了コードを出力します。
- delete文で該当するデータがない(SQL%NOTFOUND)場合,SQLパラメタのoutstatusに2を設定してプロシージャを終了します。
- delete文で削除された件数(SQL%ROWCOUNT)が0の場合,SQLパラメタのoutstatusに-1を設定してプロシージャを終了します。
- 例外処理です。エラーが発生したときに実行されます。
例外が発生した場合,SQLパラメタのoutstatusに-1を設定してプロシージャを終了します。
業務データベース削除用プロシージャのサンプル(SQL Serverの場合)を次に示します。
図12-15 業務データベース削除用プロシージャのサンプル(SQL Serverの場合)
図の説明
- プロシージャ名はDeleteUDBです。SQLパラメタは,次のとおりです。
- @incdpinameは入力パラメタで,案件名を入力します。
- @outstatusは出力パラメタで,完了コードを出力します。
- delete文で削除された件数(@@ROWCOUNT)が0の場合,SQLパラメタの@outstatusに2を設定してプロシージャを終了します。
- 例外処理です。エラーが発生したときに実行されます。
例外が発生した場合,SQLパラメタの@outstatusに-1を設定してプロシージャを終了します。
All Rights Reserved. Copyright (C) 2010, 2014, Hitachi, Ltd.