以下の章では、ワークフローシステム設定の作成・編集する方法について説明します。
Workflow Designer を起動する
Workflow Designer は、DocuWare Desktop Apps の DocuWare システムへのアクティブな接続を利用します (DocuWare バージョン 6.9 以降)。そのため、Workflow Designer を起動する際には、すでにアクティブな接続があるかどうかによって、処理の進め方が異なります。
アクティブな接続がある場合:Windows スタートメニューを開いて、すべてのプログラム > DocuWare Workflow Designer をクリックするか、デスクトップ上の Workflow Designer アイコンをダブルクリックします。Workflow Designer が起動します。
アクティブな接続がない場合:まず、DocuWare Desktop Apps のトレイメニューを開いて、接続を編集をクリック後、新しいダイアログでデフォルトの接続を作成をクリックしてます。または、DocuWare Client でメインメニューを開いて、Connect Desktop Apps をクリックします。次に、ステップ 1 の説明に従って Workflow Designer を起動します。
ホームページ:概要
ワークフローデザイナーのホームページ「概要」は、ワークフロー構成の作成・編集の起点となるものです。このページは 3 つのエリアに分かれています: 上部には、ナビゲーションバーとメニューがあります。上部エリアにはナビゲーションバーとメニューがあり、作成されたすべてのワークフローは中央の表に表示されます。下段には、上記リストで選択された各ワークフローの詳細情報が表示されます。
ナビゲーションバー
ナビゲーションバーのタブを使用して、すべてのワークフローの概要と個々のワークフローのフロー図ビューを切り替えることができます。概要」ページは、常に独立したタブで表示されます。個々のワークフローのページは、リスト項目をダブルクリックするか、リストで選択し て[編集]をクリックして開いた場合にのみ、タブ付きで表示されます。ワークフロー名の後ろの数字は、タブに表示されるタスクの数を示しています。
ワークフローを許可されたユーザーに公開するには、[公開]機能を使用します。
ワークフローの一覧と詳細
上部のワークフロー一覧でワークフローを選択すると、その詳細が下の領域に表示され ます。左側のリストには、該当するワークフローの最も重要な詳細が表示されます。中央には、タブで切り替え可能な2つのモードが表になっています: バージョン」と「アクティブインスタンス」です。デフォルトでは、Versions モードが表示されます。右側には、選択したワークフローのミニチュア・プレビューが表示されます。
Versions(バージョン): このタブには、これまでに保存されたワークフロー構成の全バージョンが表示されます。このリストは、ワークフローの開発履歴のようなものです。
例えば、ワークフローを開発し公開したが、思うように動作しない場合などに、バージョンコ ピーを活用することができます。
リードモードは、例えば、以前の時点でどのようにプロセスが設定されていたかを確認したい場合に有効です。この場合、ワークフローの「概要」のタブにリードモードが表示されます。編集モードでは、現在のワークフローのバージョンのみが開かれます。アクティブなインスタンス このタブには、ワークフロー構成のすべてのアクティブなインスタンスが表示され、 現在編集中のアクティビティを知ることができます。
権限
ワークフローの設定には、以下の 2 つの権限があります: デザイナーとコントローラー。
デザイナー
デザイナーは、ワークフローシステム設定の編集・削除・発行、発行の撤回、エラー修正のためのデバッグを行う権限があります。
ワークフローの新規作成とコピーの機能には、[DocuWare 構成] > [ユーザー管理] の [ユーザー x] > [機能プロファイル] で付与されるワークフローを設計の機能の権限が必要です。
コントローラー
Workflow Designer では、コントローラーが、ワークフローのバージョンを読み取り専用モードで開くことができます。古いワークフローのバージョンは、該当するバージョンのコンテキストメニューからバージョンリストで開くことができます。
DocuWare Client では、コントローラーには、コントローラー権限を持つワークフロー用の特定のタスクリストがあります。リストは、ワークフローの名前とまったく同じで、タスク > タスクを確認するから見つけられます。
DocuWare Client では、ワークフローインスタンスでタスクを割り当てられたすべてのユーザーの全タスクがコントローラーによって確認されます。これは、タスクが複数のユーザーに割り当てられている場合、コントローラーもこれを何度も見ることになります。これはコントローラーがタスクをあるユーザーから他のユーザーへ割り当てることができる唯一の方法だからです。コントローラーは、タスクがユーザーのワークフロータスクリストで既読ステータスへ進行しているかどうか、つまり処理中であるかどうかを確認します。ワークフロー内でドキュメントが削除された場合、ワークフロー内のタスク自体も自動的に削除されます。また、コントローラーは、関連するワークフローバージョンのコンテキストメニューからワークフローを停止を選択することで、ワークフローインスタンスを終了させることができます。このは、ワークフロー履歴に記録されます。
ワークフローを作成したユーザーは、デフォルトでデザイナーとコントローラーの権限があります。
ワークフローをエクスポート / インポートする
例えば、ある部署で使用しているワークフローを変更し、そのワークフローをファイルキャビネット内の別の領域でも使用する場合は、ワークフローをそのファイルキャビネットに転送して調整します。
自分の組織に属しているファイルキャビネットや、別のシステム内のファイルキャビネットを選択できます。インポートは、新しいワークフローまたは新しいバージョンとして実行可能です。インポートの際に、ソースと選択されたファイルキャビネットとが一致している必要があります。
ワークフローをエクスポートするには、組織管理者としての権限が必要です。エクスポートすると、現在のシステムのすべてのワークフローが WorkflowExport_<組織名>_<現在の日付>.wfe ファイルにエクスポートされます:
Workflow Designer の概要でエクスポートするワークフローを選択して [エクスポート] をクリックし、ファイルシステムに保存します。
ワークフローを別のシステムにインポートするには、最初に Desktop Apps で接続を切り替えます。
次に、Workflow Designer をもう一度起動します。概要で、[インポート] をクリックし、ファイルシステムからワークフローを選択します。[OK] をクリックして確認します。
実際にインポートを行う前に、ワークフローで使用されるソースファイルキャビネットのファイルキャビネットフィールドが、選択されたファイルキャビネットにも存在するかどうかが、システムによって確認されます。これを実行するために、フィールドのデータベース名とデータタイプがシステムによって比較されます。選択されたファイルキャビネット内ですべての必須フィールドが確認されると、インポートが完了します。同じレイアウトでワークフローが開き、すべてのアクティビティ、変数、タスクリスト構成が表示されます。ワークフローシステム構成の確認、調整、または再作成が必要な場所がハイライトされて一覧表示されます。
この構成を機能させるには、外部ソースのすべてのデータとパラメータを手動で確認し、必要に応じて編集する必要があります。これは、ターゲットシステムに同一に存在するかどうかに関係なく適用されます。設定とパラメータには、他のファイルキャビネットとそのフィールド、選択リスト、外部データベースとその表および列、Web Service、ユーザー、ロール、代理ルール、フォーム構成、テンプレート、記入領域が含まれます。インポートしてチェックしたワークフローを発行します。
ワークフローシステム設定を作成する
新しいワークフローを作成するには、概要ページにあるツールバーで新規をクリックします。以下の 2 ページで構成されたワークフローの新規作成ダイアログが開きます。全般とトリガー。
全般
名前
ここにワークフローに一度だけ使用される一意の名前を入力します。この名前は、ワークフロー内およびワークフローのタブで Web Client のタスクリスト内に表示されます。
説明 (任意)
この説明は、Workflow Designer にのみ表示されます。
ファイルキャビネット
各ワークフローは、DocuWare ファイルキャビネットに割り当てる必要があります。
ワークフローユーザー
ユーザー名
ここで、自動アクティビティが実行される DocuWare ユーザー (例: 組織管理者) を指定します。ファイルキャビネットおよびドキュメントにアクセスするための権限が必要になります。
パスワード
ここで保存されたユーザーのパスワードは、[OK] で確定した後、ダイアログを終了する際にセキュリティのために要求されます。パスワードが保存されていません。
トリガー
ワークフローを開始するトリガーの種類は 2 つあります。
文書ベースのイベント、つまり新しい文書のファイリングやインデックスデータの変更
インデックスデータに特定の条件が付いたスケジュール設定
ワークフローインスタンスはワークフローが実行されるたびに生成されます。例えば、同じトリガー条件である 10 件のドキュメントを保管するとすると、10 件のインスタンスが開始されます。ワークフローが終了に達し次第、インスタンスも終了します。実行中のインスタンスはワークフローシステム設定への変更による影響を受けません。
ドキュメントベースのイベント: ドキュメントベースのイベントに基づいてワークフローを実行する場合は、ここでその条件を定義します。
ワークフローを実行するには、まず最初に特定のイベントが発生する必要があります。これは例えば、新しいドキュメントがドキュメントプールに保管されたり、既存のドキュメントのインデックスデータが修正されたりすることなどです。次に、ドキュメントは、トリガー条件にあった特定のインデックス値がなければなりません。
新規ワークフローの開始
ワークフローのトリガーとなる開始アクティビティのいずれか一方または両方を有効にします。
新規ドキュメント
ワークフローは、新しいドキュメントが保管されるたびに開始されます。ドキュメントのインデックスエントリが変更されている場合
ドキュメントのインデックスエントリが変更されるたびにワークフローが開始されます。
また、ワークフローのトリガーを、マージフォームで作成されたドキュメントという条件に連動させることも可能です。ただしこれは、ドキュメントの保存またはインデックスデータの変更という、前の 2 つの条件のうち少なくとも 1 つが満たされている場合にのみ可能です。
例えば、記入領域のあるマージフォームを使用して DocuWare Forms で作成されたドキュメントが [入力可能な PDF] として保存されたときなどにワークフローは開始されます。すべての DocuWare Forms の設定と、ログインしているユーザーが [使用] 権限を持っているすべてのマージフォームが表示されます。このオプションを有効にすると、データ割り当て中に表示される挿入領域の基礎が作成されます。空の挿入領域のみを埋めることができます。
選択に応じて、追加条件設定の一方または両方が表示されます。
インデックス変更前に以下の条件のすべて、または 1 つが満たされている場合: インデックス変更後に以下のトリガー条件のすべて、または 1 つが満たされている場合:
左側のインデックスフィールドまたはシステムフィールドを選択します。
中央の演算子を 1 つ選択します。
右側で提供されたドロップダウンリストから値を選択するか、フィールドに直接値を入力します。
スケジュール: 特定のインデックスデータに関連して特定のスケジュールに従ってワークフローを実行する場合は、ここで定義します。
ワークフローは以下のスケジュールで実行できます。
毎日または特定の日
毎週または特定の週
毎月または特定の月
各オプションにはそれぞれ、異なる追加設定があります。
さらに、上記で定義したスケジュールに従ってワークフローが実行されるように、インデックスデータが満たすべき条件を定義します。
DocuWare システムの最適なパフォーマンスを確保するため、ワークフローインスタンスは 1 回のスケジュール起動で最大 100 件のドキュメントのみを対象にして開始できます。この数を変更するには、
C:\Program Files (x86)\DocuWare\Background Process Server\DocuWare.BackgroundProcessService.LongLiving.GenericProcess.x86.exe.config
ファイルで以下の行にある数値 ("100") を変更します。
<add key="ScheduledWorkflowMaxDocumentCount" value="100" />
設定を保存してワークフローシステム設定をさらに編集する
設定を保存するには OK をクリックします。フローダイアグラムビューのあるワークフローページが開きます。ここでワークフローを編集できます。
ワークフローシステム設定を編集する
次の章では、ワークフローシステム設定を編集する方法と、ワークフローの各ステップを定義してコンパイルする方法を説明します。
ワークフローのフローダイアグラムのビュー
ワークフローのフローダイアグラムビューには、ワークフローを編集するためのすべての機能が提供されています。ナビゲーションバーは、上部領域にあります。左のサイドバーには、[アクティビティ]、[変数]、[検証] のタブが表示されています。右側の大きな領域には、ワークフローのフローチャートが表示されます。
ワークフローの設計は、左ペインからフローチャートビューにアクティビティをドラッグ&ドロップすることで行います。
テストのためのヒント: [出力値を入力する] ダイアログでは、ワークフローのテストの実行を開始する際に用意しておく必要のあるインデックス値、つまり、ドキュメントの存在をシミュレートするために使用するテストインデックスデータを指定できます。さらに、このリストに存在するすべての既存の変数を見つけることができます。
OK でダイアログを保存して閉じると、テストのフローダイアグラムの下に新しい領域が表示されます。左側のワークフローのさまざまな出力を使用して、テストを制御できます。右側には、ワークフロータスクのテーブルログが表示されます。
自動検証
ワークフローを設計している間、個々のステップは自動的に検証されます。エラーが検出された場合は、検証の左側のツールバーに結果が表示されます。
DocuWare Client でタスクリストを構築する
DocuWare Client のワークフロータスクリストの構造を、ここで指定します。
ワークフローのタスクリストでどの機能を利用できるかは、基本的にファイルキャビネットの結果リストの設定に依存します。これらは、適切にワークフローのタスクリストによって継承されます。
タスクリストの機能を制御するには、最初に DocuWare 構成の [ファイルキャビネット] > [ダイアログ] > [結果] > [結果リスト] で関連するファイルキャビネットの結果リストでそれらを有効にする必要があります。
Workflow Designer では、各ワークフローのタスクリスト設定において、機能を継承する結果リストを選択することができます。リンクの上にマウスを移動すると、選択された結果リストで有効になっている機能を確認できます。必要に応じて、そこでタスクリストの特定のワークフロー機能を有効にすることもできます。
[ワークフロータスク] ダイアログは、2 つの領域に分かれています: すべてのデータが一番上のテーブル形式のリストにまとめられます。タスクリストの列見出しが下のプレビューに表示されます。
システム変数とグローバル変数
ワークフローでは、システム変数とグローバル変数を使用します。グローバル変数はユーザーが定義するもので、システム変数は設定されているものです。
システム変数
システム変数とは、DocuWare システムが自動的に設定し、変数に応じて更新されるパラメータです。
例:最後に決断を下したユーザーは自動的に、「最後のデシジョンユーザー」となります。「ドキュメントURL」または「組織の GUID」はシステム変数であり、変更されません。
システム変数のリストを開くにはここをクリックします。
システム変数 | 説明 |
ワークフロー名 | ワークフローの新規作成 > 全般ダイアログで指定されたワークフロー名 |
開始日/時刻 | ワークフローインスタンスが開始された日時 |
アクティビティ | 現在のアクティビティの名前 |
割り当て済み | タスクが割り当てられたユーザー、ロール、または代理ルールの名前 |
前回のエラーアクティビティ | エラーアクティビティの名前 |
前回のエラーメッセージ | エラータイプ |
現在のユーザー | 最新のアクティブなユーザー、つまり DocuWare Client で最後にタスクを編集したユーザー |
タスクユーザー | 現在アクティブなユーザー、つまり現在 DocuWare Client でタスクを編集中のユーザー |
受信日時 | 社員のタスクリストに含まれている現在のタスクの日付 |
リマインダーの通知日 | 現在のタスクのリマインダー設定が指定された日時 |
保留中の日付 | 現在のタスクの保留中設定が指定された日時 |
現在の日付 | 現在の日時 |
グローバル変数
グローバル変数は、ワークフロー全体の特定の値のプレースホルダーです。
例: 顧客番号が請求書のワークフロータスクフォームに入力されていれば、顧客名は外部データベースから読み出され、ワークフローグローバル変数に書き込まれます。すると名前は他のワークフローステップで再度使うことができます。
グローバル変数は Web Client でタスクのリストに表示することもできます。
グローバル変数を作成するには、既存のワークフローシステム設定を開き、左側サイドバーの [変数] をクリックします。
ワークフローを構成する際に、後で変数を簡単に特定できるような一意の名前を変数に付けます (例: MyOrderNumber など)
ドロップダウンリストから変数のタイプを選択します。
テキスト:テキストの長さは最大 255 文字です。
整数または小数:小数に対しては、小数点以下の桁数も定義する必要があります。
日付または日時: 日付タイプの変数に対して、このオプションを選択します。
キーワード:この変数には、複数の注文番号など、複数の値を保存することができます。ただし、リスト変数として使用できるユーザー、ロール、代理ルールとは違って、割り当て時にこの変数から個々の値を選択することはできません。
グループ、ロール、代理ルールのユーザー: ロールと代理ルールには、複数の値 (ユーザー) が含まれています。グループのユーザー変数は、1 つ以上の値を含むことができます。
3 つの変数すべてについて、リスト変数オプションが利用可能です。この機能が有効な場合、後のステップで、それぞれのリストから個々のユーザーを選択することができます。
ワークフローですでに使用されている場合でも、変数リスト内の変数を編集できます。最初に変数をシステム設定から削除する必要はありません。ワークフロー内での場所を問わず、変数名が変更されると、データ割り当てなどの無料の SQL コマンドを含め、変数が自動的に置換されます。
ハイフンも入力可能ですが、内部では自動的に二重アンダースコアとして保存されます。グローバル変数が選択されると、その変数が二重アンダースコアでリストに表示されます。