メインコンテンツまでスキップ

マッピング定義を作成しよう

クエスト概要

連携先システムへのデータを定義した、アウトプット項目一覧の具体的なデータを、インプット項目一覧で定義したデータからどのようにマッピングするのか、ということを定義するクエストです。I/Fの要件定義としては、このマッピング定義のクエストが、最も詳細な内容を詰める必要があるクエストです。項目の加工や条件式の設定もマッピングとあわせて実施できます。また、アウトプット、インプット基本情報の中で変数として定義したものがある場合は、変数の内容についてもこのクエストで定義します。
マッピング定義を実施することで、具体的にどのようなデータから、どのような変換をして、どのようにデータを出力するのか、という一連の連携の流れがつかめます。マッピング定義は、実際に定義して、I/Fを動作させてみて微調整を繰り返すことが発生しやすいので、 実際の定義をする際も、一度で全て固めようとする必要はありません。
マッピングに利用できるパターンは大きく四つあります。


マッピング利用できるパターン

値を設定する

インプットの項目や固定値、またはシステム項目を利用できます。システム項目は、I/Fの実行日等、taiasが提供している項目の中から選択可能です。インプットの項目を加工する必要がない場合や、固定値を出力したい場合は、こちらを利用してください。
値として設定可能なものはこちらです。

関数を追加する

インプットの値を加工したい場合に利用できます。
一つのマッピングにつき複数の関数を定義することも可能です。
利用できる関数一覧はこちらです。

条件分岐を設定する

インプットの値を条件にマッピングする値を変えたい場合に利用できます。
一つのマッピングにつき複数の条件分岐を設定することも可能です。
利用可能な条件はこちらです。


マッピングに利用可能な値一覧

マッピングに利用可能な定数一覧を解説します。

入力項目

インプット項目定義で定義した項目の値を利用します。
アウトプット項目にインプット項目をそのままマッピングするのが最もオーソドックスなマッピングです。

定数

定数を定義したい場合は、マッピング設定の入力欄で指定したい文字列を入力してください。
その場合、入力欄から定数を選択可能ですので選択して定数として宣言して下さい。 定義された値をそのまま返します。文字列、数値、日時など任意のデータの値に定義可能です。
例:
システム固定値、3、1900/01/01、

処理日時

I/Fが実行された処理日時を返します。処理日時に対して日付のフォーマットを指定したい場合は、関数で日付フォーマットを選択した後に、システム項目の処理日時を設定して下さい。
例:
2024/04/01 20:00:00

一意キー

システム内でUUIDを発行して返します。
例:
a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11

行番号

I/F処理時の処理対象の行の位置を返します。
例:
1

JOB ID

JOBに実行時に発行されるIDを返します。
例:
a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11

実行時パラメーター(1~10)

I/F実行時に直接指定される1~10のパラメータに指定した名称を返します。

アクセストークン

アウトプットのシステムで発行されたアクセストークンを返します。
アクセストークンの取得は、アウトプットのシステムの接続情報の定義で定義された内容に従って取得されます。

トークンタイプ

アウトプットのシステムで発行されたトークンタイプを返します。
トークンタイプの取得は、アウトプットのシステムの接続情報の定義で定義された内容に従って取得されます。
例:
bearer

変数

複数の加工を実施する場合に、最初の加工の結果を利用できます。

出力から除外する

アウトプット項目として定義した項目を出力対象から除外したい場合に利用します。


マッピングに利用可能な関数一覧

マッピングに利用可能な関数一覧を解説します。

文字列結合

複数の文字列または配列からのテキストを結合します。
例:
社員(姓)+ " " + 社員(名)
→田中 太郎

文字列分割

指定した文字または文字列の前後でテキストを分割します。
例:
社員氏名を半角スペースで分割し、分割された一つ目の文字列を取得したい。
区切り文字列:" "(半角スペース)
取得対象インデックス:0
※二つ目の文字列を指定したい場合は1を指定する
田中 太郎
→田中

区切り文字列

文字列を分割するための文字列を定義します。
例:
社員氏名を半角スペースで分割し、分割された一つ目の文字列を取得したい。
区切り文字列:" "(半角スペース)
取得対象インデックス:0
※二つ目の文字列を指定したい場合は1を指定する
田中 太郎
→田中

取得対象インデックス

分割した文字列のうち、どれを値として取得するか定義します。
例:
社員氏名を半角スペースで分割し、分割された一つ目の文字列を取得したい。
区切り文字列:" "(半角スペース)
取得対象インデックス:0
※二つ目の文字列を指定したい場合は1を指定する
田中 太郎
→田中

文字列置換

テキスト文字列の一部を別のテキスト文字列に置き換えます。
置換対象の文字列を置換前に定義し、置換したい内容を置換後に定義することで利用できます。
オプションとして、以下定義可能です。

【大文字小文字の区別】
置換対象の文字列について、英字の大文字小文字を区別したい場合にチェックを入れてください。 チェックを入れない場合は大文字小文字の違いを考慮しません。
例:
置換対象の文字列:"abc_de"
置換前:"ABC"
置換後:"XXX"

・大文字小文字の区別のチェック無
→"XXX_de"に変換されます

・大文字小文字の区別のチェック有
→"abc_de"のままになります

【正規表現の利用】
正規表現の利用にチェックを付けた場合、置換前に記載する文字列を正規表現で記載して置換対象をマッチングすることができます。正規表現自体は、シンプルな文字列置換では実現できない置換を実現する場合に有効ですが、記載方法には一定の知識が必要です。※taias I/Fの正規表現はnodeの正規表現を利用しています
例(置換対象の文字列に含まれる改行を全て除きたい場合):
置換前:^\r\n|^\r|^\n
置換後:""※空白
とすることで、置換対象の文字列から改行コードを全て空白に置換して改行無しにすることができます。

【繰り返しマッチする】
置換前に一致する文字列が置換対象文字列に複数あった場合に全て置換したい場合はこちらをチェックしてください。
例:
置換対象の文字列:"abc_de_abc_de"
置換前:"abc"
置換後:"XXX"

・繰り返しマッチするのチェック無
→"XXX_de_abc_de"に変換されます

・繰り返しマッチするのチェック有
→"XXX_de_XXX_de"に変換されます

【マルチライン】
マルチラインとは、正規表現の特殊文字(^,$,.))の一致条件を変更するオプションです。ONとOFFの場合で以下のように変わります。

・マルチラインOFFの場合
^: 文字列全体の最初
$: 文字列全体の末尾
. : 改行コードを含むすべての文字

・マルチラインONの場合
^: 各行の最初
$: 各行の末尾
. : 改行コードを除くすべての文字

例:
置換対象の文字列:"line1\nline2"
置換前:"^line2"
置換後:""※空白

・マルチラインのチェック無
→置換対象文字列から変換されません

・マルチラインのチェック有
→"line1\n"に変換されます

置換前

テキスト文字列の一部を別のテキスト文字列に置き換えます。置換対象の文字列を定義して下さい。

置換後

テキスト文字列の一部を別のテキスト文字列に置き換えます。置換したい内容の文字列を定義して下さい。

文字種変換

指定した文字列を以下の通り指定した設定で変換します。
・全角⇔半角
・英字の大文字⇔英字の小文字
・ひらがな⇔カタカナ
・拗音、促音→直音
・濁音、半濁音→清音

全角

指定された文字列を、全角→半角、半角→全角に変換することができます。
※変換を適用する対象として、カタカナ、数字、英字、記号をカスタム設定で指定できます。
例:
カスタム設定:全角→半角
SAMPLE→SAMPLE

英字

指定された文字列(英字)を、大文字→小文字、小文字→大文字に変換することができます。
例:
カスタム設定:大文字→小文字
SAMPLE→sample

仮名

指定された文字列(かな、カナ)を、ひらがな→カタカナ、カタカナ→ひらがなに変換することができます。
例:
カスタム設定:ひらがな→カタカナ
さんぷる→サンプル

その他

  • 拗促音 -> 直音
    指定された文字列(拗音、促音)を、直音に変換することができます。
    例:ゃッ → やツ

  • 濁音・半濁音 -> 清音
    指定された文字列(濁音、半濁音)を、清音に変換することができます。
    例:がパ → かハ

足し算

二つの数値項目の足し算を行います。

引き算

二つの数値項目の引き算を行います。

割り算

二つの数値項目の割り算を行います。

掛け算

二つの数値項目の掛け算を行います。

日付フォーマット

日付フォーマットに指定できる項目は、データ型が日時になっている必要があります。

年加算

日付項目に指定した数値の年数を加算することができます。
マイナスの値を指定することで前年の値を取得することができます。
例:
加算年数:1
2023/4/1→2024/4/1

加算年数

加算する年数を定義します。

月加算

日付項目に指定した数値の月数を加算することができます。
マイナスの値を指定することで前月の値を取得することができます。
例:
加算月数:-1
2024/4/1→2024/3/1

加算月数

加算する月数を定義します。

日加算

日付項目に指定した数値の日数を加算することができます
マイナスの値を指定することで前日の値を取得することができます。
例:
加算日数:1
2024/4/1→2024/4/2

加算日数

加算する日数を定義します。

日付調整(月初)

値に指定した日付の月初を取得することができます。
例:
4/15→4/1

日付調整(月末)

値に指定した日付の月末を取得することができます。
例:
4/15→4/30

年取得

値に指定した日付の年を取得することができます。
例:
2024/4/15→2024

月取得

値に指定した日付の月を取得することができます。
例:
2024/4/15→4

日付取得

値に指定した日付の日を取得することができます。
例:
2024/4/15→15

時間取得

値に指定した日付の時間を取得することができます。
例:
2024/4/15 10:05→10

分取得

値に指定した日付の分を取得することができます。
例:
2024/4/15 10:05→5

無名配列化

単一項目を並べてオブジェクトではない配列(無名配列)にすることができます。
例:メールアドレス1とメールアドレス2の項目を、一つの配列にしたい場合
"sample@sample.com","sample2@sample.com" →["sample@sample.com","sample2@sample.com"]

エンコード(Base64)

バイナリをBase64にエンコードした文字列に変換することができます。

エンコード(Base64url)

バイナリをBase64URLにエンコードした文字列に変換することができます。Base64URLはBase64形式をURL内でも利用可能にした形式です。


マッピングに利用可能な条件分岐一覧

マッピングに利用可能な条件分岐の一覧を解説します。

等しい

2つの値が同じであることを比較します。

等しくない

2つの値が異なることを比較します。

大きい

2つの値の内、片方の値がもう一方の値よりも大きいことを比較します。

小さい

2つの値の内、片方の値がもう一方の値よりも小さいことを比較します。

以上

2つの値の内、片方の値がもう一方の値と等しいか、それより大きいのかを比較します。

以下

2つの値の内、片方の値がもう一方の値と等しいか、それより小さいのかを比較します。

部分一致

2つの値の内、片方の値の特定の文字列の一部が、もう一方の文字列と一致するかを比較します。

前方一致

2つの値の内、片方の値の文字列の一部が、もう一方の先頭の文字列と一致するかを比較します。

後方一致

2つの値の内、片方の値の文字列の一部が、もう一方の末尾の文字列と一致するかを比較します。

空でない場合

項目に何か値が入っている場合に利用します。

空の場合

項目に何も値が入っていない場合に利用します。

かつ

設定した2つの条件が両方とも満たされている場合に真となります。

または

設定した2つの条件のうち、どちらか一方、または両方が満たされている場合に真となります。


関連リンク

このクエストに関連する機能仕様、FAQのリンクです。
・ 機能仕様
・ FAQ