5.6.7 代入アクティビティ
次に示す処理を実行するための定義をするアクティビティです。
-
変数(基本型・メッセージ型)をほかの変数に代入する
-
変数の一部をほかの変数に代入する
-
一般式を作成し,変数に代入する
一般式の評価結果は,文字列型として取得(java.lang.Stringへマッピング)されます。
-
固定値をほかの変数に代入する
代入アクティビティは,[代入アクティビティ]ダイアログで詳細を定義します。
なお,変数に値を代入する際に,変数の型が異なっていても,自動的に型を変換して代入できる場合があります。ただし,固定値を代入するときは,自動的な型の変換は行われません。変換の可否と変換規則を次の表に示します。
代入する値のデータ型 |
変換後のデータ型 |
||||||
---|---|---|---|---|---|---|---|
boolean |
numeric |
string |
メッセージ |
||||
XML |
non-XML |
any |
|||||
boolean |
− |
○※1 |
○※2 |
× |
× |
× |
|
numeric |
○※3 |
− |
○※4 |
× |
× |
× |
|
string |
○※5 |
△※6 |
− |
× |
× |
× |
|
メッセージ |
XML |
× |
× |
× |
− |
× |
○ |
non-XML |
× |
× |
× |
× |
− |
○ |
|
any |
× |
× |
× |
○ |
○ |
− |
代入アクティビティでは,コピー元とコピー先に指定できない組み合わせがあります。コピー元とコピー先の組み合わせを次の表に示します。
コピー元 |
コピー先 |
||||||||
---|---|---|---|---|---|---|---|---|---|
変数(メッセージ型) |
変数(基本型) |
変数の部分(メッセージ型)※ |
変数の部分(基本型)※ |
||||||
XML |
non-XML |
any |
XML |
non-XML |
XML |
non-XML |
|||
変数(メッセージ型) |
XML |
○ |
× |
○ |
× |
○ |
× |
× |
× |
non-XML |
× |
○ |
○ |
× |
× |
× |
× |
× |
|
any |
○ |
○ |
○ |
× |
× |
× |
× |
× |
|
変数(基本型) |
× |
× |
× |
○ |
× |
× |
○ |
× |
|
変数の部分(メッセージ型) |
XML |
○ |
× |
× |
× |
○ |
× |
× |
× |
non-XML |
× |
× |
× |
× |
× |
× |
× |
× |
|
変数の部分(基本型) |
XML |
× |
× |
× |
○ |
× |
× |
○ |
× |
non-XML |
× |
× |
× |
○ |
× |
× |
○ |
× |
|
式 |
× |
× |
× |
○ |
× |
× |
○ |
× |
|
固定値(テキスト) |
○ |
○ |
○ |
○ |
○ |
× |
○ |
× |
|
固定値(非テキスト) |
× |
○ |
○ |
× |
× |
× |
× |
× |
(1) 定義手順
定義の手順を次に示します。
-
代入アクティビティをキャンバスに配置します。
アクティビティを配置する方法については,「5.4.1 アクティビティを配置する」を参照してください。
-
次のどちらかの方法で[代入アクティビティ]ダイアログを表示させます。
-
キャンバスの代入アクティビティをダブルクリックする
-
キャンバスの代入アクティビティを選択して右クリックし,[設定]を選択する
[代入アクティビティ]ダイアログが表示されます。
-
-
[代入アクティビティ]ダイアログに必要な情報を入力します。
[代入アクティビティ]ダイアログの表示・入力内容の詳細については,マニュアル「サービスプラットフォーム リファレンス」の「1.4.12 代入アクティビティダイアログ」を参照してください。
[コピー元]および[コピー先]のデータを追加または編集する場合は,[追加]ボタンまたは[編集]ボタンをクリックしてください。表示されるダイアログ([代入アクティビティ]サブダイアログ)で,[コピー元]および[コピー先]に設定するデータを追加,編集できます。また,設定する値が変数で,変数の内容を編集する場合は,[代入アクティビティ]サブダイアログの[編集]ボタンをクリックします。表示される[変数・相関セット一覧]ダイアログで,変数の内容を編集できます。
[代入アクティビティ]サブダイアログについては,マニュアル「サービスプラットフォーム リファレンス」の「1.4.13 代入アクティビティサブダイアログ」を参照してください。[変数・相関セット一覧]ダイアログの詳細については,マニュアル「サービスプラットフォーム リファレンス」の「1.4.1 変数・相関セット一覧ダイアログ」を参照してください。
-
[OK]ボタンをクリックします。
(2) 定義時の注意事項
-
アクティビティ名はビジネスプロセス(スコープ内も含む)内で一意になるように指定してください。
-
アクティビティ名は64バイト以内にしてください。
-
ダイアログの入力フィールドに制御文字は指定しないでください。
-
1つ以上の代入操作を設定してください。
-
必ずコピー元を設定してください。
-
必ずコピー先を設定してください。
-
コピー元のタイプとして,変数と式のどちらかを設定してください。
-
コピー元の変数が選択されている場合,必ず変数名を設定してください。
-
コピー元の式が選択されている場合,必ず式を設定してください。
-
コピー先とコピー元の変数の型が異なる場合,暗黙的に変換されたり,実行時にエラーが発生したりする場合があります。
-
変数(メッセージ型)から変数(メッセージ型)への代入を定義する場合,それぞれの変数の定義で設定する電文フォーマットには,同じXMLスキーマまたは同じバイナリフォーマットで,かつ同じファイル名の定義ファイルを指定してください。
(3) アクティビティ内でシステム例外が発生した場合の処理
アクティビティ内で発生したシステム例外を,汎用フォルトに変換して送出できます。詳細は,マニュアル「サービスプラットフォーム 解説」の「4.7 システム例外をフォルトに変換する汎用フォルト」を参照してください。
(4) 代入処理中に例外が発生した場合の処理
例外が発生した場合の処理は,HCSCサーバランタイム定義ファイルのsyserr-to-fault-convertプロパティまたはsyserr-to-fault-convert-all-activityプロパティの設定によって次のように異なります。
- syserr-to-fault-convertプロパティまたはsyserr-to-fault-convert-all-activityプロパティの指定がONのとき
-
メッセージを出力したあと,フォルト電文に設定する項目を含むメッセージを出力し,フォルトを送出します。
送出するフォルトについては,マニュアル「サービスプラットフォーム 解説」の「4.7.1 システム例外をフォルトに変換する汎用フォルトの概要」を参照してください。
- syserr-to-fault-convertプロパティまたはsyserr-to-fault-convert-all-activityプロパティの指定がOFFのとき
-
システム例外をthrowします。
syserr-to-fault-convertまたはsyserr-to-fault-convert-all-activityプロパティの詳細については,マニュアル「サービスプラットフォーム リファレンス」の「6.5.6 HCSCサーバランタイム定義ファイル」を参照してください。