XMLPort Omitir etiquetas vacías
Frecuentes
Visto 3,994 veces
2
Creé un XMLport en Dynamics Nav. El problema que tengo es que aparecen etiquetas vacías en el XML y necesito eliminarlas. tengo que hacer para arreglarlo?
3 Respuestas
1
Debe agregar código al disparador OnBeforePassVariable de cada uno de sus elementos y atributos. Simplemente verifique si el valor está vacío y omítalo.
awesomefield - Export::OnBeforePassVariable()
IF awesomefield = '' THEN
currXMLport.SKIP;
Respondido el 28 de Septiembre de 16 a las 10:09
0
Por defecto, los elementos nuevos en un XMLport tienen sus propiedades "MinOccurs" y "MaxOccurs" establecidas en "Once". Intente establecer la propiedad "MinOccurs" para ese elemento en "Cero". Esto podría funcionar.
Respondido el 21 de Septiembre de 16 a las 21:09
0
Simplemente use la función XMLDoc.transformNodeToObject con esta hoja de estilo
<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>
respondido 23 mar '20, 11:03
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas navision dynamics-nav or haz tu propia pregunta.
Exporte su XMLPort en formato de texto y publíquelo aquí. Es bastante difícil averiguar qué podría estar mal a partir de su descripción. - Alex Peck
Realmente no nos estás dando mucho con lo que trabajar aquí. Publique su definición de XMLPort para recibir ayuda. - Kallja