CookBook

IM-LogicDesigner マッピング機能におけるデータ型変換について

投稿日:

IM-LogicDesigner ではマッピング設定で、型が異なる項目をマッピングすると暗黙的な型変換が行われます。

マッピング設定についての詳細は IM-LogicDesigner チュートリアルガイド マッピング設定を行う をご参照ください。

データ型毎の変換の仕様については IM-LogicDesigner データ型変換 仕様書 をご参照してください。

このCookbookでは、データ型変換の例としてstring 型から storage 型にマッピングを行うと暗黙的な型変換が行われ 、パブリックストレージに変換されることを紹介します。

string 型から storage 型への暗黙的な型変換を利用することで、パブリックストレージ取得(Public Storage Acquisition)タスクの配置、および、そのタスク出力のマッピングを省略することが可能です。

完成イメージ

storage 型を入力値とするストレージファイル読み込み(文字列)(Load Storage File (Character String))タスクに対し、 パブリックストレージのパスを表す string 型の値をマッピングします。

マッピングにより暗黙的な型変換が行われ、ストレージファイル読み込み(文字列)(Load Storage File (Character String))タスクにて、パブリックストレージの内容が正しく読み込まれること確認します。

レシピ

1. パブリックストレージに検証用のフォルダとファイルを作成して配置する

2. 暗黙的なデータ型変換を利用するフロー定義を作成する

3. フローの実行と結果を確認する

1. パブリックストレージに検証用のフォルダとファイルを作成して配置する

定数「PUBLIC_STORAGE」に指定するパスにファイルを配置します。

サンプルでは cookbook/test.txt とします。

1. 「システム管理」→「ファイル操作」 をクリックします。

2. 左側のツリーからディレクトリを作成したい位置をクリックします。

サンプルでは default ディレクトリ直下にディレクトリを作成します。

「Create directory」をクリックし、「Create directory」画面からディレクトリを作成します。

3. ディレクトリが作成できたら、ファイルをアップロードします。

アップロードしたいディレクトリをクリックし、「Add files」をクリックしてファイル選択ダイアログからファイルを選択します。

4. ファイルが配置されたことを確認します。

サンプルでは cookbook フォルダ配下に Hello! Cookbook と記載された test.txt を配置しています。

2. 暗黙的なデータ型変換を利用するフロー定義を作成する

フロー定義の処理は以下の通りです。

1. ストレージファイル読み込み(文字列)(Load Storage File (Character String))タスク

2. ログ出力(Log Output)タスク

フロー定義全体は以下の通りです。

ツールバーの「定数設定」をクリックし、以下の定数を定義します。

  • PUBLIC_STORAGE: パブリックストレージのパス

サンプルでは パブリックストレージのパスをcookbook/test.txtとしています。

マッピング設定を以下のように行います。

1. ストレージファイル読み込み(文字列)(Load Storage File (Character String))タスク

ファイルの内容を読み込むため、 im_readTextToStorage1 を以下のようにマッピングします。

string 型から storage 型に異なる型でマッピングしていますが、自動でデータ型変換が行われパブリックストレージに変換されます。

  • 「Constant - PUBLIC_STORAGE」→「im_readTextToStorage1」

2. ログ出力(Log Output)タスク

読み込んだファイルの内容をログに出力するため、 im_logger1 を以下のようにマッピングします。

  • 「im_readTextToStorage1」→「im_logger1」

これでフロー定義の作成が完了しました。

保存しておきましょう。

3. フローの実行と結果を確認する

1. フローの実行します。

保存したフロー定義を開き、ツールバーの「デバッグ」をクリックします。

「フロー定義のデバッグ」ウィンドウが開いたら、「実行」をクリックします。

次に、実際にフロー定義を実行してみましょう。

ダイアログが表示されたら、「決定」をクリックしてフローの実行を開始します。

2. フローの結果を確認します。

フロー実行後、指定したパスのファイルが読み込まれ、ログに出力されていることを確認します。

サンプルでは ファイルにHello! Cookbookと書き込んでおります。

「ログ出力タスクを実行します。」の下にファイル内容が表示されていれば、ストレージファイル読み込み(文字列)(Load Storage File (Character String))タスクに string 型の値を渡してもデータ型変換が正しく行われていることがわかります。

まとめ

このCookBookでは、 string 型から storage 型にマッピングを行うと暗黙的な型変換が行われ 、パブリックストレージに変換されることを紹介しました。

データ型変換を適切に活用することで、フロー定義をより効率的に記述することができます。

-CookBook
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

No.7 Excel 出力 → 他システム(別サーバ)連携

この記事は、EWS 2017で行われたLogicDesignerの講演内容に関する記事です。 こちらの例では、ファイルサーバ等他のサーバと連携し、別サーバ上のファイルを更新できます。 ロジックフローの …

no image

No.9 音声認識からスケジュール登録

この記事は、EWS 2017で行われたLogicDesignerの講演内容に関する記事です。 こちらの例では、LogicDesignerと音声認識(Web Speech API)の仕組みを利用して、音 …

no image

IM-BloomMaker 実行画面のURLの一部を入力値に割り当てる方法

IM-BloomMaker のコンテンツ定義をルーティング定義に紐づけることで、URLを指定してコンテンツ定義の実行画面を表示することができます。コンテンツ定義には入力値が指定できますが、前処理プログ …

no image

NEologd の辞書を使って全文検索を新語に対応させる方法

この CookBook では、Solr で利用している形態素解析エンジンである kuromoji に NEologd を取り入れビルドを行い、 既存の kuromoji の実装と差し替えることで、NE …

no image

intra-martを初めて使う開発者が、まずは e Builder で「Hello world!」する方法

e Builder は、intra-mart Accel Platform で動作するアプリケーションを開発するための開発支援ツールです。 このレッスンでは、intra-martを初めて使う開発者が …