Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Nota Fiscal
Data/Hora da Publicação: 12/12/2007 00:00:00
Data/Hora Última Alteração: 28/11/2011 10:43:34
Descrição da Nota: AJUSTE NO RATEIO DAS DESPESAS COM GRANEL
Sintoma
O rateio das despesas na Nota Fiscal estão erradas. O sistema não está respeitando o mesmo rateio da
DI no momento de gerar a nota fiscal.
Solução
Ajustar rateio para ser feito da mesma forma que é realizado na DI.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 05435 Data: 12/12/2007 Hora: 10:40:35
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 05435
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00003
Agrupamento : 00024
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
04009 - 00002 - 7.0 - 00001 - ERRO NO CÁLCULO DE DESPESAS E VALORES DA NF UTILIZANDO GRANEL + C
02677 - 00001 - 6.0 - 00025 - AJUSTES NO CUSTO EFETIVO
----------------------------------------------------------------------------------------------------
AJUSTE NO RATEIO DAS DESPESAS COM GRANEL
----------------------------------------------------------------------------------------------------
Palavras Chave:
RATEIO - DESPESAS - GRANEL - NOTA - FISCAL
/PWS/SAPMZYCI016
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI016F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI016F01
...
SELECT * FROM /pws/zycit049
INTO TABLE itab_zycit049_a
FOR ALL ENTRIES IN itab_zycit019
WHERE nrseq = /pws/zycie041-nrseq
AND vldp > 0
AND tpdesp = itab_zycit019-tpdesp.
ENDIF.
DESCRIBE TABLE itab_zycit042_d LINES v_lines.
CLEAR: v_tot_ntgew, v_tot_plan, v_tot_real.
LOOP AT itab_zycit003.
* >> Início da exclusão: FORM SELECIONA_DESPESAS
IF NOT itab_zycit003-qtd_itend IS INITIAL.
v_tot_ntgew = v_tot_ntgew + itab_zycit003-ntgewd.
ELSE.
* << Fim da exclusão
v_tot_ntgew = v_tot_ntgew + itab_zycit003-ntgew.
* >> Início da exclusão: FORM SELECIONA_DESPESAS
ENDIF.
* << Fim da exclusão
v_tot_plan = v_tot_plan +
( itab_zycit003-netpr * itab_zycit003-qtd_iten ).
v_tot_real = v_tot_real +
( itab_zycit003-vlreal * itab_zycit003-qtd_iten ).
ENDLOOP.
LOOP AT itab_zycit049_a.
...
...
ENDIF.
IF v_lines = v_tabix.
v_vldp = itab_zycit049_a-vldp - v_tot_vldp.
itab_zycit042_d-vldp = itab_zycit042_d-vldp + v_vldp.
CLEAR v_vldp.
ELSE.
IF itab_zycit039-divabs = 'X'.
v_vldp = itab_zycit049_a-vldp / v_lines.
ELSEIF itab_zycit039-peso = 'X'.
IF NOT v_tot_ntgew IS INITIAL.
* >> Início da exclusão: FORM SELECIONA_DESPESAS
IF NOT itab_zycit003-ntgewd IS INITIAL.
v_vldp = itab_zycit049_a-vldp * itab_zycit003-ntgewd /
v_tot_ntgew.
ELSE.
* << Fim da exclusão
v_vldp = itab_zycit049_a-vldp * itab_zycit003-ntgew /
v_tot_ntgew.
* >> Início da exclusão: FORM SELECIONA_DESPESAS
ENDIF.
* << Fim da exclusão
ENDIF.
ELSEIF itab_zycit039-proporplan = 'X'.
v_vldp = itab_zycit049_a-vldp *
( itab_zycit003-netpr *
itab_zycit003-qtd_iten / v_tot_plan ).
...
...
ENDIF.
IF v_lines = v_tabix.
v_vldp = itab_zycit049-vldp - v_tot_vldp.
itab_zycit042-vldp = itab_zycit042-vldp + v_vldp.
CLEAR v_vldp.
ELSE.
IF itab_zycit039-divabs = 'X'.
v_vldp = itab_zycit049-vldp / v_lines.
ELSEIF itab_zycit039-peso = 'X'.
IF NOT v_tot_ntgew IS INITIAL.
* >> Início da exclusão: FORM SELECIONA_DESPESAS
IF NOT itab_zycit003-ntgewd IS INITIAL.
v_vldp = itab_zycit049-vldp * itab_zycit003-ntgewd /
v_tot_ntgew.
ELSE.
* << Fim da exclusão
v_vldp = itab_zycit049-vldp * itab_zycit003-ntgew /
v_tot_ntgew.
* >> Início da exclusão: FORM SELECIONA_DESPESAS
ENDIF.
* << Fim da exclusão
ENDIF.
ELSEIF itab_zycit039-proporplan = 'X'.
v_vldp = itab_zycit049-vldp *
( itab_zycit003-netpr *
itab_zycit003-qtd_iten / v_tot_plan ).
...
...
ENDIF.
IF v_lines = v_tabix.
v_vldp = itab_zycit049-vldp - v_tot_vldp.
itab_zycit042_d-vldpii = itab_zycit042_d-vldpii + v_vldp.
CLEAR v_vldp.
ELSE.
IF itab_zycit039-divabs = 'X'.
v_vldp = itab_zycit049-vldp / v_lines.
ELSEIF itab_zycit039-peso = 'X'.
IF NOT v_tot_ntgew IS INITIAL.
* >> Início da exclusão: FORM SELECIONA_DESPESAS
IF NOT itab_zycit003-ntgewd IS INITIAL.
v_vldp = itab_zycit049-vldp * itab_zycit003-ntgewd /
v_tot_ntgew.
ELSE.
* << Fim da exclusão
v_vldp = itab_zycit049-vldp * itab_zycit003-ntgew /
v_tot_ntgew.
* >> Início da exclusão: FORM SELECIONA_DESPESAS
ENDIF.
* << Fim da exclusão
ENDIF.
ELSEIF itab_zycit039-proporplan = 'X'.
v_vldp = itab_zycit049-vldp *
( itab_zycit003-netpr *
itab_zycit003-qtd_iten / v_tot_plan ).
...