Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Fatura Mercadoria
Data/Hora da Publicação: 03/03/2009 00:00:00
Data/Hora Última Alteração: 03/02/2010 17:09:58
Descrição da Nota: FATURA DE MERCADORIA ABERTURA DE EXIT
Sintoma
Ponto de exit no programa de Fatura de Importação. A exit deverá estar habilitada nas transações de
salvar, modificar e excluir a Fatura. A Exit deverá permitir que a tabela seja alimentada no mesmo
momento em que a tabela de Fatura no Câmbio é alimentada pela tabela de Fatura de Importação.
Solução
Implementar Exit na Fatura no momento de Salvar, Modificar, Excluir a Fatura
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 08121 Data: 03/03/2009 Hora: 14:27:35
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 08121
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00008
Agrupamento : 00088
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
FATURA DE MERCADORIA ABERTURA DE EXIT
----------------------------------------------------------------------------------------------------
Palavras Chave:
FATURA - MERCADORIA - EXIT
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI003F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003F01
...
motivo = itab_zycit130_ini-motivo.
IF sy-subrc NE 0.
DELETE FROM /pws/zycit130
WHERE nrseq = itab_zycit130_ini-nrseq
AND motivo = itab_zycit130_ini-motivo.
ENDIF.
ENDLOOP.
MOVE: itab_zycit126[] TO itab_zycit126_ini[],
itab_zycit129[] TO itab_zycit129_ini[],
itab_zycit130[] TO itab_zycit130_ini[].
* >> Início da inclusão: FORM SALVAR_DADOS
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI003'
'FAT014'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY
zexit = 'FAT014' BINARY SEARCH.
IF sy-subrc EQ 0.
IF NOT itab_zyglt100-zexit_ativa IS INITIAL.
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) IF FOUND.
ENDIF.
ENDIF.
* << Fim da inclusão
IF sy-tcode EQ '/PWS/ZYCI003_C'.
CLEAR /pws/zycie006.
FREE MEMORY ID '010'.
LEAVE PROGRAM.
ENDIF.
COMMIT WORK.
ENDFORM.
FORM contabilizacao_f-02_ou_f-43.
IF /pws/zycie006-statusp IS INITIAL AND /pws/zycie006-frpagto NE 'A'.
IF NOT itab_zycit132[] IS INITIAL
...
...
AND belnr_co = itab_zycit132-belnr_p.
UPDATE /pws/zycbt119 SET status = 'E'
WHERE nrseq = itab_zycit132-nrseq_pgfat.
IF NOT /pws/zycie006-nrseqre IS INITIAL.
DELETE FROM /pws/zycbt124
WHERE nrseq = /pws/zycie006-nrseqre.
ENDIF.
ENDLOOP.
CLEAR: v_dbanco, v_dforn, v_dmoeda, v_dmoeda_emb,
v_dtpfatura, v_dfrpagto, v_livre.
* >> Início da inclusão: FORM ELIMINAR_FATURA
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI003'
'FAT014'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY
zexit = 'FAT014' BINARY SEARCH.
IF sy-subrc EQ 0.
IF NOT itab_zyglt100-zexit_ativa IS INITIAL.
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) IF FOUND.
ENDIF.
ENDIF.
* << Fim da inclusão
MESSAGE s015 WITH text-038.
PERFORM atualiza_historico.
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.
DELETE FROM /pws/zyglt209
WHERE nrseq = /pws/zycie006-nrseq_pgfat
AND mdcorresp = 'IP'.
IF /pws/zycie006-tpfatura = '05'.
...
...
IF NOT /pws/zycie006-nrseqre IS INITIAL.
IF NOT /pws/zycie006-tpfatura EQ '11'.
DELETE FROM /pws/zycbt124 WHERE nrseq = /pws/zycie006-nrseqre.
ELSE.
UPDATE /pws/zycbt124 SET status = 'E'
WHERE nrseq = /pws/zycie006-nrseqre.
ENDIF.
ENDIF.
CLEAR: v_dbanco, v_dforn, v_dmoeda, v_dmoeda_emb,
v_dtpfatura, v_dfrpagto, v_livre.
* >> Início da inclusão: FORM ELIMINAR_FATURA
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI003'
'FAT014'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY
zexit = 'FAT014' BINARY SEARCH.
IF sy-subrc EQ 0.
IF NOT itab_zyglt100-zexit_ativa IS INITIAL.
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) IF FOUND.
ENDIF.
ENDIF.
* << Fim da inclusão
MESSAGE s015 WITH text-038.
PERFORM atualiza_historico.
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.
DELETE FROM /pws/zyglt209 WHERE
nrseq = /pws/zycie006-nrseq_pgfat AND mdcorresp = 'IP'.
IF /pws/zycie006-tpfatura = '05'.
PERFORM salva_zycit130.
...