資料の 英語版 に戻る
DataStage での CEL 式と制限事項
DataStageにおけるCEL表現と制限
最終更新: 2025年3月12日
オーケストレーション・フローで条件、入力値、およびユーザー変数を定義するには、式を使用します。 マイグレーションされたシーケンス・ジョブに式が含まれている場合は、それらの式を CEL 構文に変換する必要があります。
式ビルダーを使用して、組み込み関数およびその他のコーディング・エレメントにアクセスできます。 式ビルダーは CEL (Common Expression Language) を使用します。 組み込み関数について詳しくは、 関数を参照してください。 DataStage-specific関数については、DataStage関数を参照してください。
式は、特定のスコープで実行される特定のジョブのコンテキストで評価されます。 スコープは、プロジェクト、スペース、またはカタログにすることができます。 ctx
オブジェクトを使用して、スコープ、ジョブ、ユーザー、およびパイプラインの名前と ID などのコンテキスト・プロパティーを参照します。 例: ctx.pipeline.id
。
パイプライン内のノードを参照するには、そのノードのプロパティーからノード ID をコピーします。 tasks
オブジェクトを使用して、ノードおよびジョブ結果を参照することもできます。 標準出力を持つコンポーネントは、 results
オブジェクトを使用してフローの結果を保管します。 標準外出力の場合、 results
を使用して、カスタマイズされた出力または出力として設定された変数を取得することもできます。 エラー処理がトリガーされると、例外ハンドラー内で error
オブジェクトを使用できます。
移行されたシーケンサー・ジョブからオーケストレーション・フローが作成される場合、DataStage-specific 式を CEL に変換する必要があります。 式ビルダーでパイプライン・コーディング・エレメントを使用して、関数を置換し、以下の表にある構文の違いの例を参照してください。
式の説明 | CEL | DataStage |
---|---|---|
論理演算子 | a > b || c < 10 |
a > b OR c < 10 |
3 項演算子 | a > b ? 'A' : 'B' |
IF a > b THEN 'A' ELSE 'B' |
ストリングの連結 | "prefix-" + parameter + "-suffix" |
"prefix-" : parameter : "-suffix" |
ストリングの先頭 | param.startsWith('abc') |
Left(param,3) = 'abc' |
サブストリング・インデックス | param.indexOf('abc') |
Index(param, 'abc', 1) |
ストリング置換 | param.replace('he', 'we') |
Ereplace(param, "he", "we") |
ストリング (小文字) | param.lowerAscii() |
DownCase(param) |
Is null | param == null |
IsNull(param) |
トピックは役に立ちましたか?
0/1000