cancel
Showing results for 
Search instead for 
Did you mean: 

Informaçoes no campo "infAdProd"

Former Member
0 Kudos

Bom dia,

Preciso colocar algumas informações adicionais no campo "infCpl" seguindo um padrão XML definido pela ANFAVEA(Associação das Montadoras de Carro). O código abaixo é inserido na BADI "CL_NFE_PRINT", porém no SAP GRC o sistema converte os "Maior que" e "Menor que" de fechamento da "TAG".

Informação inserida na BADI "CL_NFE_PRINT"

<versao>00</versao><fabEntrega>30</fabEntrega>

Alguem sabe como posso resover este problema?

Accepted Solutions (1)

Accepted Solutions (1)

former_member182114
Active Contributor
0 Kudos

Bom dia Lucas,

A sua questão acredito seja a mesma exposta pelo Bruno nesta thread.

Apesar de não estar documentado nela (Bruno se "ouvir" isto por favor atualize ela), a solução dada foi preencher normalmente no layout da ANFAVEA (pelo que me lembro não era XML e sim posicional (campos de tamanho fixo).

Antes de enviar para o GRC (na BADI CL_NFE_PRINT->FILL_HEADER) troca-se todos os espaços desta tag por algum caracter não usado. Exemplo: | pipeline...

Na BADI do GRC ENRICH_XML_DATA (o ponto de disparo é após o validador e antes do assinador) trocar novamente todos os caracteres pipeline por espaço novamente....

Você confirma que precisa de passar um XML na tag a enviar para a ANFAVEA ?

Atenciosamente, Fernando Da Ró

Former Member
0 Kudos

Boa Tarde,

Eu confirmo que preciso enviar um código XML dentro da tag "infCpl"?

Preciso garantir que o SAP GRC / XI não vai converter os simbolos "Maior que" e "Menor que" do código XML.

Como poderei garantir esta configuração?

Att,

Lucas Farley

henrique_pinto
Active Contributor
0 Kudos

Lucas,

de acordo com a especificacao XML (veja no w3.org), o que o codigo CDATA faz u00E9 converter o conteudo dele para texto e nao XML. Assim, vc ter:

<dados><![CDATA[<texto>texto qualquer</texto>]]>

e

<dados>&_lt;texto&_gt;texto qualquer&_lt;/texto&_gt;</dados>

(sem os underlines, tive que por pra aparecer o codigo e nao o caractere)

devem ser interpretados exatamente da mesma maneira pela aplicau00E7u00E3o que lu00EA o XML.

O que a camada proxy do GRC faz u00E9 exatamente converter esses dados de acordo com o que a especificacao define.

Como falei, adicione os campos (sem as tags CDATA) direto na BAdI do ERP, que deve funcionar.

Abs,

Henrique.

former_member182114
Active Contributor
0 Kudos

Bom dia Lucas,

Fui atras da documentação para entender o que vc precisa:

Não precisa dos caracteres fantasmas. Adicionar apenas na BADI do ERP é suficiente para resolver sua questão.

Atenciosamente, Fernando Da Ró

Answers (2)

Answers (2)

Former Member
0 Kudos

Henrique e Fernando,

Obrigado pela ajuda. Problema resolvido.

Realmente o código deve ser convertido devido ao CDATA.

Att,

Lucas Farley

henrique_pinto
Active Contributor
0 Kudos

Segue link de um wiki com sugestao de solucao: [Sample Java Mapping to create ANFAVEA NFeExtension|http://wiki.sdn.sap.com/wiki/x/KIGgC]

Abs,

Henrique.

henrique_pinto
Active Contributor
0 Kudos

Lucas,

pelo que entendi, vc precisa colocar as tags XML <versao> e <fabEntrega> como texto dentro do campo infCpl correto?

Se sim, basta preencher esses valores direto na badi, sem o CDATA, eles devem ser transportados automaticamente como texto pra dentro do XML.

Abs,

Henrique.

Former Member
0 Kudos

Henrique,

Boa tarde,

Eu tenho que passar o código XML dentro da tag "infCPL" conforme manual da ANFAVEA. O problema é porque o SAP GRC converte os caracteres < "Maior que" e "Menor que". Se eu colocar pipeline ou outro caracter qualquer, posso converter esta informação na BADI do GRC? O SAP XI não vai formatar novamente os simbolos "Maior que" e "Menor que"?

Informação que deve ser enviada no XML.