Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Nota Fiscal
Data/Hora da Publicação: 20/04/2007 00:00:00
Data/Hora Última Alteração: 23/02/2011 09:14:02
Descrição da Nota: AO RATEAR O PESO BRUTO DOS ITENS, NÃO BATE COM O TOTAL DA NF
Sintoma
AO RATEAR O PESO BRUTO DOS ITENS, NÃO BATE COM O TOTAL DA NOTA FISCAL, CAMPO BRGEW.
Solução
Atualizado programa de nota fiscal para calcular o peso bruto e atribuir as diferenças de casas
decimais ao último item da nota, resultando no mesmo peso bruto informado no B/L.
7.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 03512 Data: 20/04/2007 Hora: 15:07:55
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 03512
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 7.0
Pacote : 00001
Agrupamento : 00162
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
02784 - 00001 - 6.0 - 00026 - LEVAR PARA A NF O PESO BRUTO DESEMBARCADO DO BL EM EMBARQUES A GR
----------------------------------------------------------------------------------------------------
AO RATEAR O PESO BRUTO DOS ITENS, NÃO BATE COM O TOTAL DA NF
----------------------------------------------------------------------------------------------------
Palavras Chave:
RATEIO PESO BRUTO - NF - NOTA FISCAL
RATEIO ENTRE ITENS
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI016F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI016F01
...
regio = itab_t001w-regio.
IF sy-subrc EQ 0.
PERFORM itens_nf.
ELSE.
READ TABLE itab_zycit033 WITH KEY tpnf = itab_zycit042-tpnf
regio = space.
PERFORM itens_nf.
ENDIF.
ENDIF.
CLEAR itab_zycit033.
* >> Início da exclusão: FORM FILL_DATA_J1B1
PERFORM peso_global_n.
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATA_J1B1
PERFORM peso_global_sep.
* << Fim da inclusão
v_counter = v_counter + 1.
v_qtditem = wa_zycit048-qtd_item.
IF v_counter >= v_qtditem.
EXIT.
ENDIF.
ENDLOOP.
it_zycee005-transpnac = /pws/zycie041-transpnac.
APPEND it_zycee005.
PERFORM mensagens_nf.
LOOP AT it_zycet004.
...
...
AND inco1 EQ wa_zycit001-inco1.
ENDFORM.
FORM peso_global_sep.
DATA: local_tntgew LIKE itab_zycit003_aux-ntgew.
LOOP AT itab_zycit003_aux.
local_tntgew = local_tntgew + itab_zycit003_aux-ntgew.
ENDLOOP.
IF v_graneis EQ 'S'.
IF NOT /pws/zycit093-brgewd IS INITIAL.
/pws/zycit093-brgew = /pws/zycit093-brgewd.
* >> Início da inclusão: FORM PESO_GLOBAL_SEP
ENDIF.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM PESO_GLOBAL_SEP
DATA: v_brgewtot TYPE j_1bnfdoc-brgew,
v_ebeln TYPE /pws/zycit003-ebeln ,
v_ebelp TYPE /pws/zycit003-ebelp .
SORT itab_zycit003 BY ebeln ebelp DESCENDING.
READ TABLE itab_zycit003 INDEX 1.
v_ebeln = itab_zycit003-ebeln.
v_ebelp = itab_zycit003-ebelp.
LOOP AT itab_zycit003.
IF ( itab_zycit003-ebeln eq v_ebeln AND
itab_zycit003-ebelp eq v_ebelp ) .
else.
v_brgewtot = v_brgewtot +
( ( itab_zycit003-ntgew / local_tntgew ) *
/pws/zycit093-brgew ).
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM PESO_GLOBAL_SEP
ENDLOOP.
* << Fim da inclusão
CLEAR: v_ntgew, v_brgew.
LOOP AT itab_zycit003_aux
WHERE nrseq = itab_zycit042-nrseq
AND ebeln = itab_zycit042-ebeln
AND ebelp = itab_zycit042-ebelp.
v_ntgew = v_ntgew + itab_zycit003_aux-ntgew.
* >> Início da inclusão: FORM PESO_GLOBAL_SEP
IF ( itab_zycit042-ebeln eq v_ebeln AND
itab_zycit042-ebelp eq v_ebelp ).
v_brgew = /pws/zycit093-brgew - v_brgewtot.
else.
* << Fim da inclusão
* >> Início da exclusão: FORM PESO_GLOBAL_SEP
v_brgew = v_brgew + ( ( itab_zycit003_aux-ntgew / local_tntgew ) *
* << Fim da exclusão
* >> Início da inclusão: FORM PESO_GLOBAL_SEP
v_brgew = v_brgew +
( ( itab_zycit003_aux-ntgew / local_tntgew ) *
* << Fim da inclusão
/pws/zycit093-brgew ).
* >> Início da inclusão: FORM PESO_GLOBAL_SEP
ENDIF.
* << Fim da inclusão
ENDLOOP.
it_zycee005-ntgew = it_zycee005-ntgew + v_ntgew.
it_zycee005-brgew = it_zycee005-brgew + v_brgew.
it_zycee005-gewei = text-038.
ENDFORM.
FORM peso_global_n.
...