on 07-21-2011 1:58 PM
Olá Pessoal,
Estamos emitindo NF-es que possuem vários ítens.
No ECC, visualizando os ítens pela transação J1B3N, esses ítens estão ordenados pelo Número do Ítem ( J_1BNFLIN-ITMNUM ).
No PI-GRC, visualizando pelo Monitor do GRC, esses ítens também estão ordenados pelo Número do Ítem.
Ainda no PI-GRC, visualizando o arquivo XML da NF-e gerado, esses ítens também estão ordenados pelo Número do Ítem.
Logo, No processo final da geração da NF-e, onde é impresso o DANFE, os ítens estão ordenados pelo campo CST/CFOP, conforme legislação.
A pergunta é, existe alguma maneira no PI-GRC em que no momento da geração/envio do arquivo XML da NF-e para a SEFAZ, esses ítens sejam
ordenados conforme é impresso no DANFE, ou seja, ordenado pelo campo CST/CFOP ?
Exemplo:
- Visualização dos Ítens no ECC pela Transação J1B3N.
Ítem Material
-
-
-
-
1910 959111
1920 843587
1930 614076
- Visualização dos Ítens no Monitor do PI-GRC.
Ítem Material
-
-
-
-
1910 959111
1920 843587
1930 614076
- Visualização dos Ítens no DANFE Impresso.
Ítem Material CST/CFOP
-
-
-
-
-
-
1920 843587 010/5403
1930 614076 020/5101
1910 959111 070/5403
Agradeço qualquer sugestão.
Obrigado !
Ivan,
o GRC ordena os itens exatamente como eles chegam na tabela IT_NFE_XML_ITEM da RFC /XNFE/NFE_CREATE.
E a ordem dessa tabela é justamente pelo numero de item (ITMNUM) atribuído pelo ERP na J_1BNFLIN.
Se isso tiver que ser alterado, tem que ser no ERP antes da chamada da /XNFE/NFE_CREATE, pq no GRC o atributo de número de item é atribuído no momento da geração do XML para assinatura
Abs,
Henrique.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Olá Henrique, boa tarde !
Seguindo sua sugestão, fizemos uma análise e fizemos alguns testes da seguinte forma:
No ERP, colocamos um Ponto de Parada no Programa que gera a NF-e, isso antes da execução da Função que envia os dados para o GRC.
Nesse momento, verificamos na Tabela Interna P_IT_NFE_ITEM_TAB, a qual possui os os ítens da NF-e, que os ítens estão ordenados conforme
foram inseridos no momento da criação do Documento.
Função que envia os dados para o GRC:
-
-
call_rfc->znfe_create~call_function( EXPORTING is_nfe_header = nfe_header
it_nfe_header = nfe_header_cat
it_nfe_item_tab = p_it_nfe_item_tab
it_nfe_med = p_it_nfe_med
it_nfe_ref = p_it_nfe_ref
it_nfe_dup = p_it_nfe_dup
iv_version = proxy_version
it_xml_h3 = xml_h3[]
it_xml_h4 = xml_h4[]
CHANGING et_error_status = p_it_error_status
ev_msgtyp = p_ev_msgtyp
subrc = sy_subrc ).
Antes de executarmos a Função acima, alteramos a ordem dos ítens dentro da Tabela Interna P_IT_NFE_ITEM_TAB.
Após isso, acionamos o "F5", entrando na Função acima, a qual nos remete ao GRC indo para a Função "/XNFE/NFE_CREATE".
No GRC dentro da Função "/XNFE/NFE_CREATE", verificamos na Tabela Interna que contém os ítens da NF-e que os ítens estão ordenados da maneira conforme
nós manipulamos ainda no ERP. Ou seja, o GRC recebeu a ordenação dos ítens estabelecida por nós no ERP.
Só que no final do processo, verificamos no Monitor do GRC, os ítens da NF-e estão ordenados da maneira como o Documento foi criado inicialmente,
e não conforme manipulamos anteriromente.
Não analisei a fundo as Funções e Códigos no GRC, mas constatamos que a ordenação desses ítens da NF-e são tratados de alguma outra maneira dentro do GRC.
Então, gostaria de compartilhar esse teste que fizemos e saber se há alguma outra sugestão.
Obrigado !
Oi Ivan,
quando vc diz que vcs alteraram a ordem dos itens, vcs modificaram os valores dos ITMNUM de fato?
Notem que na tabela IT_NFE_ITEM_TAB, além do ITMNUM, há o campo NITEM, que é preenchido pelo ERP no form block_h do include LJ_1B_NFEF14.
* H02
lv_tabix = sy-tabix.
SHIFT lv_tabix LEFT DELETING LEADING c_0.
xmli-nitem = lv_tabix.
É possível que o NFE considere apenas esse campo, na hora de montar o XML.
Faça o teste, alterando o valor tanto do ITMNUM quanto do NITEM.
Lembrando que o NITEM tem que ser na ordem a partir do 1 (1, 2, 3...) e nao exatamente igual ao ITMNUM (010, 020, 030...).
Abs,
Henrique.
Olá Henrique,
Nós não alteramos o valor do Campo ITMNUM, nós apenas alteramos a ordem dos registros, mantendo o valor de cada ITMNUM.
Exemplo :
O Primeiro Registro tem o ITMNUM = 500.
O Segundo Registro tem o ITMNUM = 400.
O Terceiro Registro tem o ITMNUM = 200.
O Quarto Registro tem o ITMNUM = 300.
O Quinto Registro tem o ITMNUM = 100.
Quanto ao Campo NITEM não fizemos teste algum, mas faremos novos testes com os dois Campos ITMNUM e NITEM, conforme sugerido.
Logo darei notícias dos testes,
Obrigado !
Att,
Ivan Santos
Muito bom, Ivan!
Só uma coisa: vc poderia prover mais informações sobre a lei que determina essa ordenação dos itens por CFOP?
Se for realmente aplicável em todo o território nacional, isso já deveria vir assim do standard.
Se a lei existe e é válida, eu abriria um chamado solicitando esse desenvolvimento.
Abs,
Henrique.
Abertura para novas sugestões.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
12 | |
2 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.