You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

XSLT 1.0基于DPART段条件提取DCOAD字段赋值变量问题

XSLT 1.0 实现需求的修改方案

原代码的问题在于没有先定位到角色为UU的DPART对应的地址值,同时取值时没有过滤DCOAD段中地址匹配的节点,导致无法精准获取目标数据。可以按照以下逻辑修改:

  1. 先提取PARTN_ROLE为UU的DPART段的ADDRESS值存入变量
  2. 用该地址值过滤匹配DCOAD段,取出对应的NAME和STREET

完整的变量定义及输出代码如下:

<!-- 提取UU角色对应的地址值,存在多个UU段时加[1]取第一个即可 -->
<xsl:variable name="targetAddr" select="/Z1E1P/Z1BP_ISAORDER/DPART[PARTN_ROLE='UU']/ADDRESS" />

<!-- 定义客户姓名变量 -->
<xsl:variable name="Cust_Name" select="/Z1E1P/Z1BP_ISAORDER/DCOAD[ADDRESS = $targetAddr]/NAME" />

<!-- 定义客户街道变量 -->
<xsl:variable name="Cust_Street" select="/Z1E1P/Z1BP_ISAORDER/DCOAD[ADDRESS = $targetAddr]/STREET" />

<!-- 输出要求格式的节点 -->
<Cust_Name><xsl:value-of select="$Cust_Name" /></Cust_Name>
<Cust_Street><xsl:value-of select="$Cust_Street" /></Cust_Street>

内容的提问来源于stack exchange,提问作者John

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.17 05:15:08