Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 9238

NTB2B XML Namespace Conteúdo

$
0
0

Bom dia pessoal,


Quando o  GRC gera XML para parceiros B2B o cabeçalho começa assim:


<? xml version = "1.0" encoding = " UTF-8" >

<nfeProc versao="2.00" xmlns="http://www.portalfiscal.inf.br/nfe">

<NFe xmlns="http://www.portalfiscal.inf.br/nfe"> ...

 

Observe como ambos os elementos nfeProc e NFe  têm namespace idênticos.

Quando esta mensagem é enviada para PI , por algum motivo este namespace “redundante” de NFe é descartado e chega ao PI dessa forma::

 

<? xml version = "1.0" encoding = " UTF-8" >

<nfeProc versao="2.00" xmlns="http://www.portalfiscal.inf.br/nfe">

<NFe> ...


Mesmo que este XML seja validado corretamente pelo  SEFAZ um dos nossos clientes está exigindo a namespace “redundante” no elemento NFe (xmlns =" http://www.portalfiscal.inf.br/nfe). Tentei adicionar com um mapeamento XSLT no PI , mas como o nome é redundante o sistema resiste em adicionar. Exemplo de mapeamento XSLT. :


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

    <xsl:output indent="yes"/>

<xsl:strip-space elements="*"/>

<xsl:template match="@*|node()">

<xsl:copy>

<xsl:apply-templates select="@*|node()"/>

</xsl : copy >

</xsl : template>

 

<xsl:template match="*[local-name() = 'NFe']" priority="1">

<xsl:element name="{local-name()}" namespace="http://www.portalfiscal.inf.br/nfe">

<xsl:apply-templates select="@*|node()"/>

</xsl: element>

</xsl : template>

</xsl: stylesheet>


Este exemplo só funciona se eu mudar o namespace para ser ligeiramente diferente do namespace do elemento raiz nfeProc

Alguém tem o mesmo problema? Como você trabalha em torno dele?

 

Muito obrigado,


Aaron


Viewing all articles
Browse latest Browse all 9238

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>