変換関数

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む3読むのに数分
  • スクリプトを記述する必要なく、データピル値を変換します。変換関数を使用して、テキストの再フォーマット、数値計算の実行、潜在的に危険な SQL ステートメントのサニタイズ、複合的なオブジェクトの生 XML へのシリアル化を行います。

    使用可能な変換関数のカテゴリには、日付と時刻文字列ユーティリティ単純な数式シェル引数のサニタイズSQL のサニタイズ複合データが含まれます。変換関数の使用例を次に示します。

    • CMDB にデータ連携する前に文字列から空白をトリミングします。
    • 特定のタイムゾーンにローカライズする日付または時刻に日、時、分、および秒を追加します。
    • 統合ハブ スポークの JDBC ステップの一部として挿入されないように SQL 値をサニタイズします。
    • サードパーティデータベース内で同じ値の優先度マップから適切な値を取得します。
    • REST ステップ[要求本文] フィールドの一部として複合オブジェクトを 生 XML に変換します。
    注:
    現在、カスタム変換関数はサポートされていません。フローデザイナー データを変換するカスタム関数の作成方法については、「インラインスクリプト」を参照してください。

    変換関数の適用

    フローを設計または作成するときに、データピルに変換関数を適用できます。変換関数を適用するには、データピルをポイントするかタブで移動して、表示される f(x) (関数アイコン) アイコンを選択します。アイコンを選択すると、[利用可能な変換 (Available Transforms)] リストが表示されます。データピルに適用する変換関数を選択し、必須フィールドに情報を入力して、[適用] を選択します。選択した変換関数が [適用された変換 (Applied Transforms)] リストに表示されます。

    データピルへの変換関数の適用

    複数の変換関数の適用

    同じデータピルに複数の変換関数を適用できます。[適用された変換 (Applied Transforms)] リストに一覧表示されているとおりに、変換関数は上から下へ順番に適用されます。たとえば、[文字列から日付 (String to Date)] 変換関数を適用してから、[時間を追加 (Add Time)] 変換関数を適用することができます。

    適用された変換関数の表示

    [適用された変換 (Applied Transforms)] リストを確認して、データピルに適用されている変換関数を特定できます。フローまたはアクションを設計または作成する場合は、データピルをポイントするかタブで移動して、f(x) (選択されている関数アイコン) アイコンを選択します。フロー実行の詳細で適用された変換関数を表示することもできます。
    注:
    適用された変換機能の出力値はフィールド値であり、表示値ではありません。
    データピルが特定のタイプの入力にドロップされると、入力に関連する変換関数カテゴリが自動的に提案されます。たとえば、SQL ステートメント内の特殊文字をエスケープし、シェルスクリプトにスクリプトが挿入されないようにし、API または操作要求を検証するための変換関数が提案されます。現在、システムでは次の入力に対して変換関数カテゴリが提案されます。

    デザインの検討

    有効なタイプの入力のデータピルに変換関数を適用する
    変換関数を適用する前に、入力のデータピルのタイプを確認してください。無効なデータピルタイプに変換関数を適用すると、システムは変換をスキップします。変換関数によってシステムで解析できない結果が生成された場合にも、エラーが発生します。たとえば、文字列を日付に変換する際に、変換によって有効な日付が生成されない場合、システムはエラーをスローします。
    同じデータピルを使用して、複数の入力に適用された変換関数を確認する
    変換関数は、実行時に特定の入力用に新しい値を作成し、元のデータピルは変更されません。したがって、複数のアクションまたはステップで同じデータピルを使用する場合は、変換関数を個々の入力に適用する必要があります。
    フロー実行の詳細で最終的に変換された値を確認する
    フロー実行の詳細には最終的に変換された値のみが表示され、適用された各変換の値は表示されません。
    変換関数をテストして予期した結果が得られることを確認する
    変換関数がデータピルの予期したランタイム値を生成することを確認します。詳細については、「フローのテスト」および「アクションのテスト」を参照してください。