在 rtf 模板中显示正确的数据

Display correct data in rtf template

请参阅下面的 XML 模板,该模板由 rtf 模板使用。 我在 XML 中添加了 2 条评论,开头为 -->

<ORDER_HEADER>
  <HEADER_ROW>
    <ORIG_SYS_DOCUMENT_REF>001529872197</ORIG_SYS_DOCUMENT_REF>
    <SALESREP>
      <SALESREP_ROW/>
    </SALESREP>
    </SOLD_TO_CONTACT>
    <SHIP_TO_CONTACT>                                    --> This SHIP TO comes under ORDER HEADER
      <SHIP_TO_CONTACT_ROW>
        <PHONE_NUMBER>6042333125201</PHONE_NUMBER>
        <EMAIL_ADDRESS>abc@gmail.com</EMAIL_ADDRESS>
      </SHIP_TO_CONTACT_ROW>
    </SHIP_TO_CONTACT>
    <ORDER_LINES>
      <ORDER_LINES_ROW>
        <ORIG_SYS_LINE_REF>001521970</ORIG_SYS_LINE_REF>
        <ITEM_NUMBER>0158ABCSD012836</ITEM_NUMBER>
        <ORDERED_QUANTITY>2</ORDERED_QUANTITY>
        <SHIP_TO_CONTACT>                                --> This SHIP TO comes under ORDER LINES which again comes under ORDER HEADER
          <SHIP_TO_CONTACT_ROW/>
        </SHIP_TO_CONTACT>
        <INVOICE_TO_CONTACT>
          <INVOICE_TO_CONTACT_ROW/>
        </INVOICE_TO_CONTACT>
        <DELIVER_TO_CONTACT>
          <DELIVER_TO_CONTACT_ROW/>
        </DELIVER_TO_CONTACT>
      </ORDER_LINES_ROW>
    </ORDER_LINES>
  </HEADER_ROW>
</ORDER_HEADER>

我正在设计一个模板,我需要在其中显示收货人联系方式的详细信息,因此我在模板中创建了一个带有结尾的 for 循环。在我预览时加载 XML 后,我得到 2 行供船舶联系,因为 xml.

中有 2 个 SHIP_TO_CONTACT 部分

我的问题是如何只显示 ORDER HEADERS 而不是 ORDER LINES 的 SHIP_TO_CONTACT 的记录?

我正在使用 EBS 12.1.3。

谢谢

您需要向 for-each 对象添加一个 ./。这将迫使 BI Publisher 保持在该级别。

<?for-each:ORDER_HEADER/HEADER_ROW?>
<?ORIG_SYS_DOCUMENT_REF?>
<?for-each:./SHIP_TO_CONTACT/SHIP_TO_CONTACT_ROW?>
<?PHONE_NUMBER?>
<?end for-each?>
<?end for-each?>

我用这个测试过XML;您提供的 XML 似乎有几个问题。

<ORDER_HEADER>
  <HEADER_ROW>
    <ORIG_SYS_DOCUMENT_REF>001529872197</ORIG_SYS_DOCUMENT_REF>
    <SHIP_TO_CONTACT>                              
      <SHIP_TO_CONTACT_ROW>
        <PHONE_NUMBER>6042333125201</PHONE_NUMBER>
        <EMAIL_ADDRESS>abc@gmail.com</EMAIL_ADDRESS>
      </SHIP_TO_CONTACT_ROW>
    </SHIP_TO_CONTACT>
    <ORDER_LINES>
      <ORDER_LINES_ROW>
        <ORIG_SYS_LINE_REF>001521970</ORIG_SYS_LINE_REF>
        <ITEM_NUMBER>0158ABCSD012836</ITEM_NUMBER>
        <ORDERED_QUANTITY>2</ORDERED_QUANTITY>
        <SHIP_TO_CONTACT>                             
          <SHIP_TO_CONTACT_ROW><PHONE_NUMBER>test</PHONE_NUMBER></SHIP_TO_CONTACT_ROW>
        </SHIP_TO_CONTACT>
      </ORDER_LINES_ROW>
    </ORDER_LINES>
  </HEADER_ROW>
</ORDER_HEADER>