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