ワークフローはFirstClassのアプリケーションとして作成されます。このため、ワークフローでは、以下の組み合わせを使用します。
・FirstClassデザイナーを使用して作成したカスタムフォームと、ワークフローの手順フィールドの使用。
・コンテナ。コンテナ用テンプレートに所属している場合もあり。
・メールルール。
・主催者および主催者でないユーザ用にカスタマイズした列とレイアウト。
ユーザがワークフローを開始する場合は、[メッセージ]>[特別な新規メッセージ]を選択してください。または、ドキュメントを開くか[新規メッセージ]を選択して、コンテナから開始することもできます。
ワークフロー手順フィールド
ワークフロー手順フィールド(8068)は、ワークフローを通じて段階的に変更をフォームに適用するために使用するフィールドです。このフィールドでは、開始値(通常はゼロ)を設定して、ルール機能を使用するかサーバ動作を選択することによって内容を更新できます。
ワークフローのコピー機能と送信機能によって、ワークフローの手順が1ずつ増加します。
ワークフローのコピー機能と送信機能には、コマンドボタンフィールドからアクセスします。
ワークフローのコピー コマンド 858
ワークフローの送信 コマンド 832
ルールシステムはオブジェクト内のフィールドを更新したり(ステップの継続)、フィールドをクライアントに対して表示/非表示を切り替えたり(クライアントマスキング)することができます。これらの機能の組み合わせて使うことで、ワークフローの手順を通じてフォームの外観を変更できます。
ワークフローの例
以下は、ある会社でシステム部門に作業を依頼するためにワークフローを利用する場合の例です。
1 あるユーザが[従業員管理]会議室を開き、[システム部門への作業依頼]を開始します。ユーザは、カスタムドキュメントを開き、[システム部門への作業依頼]というコマンドボタンをクリックします。このボタンは、アプリケーション開発者によって、「ワークフローのコピー」として定義されています。
2 ユーザは必要な情報を入力し、[送信]という名のコマンドボタンをクリックして、依頼を会議室に送信します。このボタンは、アプリケーション開発者によって、「ワークフローの送信」として定義されています。
3 [システム部門への作業依頼]会議室では、ヘルプデスクのマネージャが依頼を確認し、ヘルプデスク担当者に作業を割り当てます。依頼をチームメンバーの1人に割り当てる動作を行うと、その依頼がチームメンバー全員に表示されます。
4 作業を割り当てられたチームメンバーは進捗状況を更新します。この場合、状態は[割り当て済み]から[作業中]を経て[完了]になります。ヘルプデスクのどのメンバーも、[システム部門への作業依頼]コンテナを開いて、すべての依頼の進捗状況を確認できます。
5 依頼の進捗状況が[完了]になると、その依頼は自動的に[記録]フォルダに保存されます。
[システム部門への作業依頼]フォーム
[システム部門への作業依頼]フォームは、ワークフローフィールド 8068と2つのコマンドボタンを使用して作成されています。
ワークフローのコピー(858)によって、フィールド 8068の値が1ずつ増加されます。
ワークフローの送信(832)によって、フィールド 8068が1ずつ増加されます。
フィールド 8068はフィールドコントロールを使用して、フォーム上の非表示フィールドを表示させます。
このフォームには値 61(承認/未承認)を持つフィールドもあります。このフィールドによって、システム部門に依頼された作業がチームメンバーに表示されるどうかが決まります。
状況0 作業依頼の開始(Employee Start)
ユーザに表示されるフォームは、次のようになります。
ユーザは、Startボタンをクリックしてワークフローを開始します。
状況1 従業員は、依頼する内容(Information Request)を入力し、[Hand In](提出)ボタンをクリックしてその依頼を送信します。
状況2 送信済みの依頼。
状況3と状況4 マネージャ用とチームメンバー用の依頼表示。
[システム部門への作業依頼]会議室
権限は次のように設定されています。
・マネージャは[主催者]です。
・ヘルプデスクのメンバーには、[送信可]+[アイテムの編集]権限が与えられています。
・従業員は、会議室にメッセージを送信できます。
・メッセージは承認が必要で、未承認アイテムのフィルタリングが有効になっています。
・新しい依頼は未承認メッセージとして受信されます。したがって、チームメンバーは、マネージャが依頼をメンバーに割り当てるまでその依頼を見ることができません。
・[割り当て済み]チェックボックスは、値 61を持っています。マネージャがこのチェックボックスを有効にすると、依頼は承認され、チームメンバーに表示できるようになります。
このコンテナに設定したルール
ルール1
メッセージは、受信されると同時にドキュメントに変換されます。これにより、ヘルプデスクメンバーがメッセージを編集できるようになります。
ルール2
ワークフローフィールドは値2を持っており、ユーザが送信した依頼のコピーはそのユーザのメールボックスに保存されます。ユーザに見せないようにするフィールドを、自分たちには見えるようにしておく必要があります。
ルールを使用して、マネージャが依頼を開く度にワークフローフィールドの値を増加させることができます。この段階では、マネージャだけが依頼を見ることができます。
ルールは次のようになります。メッセージが読まれた時に、現在のユーザがヘルプデスクのマネージャであれば、一時的にフィールド 8068を3に設定し、非表示フィールドが表示されるようにします。
この変更をクライアントに送信すると、依頼のワークフローの進捗状況がユーザのメールボックスに保存されます。このルールは、フォーム上のどのフィールドにも設定できるため、フィールドコントロールでもっと多くの非表示フィールドを表示させることができます。
ルール3
更が加えられ、進捗状況フィールドが[完了]に設定されると、ドキュメントが[作業完了済みの依頼]サブフォルダに移動されます。
このコンテナ用にカスタマイズした列
[システム部門への作業依頼]会議室用にカスタマイズした列は、カスタムフォームのフィールドにマッピングされます。[進捗状況]フィールドの更新内容は、テーブルの管理者から確認することができます。
フィールド8068のフィールドコントロールに関する注意
//フィールド 8068が0に設定されるとフィールド 1000を表示し、1、2、3、または4に設定されるとフィールド 1000を非表示にする。
0/1000:S;1/1000:H;2/1000:H;3/1000:H;4/1000:H;
//フィールド 8068が0に設定されるとフィールド 1001を非表示にし、1、2、3、または4に設定されるとフィールド 1001を表示する。
0/1001:H;1/1001:S:2/1001:S;3/1001:S;4/1001:S;
//フィールド 8068が0または1に設定されるとフィールド 1002を非表示にし、2、3、または4に設定されるとフィールド 1002を表示する。
0/1002:H;1/1002:H;2:/1002:S;3/1002:S;4/1002:S;
//フィールド 8068が0、1、または2に設定されるとフィールド 1003を非表示にし、3または4に設定されるとフィールド 1003を表示する。
0/1003:H;1/1003:H;2:/1003:H;3/1003:S;4/1003:S;
//フィールド 8068が0、1、または2に設定されるとフィールド 1004を非表示にし、3または4に設定されるとフィールド 1004を表示する。
0/1004:H;1/1004:H;2:/1004:H;3/1004:S;4/1004:S
| ||