1

変数を使用してフィールドにアクセスする必要があります。

  1. 変更する必要があるフィールドのパスを含む環境変数があります。SET Environment.Variabili.Mappings.mapping[1].xpath='trades.trade[1].id';

  2. 環境変数 es.SET OutputRoot.XML.MxML.{Environment.Variabili.Mappings.mapping[1].xpath}='test'; を使用してこのフィールドの値を変更したい

ただし、フィールドは変更されませんが、次のような別のフィールドが作成されます。

<MxML>
  ...
  ...
  ...
  <trades.trade[1].id>test</trades.trade[1].id>
<MxML>

XML フィールドに動的にアクセスすることは可能ですか?

タイ。よろしく。

4

1 に答える 1

0

誤って XML ドメインを使用しています。あなたの声明は SET OutputRoot.XMLNSC.MxML...

ESQL SET ステートメントは、仕様に従って動作しています。の値から取得した名前で新しいタグを作成しました。Environment.Variabili.Mappings.mapping[1].xpath

出力ツリー内にサブフィールドを動的に作成する場合は、値をトークン化するための ESQL をEnvironment.Variabili.Mappings.mapping[1].xpath 記述し、CREATE ステートメントを使用して出力ツリー内に各フィールドを作成する必要があります。

コードを作成する前に、設計の変更を検討することをお勧めします。環境ツリーでツリー構造を作成し、それを OutputRoot.XMLNSC にコピーする方が簡単です。

于 2015-01-02T13:55:14.957 に答える