У меня есть следующая структура XML из моего набора данных:
<DATA_DS>
<G_1>
<INVOICE_NUMBER>20005</INVOICE_NUMBER>
<BATCH_SOURCE_NAME>MIGRATION</BATCH_SOURCE_NAME>
<CT_REFERENCE/>
</G_1>
<G_1>
<INVOICE_NUMBER>454162</INVOICE_NUMBER>
<BATCH_SOURCE_NAME>FM Source Number</BATCH_SOURCE_NAME>
<CT_REFERENCE>454162</CT_REFERENCE>
</G_1>
<G_1>
<INVOICE_NUMBER>455920</INVOICE_NUMBER>
<BATCH_SOURCE_NAME>FM Source Number</BATCH_SOURCE_NAME>
<CT_REFERENCE>455920</CT_REFERENCE>
</G_1>
</DATA_DS>
Я поместил следующую логику в свой шаблон RTF внутри FOR-EACH в таблице:
<?choose:?>
<?when://BATCH_SOURCE_NAME='FreightMaster'?><?CT_REFERENCE?><?end when?>
<?when://BATCH_SOURCE_NAME='FreightMaster-deactivated'?><?CT_REFERENCE?><?end when?>
<?when://BATCH_SOURCE_NAME='FM Source Number'?><?CT_REFERENCE?><?end when?>
<?otherwise:?><?INVOICE_NUMBER?><?end otherwise?>
<?end choose?>
Однако мои данные не отображаются правильно. Это выглядит так:
Invoice Number
-----------------
<null>
454162
455920
Предполагалось, что это будет примерно так:
Invoice Number
-----------------
20005
454162
455920
Когда я пытаюсь определить MIGRATION
как параметр, он работает:
<?choose:?>
<?when://BATCH_SOURCE_NAME='MIGRATION'?><?INVOICE_NUMBER?><?end when?>
<?when://BATCH_SOURCE_NAME='FreightMaster'?><?CT_REFERENCE?><?end when?>
<?when://BATCH_SOURCE_NAME='FreightMaster-deactivated'?><?CT_REFERENCE?><?end when?>
<?when://BATCH_SOURCE_NAME='FM Source Number'?><?CT_REFERENCE?><?end when?>
<?otherwise:?><?INVOICE_NUMBER?><?end otherwise?>
<?end choose?>
Фактический результат соответствует ожидаемому результату:
Invoice Number
-----------------
20005
454162
455920
Я знаю, что могу просто указать Имена источников в предложении WHEN
, но есть более 20 Имен источников, и я хотел быупростить код.
Есть идеи, почему он не работает?