データの定義
アプリケーションでデータを使用するには、その構造および保存方法を事前に定義する必要があります。
ビジネス・プロセス内で使用されるデータ定義の標準的なワークフロー
データの保存および操作方法の定義は、アプリケーションの設計および開発全体の一部です。
次の一般的なワークフローを使用して、プロセス・アプリケーション内で使用されるデータを定義します。 最初の3つのタスクは必須です。必要に応じて、残りのタスクを完了します。
| タスク | 説明 |
|---|---|
| ビジネス・タイプの定義 | ビジネス・タイプ(ビジネス・オブジェクト、ビジネス例外、列挙型オブジェクトなど)は、アプリケーション内で使用されるデータ構造を定義します。 |
| データ・オブジェクトの作成 | データ・オブジェクトは、ビジネス・プロセス内で使用される情報を格納します。 各アクティビティを、必要なデータ・オブジェクトを持つビジネス・プロセスに関連付けます。 |
| データ関連付けの構成および変換 | データ関連付けは、ビジネス・プロセスのフロー要素の間で情報を渡す方法を定義します。 |
| 式の定義 | 式は、ビジネス・プロセスで使用されるデータを操作します。 |
| ビジネス・インジケータの作成 | ビジネス・インジケータは、ビジネス・プロセスで使用されるキー・パフォーマンス情報を格納します。 |
| 入力および出力引数の定義 | ビジネス・プロセス操作の定義に使用するフロー・イベントを使用すると、入力引数および出力引数を定義できます。 これらの入力引数および出力引数では、プロセスの入力および出力を定義します。 |
「Business Types」ページでできること
「Business Types」ページには、ビジネス・タイプ(ビジネス・オブジェクト、列挙型(enum)オブジェクト、ビジネス例外)の作成および管理に必要なツールの他、XMLスキーマ定義(XSD)ファイルのライフサイクルを別個に管理するために必要なツールも用意されています。 選択したアプリケーション用に作成されたあらゆるプロセスでビジネス・タイプを使用できます。
「Business Types」ページは、次の2つのサブ・ビューに分かれています。
-
ビジネス・タイプ
-
Schema Files
ビュー・オプションを使用してビュー間を行き来します。
図bus-type-view.pngの説明
「Business Types」ビュー
「Business Types」ビューを使用して次のタスクを実行します。
-
「Views」
をクリックして、グリッドまたはリスト形式でビジネス・タイプを表示します。 グリッド・ビューがデフォルトです。
各ビジネス・タイプには、名前、タイプ(ビジネス・オブジェクト、列挙型オブジェクト、列挙型オブジェクト、ビジネス例外)、スキーマおよびファイル名が表示されます。

図bus-object-grid-view.pngの説明
ビジネス・タイプはイメージによっても識別できます。-
手動で作成したビジネス・オブジェクト
-
フォーム・ビジネス・オブジェクト
-
インポートされたビジネス・オブジェクト
-
自動生成されたビジネス・オブジェクト
-
列挙型オブジェクト
-
ビジネス例外
-
-
ビジネス・タイプ名をクリックしてビジネス・タイプ・エディタで編集します。 ファイル名をクリックしてファイルの詳細を表示します。
-
「Include Auto-Generated」を選択して自動生成されたビジネス・タイプを表示します。
アプリケーションに存在する自動生成ビジネス・オブジェクトの数がカッコ内に表示されます。

-
手動で作成したビジネス・タイプの削除
ノート:
「Delete」アイコンは、手動で作成したビジネス・タイプに対してのみ表示されます。 他のアーティファクトによって参照されているビジネス・タイプは削除できません。
「Schema Files」ビュー
「Schema Files」ビューを使用して次のタスクを実行します。
-
「Views」
をクリックして、グリッドまたはリスト形式でスキーマ・ファイルを表示します。 グリッド・ビューがデフォルトです。
スキーマ・ファイルごとに、その名前、それに含まれる要素とタイプの数、およびXSDイメージが表示されます。

図schema-file-grid.pngの説明 -
スキーマ・ファイル名をクリックして詳細を表示し、次のタスクを実行します。
-
ビジネス・オブジェクトへの自動生成されたビジネス・タイプのプロモート。
これは、自動生成されたビジネス・タイプがユーザーによって明示的に作成されていないときに可能です。
-
現在のスキーマ・ファイルからインポートされた他のスキーマ・ファイルの詳細の表示。 (相互に移動できます)
-
-
スキーマ・ファイルを削除します。
ノート:
他のビジネス・オブジェクトで使用されているスキーマ・ファイルは削除できません。
ビジネス・オブジェクトでの作業
ビジネス・オブジェクトを使用すると、関連するタイプのデータをグループ化して、プロセス・アプリケーションに必要なデータ構造を定義できます。 ビジネス・オブジェクトを手動で作成するか、XMLスキーマ定義(XSD)に基づいて作成します。 ビジネス・オブジェクトを定義すると、これらを使用してアプリケーション内にデータを格納するデータ・オブジェクトを定義できます。
手動でビジネス・オブジェクトを作成する場合、モジュールとオブジェクト間の階層関係、およびビジネス・オブジェクトで使用する属性を定義します。
XSDベースのビジネス・オブジェクトのプロパティは変更できないことに注意してください。 ただし、他のXSDベースのビジネス・オブジェクトを指す属性でビジネス・オブジェクトを手動で作成する場合、この属性のプロパティ値を変更できます。
ノート:
XSDに基づいてビジネス・オブジェクトを作成する場合、XSDに対して行われた変更(要素の変更、追加、削除)はビジネス・オブジェクトに反映されません。 変更されたXSDをインポートした後、既存のビジネス・オブジェクトを削除して、変更されたXSD上に新しいビジネス・オブジェクトを作成する必要があります。WSDLファイルで定義したインライン・タイプに基づいたビジネス・オブジェクトを作成できません。 ただし、Webサービス接続を作成する場合、読取り専用のビジネス・オブジェクトがWSDLファイルから自動的に作成されます。 これらの読取り専用のビジネス・オブジェクトに基づいて、データ・オブジェクトを作成できます。
WSDLファイルおよびWebサービス接続についてさらに学習したいですか。 「Webサービス接続の作成」を参照してください。
-
モジュール
モジュールは、階層構造を作成できるようにするコンテナです。 各ビジネス・オブジェクトはモジュールに含まれている必要があります。 新しいビジネス・オブジェクトを作成すると、それは自動的に
BusinessDataモジュール内に作成されます。 モジュール内に追加のビジネス・オブジェクトを作成したり、追加のモジュールを作成することができます。 -
ビジネス・オブジェクト
モジュール内に1つ以上のビジネス・オブジェクトを定義できます。 ビジネス・オブジェクトは他のビジネス・オブジェクトを含むことができます。
-
属性
属性は、格納されていてプロセス・アクティビティで共有できる特別なプロセス・データを定義します。 属性は、実際の概念の特性を表します。 たとえば、ユーザーを表すビジネス・オブジェクトは、通常、
firstnameおよびlastname属性があります。
ドキュメントをビジネス・オブジェクトおよび属性に追加することもできます。 ドキュメントを追加すると、アプリケーションでコラボレートしている他のユーザーがデータ構造を理解しやすくなります。
次の図に、アプリケーションに対して定義されたモジュール、ビジネス・オブジェクトおよびビジネス・オブジェクトの属性の階層構造の例を示します。

図bus-obj-structure.pngの説明
Enumオブジェクト(列挙)は、曜日(日曜日、月曜日、火曜日など)の名前を含むものなど、データ・オブジェクトに事前定義済定数のセットを含むことができるビジネス・オブジェクトの特別な型です。 「列挙型オブジェクトの作成」を参照してください。
ビジネス例外は、ビジネス・プロセスの実行中に発生する可能性がある、予期しない状況を伝達します。 「プロセス」を使用して、アプリケーションのビジネス例外を定義することができます。 「ビジネス例外の作成」を参照してください。
ビジネス・オブジェクトの作成
新しいビジネス・オブジェクト(複雑なデータ型)を手動で登録します。 ビジネス・オブジェクトの作成時に、モジュールとビジネス・オブジェクトの間の階層関係と、ビジネス・オブジェクトで使用される属性を定義します。
XMLからのビジネス・オブジェクトのインポート
XMLスキーマ(XSD)ファイルに基づくビジネス・オブジェクト(複雑なデータ型)をインポートすることができます。 このプロセスでは、モジュールとビジネス・オブジェクトの間の階層関係を定義します。
JSONからのビジネス・オブジェクトのインポート
JSONインスタンスまたはスキーマに基づくビジネス・オブジェクト(複雑なデータ型)をインポートできます。 このプロセスでは、モジュールとビジネス・オブジェクトの間の階層関係を定義します。
JSONスキーマの例を次に示します。
{
"id": "http://some.site.somewhere/entry-schema#",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "schema for an fstab entry",
"type": "object",
"required": [ "storage" ],
"properties": {
"storage": {
"type": "object",
"oneOf": [
{ "$ref": "#/definitions/diskDevice" },
{ "$ref": "#/definitions/diskUUID" },
{ "$ref": "#/definitions/nfs" },
{ "$ref": "#/definitions/tmpfs" }
]
},
"fstype": {
"enum": [ "ext3", "ext4", "btrfs" ]
},
"options": {
"type": "array",
"minItems": 1,
"items": { "type": "string" },
"uniqueItems": true
},
"readonly": { "type": "boolean" }
},
"definitions": {
"diskDevice": {
"properties": {
"type": { "enum": [ "disk" ] },
"device": {
"type": "string",
"pattern": "^/dev/[^/]+(/[^/]+)*$"
}
},
"required": [ "type", "device" ],
"additionalProperties": false
},
"diskUUID": {
"properties": {
"type": { "enum": [ "disk" ] },
"label": {
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$"
}
},
"required": [ "type", "label" ],
"additionalProperties": false
},
"nfs": {
"properties": {
"type": { "enum": [ "nfs" ] },
"remotePath": {
"type": "string",
"pattern": "^(/[^/]+)+$"
},
"server": {
"type": "string",
"oneOf": [
{ "format": "host-name" },
{ "format": "ipv4" },
{ "format": "ipv6" }
]
}
},
"required": [ "type", "server", "remotePath" ],
"additionalProperties": false
},
"tmpfs": {
"properties": {
"type": { "enum": [ "tmpfs" ] },
"sizeInMB": {
"type": "integer",
"minimum": 16,
"maximum": 512
}
},
"required": [ "type", "sizeInMB" ],
"additionalProperties": false
}
}
}「プロセス」内の結果のビジネス・オブジェクトは、次のように表示されます:

図bo.pngの説明
特定のビジネス・ケースでは、「互換性なし」と現在のJSONである変更内容でJSONを(直接更新または新しいバージョンをインポートして)更新する必要がある場合があります。 互換性のないJSONには、次のような変更を含めることができます:
- 一部の要素またはタイプが削除されました
- 複合タイプの一部の属性が新しいタイプに更新されました
- 複合タイプの一部の属性が削除されました
互換性のない変更でJSONを更新しているときは、変更の影響を示す警告メッセージが表示されます。 たとえば、変更をサポートするために一部のビジネス・オブジェクトをアプリケーションから変更または削除する必要があることが通知される場合があります。
XMLスキーマ・ファイルのインポート
XMLスキーマ(XSD)ファイルをインポートおよび保存した後、複合タイプまたは要素を使用して、ビジネス・オブジェクトを作成します。 ルートXSDおよびそのすべての依存関係も更新できます。
ノート:
このインポート機能を使用したスキーマ・ファイルの更新は、XSD詳細ビューにある更新機能とは異なり、現在のスキーマ・ファイルの更新のみ可能です。 現在のスキーマ・ファイルを更新する方法についてさらに学習したいですか。 「XMLスキーマ・ファイルの新しいバージョンのアップロード」を参照してください。XMLスキーマ・ファイルの新しいバージョンのアップロード
「プロセス」を使用すると、既存のXMLスキーマ(XSD)ファイルの新しいバージョンをアップロードして検証することができます。
スキーマ・タイプおよび要素のビジネス・オブジェクトへの昇格
スキーマ・ファイルで使用可能なプロモート機能を使用すると、特定のXMLスキーマ(XSD)タイプまたは要素に基づいたビジネス・オブジェクト(複雑なデータ型)をすばやく作成できます - 詳細ビュー。
ビジネス・タイプの管理
ビジネス・オブジェクトの作成後、その名前をクリックして「Business Types」 - 「Data Structure」ページに移動します。 このページから、ビジネス・オブジェクトの属性のタイプの追加または変更、あるいはドキュメントの追加が可能です。 また、モジュール、ビジネス・オブジェクト、ビジネス例外、列挙型オブジェクトおよび列挙型アイテムの追加と、データ構造へのビジネス・オブジェクトのインポートもできます。
追加できるビジネス・タイプおよび関連アイテムは、階層で強調表示したアイテムに基づいています。

図add-bus-type.pngの説明
階層でビジネス・タイプまたは関連アイテムを強調表示すると、右側のペインに詳細が表示されます。 詳細を編集またはドキュメントを追加できます。 インポートされたビジネス・オブジェクトの場合、ビジネス・オブジェクトのタイプとそのタイプが定義されているファイルも表示されます。
階層でビジネス・タイプまたは関連アイテムを右クリックし、これを削除または移動したり、階層のセクションを折りたたみます。
削除する前によく考えてください。 削除したビジネス・オブジェクト、モジュールまたは属性はリカバリできません。 他の関連アイテムを含むビジネス・オブジェクトまたはモジュールを削除すると、これらも削除されます。 ただし、削除したビジネス・オブジェクトまたはモジュールにビジネス・オブジェクトに基づいた属性が含まれている場合、そのビジネス・オブジェクトは削除されません。
データ・オブジェクトでの作業
一般的に、データ・オブジェクトは、ビジネス・プロセスで使用する情報を格納するために使用する変数です。 これらは、プロセスの設計および実装段階で定義されます。 プロセス・アプリケーションを完了するには、各アクティビティを必要なデータ・オブジェクトに関連付ける必要があります。
実行時には、データ・オブジェクトには、ユーザーがビジネス・プロセスと対話する際に変更される可能性がある情報が含まれます。 プロセスを実行すると、データを格納、アクセスおよび操作できます。 データ・オブジェクト内に格納した値を使用して、プロセスが取得したブランチを決定できます。
「プロセス」は、単純または複合データ型に基づいたデータ・オブジェクトをサポートします。 データ・オブジェクトがどのタイプのデータ型に基づくかは、処理する必要のあるデータ型によって異なります。
-
単純なデータ型に基づく場合
データ・オブジェクトは単純なデータ型に基づくことができます。 これらは、ほとんどのプログラミング言語に共通のコア・データ型です。 次の表は、「プロセス」でサポートされている基本データ型の一覧です。
タイプ 説明 ブール 論理値TrueまたはFalseを表します。 整数 整数を表します。 たとえば、23、-10、0です。 小数 小数の表記で示すことができる数値を表します。 たとえば、3.14、62、0.023です。 実数 浮動小数点の数値を表します。 たとえば、2e-1、2.3E8です。 文字列 一連の文字を表します。 たとえば: このテキストは文字列です。 時間 年-月-日 時:分:秒として示される特定の時間を表します。 たとえば、2014-12-14 13:20:28です。 間隔 年数、月数、日数、時間数、分数、秒数として表される期間を表します。 たとえば、1d3h30mです。 バイナリ イメージやビデオを含め、バイナリ・データを格納するために使用します。 -
複合データ型(ビジネス・オブジェクト)に基づく場合
複合データ型(ビジネス・オブジェクト)に基づくデータ・オブジェクトを使用すると、様々なタイプのデータをグループ化するデータ構造を作成できます。 ビジネス・オブジェクトを使用すると、単純なデータ型に基づくデータ・オブジェクトからデータ構造を作成できます。
たとえば、ID、名前、年齢などの従業員の様々なタイプのデータが含まれる、従業員と呼ばれるビジネス・オブジェクトを作成できます。 単純なデータ型に基づくデータ・オブジェクトとビジネス・オブジェクトに基づくデータ・オブジェクト間の関係は、Javaプログラミング言語のクラスとインスタンス間の関係と同様です。 次の表に、この関係を示します。
データ・オブジェクト 単純なデータ型 id 整数 name 文字列 年齢 整数 SKU 整数 価格 小数 ブランド 文字列 type 整数 データ・オブジェクト 構造 従業員 -
ID (整数)
-
名前(文字列)
-
年齢(整数)
製品 -
SKU (整数)
-
ブランド(文字列)
-
タイプ(整数)
-
価格(10進数)
複合データ・オブジェクトを作成する前に、まず、データ構造を定義するビジネス・オブジェクトを定義する必要があります。
-
データ・オブジェクトの作成
単純なデータ・オブジェクト・タイプまたはビジネス・オブジェクト(複合データ型)に基づいてデータ・オブジェクトを作成できます。 ビジネス・オブジェクトに基づいてデータ・オブジェクトを作成する場合、最初にビジネス・オブジェクトを作成する必要があります。
- 「Application Home」タブで、プロセスを選択した後、「Data Objects」をクリックします。
- 「Data Objects」ダイアログ・ボックスで、「Add」をクリックします。
- データ・オブジェクトの名前を入力するか、デフォルト名を使用し、単純なデータ・オブジェクト・タイプまたはビジネス・オブジェクトに基づいたデータ・オブジェクトを選択して、「Create」をクリックした後、「Close」をクリックします。
ノート:
TaskOutcomeDataObjectという名前のデフォルトのプロセス・データ・オブジェクトは、ヒューマン・タスクが作成されたときに、ヒューマン・タスクの結果に対して自動的に作成されます。 「Edit」および「Delete」リンクは、このデータ・オブジェクトに対して無効になっています。
「データ・オブジェクトでの作業」を参照してください。
データ・オブジェクトの編集または削除
データ・オブジェクトを編集または削除できます。
データ・オブジェクトの編集後、このオブジェクトへのすべての参照が引き続き有効であることを確認する必要があります。 たとえば、データ・オブジェクト・タイプを整数から文字列に変更する場合、そのデータ・オブジェクトを使用するすべての式が引き続き正しく機能することを確認する必要があります。 正しく機能しない場合、アプリケーションは検証されません。
データ・オブジェクトの削除後、そのオブジェクトへのすべての参照が削除されていることを確認する必要があります。 参照には、データ・オブジェクトを使用するデータ関連付けおよび式が含まれています。 削除したデータ・オブジェクトへの参照を削除しないと、アプリケーションは検証されません。









