CData Arc - XML Map - 条件でデータをフィルタする

by 色川穂高 | 2023年04月17日

こんにちは。CData Software Japan の色川です。

この記事では、CData Arc の「XML Map コネクタ」で利用できる「条件」指定についてご紹介します。XML Map コネクタで利用できる「条件」は、入力データ(入力ドキュメント)の内、条件に一致するレコードのみを出力対象としたい場面で活用できる機能です。

XML Map コネクタ

XMLMap コネクタは、CData Arc の中でも中核的なコネクタです。CData Arc は、データの操作と変換の中間形式としてXML を使用します。多くのコネクタは、さまざまな形式のファイルをXML に、またはその逆に変換します。さらにCData Arc はXML を使用してデータベースやSaaS などバックエンドシステムの入力と出力をモデル化します。この仕組みにより、様々なフォーマットのファイルやデータベース・SaaS などのバックエンドシステムをシームレスにつなぐことができます。

XML Map コネクタでの「条件」指定

既存のCSV ファイルをデータソースとする場合など、入力データ(入力ドキュメント)の内、条件に一致するレコードのみを出力対象としたいケースがあると思います。

入力ドキュメント(メッセージファイル)の内、指定した条件に一致するデータだけを出力したい場合、XML Map コネクタの「条件」設定を活用することができます。「条件」は宛先側のノードに追加する形で指定します。条件が設定されている場合、指定した条件が一致するデータのみが出力対象として処理されます。

「条件」を指定するには、条件エディタで設定する方法と、ArcScript を利用してカスタム条件を記述する方法の2種類があります。それぞれの方法を例とともにご紹介します。
CData Arc - Conditionals | Version 22.0.8473

A. 条件エディタで指定する

条件エディタを使用すると、宛先ノードを出力対象とするかを決定する条件および条件のグループを作成できます。条件エディタは、データソース系コネクタで利用できる条件エディタと同じように、対象とする項目や比較する演算子、比較する値をGUI で組み立てていくことが出来ます。



    
        100
        A
        X
    
    
        200
        B
        Y
    
    
        300
        C
        Z
    

例えば、上に記載した入力ドキュメント(メッセージファイル)の内、「col1 が200」のItem のみを出力したい場合、条件エディタでこのように設定します。

B. ArcScript でカスタム条件を記述する

比較する値が静的に決まる場合(A の例での200)は条件エディタが便利ですが、入力ドキュメント(メッセージファイル)内の項目を比較したい場合等、比較対象とする双方の値を動的に指定したい場合もあると思います。その場合は、ArcScript を利用してカスタム条件を記述することで実現することができます。



    200
    
        100
        A
        X
    
    
        200
        B
        Y
    
    
        300
        C
        Z
    

例えば、上に記載した入力ドキュメント(メッセージファイル)の内、「col1 がHead ノードの値と等しい」Item のみを出力したい場合、カスタム条件としてこのように記述します。

まとめ

XML Map コネクタは、CData Arc の中でも中核的なコネクタです。今回の記事でご紹介した「条件」設定を含め、マッピングに必要とされる豊富な機能を提供しています。XML Map コネクタの詳細については、ヘルプトピックもぜひご参照ください。
CData Arc - XML Map Connector Overview | Version 22.0.8473

皆さんのつなぎたいシナリオでぜひ CData Arc を試してみてください。
CData Arc - セキュアなデータ連携とマネージドファイル転送(MFT)

製品を試していただく中で何かご不明な点があれば、テクニカルサポートへお気軽にお問い合わせください。

この記事では CData Arc™ 2022 - 22.0.8473.0 を利用しています。

トライアル・お問い合わせ

関連コンテンツ