データ連携に必要なマッピング設定のコツ

この記事では、IM-LogicDesignerのマッピング設定について紹介します。

IM-LogicDesignerでは、ロジックフローに配置したエレメント間でデータを受け渡すために、マッピングを設定します。エレメントの入力値と別のエレメントの出力値を適切に紐づけることで、必要なデータを次の処理へ渡すことができます。

基本的なマッピングから、型の変換や配列、マッピング関数を利用した設定まで、さまざまな方法があります。マッピング設定の基本と応用を確認し、ロジックフローで適切にデータを受け渡せるようになりましょう。

マッピング設定とは

IM-LogicDesignerのマッピングとは、ロジックフロー内でデータの受け渡しを定義する機能を指します。具体的には、ロジックフローが「どのようなデータを受け取り」「どのような結果を返し」「各エレメント間でどのようにデータをやり取りするのか」を設定する際に使用します。

ロジックフローの作成時点では、フローの流れを定義しただけで、実際にどのようにデータを受け渡すまでは決まっていません。そのため、エレメントを配置し、シーケンスを接続しても、マッピングを設定しなければ処理は実行されません。処理を正しく動作させるためには、マッピングによってエレメント間のデータのやり取りを明確に定義する必要があります。

マッピング設定(基本編)

マッピングは、各エレメントのプロパティ画面からマッピング設定画面を開いて行います。入力値と出力値を確認し、値をドラッグして紐づけることで設定できます。

マッピングのパターン

マッピングには、データの型や構造などに応じて、さまざまなパターンがあります。ここでは、代表的なパターンを紹介します。

同じ型同士のマッピング

入力値と出力値が同じ型の場合のマッピングです。

たとえば、入力値が文字列型(string)で、出力値も文字列型(string)の場合、そのまま値を受け渡すことができます。

違う型に変換するマッピング

入力値と出力値の型が異なる場合のマッピングです。

たとえば、入力値がIM-LogicDesignerで取得したシステム日時(date型)で、出力値がデータベースのタイムスタンプ型の打刻日時(sqltimestamp型)の場合、型を変換して値を受け渡すことができます。

関数を含むマッピング

マッピング関数を使用して、入力値を加工した上で出力値へ受け渡すマッピングです。

たとえば、入力値としてidentifier関数でIDを生成し、出力値でIDを文字列(string)として、値を受け渡すことができます。

マッピング設定(応用編)

基本的なマッピングパターンを確認したら、さらに柔軟なマッピング設定について見ていきましょう。

他のエレメントの出力値を利用する

マッピングでは、設定対象のエレメントだけでなく、他のエレメントの出力値を利用できます。

たとえば、「終了」制御要素のマッピングでは、「エンティティデータ件数の取得」の出力値と「エンティティデータの検索」の出力値をそれぞれ入力値として設定できます。

暗黙的な変数を利用する

マッピング設定では、ロジックフローの実行時に利用できる情報を暗黙的な変数として参照できます。

  • アカウントコンテキスト:ユーザコードやロケールなどのアカウント情報
  • セッション情報:ロジックフローの実行中にセッションに保持されている情報
  • 処理結果情報:マッピング対象となるエレメントの前にあるエレメントの処理結果
  • ユーザコンテキスト:IM-共通マスタで管理されているユーザプロファイル情報
  • 外部ユーザコンテキスト:外部ユーザに関する情報

これらの情報を利用することで、ロジックフローの実行時に取得できる情報をエレメントの入力値として設定できます。

マッピング関数を利用する

マッピング関数を利用すると、マッピング設定の中でデータを加工できます。IM-LogicDesignerでは、四則演算や値の変換など、データの加工に利用できるさまざまなマッピング関数が用意されています。マッピング関数を利用することで、別のエレメントを追加することなく、データの変換や簡単な演算などを行うことができます。

応用的なマッピング設定では、他のエレメントの出力値や暗黙的な変数、マッピング関数などを組み合わせることで、さまざまなデータの受け渡しを定義できます。

まとめ

IM-LogicDesignerでは、マッピングを設定することで、エレメント間で必要なデータを受け渡すことができます。データの型や構造に応じてマッピング方法を選択したり、マッピング関数などを利用してデータを加工したりすることもできます。まずは基本的なマッピングパターンを理解し、必要に応じて他のエレメントの出力値や暗黙的な変数、マッピング関数などを活用して、柔軟なデータ連携を実現しましょう。

intra-martでは、IM-LogicDesignerをもっと知っていただくために、マニュアルやコンテンツなどを豊富にご用意しています。IM-LogicDesignerの機能を最大限に発揮させるためにもぜひご活用ください。