"URL 表記" の小文字化、や "顧客氏名" への敬称付与など、フロー途中で文字列の加工操作が必要となるケースは少なくありません。文字列型の業務データが自動加工されるようにするには、[スクリプト工程]を利用します。ECMAスクリプト(サーバサイド JavaScript)の知識が必要となります。
1. 文字列加工の仕組みについて、概要を理解する
- a. string literal (プリミティブ値)のまま加工
- JavaScript の String メソッドが利用できます
- b. Sting Object による加工
- "new java.lang.String()" により Java の String メソッドも利用可能です
- ワークフロー基盤に組み込まれている JavaScript 実行エンジンによって処理されます (GraalJS)
- 挙動が異なるメソッドの利用は注意が必要です (例: 正規表現、配列、など) (M230)
2. 文字列加工の実用例について、概要を理解する
- a. 文字列連結
- 文字列と文字列を連結します
- b. 部分文字列
- 文字列の一部分を抽出します
- c. 文字列置換
- 大文字小文字の置き換え、正規表現を用いた置き換えなどを行います
- 「a. 文字列連結」には、[データ更新]も利用できます(M227)
- ECMAScript の規定に従い、加法演算子 "+" はいずれかが文字列の場合に必ず文字列連結となります
3. スクリプト工程に ECMAScript を設定する
- 1. 業務データを参照する関数を書く
- var tmp = engine.findDataByNumber("99") のような独自の参照式を利用します
- 2. 文字列を加工するスクリプトを書く
- ECMA に準拠した文字列操作スクリプトを書きます
- 3. 業務データを更新する関数を書く
- engine.setDataByNumber("99", tmp) のような独自の代入式を利用します
- 業務データの代入や更新は、スクリプト処理完了後に一括して行われます
- エラー発生時には代入更新は行われません (次の処理に進みます)
- スクリプトの処理時間は最長で30秒に制限されます (負荷状況により若干変動します)
R2300:スクリプトタスクで利用できるクラス
R2301:Script データ取得/代入
BPMNアイコン:スクリプトタスク
コメント
0件のコメント
サインインしてコメントを残してください。