DM 配信出力ファイル名に対して使用/クエリを実行できません
説明 description
環境
- Campaign Classic
- Campaign
- Campaign Standard
問題/症状
お客様の 1 人が次の問題を報告しました。
mdata フィールドから、outputFile 名を抽出します。outputFile=" "に保存されている場所を attachment(mData_outputFile.png) で確認します。 これを変える最善の方法を知りたい XML データ キャンペーンワークフロー内のエンリッチメントされたフィールドとして渡すタイプフィールド。 したがって、プロモーション履歴テーブルにを追加して、すべての出力ファイル名を保存できます。
このため、mdata は XML フィールドであり、クエリ対象の DB フィールドではありません。 しかし、このシナリオを達成する方法はありますか?
解決策 resolution
この問題の解決方法は次の 2 つです。
- 「ファイル抽出」アクティビティを使用した配信データの抽出 XML 形式を使用します。 これにより、
mdata
も抽出されます。 その後、「ファイル読み込み」アクティビティまたは JavaScript (JS コード ) アクティビティを使用して、そのファイルを解析し、データを取得します。 - の使用 JS コード アクティビティと
queryDef
取りに来るmdata
配信を解析し、XML を解析します。 データを インスタンス変数 次にトランジションに読み込む
お客様に、次のフォローアップクエリがありました。
我々は、次の方法を使用しようとしています: queryDef
対して mdata
それは我々が書く事が出来た 解析方法の場合、推奨される方法は何ですか?
回答:
リクエストは次のようになります。
queryDef operation="select" schema="nms:delivery"
選択
node expr="@id"/
node expr="output/@fileName" label="出力ファイル"/
/select
sysFilter
condition expr="@isModel = 0"/
/sysFilter
orderBy
node expr="@lastModified" sortDesc="true"/
/orderBy
/queryDef
次のように返されます。
delivery-collection
delivery id="11878415"
output filename="abc.txt"
/output
/delivery
/delivery-collection