LoginSignup
3
1

More than 5 years have passed since last update.

Cognos BIでレポート公開承認のワークフローを作ってみた

Posted at

概要

Cognos BIでレポートを作った後に、レポートを公開してよいかどうか承認者に(承認 or 却下)の判断をしてもらう、ワークフロー的な機能をCognos BIで実装できないか、という要件がたまにあります。
Event Studioの機能を利用して、下図のようなワークフローをCognos BIで実装した例をご紹介します。
018.PNG

実装概要

実装方法の概要です。
Report01の承認依頼を行いたい時に、「承認ジョブ」というジョブを実行してワークフローを回すイメージです。
016.PNG

「承認ジョブ」の中身は、単純に「承認EV01」「承認EV02」を順次実行します。
017.PNG

「承認EV01」「承認EV02」の実体は、Event Studioで以下のようなタスクを並べて作成しています。
021.PNG

実装詳細

「承認EV01」「承認EV02」の詳細な説明となりますが、その前に下ごしらえがあります。

事前準備
ワークフローで「承認・却下」の結果を、フラッグとして保持しておくためのテーブルを作成します。
※DB2での例です。
001.PNG

作成したテーブルに「承認(1)・却下(0)」を書き込むための、ストアード・プロシージャーを作成します。
002.PNG

ストアード・プロシージャー作成の実行コマンドです。
003.PNG

Framework Managerのメタデータ・ウィザードでストアード・プロシージャーを取り込みます。
004.PNG

同様にテーブルの方も取り込んでおきます。
0041.PNG

取り込んだストアード・プロシージャーの定義を修正します。
タイプ、パラメーター名、値、を以下のように修正し、パッケージを発行します。
006.PNG

承認EV01の説明
A).左端のイベントです、これは何でも結果が正になればよく、適当なデータアイテム >=0 を記載しています。
007.PNG

B).データ更新タスクで、先のストアード・プロシージャーを指定し、値を0に指定します。
これでテーブル上のフラッグが 0 に初期化されます。
008.PNG

C).メール送信タスクで、レポート承認依頼のメールを送付します。
009.PNG

D).承認要求タスクで、以下のようにレポートのリンクを付与して、依頼文を記載します。
ジョブはここで一旦停止したままとなり、承認者が「個人用受信トレイ」に通知された承認要求通知に「承認」か「却下」をする事により、先に進みます。
010.PNG

「却下」をされた場合、この「承認EV01」自体から抜けてしまいます。「承認ジョブ」に定義された、次の「承認EV02」に入ります。
「承認」された場合、「承認EV01」の後続のタスクが実行されます。

E).ここで再度テーブルのフラッグ更新が発生し、値の1 (承認)がテーブルに入ります。
011.PNG

F).メール通知タスクで、レポートが承認された事が申請者に通知されます。
012.PNG

次に「承認EV02」が呼ばれます。
この時点で、承認を受けている場合はテーブルのフラッグの値は 1、却下を受けている場合は 0 が入っているはずです。
G).フラッグ「FLG」の値が、0 であれば後続のタスクを実行し、0以外であれば「承認EV02」を抜けます。
013.PNG

H).メール通知タスクで、レポートが却下された事を通知します。
014.PNG

如何だったでしょうか?
普段あまり使われない Event Studioにストアード・プロシージャーを合わせて、こんな感じになんちゃってワークフローを実現したりできる、ちょっと面白い事例です。
是非ご活用頂ければと思います。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1