Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Nota Fiscal
Data/Hora da Publicação: 11/04/2006 00:00:00
Data/Hora Última Alteração: 20/06/2011 12:29:19
Descrição da Nota: 1 - O EMBARQUE POSSUI DOIS ITENS, UM COM ICMS DIFERIDO E OUTRO DRAWBACK
Sintoma
1 - O embarque possui dois itens, um com ICMS diferido e outro Drawback. Foram geradas duas Notas
Fiscais globais, por termos regime de tributação diferenciada. Ao gerarmos as Notas Fiscais de
transporte parcelado, as NF`s geradas para qualquer um dos dois itens estão mencionando o mesmo nr.
de NF global incorretamente, além de estar mencionando valores de base de cálculo e ICMS
inexistentes na operação.
Solução
Ajustados Reads table nas itabs itab_zycit041.
6.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 01182 Data: 11/04/2006 Hora: 14:27:11
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 01182
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 6.0
Pacote : 00023
Agrupamento : 00109
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
1 - O EMBARQUE POSSUI DOIS ITENS, UM COM ICMS DIFERIDO E OUTRO DRAWBACK
----------------------------------------------------------------------------------------------------
Palavras Chave:
EMBARQUE - INTENS - ICMS - DRAWBACK - NOTAS - GLOBAIS
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI016F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI016F01
...
AND bukrs = /pws/zycie041-bukrs.
IF NOT itab_zycit042[] IS INITIAL.
SELECT * FROM t001w INTO TABLE itab_t001w
FOR ALL ENTRIES IN itab_zycit042
WHERE werks = itab_zycit042-werks.
* >> Início da inclusão: FORM FILL_DATA_J1B1
ENDIF.
SORT itab_zycit042 BY tpnf j_1bbranch lifnr nrseq ebeln ebelp.
* << Fim da inclusão
* >> Início da exclusão: FORM FILL_DATA_J1B1
ENDIF.
* << Fim da exclusão
LOOP AT itab_zycit042 WHERE mark = 'X'.
CLEAR v_lifnr.
SELECT SINGLE modalidade FROM /pws/zycit001 INTO v_modalidade
WHERE nrseq = itab_zycit042-nrseq.
IF itab_zycit042[] IS INITIAL.
...
...
WHERE nrseq = itab_zycit042-nrseq AND
ebeln = itab_zycit042-ebeln AND
ebelp = itab_zycit042-ebelp.
ENDIF.
CLEAR v_icms_nfr_1.
* >> Início da exclusão: FORM MENSAGENS_NF_R
LOOP AT itab_zycit044.
* << Fim da exclusão
* >> Início da inclusão: FORM MENSAGENS_NF_R
read table itab_zycit044 index 1.
if sy-subrc eq 0.
* << Fim da inclusão
READ TABLE itab_zycit003 WITH KEY ebeln = itab_zycit044-ebeln
ebelp = itab_zycit044-ebelp.
READ TABLE itab_zycit100_aux WITH KEY ebeln = itab_zycit044-ebeln
ebelp = itab_zycit044-ebelp.
* >> Início da inclusão: FORM MENSAGENS_NF_R
v_icms_nfr_1 = v_icms_nfr_1 + itab_zycit100_aux-vlicms .
endif.
* << Fim da inclusão
* >> Início da exclusão: FORM MENSAGENS_NF_R
v_icms_nfr_1 = v_icms_nfr_1 + itab_zycit100_aux-vlicms .
ENDLOOP.
WRITE v_icms_nfr_1
CURRENCY itab_zycit100-waersbem TO v_icms_nfr.
* << Fim da exclusão
* >> Início da inclusão: FORM MENSAGENS_NF_R
if itab_zycit100_aux-codregtri ne '5' and
itab_zycit100_aux-icms_dif ne 'X'.
WRITE v_icms_nfr_1 CURRENCY itab_zycit100-waersbem TO v_icms_nfr.
* << Fim da inclusão
v_cont = v_cont + 1.
CONCATENATE text-088 v_icms_nfr
INTO it_zycee006-msg SEPARATED BY space.
it_zycee006-indice = v_cont.
APPEND it_zycee006.
* >> Início da inclusão: FORM MENSAGENS_NF_R
else.
clear v_icms_dif.
endif.
ENDIF.
* << Fim da inclusão
* >> Início da exclusão: FORM MENSAGENS_NF_R
ENDIF.
* << Fim da exclusão
FREE itab_zycit001_re.
CLEAR itab_zycit001_re.
REFRESH itab_zycit001_re.
IF itab_zycit001[] IS INITIAL.
IF NOT itab_zycit044[] IS INITIAL.
...
...
ENDIF.
ENDIF.
ENDIF.
v_idm = v_cont + 1.
LOOP AT itab_zycit001_re.
* >> Início da inclusão: FORM MENSAGENS_NF_R
read table itab_zycit044 WITH KEY NRseq = itab_zycit001_re-nrseq.
IF SY-SUBRC EQ 0.
* << Fim da inclusão
READ TABLE itab_zycit042_auxre
* >> Início da exclusão: FORM MENSAGENS_NF_R
WITH KEY nrseq = itab_zycit001_re-nrseq.
* << Fim da exclusão
* >> Início da inclusão: FORM MENSAGENS_NF_R
WITH KEY nrseq = itab_zycit001_re-nrseq
ebeln = itab_zycit044-ebeln
ebelp = itab_zycit044-ebelp.
* << Fim da inclusão
READ TABLE itab_zycit041_aux
WITH KEY nrseq = itab_zycit042_auxre-nrseqnf.
IF sy-subrc = 0.
* >> Início da exclusão: FORM MENSAGENS_NF_R
READ TABLE itab_j1bnfdoc WITH KEY docnum = /pws/zycie042-docnum.
* << Fim da exclusão
* >> Início da inclusão: FORM MENSAGENS_NF_R
READ TABLE itab_j1bnfdoc WITH KEY docnum = itab_zycit042_auxre-docnum.
* << Fim da inclusão
IF sy-subrc = 0.
MOVE itab_j1bnfdoc-nfnum TO v_nfnum2.
MOVE itab_j1bnfdoc-series TO v_series.
MOVE itab_j1bnfdoc-docdat TO v_pstdat.
PERFORM formata_data.
...
...
CONCATENATE text-059 v_nf '-'
text-060 v_data2
INTO it_zycee006-msg SEPARATED BY space.
APPEND it_zycee006.
v_idm = v_idm + 1.
* >> Início da inclusão: FORM MENSAGENS_NF_R
endif.
* << Fim da inclusão
ENDIF.
ENDIF.
ENDLOOP.
IF NOT /pws/zycie043-observ1 IS INITIAL.
it_zycee006-indice = '3'.
...
...
it_zycee006-indice = '7'.
it_zycee006-msg = /pws/zycie043-observ5.
APPEND it_zycee006.
ENDIF.
v_idm = it_zycee006-indice.
* >> Início da exclusão: FORM MENSAGENS_NF_R
IF v_icms_dif NE 0.
* << Fim da exclusão
* >> Início da inclusão: FORM MENSAGENS_NF_R
IF v_icms_dif NE 0
and itab_zycit100-icms_dif ne 'X'.
* << Fim da inclusão
v_idm = v_idm + 1.
it_zycee006-indice = v_idm.
WRITE v_icms_dif TO v_dificms CURRENCY itab_zycit049-waers.
CONCATENATE text-078 v_dificms
INTO it_zycee006-msg SEPARATED BY space.
...