2

我在 Dynamics Nav 中创建了一个 XMLport。我遇到的问题是空标签出现在 XML 中,我需要删除它们。我必须做些什么来修复它?

4

3 回答 3

1

您必须将代码添加到每个元素和属性的 OnBeforePassVariable 触发器。只需检查该值是否为空并跳过它。

awesomefield - Export::OnBeforePassVariable()
IF awesomefield  = '' THEN
  currXMLport.SKIP;
于 2016-09-28T09:12:18.570 回答
0

只需将 XMLDoc.transformNodeToObject 函数与此样式表一起使用

 <xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" >

  <xsl:output method="xml" indent="yes" />
  <!--Remove alle empty nodes recursively-->
  <xsl:template match="node() | @*">
    <xsl:copy>
      <xsl:apply-templates select="node() | @*"/>
    </xsl:copy>
  </xsl:template>

  <!--Strip white space between nodes-->
  <xsl:template match="*[normalize-space() = '']"/>
</xsl:transform>
于 2013-04-22T11:05:25.847 回答
0

默认情况下,XMLport 中的新元素的“MinOccurs”和“MaxOccurs”属性设置为“Once”。尝试将该元素的“MinOccurs”属性设置为“零”。这可能会奏效。

于 2016-09-21T20:34:49.723 回答