Oracle® Fusion Middleware Oracle Business Process Management Business Process Composerユーザーズ・ガイド 11gリリース1 (11.1.1.9) B61410-09 |
|
![]() 前 |
![]() 次 |
この章では、Business Process Composerを利用してWebフォームを作成する方法について説明します。Webフォーム・デザイナの概要を紹介し、Webフォームの作成、Webフォーム・コントロールの追加、Webフォーム・コントロール・プロパティの編集についてその手順を説明します。
この章の構成は、次のとおりです。
Oracle Business Process Managementには、BPMNプロセスによって定義されるアプリケーションとエンド・ユーザー間での相互作用を定義する機能が用意されています。Oracle Business Process Management内の3つのコンポーネントが、ユーザーとの相互作用を定義します。
ユーザー・タスク: プロセス内でユーザーとの対話が必要とされるポイントを指定するBPMNフロー・オブジェクトです。Oracle BPMは、必要な承認プロセスを決定する様々なタイプのユーザー・タスクをサポートしています。
ヒューマン・タスク: プロセスベースのアプリケーションとユーザーとの相互作用を定義します。ユーザー・インタフェース、データ構造および接続情報を定義します。詳細は、第11章「ヒューマン・タスクの使用」を参照してください。
フォーム: ユーザーがアプリケーションと対話できるインタフェースを定義します。Oracle BPMで作成されるビジネス・アプリケーションでは、これらのフォームはOracle Business Process Management Workspaceに表示されます。
Oracle BPMは、次のタイプのフォームをサポートしています。
Webフォーム: ヒューマン・タスクのユーザー・インタフェースを定義します。XHTML、CSS、Javascriptなどの標準的なテクノロジに基づきます。Webフォームは、プロセス・アナリストがBusiness Process Composerを使用して作成します。これらはBPMプロジェクト内に組み込まれます。この章では、Webフォームを作成および使用する方法について説明します。
Oracle Application Development Framework (ADF)タスク・フォーム: ヒューマン・タスクのユーザー・インタフェースを定義するADFコンポーネントです。ADFタスク・フォームは、通常、プロセス開発者によって設計されます。これらはOracle JDeveloperで作成され、Oracle BPM Studioを使用してBPMプロジェクトに追加できます。
詳細は、『Oracle Business Process Managementモデリングおよび実装ガイド』のヒューマン・ワークフローのスタート・ガイドに関する項を参照してください。
Webフォームは、エンド・ユーザーがビジネス・プロセスと対話するためのユーザー・インタフェースを定義します。Business Process Composerには、Webフォームを作成するためのエディタが用意されています。このエディタを使用して、プロセス・アナリストは、ユーザーがビジネス・プロセスと対話する方法を設計し、アプリケーションが必要とする基のデータ構造を定義します。
Webフォームは、XHTML、CSS、Javascriptなどの規格に基づいているため、複数のプラットフォームやブラウザとの互換性を図ることができます。Webフォームの中核部分はXHTMLファイルです。ただし、フォーム設計者は、XHTMLコードを直接扱わなくても、Webフォームを作成および設計できます。新しいフォームを作成したら、Webフォーム・デザイナを使用して、フォームの外観と動作をカスタマイズできます。
Webフォームには次のものを追加できます。
フォーム・コントロール: フォームに直接追加できるコンポーネントです。フォーム・コントロールは、Webフォームのグラフィカル要素とそのレイアウトを定義します。また、ユーザーにデータを表示したり、データ入力を受け取ったりします。Oracle BPMでサポートされているフォーム・コントロールのタイプについては、9.3項「Webフォーム・コントロールの概要」を参照してください。
Webフォームに対してフォーム・コントロールを追加、再配置または削除すると、フォーム・エディタにより、基のXHTMLコードが自動的に更新されます。
フォーム・ルール: WebフォームまたはWebフォーム・コントロールの動作を定義するJavascriptコードです。Business Process Composerには、フォーム・ルールを作成および編集できるフォーム・ルール・エディタが用意されています。詳細は、第10章「Webフォーム・ルールの使用」を参照してください。
Oracle BPMでは、Webフォームを作成するための2つのユース・ケースがあります。
フォームを先に作成
このユース・ケースでは、データ要素を定義する前にWebフォームを作成します。この方法では、ビジネス・ユーザーが、Business Process Composerを使用して必要なユーザー・インタフェースを定義することができます。このユース・ケースでは、必要な基のデータ・モデルを考慮することなく、ユーザー・インタフェース要素が先に作成されます。
フォームが作成されると、Oracle BPMにより、Webフォームが必要とするデータを定義するスキーマが自動的に生成されます。このデータ・スキーマは、Webフォームに追加されるWebフォーム・コントロールに基づきます。Webフォームをヒューマン・タスクに割り当てると、このスキーマが自動的に使用されて、ヒューマン・タスク・ペイロードが定義されます。
このユース・ケースにおける手順については、9.5項「ウォークスルー: フォームを先に作成する方法によるWebフォームの作成」を参照してください。
データを先に作成
このユース・ケースでは、既存のヒューマン・タスク・ペイロードに基づいてWebフォームを作成します。Oracle BPMは、ペイロードに基づいてデータ・ソースを生成します。これらのデータ・ソースに基づいてフォームにWebフォーム・コントロールを自動的に追加できます。データを先に作成するモデルでは、複数のフォーム間でスキーマを再利用できるという利点があります。
データ・ソースからフォーム・コントロールを追加した後、フォーム・デザイナを使用して、フォーム内でフォーム・コントロールの位置を調整し、必要なユーザー・インタフェースのルック・アンド・フィールを定義します。
このユース・ケースにおける手順については、9.6項「ウォークスルー: データを先に作成する方法によるWebフォームの作成」を参照してください。
プロセスに基づくアプリケーションのユーザー・インタフェースを、Webフォームで定義します。Business Process Composerには、Webフォームを作成するためのWebフォーム・エディタが用意されています。Webフォーム・エディタを使用して、次のことを行えます。
WebフォームにWebフォーム・コントロールを追加します。
Webフォームの外観とレイアウトをカスタマイズします。
Webフォーム上のコントロールの動作を定義するフォーム・ルールを作成します。
図9-1は、Webフォーム・デザイナの一例です。
Webフォームを開くと、Business Process Composer内にタブ付きペインとしてWebフォーム・デザイナが表示されます。Webフォーム・デザイナは次の領域に分割されています。
Webフォーム・コンポーネント・パレット
Webフォーム・ツールバー
フォーム・キャンパス
プロパティ・エディタ
データ・ソース
注意: データ・ソースは、データを先に作成するユース・ケースにより作成されたWebフォームでのみ使用可能です。ヒューマン・タスク・ペイロードに基づいたWebフォームの作成については、9.6項「ウォークスルー: データを先に作成する方法によるWebフォームの作成」を参照してください。 |
Webフォーム・デザイナの各領域については、次の項で説明します。
コンポーネント・パレットには、フォームに追加してビジネス・アプリケーションの操作方法を定義できるコントロール類があります。フォーム・パレットは、図9-1に示されているように、Webフォーム・エディタの左側に表示されます。フォーム・コントロールをパレットからフォーム・キャンパスにドラッグすることにより、Webフォームに追加できます。
Oracle BPMで使用できるWebフォーム・コントロールについては、9.3項「Webフォーム・コントロールの概要」を参照してください。コントロールをWebフォームにドラッグする方法については、9.7.1項「Webフォームへのコントロールの追加方法」を参照してください。
Webフォーム・エディタには、フォーム関連機能へのアクセスを提供するツールバーが含まれています。図9-2は、Webフォーム・エディタ・ツールバーを示しています。
Webフォーム・エディタ・ツールバーには、次のボタンが含まれています。
フォーム・ルール: クリックすると、フォーム・ルール・エディタが開きます。このボタンにより、フォーム・ルール・エディタとWebフォーム・エディタ間を切り替えることができます。
Webフォームのテスト: ブラウザ・ウィンドウにフォームが開きます。このウィンドウでは、Webフォームがエンド・ユーザーにどのように表示されるのかを確認できます。フォーム・ルールの動作もテストできます。
リフレッシュ: フォームの外部データ・ソース(ヒューマン・タスク・ペイロード)をリフレッシュします。ヒューマン・タスク・ペイロードを変更する場合、Webフォームのデータ・ソースをリフレッシュする必要があります。このボタンは、データを先に作成する方法で作成されたWebフォームに対してのみ使用できます。詳細は、9.6項「ウォークスルー: データを先に作成する方法によるWebフォームの作成」を参照してください。
ローカライゼーション: リソース・バンドル・エディタが開きます。このエディタでは、WebフォームとWebフォーム・コントロールのコンポーネントをローカライズできます。
WebフォームまたはWebフォーム・コントロールのプロパティを定義するには、プロパティ・エディタを使用します。フォームでコントロールをクリックすると、「プロパティ」領域にコントロールのプロパティが表示され、確認と編集が可能になります。
プロパティ・エディタにはタブ付きのペインがあり、WebフォームまたはWebフォーム・コントロールのプロパティが、機能ごとにグループ化されて表示されます。図9-3は、プロパティ・エディタの一例です。
WebフォームとWebフォーム・コントロールのプロパティを編集する手順については、9.7.4項「WebフォームとWebフォーム・コントロールのプロパティの編集方法」を参照してください。各プロパティについては、付録C「WebフォームとWebフォーム・コントロール・プロパティのリファレンス」を参照してください。
「データ・ソース」パネルには、フォームに組み込むことのできるデータ要素のリストが表示されます。詳細は、9.4項「データ・ソースの概要」を参照してください。
「データ・ソース」パネルから、ペイロード内のすべてのデータ要素または特定のデータ要素に基づいてWebフォーム・コントロールを生成できます。
注意: データ・ソースは、ヒューマン・タスク・ペイロードに基づいて作成されたWebフォームでのみ使用可能です。詳細は、9.6項「ウォークスルー: データを先に作成する方法によるWebフォームの作成」を参照してください。 |
図9-4は、ヒューマン・タスク・ペイロードに基づいて作成されたWebフォームに表示される「データ・ソース」パネルを示しています。
Oracle BPMにおけるデータ・ソースの詳細は、9.4項「データ・ソースの概要」を参照してください。ヒューマン・タスク・ペイロードに基づいたWebフォームの作成については、9.6項「ウォークスルー: データを先に作成する方法によるWebフォームの作成」を参照してください。
Webフォーム・デザイナの右側は、フォーム・キャンパスです。コンポーネント・パレットからフォーム・デザイナ・キャンパスへコントロールをドラッグして、Webフォームを作成できます。図9-5は、複数のコントロールが含まれているフォーム・キャンパスの一例です。
Webフォーム・コントロールは、フォームに追加してビジネス・アプリケーションのユーザー・インタフェースを定義できるユーザー・インタフェース・コンポーネントです。Webフォーム・コントロールはHTMLで定義されますが、Webフォーム・エディタを使用すれば、基のコードを編集する必要は発生しません。
Webフォーム・コントロールについては、次の項で説明します。各Webフォーム・コントロールに構成できるプロパティについては、付録C「Webフォーム・コントロールのプロパティ」を参照してください。
入力コントロールにより、ユーザーは、フォームにデータ(テキスト、日付、数値など)を入力できます。入力コントロールは、ユーザーが間違ったデータ型を入力するのを自動的に禁じます。たとえば、数値のコントロールにユーザーが文字を入力するとフォームにエラー・メッセージが表示され、有効なデータが入力されるまで「送信」ボタンが無効になります。この検証は、自動的に行われます。各入力コントロールの機能を次に説明します。
入力コントロールの内容を検証するために、Oracle BPMは各コントロールにデフォルトのXMLスキーマ・データ型を割り当てます。各入力コントロールのデフォルトのデータ型を次の表に示します。
入力コントロール | XMLスキーマ型 |
テキスト | xsd:string |
日付 | xsd:date |
電子メール | types:emailType、types.xsdで定義されるxsd:string制限パターン。 |
金額 | types:number、types.xsdで定義されるxsd:double制限パターン。 |
電話 | types:phoneType、types.xsdで定義されるxsd:string制限パターン。 |
数量 | xsd:integer |
数値 | types:number、types.xsdで定義されるxsd:double制限パターン。 |
ブール | xsd:boolean |
テキスト領域コントロールには任意のテキストを入力できます。複数行の長い入力用です。ユーザーがデータを入力すると、必要に応じてテキストを収めるために、スクロール・バーが表示されます。テキスト領域コントロールには「行数」というプロパティがあり、入力領域に表示されるデフォルトの行数がこのプロパティによって制御されます。
HTMLには、テキスト領域コントロールの最大長を設定できるプロパティはありません。したがって、このコントロールにテキスト・コントロールのようなmaxlengthプロパティはありません。最大長を指定する必要がある場合には、テキスト・コントロールを選択するか、ユーザーが入力できるテキストの長さを制限するフォーム・ルールを使用する必要があります。詳細は、第10章「Webフォーム・ルールの使用」を参照してください。
日付コントロールにより、ユーザーは日付、時間、日付/時間コントロールとして情報を入力できます。コントロール・タイプ・プロパティを使用して、ドロップダウンから日付、時間、日付/時間を選択できます。
カレンダ・アイコン付きの日付入力フィールドを表示するには、日付コントロールを使用します。ユーザーがカレンダをクリックして日付を選択すると、選択した日付がmm-dd-yyyyというデフォルト書式(たとえば、09-01-2008)で表示されます。ユーザーが手動で日付を入力する場合は、次のどの書式でも使用できます。ただし、日付はmm-dd-yyyy書式に再度書式設定されます。
有効な日付書式は、3種類のセパレータ(. / -)と、3つの日付書式(DD/MM/YYYY、MM/DD/YYYY、YYYY/MM/DD)で構成されます。日付の指定方法の例は、次のとおりです:
mm-dd-yyyy (07-26-1966)
mm/dd/yyyy (07/26/1966)
mm.dd.yyyy (07.26.1966)
dd-mm-yyyy (26-07-1966)
dd/mm/yyyy (26/07/1966)
dd.mm.yyyy (26.07.1966)
yyyy-mm-dd (1966-07-26)
yyyy/mm/dd (1966/07/26)
yyyy.mm.dd (1966.07.26)
発行されるXMLドキュメントで、日付は次の書式を使用して標準のxsd:date書式であるyyyy-mm-ddに変換されます。
<Order Date>2012-03-06</Order Date>
フォームに時間入力フィールドのみを表示するには、時間コントロール・タイプを使用します。時間フォーマット・プロパティのドロップダウン・メニューが表示され、軍用と標準の4種類の規則から選択することができます。時間フォーマット・コントロールのデフォルトは、軍用時間を使用するhh:mmです(例: 18:30)。他の書式オプションとして、標準時間(AM/PM)もあります。
コントロール・タイプを時間に変更すると、日付ピッカーは表示されません。
時間フォーマット・コントロールには、軍用時間と標準時間の両方を使用する4つの標準書式があります。2つのセパレータはドットとコロンです。次に例を示します。
hh:mm (18:30)
hh.mm (18.30)
hh:mm - AM/PM (06:30 PM)
hh.mm - AM/PM (06.30 PM)
hh:mm:ss (18:30:15)
hh.mm.ss (18.30.15)
hh:mm:ss - AM/PM (06:30:15 PM)
hh.mm.ss - AM/PM (06.30.15 PM)
ローカル時間は、発行されるXMLドキュメントではUTC形式に変換されます。たとえば、<Order Time>15:42:00Z</Order Time>のようになります。適切に初期化するには、時間の後に大文字のZが必要です。
日付の入力用と時間の入力用に2つの入力フィールドを表示するには、日付/時間コントロールを使用します。プロパティのドロップダウン・メニューでは、コントロールの日付部分から9種類、時間部分から軍用と標準の4種類、それぞれ有効な書式を選択できます。詳細は、9.3.1.3.1項「日付コントロール」および9.3.1.3.2項「時間コントロール」を参照してください。
日付/時間のデフォルトの書式はmm-dd-yyyyとhh:mmです。
日付部分に日付を入力すると(またはピッカーで選択すると)、コントロールの時間部分には12:00 AMを表す値が自動的に入力されます。表示される値は、選択した時間書式によって異なります。
選択した時間書式がhh:mmである場合、00:00と表示されます。
選択した時間書式がhh:mm - AM/PMである場合、12:00 AMと表示されます。
選択した時間書式がhh:mm:ssである場合、00:00:00と表示されます。
選択した時間書式がhh:mm:ss - AM/PMである場合、12:00:00 AMと表示されます。
日付値なしで時間値を入力することはできません。
コントロール・タイプを時間に変更すると、日付ピッカーは表示されません。
時間入力フィールドに、ラベルは付けられません。日付部分のラベルが、時間部分まで含めて十分にわかりやすい内容であることを確認してください。該当する入力フィールドの上に日付と時間のラベルが必要な場合には、2つ別々のコントロールを使用するか、日付部分に対するラベルを時間入力フィールドまで拡大する必要があります。
発行されるXMLドキュメントで、ローカル時間はUTC形式に変換および保存され、日付は標準のxsd:date書式であるyyyy-mm-ddに変換されます。たとえば、次のようになります。
<OrderDate>2012-01-01TO05:00:00Z</OrderDate>
適切に初期化するには、時間の後に大文字のZが必要です。
フォーム・ルールは、すべての種類の日付/時間コントロールに適用できます。フォーム・ルールは、フォームのタイムゾーンで実行される必要があります。
電子メール・フォーム・コントロールでは、ユーザーが有効な電子メール・アドレスを入力できます。アドレスは、<name>@<name>.<string>という構文に準拠している必要があります。
金額フォーム・コントロールでは、ユーザーが米国通貨を入力できます。ユーザーは、コンマまたは小数点を入力できます。ユーザーがこれらを入力しない場合でも、フォームが自動的にこれらの記号を表示します。たとえば、ユーザーが4000と入力すると、フォームにはその値が4,000.00として表示されます。フォームでは、すべての入力が小数点以下2桁に丸められます。
少数点以下2桁より多く入力した場合、XML発行ドキュメントにはユーザーの入力したとおりの桁が格納されますが、ドル記号、小数点、カンマは含まれません。
電話Webフォーム・コントロールでは、xxx.xxx.xxxx、xxx-xxx-xxxx、xxx.xxxx、xxx-xxxxのいずれかの書式でユーザーが電話番号を入力できます。強制的に10桁の書式にする(市外局番を必須にする)場合は、コントロールのパターン・プロパティを編集します。
選択コントロールを使用すると、複数のオプションのリストから選択することができます。Oracle BPMでは、次の選択コントロールがサポートされます。
ドロップダウン
ラジオ
チェック・ボックス
True/False
注意: Webフォーム・コントロールのパレットに、コンボ・ボックス・コントロールは含まれていません。コンボ・ボックスは、ユーザーが新しい値またはオプションを入力することも可能なドロップダウン・リストです。コンボ・ボックスは、XHTML標準の一部ではないためです。ただし、その他のオプションのあるドロップダウン、ラジオ、チェック・ボックスをフォーム・ルールと組み合せて使用することは可能です。ユーザーがその他のルールを選択した場合にテキスト・コントロール(詳細または新しいエントリ)が表示され、ユーザーによる入力が可能になります。 |
ドロップダウン・コントロールは、フォームにドロップダウン・リストを追加します。デフォルトでは、ドロップダウン・リストの最初の選択肢は空白になっています。コントロールのオプション・プロパティを編集して、他のオプションを定義する必要があります。
ラジオ・コントロールは、1つしか選択できないラジオ・ボタンを追加します。コントロールのオプション・プロパティを編集して、ラジオ・ボタンの数と特定の選択肢を定義する必要があります。
ラジオ・オプションの1つをデフォルトとして選択した後で、これを変更するには、そのオプションをコントロールから削除し、オプション・プロパティからタブで移動する必要があります。このオプションをコントロールのオプション・リストに再度追加できます。
グループ・コントロールを使用すると、ユーザーに表示する必要がある情報のタイプに基づいてフォームを編成しやすくなります。
セクション・コントロールでは、コントロールのグループを作成します。セクションは、拡張と縮小が可能です。
Webフォーム内でユーザーが拡張アイコンをクリックすると、セクションが拡張または縮小されます。セクションを初期状態で拡張するのか縮小するのかを決定するデフォルト値を指定できます。
セクション・コントロールをフォームにドラッグした後で、他のコントロールをその中に、パネルとして、または他のセクション・コントロールとして、ドラッグすることができます。縮小したセクションの中に必須のコントロールがある場合は、セクション・ラベルが赤色になり、フォームを発行する前にセクションを展開して必須情報を指定する必要があることを示します。フォームの設計中にセクション・コントロールを削除すると、そのセクション内のコントロールもすべて削除されます。
タブ・グループ・コントロールを使用すると、図9-6のようにタブ付きのビューを作成できます。
デフォルトでは、フォームにタブ・コントロールをドラッグすると、独立した3つのタブが作成されます。タブを追加または削除するには、タブをクリックしてから追加(+)アイコンまたは削除(-)アイコンをクリックします。追加したタブは、追加アイコンをクリックしたとき選択されていたタブの右側に表示されます。
タブの順序を並べ替えるには、タブを他のタブの上に重ねるようにドラッグします。ドラッグしたタブが、下になったタブの右側に移動します。他のコントロール(他のグループ・コントロールも含む)を個々のタブにドラッグすることができます。ユーザーは、現在選択されているタブ上のコントロールのみ選択できます。
タブのグループ全体をフォームの別の場所に移動するには、そのタブの右側の領域をクリックし、グループ全体を目的の場所までドラッグします。
パネル・コントロールで、Webフォーム内に列を作成します。フォームに、必要な数のパネルをドラッグすることにより、複数の列を追加できます。
デフォルトでは、パネルの幅は49%に設定されています。2つのパネルをフォームにドラッグすると、2番目のパネルは自動的に最初のパネルと並びます。パネルには、境界がわかるように、1pxの枠線が付いています。したがって、2列構成で、両方の幅を50%にすることはできません。
パネルはグループ・コントロールなので、他のコントロールを内部にドラッグできます。パネルの順序を並べ替える場合には、ドラッグ・アンド・ドロップ機能に制限があるため、グループ・コントロールの下にコントロールをドロップすることはできないという点に注意してください。3つの列があり、中央の列を右側に移動する場合は、パネルの直下にあるコントロール上に中央の列をドラッグする必要があります。
3列または4列構成で、中央のいずれかの列または一番右の列を左端に移動する場合には、一番左の列の上までドラッグ・アンド・ドロップする必要があります。
パネルには設計中に編集できるラベルがありますが、パネルのラベルおよびパネル自体は、実行時またはフォームのテスト時にはユーザーに表示されません。パネル内のコントロールのみ表示されます。これらのコントロールは、パネルの幅に合わせて編成されます。
パネルを削除すると、その内部にドラッグしたコントロールは自動的に削除されます。
表レイアウト・コントロールを使用すると、Webフォームのスペースを節約することができます。このコントロールにより、フォーム・コントロールをグリッド・パターンに合わせて配置できます。
表名と列名を編集できます。パレットから新しいコントロールをドラッグ・アンド・ドロップして、表の幅を設定することもできます。表の最小および最大行数を制御できます。「追加」および「削除」アイコンが自動的に左に追加されます。フォーム・ルールを使用して、値を計算したり、フィールドを有効または無効にしたり、フィールドを表示または非表示にすることもできます。
表コントロールをフォームにドラッグすると、デフォルトで3行、3列構成の表が追加されます。列には、デフォルト名としてcol 0、col 1およびcol 2の名前が入ります。必要に応じて、表内のすべてのセルが定義されます。表の行ごとに「追加」および「削除」アイコンが表示され、最小/最大プロパティ値に従って行を追加または削除することができます。
表の列を並べ替えるには、移動しようとする列の見出しをクリックし、表示される緑色の矢印をクリックします。表の最終的な列位置に達するまで、列が右に移動します。
表コントロールには、次の制限があります。
表コントロールは繰返しコントロールには使用できません。
表のセルの境界線は、印刷ビューでは表示されません。
表コントロール名は作業領域から編集できません。プロパティ・エディタを使用します。
繰返しコントロールは、1つのWebフォーム・コントロールの複数のコピーを動的に表示します。これは、ユーザーが同じタイプの情報、たとえば電話番号を何度も入力する必要がある場合に便利です。繰返しコントロールは、余分な入力コントロールを明示的に追加するのではなく、必要な数だけコントロールを動的に表示できます。繰返しコントロールは、フォーム内におけるデータ要素とセクションの繰返しに使用されます。
繰返しコントロールをWebフォームに追加してから、タブ、パネル、セクションなどにコントロールを追加する場合と同じように、追加のコントロールを繰返しコントロールにドラッグ・アンド・ドロップできます。個々のコントロールを繰返しコントロールで囲むこともできますし、セクション・コントロール全体を含めることもできます。このセクション・コントロールには、繰り返す必要のあるすべてのWebフォーム・コントロールが含まれる必要があります。
コントロールを繰返しコントロールに追加した後、コントロールを選択して、そのプロパティを表示および編集できます。繰返しコントロールに追加したWebフォーム・コントロールには2つの追加プロパティが発生します。
最小値: コントロールを繰り返すことのできる最小回数を指定します。デフォルト値は0です。
最大値: コントロールを繰り返すことのできる最大回数を指定します。デフォルト値は1です。
この値を編集して、コントロールの繰返し回数を定義する必要があります。この値を編集しない場合、コントロールは繰り返されません。
これらのプロパティにより、コントロールがエンド・ユーザーに対してどのように表示されるかを定義します。1より大きい値をこれらのプロパティに設定した場合、自動的に別のコントロールを作成する追加アイコンがユーザーに対して表示されます。フォーム・エディタで、コントロールをクリックすると、自動的にプロパティが増分されます。
最小値は、エンド・ユーザーが追加または入力する必要があるコントロールの最小数を定義します。ユーザーがコントロールの最小数に対してデータを入力しなかった場合、送信ボタンが有効になりません。
ユーザーが最小値により定義されている数値を超えてコントロールを追加した場合、最初から最小値分までのコントロールについて、データを入力することが必要になります。たとえば、最小値が3で、ユーザーが5つのコントロールを追加した場合、フォームの上から数えて3つのコントロールについて、データが入力されないと、送信ボタンが有効になりません。ユーザーが、最大値によって定義されている数値までコントロールを追加すると、追加アイコンは表示されなくなります。
データ要素を追加する方法をユーザーに説明するために、メッセージ・コントロールを使用してメッセージを提供できます。次にその例を示します。
<center>Click on the <img src="/frevvo/images/icons/add.gif"/> icon to addmore phone numbers to the list.<br/></center>
繰返しコントロール内部のコントロールのラベルまたはプロパティを編集すると、繰返しコントロール内のコントロールのインスタンスごとに変更が適用されます。繰返しコントロール内のコントロールを削除すると、コントロールのすべてのインスタンスが削除されます。
パネル・コントロールと同様、フォームのテストまたは使用時には繰返しコントロールは表示されません。繰返しコントロール内のコントロールのみ表示されます。
繰返しコントロールと他のグループ・コントロールには、いくつか違いがあります。
ボタン、メッセージまたはイメージ・コントロールは追加できません。
繰返しコントロールには、1つのWebコントロールのみ含めることができます。タブ・コントロール、パネルまたはその他の繰返しコントロールを追加することはできません。繰返しコントロールに複数のコントロールを追加するには、複数のコントロールをセクション・コントロールに追加してから、セクションを繰返しコントロールに追加します。
セクションにさらにコントロールを追加する必要がある場合には、まずセクションをドラッグして繰返しコントロールから外す必要があります。それから、コントロールを追加して、セクション・コントロールを繰返しコントロールにドラッグして戻すことが必要になります。ただし、セクション・コントロールをパネル・コントロールに追加する場合は、繰返しコントロールからセクションを外す必要はありません。
データ・ソースに含まれる繰返しデータ要素を追加すると、BPCは自動的に、コントロール内に繰返しアイテムを生成します。繰返しコントールのスキーマが、最小要件と最大要件を自動的に適用します。
入力、選択、グループのコントロールに加え、Oracle BPMにはユーザーのWebフォーム操作を定義する他のWebフォーム・コントロールも用意されています。
メッセージ・コントロールを使用すると、静的テキストをフォームに追加できます。コントロールのメッセージ・プロパティにテキストを指定する必要があります。テキストにXHMTLを含めることができます。たとえば、フォントのサイズまたは色が違う2行を指定するとします。
ユーザーがフォームにアクセスすると、ブラウザでXHMTLがフォーマットされます。たとえば、Webフォームにヘッダーを作成する場合、次の例のようにパネルとメッセージ・コントロールの組合せを使用できます。
<center style="font-weight:bold;"> Connecticut Surgeons, LLC </center> <center style="line-height:1.2em;"> 82 Anderson Road<br/> Branford, CT 06180<br/> </center> <center style="font-weight:bold;"> Connecticut Surgeons, LLC </center> <center style="line-height:1.2em;"> 82 Anderson Road<br/> Branford, CT 06180<br/> </center>
リンク・コントロールを使用すると、フォームにURLを含めることができます。ユーザーがリンクをクリックすると、別のブラウザ・ウィンドウでターゲットURLが開きます。
ボタン・コントロールを使用すると、フォームにボタンを追加できます。このコントロールは、主に、フォーム・ルールと組み合せて使用されます。
注意: ボタン・コントロールは繰返しアイテムでは動作しません。 |
このコントロールを使用すると、フォームにイメージ(ピクチャ、ロゴなど)を追加できます。イメージ・コントロールで使用できるのは、JPG、GIF、PNGの各ファイルと、ブラウザでサポートされているその他のイメージ・タイプです。
イメージ・コントロールをドラッグすると、「参照」ボタンと「イメージのアップロード」ボタンが表示されます。「参照」をクリックし必要なイメージまでナビゲートし、「イメージのアップロード」をクリックします。イメージをアップロードしたら、「参照」ボタンと「イメージのアップロード」ボタンは使用できなくなります。イメージを変更するには、イメージ・コントロールを削除して、新しいイメージ・コントロールをドラッグする必要があります。
イメージをアップロードする前に、フォーム内に収まるサイズであることを確認する必要があります。標準フォーム・サイズは600ピクセルです。アップロードしたイメージのサイズを変更するには、デザイナでイメージ・コントロールを選択し、「プロパティ」パネルで「スタイル」タブをクリックして幅を設定します。
単位はpx、%、emです。単位を含める必要があります。たとえば50%と指定すると、イメージはフォームまたはパネルの半分の幅に設定されます。
データ・ソースにより、既存のデータ構造に基づいてWebフォーム・コントロールを作成できます。Oracle BPMでは、このようなデータ構造はヒューマン・タスク・ペイロードによって定義されます。ヒューマン・タスク・ペイロードを作成した後、ペイロード・データに基づいて新規Webフォームを作成できます。ペイロード・データに基づいたWebフォームの作成については、9.6項「ウォークスルー: データを先に作成する方法によるWebフォームの作成」を参照してください。
表9-1は、ヒューマン・タスク・ペイロードによってサポートされる各データ型に対して生成されるWebフォーム・コントロールのタイプを示しています。
表9-1 ヒューマン・タスクのデータ型と対応するWebフォーム・コントロール
データ型 | Webフォーム・コントロール |
---|---|
文字列 |
テキスト・コントロール |
バイナリ |
テキスト・コントロール |
ブール |
BooleanCheckbox この要素が必須である場合、選択すると、値がtrueになり、選択されないと、falseに設定されます。コントロールがオプションの場合、値は指定されません。ラベル・プロパティによりtrueオプションとfalseオプションのラベルを設定できます。ただし、trueにマップされる最初のオプションのみが表示されます。複数のラベルを追加すると、余分なラベルは自動的に削除されます。 |
整数/Int64 |
テキスト・コントロール |
実数/小数 |
テキスト・コントロール |
間隔 |
テキスト・コントロール |
時間 |
日付コントロール |
コンポーネント |
セクション ビジネス・オブジェクトに基づいて作成されるヒューマン・タスク・ペイロード・データはセクション・フォーム・コントロールに追加されます。コンポーネント内の個々のデータ要素は、他のデータ型と同じフォーム・コントロールを生成します。これらはセクション・コントロールに追加されます。フォームに追加した後で、必要に応じて位置を変更できます。 |
ヒューマン・タスク・ペイロードから生成されるコントロールはほとんどがテキスト・コントロールとして作成されます。ただし、コントロールに対する検証はすべて、基のデータ型に基づいて行われます。たとえば、xsd:integer型は、数値のみを許可します。
要素制限を指定するスキーマ要素は選択コントロールとして生成されます。有効なオプションが4つ以上ある場合、ドロップダウン・リストが作成され、有効な値が3つ以下である場合、ラジオ・ボタンが作成されます。表示形式プロパティを使用して、ラジオ、ドロップダウン、チェック・ボックス間で表示タイプを変更できます。
データ要素からWebフォーム・コントロールを生成した後、次のことを行えます。
ヒューマン・タスクのデータ・ペイロードを更新して、Webフォームを作成し直す。
Webフォーム・エディタ上でコントロールを編集する。
データ要素からWebフォーム・コントロールを生成した後、Webフォーム・コントロール上で次のことを実行できます。
Webフォーム・コントロールの名前を編集できます。Webフォーム・エディタに表示される名前を編集できます。ただし、基のXSDは変更されません。
Webフォーム・コントロールにより使用されるWebフォーム・ルールを作成または編集できます。
Webフォーム・コントロールのデフォルト値を設定できます。
Webフォーム内のWebフォーム・コントロールのレイアウトを編集できます。セクションまたはパネル内のコントロールを必要に応じて移動できます。ただし、繰返しコントロールにより生成されたWebフォーム・コントロールを追加または削除することはできません。
Webフォーム・コントロールの表示形式プロパティを編集できます。詳細は、9.4.3項「表示形式プロパティの概要」を参照してください。
Webフォーム・コントロールのラベルを編集できます。
表示形式プロパティは、データ・ソースから生成されるWebフォーム・コントロールによってのみサポートされます。表示形式プロパティを使用して、Webフォーム上でのコントロールの表示方法を変更できます。たとえば、テキスト・コントロールをドロップダウン・コントロールに変更したり、またその反対を行うことが可能です。これは、フォーム上でのコントロールの外観を変えますが、コントロールのデータ検証方法は変えません。コントロールの検証方法を変更する場合は、ヒューマン・タスク・ペイロード・データを再定義し、Webフォームを作成し直す必要があります。
コントロールの基のデータ型と、バインドされているグローバル要素を確認するには、プロパティ・タブ上にマウスを置きます。拡張されているデータ・ソースに、ツール・チップとしてXSDパスが表示されます。
選択Webフォーム・コントロール(ラジオ、ドロップダウン、チェック・ボックス)の表示形式プロパティを設定すると、ラベル・プロパティが有効になります。ラベル・プロパティに文字列を追加することにより、ユーザーがフォームを使用するときにこのコントロールに入力できる値を制限することができます。フォームが送信されると、値は、選択されたオプション・ラベルと同じになります。
もう一つのラベルの設定方法として、フォームがロードされるとオプションを動的に初期化するルールを使用するという方法もあります。詳細は、第10章「Webフォーム・ルールの使用」を参照してください。
表示形式プロパティは、データ型に基づいている場合、次のコントロールに対しては使用できません。
メッセージ
繰返し
日付、時間、日付/時間
ブール
Business Process Composerを使用して、既存データに基づかないWebフォームを作成できます。Webフォームを作成するためのユース・ケースについては、9.1.1項「Webフォームの概要」を参照してください。
フォームの最初のユース・ケースを使用して、プロジェクトのホームページから直接Webフォームを作成します。Webフォームを作成したら、必要に応じて、Webフォーム・デザイナを使用してフォーム・コントロールを再配置します。
定義されているデータがない状態でWebフォームを作成および編集するには:
プロジェクトのようこそページを使用して新しいWebフォームを作成します。
プロジェクトの編集中であることを確認します。
プロジェクトのようこそページから、「Webフォーム」タブを選択します。
「新規Webフォーム」をクリックし、名前を入力します。
「作成」をクリックします。
Webフォームにコントロールを追加します。
新しいWebフォームを作成したら、必要に応じてフォーム・コントロールを追加し、ユーザーのアプリケーション操作を定義します。詳細は、9.7.1項「Webフォームにコントロールを追加する方法」を参照してください。
WebフォームとWebフォーム・コントロール・プロパティを編集します。
Webフォームとそのコントロールのプロパティを編集すると、動作と外観を定義できます。詳細は、9.7.4項「WebフォームとWebフォーム・コントロールのプロパティを編集する方法」を参照してください。
Webフォームにフォーム・ルールを追加します。
Webフォームにフォーム・ルールを追加すると、さらに動作のカスタマイズと制御が可能です。詳細は、10.2項「フォーム・ルールの使用」を参照してください。
Webフォームをテストします。
Webフォーム・デザイナを使用すると、エンド・ユーザーに対してWebフォームがどのように表示されるかをプレビューできます。詳細は、9.7.7項「Webフォームをテストする方法」を参照してください。
Webフォームを保存します。
Webフォームを保存するには、プロジェクト全体を保存する必要があります。詳細は、4.4.7項「プロジェクトへの変更を保存する方法」を参照してください。
Webフォームをヒューマン・タスクに割り当てます。
Webフォームが完成したら、ヒューマン・タスク・エディタを使用してヒューマン・タスクに割り当てることができます。Webフォームをヒューマン・タスクに割り当てると、Webフォームに追加したコントロールに基づいて、ヒューマン・タスク・エディタでペイロード情報が自動的に生成されます。ヒューマン・タスクに定義されている既存のペイロードがある場合、Webフォームによって定義される新しいペイロードで置き換えられます。
ヒューマン・タスクへのWebフォームの割当てについては、11.3.11項「ヒューマン・タスクのプレゼンテーションの指定方法」を参照してください。
Business Process Composerを使用し、既存のヒューマン・タスク・ペイロードに基づいて新しいWebフォームを作成することができます。Webフォームを作成するためのユース・ケースについては、9.1.1項「Webフォームの概要」を参照してください。
ヒューマン・タスク・ペイロードは、ヒューマン・タスク・エディタを使用して作成されます。ペイロードに基づいてWebフォームを作成すると、ペイロードは読取り専用になります。次の条件が適用されます。
Webフォームを作成した後で、ペイロード・シグネチャを更新することはできません。つまり、データ・オブジェクトを追加または削除したり、データ型を変更することはできません。ただし、ヒューマン・タスク・ペイロードに対して複合データ型を定義している場合、その基になっているビジネス・オブジェクトを編集することにより、データ型を変更できます。
ヒューマン・タスク・ペイロードに基づいてWebフォームを作成した後、基のデータ構造を必要とするWebフォーム・コントロールをフォームに追加することはできません。フォーム・エディタを使用してWebフォームにWebフォーム・コントロールを追加するときに必要となる追加データは、基のスキーマには追加されず、ヒューマン・タスク・ペイロードでは使用できません。
複合データ・オブジェクトに基づいてヒューマン・タスク・ペイロードを作成していない場合、ペイロードを変更するにはWebフォームとヒューマン・タスクとの関係を解除し、ペイロードを変更して、この新しいペイロードに基づいて新しいWebフォームを作成する必要があります。
既存のペイロードに基づいて新しいWebフォームを作成および編集するには:
新しいヒューマン・タスクを作成し、そのペイロードを定義します。
新しいヒューマン・タスクを作成します。詳細は、11.3.2項「新しいヒューマン・タスクの作成方法」を参照してください。
新しいWebフォームのベースとして使用するペイロードを作成します。詳細は、11.3.10項「ヒューマン・タスクに対するデータ・ペイロードの作成および構成方法」を参照してください。
ヒューマン・タスクを開きます。詳細は、11.3.3項「ヒューマン・タスクを開く方法」を参照してください。
「Basic」タブを選択します。
「プレゼンテーション」領域で「Webフォーム」を選択し、「追加」アイコンをクリックします。
Webフォームの名前を入力し、「ペイロードに基づく」を選択します。
「作成」をクリックします。
Webフォームが作成され、現在のヒューマン・タスクに割り当てられます。
「編集」をクリックして、Webフォームを編集します。
Webフォーム・エディタに空白フォームが表示されます。
ペイロード・データからWebフォーム・コントロールを生成します。
ペイロードに基づいてWebフォームを作成したら、ペイロード・データを使用して、対応するWebフォーム・コントロールを生成できます。ペイロード・データは、Webフォーム・エディタの左側にあるデータ構造ペインに表示されます。
詳細は、9.7.2項「データ・ソースに基づいてコントロールを追加する方法」を参照してください。
Webフォーム・コントロールを追加します。
必要に応じて、ユーザーとアプリケーションとの相互作用を定義するフォーム・コントロールを追加できます。詳細は、9.7.1項「Webフォームにコントロールを追加する方法」を参照してください。
注意: Webフォームのルック・アンド・フィールを改良するためのコントロールを追加できます。ただし、追加するデータ・コントロールは、基のペイロードを反映しません。 |
WebフォームとWebフォーム・コントロール・プロパティを編集します。
Webフォームとそのコントロールのプロパティを編集すると、動作と外観を定義できます。詳細は、9.7.4項「WebフォームとWebフォーム・コントロールのプロパティを編集する方法」を参照してください。
Webフォームにフォーム・ルールを追加します。
Webフォームにフォーム・ルールを追加すると、さらに動作のカスタマイズと制御が可能です。詳細は、10.2項「フォーム・ルールの使用」を参照してください。
Webフォームをテストします。
Webフォームの設計時、その外観とフォーム・ルールの動作をテストすることができます。詳細は、9.7.7項「Webフォームをテストする方法」を参照してください。
Webフォームを保存します。
Webフォームを保存するには、プロジェクト全体を保存する必要があります。詳細は、4.4.7項「プロジェクトへの変更を保存する方法」を参照してください。
新規Webフォームの作成後、Webフォーム・エディタを使用して、Webフォーム・コントロールの追加、フォーム・コントロール・プロパティの編集、Webフォームのテストを行うことができます。
Webフォーム・コントロール・パレットからWebフォーム・キャンバスにドラッグ・アンド・ドロップすることにより、コントロールをWebフォームに追加できます。
コンポーネント・パレットからコントロールを追加するには:
コントロールを追加するWebフォームを開きます。
コンポーネント・パレットで、追加するコントロールをクリックして、フォーム・キャンバスにドラッグします。
コンポーネント・パレットからコントロールをドラッグし始めると、フォーム・キャンバスでの位置に応じて位置カーソルが変化します。次のような位置カーソルがあります。
マウス・ボタンを放すと、新しいコントロールが追加されます。
ヒューマン・タスクのペイロード・データに基づいてWebフォームを作成した後、ペイロードで定義されているデータ要素に対してWebフォーム・コントロールを自動的に生成できます。すべてのデータ要素または個々のデータ要素からフォーム・コントロールを生成できます。
詳細は、9.6項「ウォークスルー: データを先に作成する方法によるWebフォームの作成」を参照してください。
ペイロード内のすべてのデータ要素に対してフォーム・コントールを生成するには:
ヒューマン・タスク・ペイロードに基づいて作成したWebフォームを開きます。
図9-4で示されているように、「データ・ソース」ペインで、データ要素ツリー内のHumanTaskPayloadノードの右側にある緑の「追加」(+)アイコンをクリックします。
Business Process Composerにより、ペイロード内の各データ要素に対してWebフォーム・コントールが生成されます。コントロールは、現在選択されているコントロールの上のWebフォームに追加されます。ペイロードの各データ型に対してどのWebフォーム・コントロールが生成されるかについては、9.4項「データ・ソースの概要」を参照してください。
必要に応じて、Webフォーム内でコントロールをドラッグ・アンド・ドロップすることによって、コントロールのレイアウトを編集します。
注意: データ要素から繰返しコントロール内に生成されるコントロールを追加することはできません。 |
ペイロード内の個々のデータ要素に対してフォーム・コントールを生成するには:
ヒューマン・タスク・ペイロードに基づいて作成したWebフォームを開きます。
図9-4で示されているように、「データ・ソース」ペインで、HumanTaskPayloadノードの左側の丸をクリックします。
Business Process Composerにより、ペイロード内のデータ要素のツリー・リストが表示されます。
フォームに追加する各データ要素に対して、そのデータ要素の左側にある緑の「追加」(+)アイコンを選択します。
Business Process Composerにより、データ要素に対してフォーム・コントールが生成されます。データ要素を個別に追加すると、フォーム・コントロールはフォームの開始時に直接追加されます。フォーム・パネルには追加されません。
必要に応じて、Webフォーム内でコントロールをドラッグ・アンド・ドロップすることによって、コントロールのレイアウトを編集します。
注意: データ要素から繰返しコントロール内に生成されるコントロールを追加することはできません。 |
Webフォーム・エディタでは、データ・ソースから自動的に生成されるWebフォーム・コントロールを表示できます。
データ・ソースから作成されたWebコントロールを表示するには:
Webフォームを開きます。
「データ・ソース」パネルを開きます。
図9-7に示されているように、フォーム・コントロールを表示アイコンをクリックします。
生成された各Webフォーム・コントロールが、Webフォーム・キャンバスで青に強調表示されています。
Webフォームのプロパティを編集して、Webフォームの一般設定およびスタイルを構成できます。Webフォーム・コントロールのプロパティを編集し、Webフォームでのコントロールの表示方法を構成することもできます。
Webフォームのプロパティを編集するには:
Webフォームのプロパティを編集し、フォームの設定と一般スタイルのプロパティを構成できます。Oracle BPMでサポートされるプロパティについては、C.1項「Webフォームのプロパティ」を参照してください。
編集するプロパティが含まれているWebフォームを開きます。
フォーム・キャンバスの上部にあるWebフォーム・ヘッダーをクリックします。
Webフォームのプロパティ・タブが、プロパティ・エディタで表示されます。
プロパティ・エディタで、Webフォームのプロパティを編集します。
Webフォーム・コントロールのプロパティを編集するには:
個々のフォーム・コントロールのプロパティを編集して、動作とスタイルを構成できます。各フォーム・コントロールで使用できるプロパティについては、C.2項「Webフォーム・コントロールのプロパティ」を参照してください。
編集するコントロールが含まれているWebフォームを開きます。
フォーム・キャンバスで、コントロールを選択します。
フォーム・キャンバスでコントロールを選択すると、それが強調表示されます。
プロパティ・エディタで「設定」または「スタイル」タブを選択し、必要に応じてプロパティを編集します。
サポートされている各Webフォーム・コントロールのプロパティについては、付録C「Webフォーム・コントロールのプロパティ」を参照してください。
プロジェクトのホーム・ページからBPMプロジェクトのWebフォームを削除できます。
注意: ヒューマン・タスクに関連付けられているWebフォームを削除することはできません。ヒューマン・タスクに関連付けられているWebフォームを削除する必要がある場合は、ヒューマン・タスク・エディタを使用して、その関連付けを解除する必要があります。 |
Webフォームを削除するには:
プロジェクトのホームページに移動します。
「Webフォーム」タブを選択し、削除するWebフォームの上にカーソルを置きます。
「削除」アイコンをクリックし、「OK」をクリックしてWebフォームの削除を確定します。
プロジェクトを保存します。プロジェクトを保存しない場合、Webフォームの削除はプロジェクト内に保持されます。
Webフォームからフォーム・コントロールを削除するには、Webフォーム・デザイナを使用します。
注意: コントロールを削除した後で元に戻すことはできません。新しいコントロールをWebフォームに追加し、そのプロパティを構成する必要があります。 |
Webフォームまたは組織コントロールからコントロールを削除するには:
削除するコントロールが含まれているWebフォームを開きます。
コントロールをクリックして選択します。
コントロールを選択すると、図9-8に示すように、強調表示されます。
注意: 組織コントロールではなく、削除するコントロールを個別に選択していることを確認します。 |
「クリックして削除」ボタンをクリックします。
Webフォームから組織コントロールを削除するには:
編集する組織コントロールが含まれているWebフォームを開きます。
削除する組織コントロールをクリックします。
組織コントロールを選択すると、コントロールとそれに含まれるコントロールすべても選択されます。
「削除」ボタンをクリックします。
注意: 組織コントロールを削除すると、それに含まれるすべてのコントロールも削除されます。 |