付録L.2 AP関数の使用例

<この項の構成>
(1) 案件/文書の登録処理
(2) 案件の自動配布時の案件情報取得処理
(3) 案件の手動配布時の案件情報取得処理
(4) 案件の回覧処理
(5) 案件の回覧処理(発行するAPI関数を少なくする方法)
(6) 案件の回覧処理(必要な情報だけを取得する方法)
(7) 案件の相談処理
(8) 案件の引き戻し処理
(9) 案件の差し戻し処理

(1) 案件/文書の登録処理

ビジネスプロセスへの案件の投入,及び案件への文書の追加処理ができます。

案件,及び文書の登録処理をするときのAPI発行手順を次に示します。

ワークフローシステムの利用開始HwfStartUpWorkflow
又は
HwfStartUpWorkflowSV

ビジネスプロセス情報の取得HwfGetBusinessProcess

投入できる案件情報の取得HwfGetCaseFormSelectEx

案件の作成,投入HwfPutCase
又は
HwfPutCaseEx

ワークフローシステムの利用終了HwfCleanUpWorkflow
ワークフローシステムの利用開始
ワークフローシステムの利用を開始するには,HwfStartUpWorkflow又はHwfStartUpWorkflowSVを発行します。
ビジネスプロセス情報の取得
ワークフローシステムの利用を開始したユーザは,案件をどのビジネスプロセスに投入するかを選択する必要があります。投入できるビジネスプロセス情報を取得するには,HwfGetBusinessProcessを発行します。取得したビジネスプロセス情報の中から対象とするビジネスプロセスを選択します。選択したビジネスプロセス情報は,投入できる案件情報の取得処理の中で必要となりますので業務アプリケーションは,この情報を保持する必要があります。ただし,ユーザがビジネスプロセスを意識しないで投入処理をする場合,このAPI関数を発行する必要はありません。
投入できる案件情報の取得
ワークフローシステムの利用を開始したユーザは,どの案件を投入するかを選択する必要があります。投入できる案件情報を取得するには,ビジネスプロセス情報を基にHwfGetCaseFormSelectExを発行します。取得した案件情報の中から対象となる案件を選択します。この案件情報を基に案件の投入,及び文書の追加ができます。
案件の作成,投入
ワークフローシステムで回覧(フロー)する案件に,文書やメモを添付し,ビジネスプロセスに投入するにはHwfPutCase,又はHwfPutCaseExを発行します。
投入された案件は,Groupmax Workflow管理サーバによって次のノードに遷移されます。
ワークフローシステムの利用終了
ワークフローシステムの利用を終了するには,HwfCleanUpWorkflowを発行します。

(2) 案件の自動配布時の案件情報取得処理

ビジュアル定義(Groupmax Workflow Definer)で定義した各ノードの案件配布を自動にした場合の案件情報を取得できます。

案件の自動配布時に案件情報を取得するときのAPI発行手順を次に示します。

ワークフローシステムの利用開始HwfStartUpWorkflow
又は
HwfStartUpWorkflowSV

特定のビジネスプロセスの案件を取得HwfGetBusinessProcess

特定のロールの案件を取得HwfGetRoleAnd

案件情報の取得HwfGetCaseSelectData

ワークフローシステムの利用終了HwfCleanUpWorkflow
特定のビジネスプロセスの案件を取得
ワークフローシステムの利用を開始したユーザが属する特定のビジネスプロセスを指定して案件情報を取得するには,HwfGetBusinessProcessを発行します。
ただし,案件情報の取得にビジネスプロセスを意識しない場合は,このAPI関数を発行する必要はありません。
特定のロールの案件を取得
ワークフローシステムの利用を開始したユーザが属する特定のロールを指定して案件情報を取得するには,HwfGetRoleAndを発行します。
ただし,案件情報の取得にロールを意識しない場合は,このAPI関数を発行する必要はありません。
案件情報の取得
ワークフローシステムの利用を開始したユーザが処理できるユーザトレー内の案件を取得するには,HwfGetCaseSelectDataを発行します。これによって,ビジネスプロセス情報とロール情報を基に選択条件に合うユーザトレー内の案件情報を取得できます。
また,ビジネスプロセス情報,及びロール情報以外に,案件情報に対して選択条件を指定できます。

(3) 案件の手動配布時の案件情報取得処理

ビジュアル定義(Groupmax Workflow Definer)で定義した各ノードの案件配布を手動にした場合の案件情報を取得できます。

案件の手動配布時に案件情報を取得するときのAPI発行手順を次に示します。

ワークフローシステムの利用開始HwfStartUpWorkflow
又は
HwfStartUpWorkflowSV

特定のビジネスプロセスの案件を取得HwfGetBusinessProcess

特定のロールの案件を取得HwfGetRoleAnd

ロールトレー内案件情報の取得HwfGetCaseSelectData

ロールトレーからユーザトレーへの案件取り出しHwfGetCaseFromRoleEx

ユーザトレーからロールトレーへの案件返却HwfPutCaseFromUser

ワークフローシステムの利用終了HwfCleanUpWorkflow
ロールトレー内案件情報の取得
手動配布された案件は,ロールトレー内に配布されるのでロールトレー内の案件情報を取得する必要があります。ロールトレー内に配布された案件情報を取得するには,HwfGetCaseSelectDataを発行します。取得した案件情報の中から対象とする案件を選択します。
ロールトレーからユーザトレーへの案件取り出し
ロールトレー内の案件に対して処理をする場合,ユーザトレーに取り出す必要があります。ロールトレーからユーザトレーに案件を取り出すには,HwfGetCaseFromRoleExを発行します。
ユーザトレーからロールトレーへの案件返却
ユーザトレー内の案件に対して案件を元のロールトレーに返却するには,HwfPutCaseFromUserを発行します。ただし,案件を処理するノードが自動配布の場合には,案件をロールトレーに返却できません。
また,取り出した案件を次ノードへ回覧する場合は,ロールトレーへ案件を返却する必要はありません。

(4) 案件の回覧処理

ビジュアル定義(Groupmax Workflow Definer)で定義したビジネスプロセスで各ノードから次ノードへ案件を回覧できます。次に示す二通りの方法で案件を回覧できます。

(5) 案件の回覧処理(発行するAPI関数を少なくする方法)

API関数の発行回数を抑えた案件の回覧処理の例を次に示します。

ワークフローシステムの利用開始HwfStartUpWorkflow
又は
HwfStartUpWorkflowSV

案件情報の取得

案件の処理開始指示HwfPrefixCase

作業用ファイルの取得HwfDownLoadFileEx

ユーザ属性の取得HwfGetAttributeValueByAttributeName,又はHwfGetAttributeValueByUserDefName

案件の回覧処理HwfSuffixCase

ワークフローシステムの利用終了HwfCleanUpWorkflow
案件情報の取得
案件情報の取得は,案件の自動配布時の案件情報取得処理,及び案件の手動配布時の案件情報取得処理を参照してください。
案件の処理開始指示
案件に対して処理を開始するには,HwfPrefixCaseを発行します。また,HwfPrefixCaseは,次に示す情報も同時に取得できます。
  • ユーザ処理リスト
  • 文書・メモファイルの一覧や実体
作業用ファイルの取得
ユーザ処理リストに「AP起動」がある場合,関連するファイルを取得するには,HwfDownLloadFileExを発行します。
ユーザ属性の取得
案件に対するユーザ処理が完了した後,ユーザ属性を取得したい場合は,HwfGetAttributeValueByAttributeName,又はHwfGetAttributeValueByUserDefNameを発行します。
案件の回覧処理
案件を次のノードに回覧するには,HwfSuffixCaseを発行します。HwfSuffixCaseは次に示す処理も同時にできます。
  • ユーザ属性の設定
  • 添付文書,及びメモの更新

(6) 案件の回覧処理(必要な情報だけを取得する方法)

必要な情報だけを取得して案件を回覧する例を次に示します。なお,必要な情報だけを取得すると,不要な情報の取得にかかる時間を削減できます。

ワークフローシステムの利用開始HwfStartUpWorkflow
又はHwfStartUpWorkflowSV

案件情報の取得

案件の処理開始指示HwfPrefixCase

ユーザ処理リストの取得HwfGetOperation

案件処理用ファイルの取得HwfDownLoadFileEx

文書・メモファイルの一覧やファイルの取得HwfGetCaseDocumentListHwfGetCaseDocument

ユーザ属性の取得HwfGetAttributeValueByAttributeName
又はHwfGetAttributeValueByUserDefName

ユーザ属性の設定HwfSetCase,又はHwfSetCaseByUserDefName

案件の添付文書・メモの更新HwfUpdateCaseDocument

案件の回覧処理HwfSuffixCase

ワークフローシステムの利用終了HwfCleanUpWorkflow
案件の処理開始指示
案件に対して処理を開始するには,HwfPrefixCaseを発行します。
ユーザ処理リストの取得
案件のユーザ処理リストをHwfPrefixCaseで取得しなかった場合,HwfGetOperationを発行します。
HwfPrefixCaseでユーザ処理リストを取得している場合は,HwfGetOperationを発行する必要はありません。
案件処理用ファイルの取得
案件処理用ファイルを取得するには,HwfDownLoadFileExを発行します。
文書・メモファイルの一覧やファイルの取得
案件の文書・メモファイルの一覧やファイルを取得するには,HwfGetCaseDocumentList,及びHwfGetCaseDocumentを発行します。
HwfPrefixCaseで文書・メモファイルの一覧やファイルを取得している場合は,HwfGetCaseDocumentList,及びHwfGetCaseDocumentを発行する必要はありません。
ユーザ属性の取得
案件に対するユーザ処理が完了した後,ユーザ属性を取得したい場合は,HwfGetAttributeValueByAttributeName,又はHwfGetAttributeValueByUserDefNameを発行します。
なお,HwfGetAttributeValueByAttributeNameはユーザ属性の属性名称で,HwfGetAttributeValueByUserDefNameはGroupmax Workflow Definerで定義したユーザ定義名称でユーザ属性値を取得できます。
ユーザ属性の設定
分岐ノードでの分岐条件を設定するには,案件にユーザ属性を設定する必要があります。案件にユーザ属性を設定するには,HwfSetCase,又はHwfSetCaseByUserDefNameを発行します。
なお,HwfSetCaseはユーザ属性の属性名称で,HwfSetCaseByUserDefNameは,Groupmax Workflow Definerで定義したユーザ定義名称でユーザ属性を設定できます。
HwfSuffixCaseでユーザ属性を設定する場合は,HwfSetCase,又はHwfSetCaseByUserDefNameを発行する必要はありません。
案件の添付文書・メモの更新
案件に添付されている文書やメモを更新するには,HwfUpdateCaseDocumentを発行します。
HwfSuffixCaseで文書やメモを更新する場合は,HwfUpdateCaseDocumentを発行する必要はありません。
案件の回覧処理
案件を次のノードに回覧するには,HwfSuffixCaseを発行します。

(7) 案件の相談処理

案件を処理する上で他ユーザに対して相談が必要な場合は,案件の相談処理ができます。他ユーザへの相談内容は,案件に添付したメモを発行します。

案件の相談処理の例を次に示します。

ワークフローシステムの利用開始HwfStartUpWorkflow
又はHwfStartUpWorkflowSV

案件情報の取得

案件へのメモ添付処理HwfPrefixCase

案件の相談処理HwfRoundCaseEx

ワークフローシステムの利用終了HwfCleanUpWorkflow
案件へのメモ添付処理
案件を他ユーザに相談する場合,相談者が相談内容を把握するためにメモを添付します。メモを添付するには,HwfPrefixCaseを発行します。
メモを添付しない場合は,HwfPrefixCaseを発行を発行する必要はありません。
案件の相談処理
相談者に対して案件を相談するには,HwfRoundCaseExを発行します。

(8) 案件の引き戻し処理

案件を次ノードに回覧した後に再度案件に対して処理が必要となった場合,回覧した案件を引き戻せます。回覧した案件がほかのユーザによって処理中の場合は,引き戻せません。また,待合,分割,同報,回収,複写,及び統合ノードにわたる処理ノード間では引き戻せません。

案件の引き戻し処理を次に示します。

ワークフローシステムの利用開始HwfStartUpWorkflow
又はHwfStartUpWorkflowSV

処理済み案件情報の取得HwfGetUserHistoryEx

案件の引き戻し処理HwfTakeBackCaseEx,又はHwfTakeBackCaseDirect

ワークフローシステムの利用終了HwfCleanUpWorkflow
処理済み案件情報の取得
処理した案件情報をユーザヒストリ情報から選択するには,HwfGetUserHistoryExを発行します。取得したヒストリ情報の”案件の投入”,及び”案件の遷移要求”の中から引き戻したいヒストリ情報を選択します。
HwfTakeBackCaseDirectで案件の引き戻しを行う場合は,HwfGetUserHistoryExを発行する必要はありません。
案件の引き戻し処理
処理した案件のヒストリ情報を基に案件を引き戻すには,HwfTakeBackCaseExを発行します。処理した案件の情報を,ユーザが独自のデータベースなどを使用して保存しておき,その情報を基に案件を引き戻す場合は,HwfTakeBackCaseDirectを発行します。複数の案件を引き戻す場合,API関数を繰り返します。

(9) 案件の差し戻し処理

回覧された案件に対して再度処理が必要な場合,その案件を差し戻すことができます。案件を差し戻すとき,ビジネスプロセスの定義で案件の状態が変更(待合,及び分割)されたものについては,差し戻せません。また,待合,分割,同報,回収,複写,及び統合ノードにわたる処理ノード間では差し戻せません。

案件の差し戻し処理を次に示します。

ワークフローシステムの利用開始HwfStartUpWorkflow
又はHwfStartUpWorkflowSV

案件情報の取得

差し戻し候補者の選択HwfGetBackUserHandleList

案件の差し戻し要求処理HwfSendBackCaseEx

ワークフローシステムの利用終了HwfCleanUpWorkflow
差し戻し候補者の選択
案件を差し戻すとき,以前に処理した差し戻し対象ユーザ情報を取得するためにHwfGetBackUserHandleListを発行します。
案件の差し戻し要求処理
案件の差し戻し処理をするためにHwfSendBackCaseExを発行します。差し戻した案件は,以前処理したユーザトレーに配布されます。