Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Fatura Frete Internacional
Data/Hora da Publicação: 02/05/2007 00:00:00
Data/Hora Última Alteração: 09/03/2010 09:36:25
Descrição da Nota: ESTORNAR FATURA DE FRETE E SEGURO APÓS RECEBIMENTO,ELIMINA ITEM DO CUSTO
Sintoma
ao estornar fatura de frete e seguro após recebimento, está eliminando linha no custo .
Solução
Atualização do programa de fatura para verificar se há recebimento e ao estornar a fatura de
frete e seguro após o recebimento deverá apenas limpar a coluna realizado e mover o valor para a
coluna diferença.
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 03584 Data: 02/05/2007 Hora: 16:35:13
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 03584
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 7.0
Pacote : 00027
Agrupamento : 00164
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
ESTORNAR FATURA DE FRETE E SEGURO APÓS RECEBIMENTO,ELIMINA ITEM DO CUSTO
----------------------------------------------------------------------------------------------------
Palavras Chave:
FATURA DE FRETE - FATURA DE SEGURO - RECEBIMENTO - CONGELAMENTO
ESTORNO - CUSTO EFETIVO
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI003F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003F01
...
WHERE nrseq = itab_zycit094-nrseq.
ENDIF.
ELSE.
SELECT * FROM /pws/zycit003 INTO TABLE itab_zycit003
FOR ALL ENTRIES IN itab_zycit094
WHERE nrseq = itab_zycit094-nrseq.
ENDIF.
ENDIF.
IF /pws/zycie006-tpfatura = '02'.
LOOP AT itab_zycit003.
* >> Início da inclusão: FORM ELIMINAR_FATURA
SELECT SINGLE *
FROM /pws/zycit036
INTO itab_zycit036_aux
WHERE nrseq = itab_zycit003-nrseq AND
ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp AND
codmod = 'D' AND
origem = 'FAT' AND
nrseqori = /pws/zycie006-nrseq AND
codigo = 'FRETEI' AND
congelamov = 'X'.
IF itab_zycit036_aux-congelamov EQ 'X'.
CLEAR: itab_zycit036_aux-vlreal,
itab_zycit036_aux-waers_real.
MODIFY /pws/zycit036 FROM itab_zycit036_aux.
ELSE.
* << Fim da inclusão
DELETE FROM /pws/zycit036
WHERE codigo = 'FRETEI'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
AND nrseqori = /pws/zycie006-nrseq.
* >> Início da inclusão: FORM ELIMINAR_FATURA
ENDIF.
* << Fim da inclusão
ENDLOOP.
ELSEIF /pws/zycie006-tpfatura = '03'.
LOOP AT itab_zycit003.
* >> Início da inclusão: FORM ELIMINAR_FATURA
SELECT SINGLE *
FROM /pws/zycit036
INTO itab_zycit036_aux
WHERE nrseq = itab_zycit003-nrseq AND
ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp AND
codmod = 'D' AND
origem = 'FAT' AND
nrseqori = /pws/zycie006-nrseq AND
codigo = 'FRETEI' AND
congelamov = 'X'.
IF itab_zycit036_aux-congelamov EQ 'X'.
CLEAR: itab_zycit036_aux-vlreal,
itab_zycit036_aux-waers_real.
MODIFY /pws/zycit036 FROM itab_zycit036_aux.
ELSE.
* << Fim da inclusão
DELETE FROM /pws/zycit036
WHERE codigo = 'SEGURO'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
AND nrseqori = /pws/zycie006-nrseq.
* >> Início da inclusão: FORM ELIMINAR_FATURA
ENDIF.
* << Fim da inclusão
ENDLOOP.
ENDIF.
ENDIF.
ENDIF.
ELSE.
IF NOT /pws/zycie006-statusp IS INITIAL
AND /pws/zycie006-frpagto NE 'A'
AND v_pag_antecipado IS INITIAL.
SELECT SINGLE *
FROM bkpf
...
...
WHERE nrseq = itab_zycit094-nrseq.
ENDIF.
ELSE.
SELECT * FROM /pws/zycit003 INTO TABLE itab_zycit003
FOR ALL ENTRIES IN itab_zycit094
WHERE nrseq = itab_zycit094-nrseq.
ENDIF.
ENDIF.
IF /pws/zycie006-tpfatura = '02'.
LOOP AT itab_zycit003.
* >> Início da inclusão: FORM ELIMINAR_FATURA
SELECT SINGLE *
FROM /pws/zycit036
INTO itab_zycit036_aux
WHERE nrseq = itab_zycit003-nrseq AND
ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp AND
codmod = 'D' AND
origem = 'FAT' AND
nrseqori = /pws/zycie006-nrseq AND
codigo = 'FRETEI' AND
congelamov = 'X'.
IF itab_zycit036_aux-congelamov EQ 'X'.
CLEAR: itab_zycit036_aux-vlreal,
itab_zycit036_aux-waers_real.
MODIFY /pws/zycit036 FROM itab_zycit036_aux.
ELSE.
* << Fim da inclusão
DELETE FROM /pws/zycit036
* >> Início da exclusão: FORM ELIMINAR_FATURA
WHERE codigo = 'FRETEI'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
* << Fim da exclusão
* >> Início da inclusão: FORM ELIMINAR_FATURA
WHERE codigo = 'FRETEI'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
* << Fim da inclusão
AND nrseqori = /pws/zycie006-nrseq.
* >> Início da inclusão: FORM ELIMINAR_FATURA
ENDIF.
ENDLOOP.
* << Fim da inclusão
* >> Início da exclusão: FORM ELIMINAR_FATURA
ENDLOOP.
* << Fim da exclusão
ELSEIF /pws/zycie006-tpfatura = '03'.
LOOP AT itab_zycit003.
* >> Início da inclusão: FORM ELIMINAR_FATURA
SELECT SINGLE *
FROM /pws/zycit036
INTO itab_zycit036_aux
WHERE nrseq = itab_zycit003-nrseq AND
ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp AND
codmod = 'D' AND
origem = 'FAT' AND
nrseqori = /pws/zycie006-nrseq AND
codigo = 'FRETEI' AND
congelamov = 'X'.
IF itab_zycit036_aux-congelamov EQ 'X'.
CLEAR: itab_zycit036_aux-vlreal,
itab_zycit036_aux-waers_real.
MODIFY /pws/zycit036 FROM itab_zycit036_aux.
ELSE.
* << Fim da inclusão
DELETE FROM /pws/zycit036
* >> Início da exclusão: FORM ELIMINAR_FATURA
WHERE codigo = 'SEGURO'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
* << Fim da exclusão
* >> Início da inclusão: FORM ELIMINAR_FATURA
WHERE codigo = 'SEGURO'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
* << Fim da inclusão
AND nrseqori = /pws/zycie006-nrseq.
* >> Início da inclusão: FORM ELIMINAR_FATURA
ENDIF.
* << Fim da inclusão
ENDLOOP.
ENDIF.
ENDIF.
UPDATE /pws/zycbt108 SET status = 'E'
WHERE bukrs = /pws/zycie006-bukrs
AND belnr = /pws/zycie006-nrseq
...
...
WHERE nrseq = itab_zycit094-nrseq.
ENDIF.
ELSE.
SELECT * FROM /pws/zycit003 INTO TABLE itab_zycit003
FOR ALL ENTRIES IN itab_zycit094
WHERE nrseq = itab_zycit094-nrseq.
ENDIF.
ENDIF.
IF /pws/zycie006-tpfatura = '02'.
LOOP AT itab_zycit003.
* >> Início da inclusão: FORM ELIMINAR_FATURA
SELECT SINGLE *
FROM /pws/zycit036
INTO itab_zycit036_aux
WHERE nrseq = itab_zycit003-nrseq AND
ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp AND
codmod = 'D' AND
origem = 'FAT' AND
nrseqori = /pws/zycie006-nrseq AND
codigo = 'FRETEI' AND
congelamov = 'X'.
IF itab_zycit036_aux-congelamov EQ 'X'.
CLEAR: itab_zycit036_aux-vlreal,
itab_zycit036_aux-waers_real.
MODIFY /pws/zycit036 FROM itab_zycit036_aux.
ELSE.
* << Fim da inclusão
DELETE FROM /pws/zycit036
* >> Início da exclusão: FORM ELIMINAR_FATURA
WHERE codigo = 'FRETEI'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
* << Fim da exclusão
* >> Início da inclusão: FORM ELIMINAR_FATURA
WHERE codigo = 'FRETEI'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
* << Fim da inclusão
AND nrseqori = /pws/zycie006-nrseq.
* >> Início da inclusão: FORM ELIMINAR_FATURA
ENDIF.
* << Fim da inclusão
ENDLOOP.
ELSEIF /pws/zycie006-tpfatura = '03'.
LOOP AT itab_zycit003.
* >> Início da inclusão: FORM ELIMINAR_FATURA
SELECT SINGLE *
FROM /pws/zycit036
INTO itab_zycit036_aux
WHERE nrseq = itab_zycit003-nrseq AND
ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp AND
codmod = 'D' AND
origem = 'FAT' AND
nrseqori = /pws/zycie006-nrseq AND
codigo = 'FRETEI' AND
congelamov = 'X'.
IF itab_zycit036_aux-congelamov EQ 'X'.
CLEAR: itab_zycit036_aux-vlreal,
itab_zycit036_aux-waers_real.
MODIFY /pws/zycit036 FROM itab_zycit036_aux.
ELSE.
* << Fim da inclusão
DELETE FROM /pws/zycit036
* >> Início da exclusão: FORM ELIMINAR_FATURA
WHERE codigo = 'SEGURO'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
* << Fim da exclusão
* >> Início da inclusão: FORM ELIMINAR_FATURA
WHERE codigo = 'SEGURO'
AND nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp
AND codmod = 'D'
AND origem = 'FAT'
* << Fim da inclusão
AND nrseqori = /pws/zycie006-nrseq.
* >> Início da inclusão: FORM ELIMINAR_FATURA
ENDIF.
* << Fim da inclusão
ENDLOOP.
ENDIF.
SET SCREEN 0.
DELETE FROM /pws/zycit130 WHERE nrseq = /pws/zycie006-nrseq.
DELETE FROM /pws/zycit126 WHERE nrseq = /pws/zycie006-nrseq.
DELETE FROM /pws/zycit129 WHERE nrseq = /pws/zycie006-nrseq.
...