Módulo: CÂMBIO IMPORTAÇÃO
Funcionalidade: Associação
Data/Hora da Publicação: 26/06/2007 00:00:00
Data/Hora Última Alteração: 04/03/2010 13:48:05
Descrição da Nota: ASSOCIAÇÃO DE FATURAS - PONTOS DE EXIT ASS004 E ASS005
Sintoma
Incluir ponto de exit para permitir efetuar outra função de contabilização para pagamento
antecipado.
Solução
Pontos de exit ASS004 e ASS005
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 04038 Data: 26/06/2007 Hora: 10:16:55
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 04038
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00002
Agrupamento : 00004
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
ASSOCIAÇÃO DE FATURAS - PONTOS DE EXIT ASS004 E ASS005
----------------------------------------------------------------------------------------------------
Palavras Chave:
ASSOCIAÇÃO DE FATURAS - PONTOS DE EXIT ASS004 E ASS005
PAGAMENTO ANTECIPADO
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/LZYCMGF2F01
REPS /PWS/LZYCMGF2TOP
REPS /PWS/LZYCMGF2X01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCMGF2F01
...
EXIT.
ENDIF.
ENDIF.
ENDIF.
APPEND itab_zycbe033.
LOOP AT itab_zycbt034.
MESSAGE i254(/pws/zycmm) WITH itab_zycbt034-descricao
v_codeven.
ENDLOOP.
IF itab_zycbt034[] IS INITIAL.
* >> Início da inclusão: FORM DESMEMBRA_DOCTO_PGANT
READ TABLE itab_zyglt100 WITH KEY zexit = 'ASS004' BINARY SEARCH.
IF sy-subrc EQ 0 AND NOT itab_zyglt100-zexit_ativa IS INITIAL.
PERFORM (itab_zyglt100-formulario)
IN PROGRAM (itab_zyglt100-programa).
ELSE.
* << Fim da inclusão
CALL FUNCTION '/PWS/ZYCM_TRANSACAO_F_51N'
EXPORTING
v_modo = v_modo_bi
v_empresa = /pws/zycbe117-bukrs
v_zuonr = itab_zycbe033-c_zuonr
TABLES
t_dados = itab_zycbe033
t_campo = itab_zycbt034
t_zycbt036 = itab_zycbt036
t_zycbt032 = itab_zycbt032
t_zycbe035 = itab_zycbe035
EXCEPTIONS
campo_em_branco = 1
OTHERS = 2.
* >> Início da inclusão: FORM DESMEMBRA_DOCTO_PGANT
ENDIF.
* << Fim da inclusão
IF sy-subrc = 0.
READ TABLE itab_zycbt032 WITH KEY tcode = 'F-51'
tabela = '/PWS/ZYCBT112'
cpochv = /pws/zycbe117-nrseq
tpmsg = 'S'.
IF sy-subrc = 0.
MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg.
itab_zycbt131-belnr_rfin = itab_zycbt032-belnr.
MODIFY itab_zycbt131 TRANSPORTING belnr_rfin
WHERE belnr EQ itab_zycbt108-belnr
...
...
ENDIF.
APPEND itab_zycbe033.
LOOP AT itab_zycbt034.
MESSAGE i254(/pws/zycmm) WITH itab_zycbt034-descricao
v_codeven.
ENDLOOP.
IF /pws/zycbe117-slpgant = 0.
v_zuonr = itab_zycbe033-d_zuonr.
ENDIF.
IF itab_zycbt034 IS INITIAL.
* >> Início da inclusão: FORM RECLASSIFICA_PGTOANT
READ TABLE itab_zyglt100 WITH KEY zexit = 'ASS004' BINARY SEARCH.
IF sy-subrc EQ 0 AND NOT itab_zyglt100-zexit_ativa IS INITIAL.
PERFORM (itab_zyglt100-formulario)
IN PROGRAM (itab_zyglt100-programa).
ELSE.
* << Fim da inclusão
CALL FUNCTION '/PWS/ZYCM_TRANSACAO_F_51N'
EXPORTING
v_modo = v_modo_bi
v_empresa = /pws/zycbe117-bukrs
v_zuonr = v_zuonr
TABLES
t_dados = itab_zycbe033
t_campo = itab_zycbt034
t_zycbt036 = itab_zycbt036
t_zycbt032 = itab_zycbt032
t_zycbe035 = itab_zycbe035
EXCEPTIONS
campo_em_branco = 1
OTHERS = 2.
* >> Início da inclusão: FORM RECLASSIFICA_PGTOANT
ENDIF.
* << Fim da inclusão
IF sy-subrc = 0.
READ TABLE itab_zycbt032 WITH KEY tcode = 'F-51'
tabela = '/PWS/ZYCBT112'
cpochv = /pws/zycbe117-nrseq
tpmsg = 'S'.
IF sy-subrc = 0.
MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg.
CLEAR itab_zycbt131-belnr_rfin.
MODIFY itab_zycbt131 TRANSPORTING belnr_rfin
WHERE belnr EQ itab_zycbt131-belnr
...
...
EXIT.
ENDIF.
ENDIF.
ENDIF.
APPEND itab_zycbe033.
LOOP AT itab_zycbt034.
MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.
v_ok = ' '.
ENDLOOP.
IF itab_zycbt034[] IS INITIAL.
* >> Início da inclusão: FORM F51_PGANT_MOEDAS_IGUAIS
READ TABLE itab_zyglt100 WITH KEY zexit = 'ASS005' BINARY SEARCH.
IF sy-subrc EQ 0 AND NOT itab_zyglt100-zexit_ativa IS INITIAL.
PERFORM (itab_zyglt100-formulario)
IN PROGRAM (itab_zyglt100-programa).
ELSE.
* << Fim da inclusão
IF ( /pws/zyglt009-contpa = 'Y' AND /pws/zycbe117-codint = 'IM' ) OR
( /pws/zyglt009-contpa = 'Y' AND /pws/zycbe117-codint = 'ES'
AND v_trans IS INITIAL ).
CONCATENATE /pws/zycbe117-nrseq 'PA' INTO v_zuonr.
ELSE.
v_zuonr = /pws/zycbe117-nrseq.
ENDIF.
IF ( /pws/zyglt009-contpa = 'Y' AND /pws/zycbe117-codint = 'IM' ) OR
( /pws/zyglt009-contpa = 'Y' AND /pws/zycbe117-codint = 'ES'
AND v_trans IS INITIAL ).
...
...
EXPORTING
v_modo = v_modo_bi
TABLES
t_dados = itab_zycbe033
t_campo = itab_zycbt034
t_zycbt032 = itab_zycbt032
t_zycbt036 = itab_zycbt036
EXCEPTIONS
campo_em_branco = 1
OTHERS = 2.
* >> Início da inclusão: FORM F51_PGANT_MOEDAS_IGUAIS
ENDIF.
* << Fim da inclusão
ENDIF.
IF sy-subrc = 0.
READ TABLE itab_zycbt032 WITH KEY tcode = 'F-51'
tabela = '/PWS/ZYCBT108'
cpochv = v_chave
tpmsg = 'S'.
IF sy-subrc = 0.
v_ok = 'X'.
MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg.
itab_zycbt131-belnr_as = itab_zycbt032-belnr.
...
...
EXIT.
ENDIF.
ENDIF.
ENDIF.
APPEND itab_zycbe033.
LOOP AT itab_zycbt034.
MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.
v_ok = ' '.
ENDLOOP.
IF itab_zycbt034[] IS INITIAL.
* >> Início da inclusão: FORM F51_PGANT_MOEDAS_DIF
READ TABLE itab_zyglt100 WITH KEY zexit = 'ASS005' BINARY SEARCH.
IF sy-subrc EQ 0 AND NOT itab_zyglt100-zexit_ativa IS INITIAL.
PERFORM (itab_zyglt100-formulario)
IN PROGRAM (itab_zyglt100-programa).
ELSE.
* << Fim da inclusão
CALL FUNCTION '/PWS/ZYCM_TRANSACAO_F_51O'
EXPORTING
v_modo = v_modo_bi
TABLES
t_dados = itab_zycbe033
t_campo = itab_zycbt034
t_zycbt032 = itab_zycbt032
t_zycbt036 = itab_zycbt036
EXCEPTIONS
campo_em_branco = 1
OTHERS = 2.
* >> Início da inclusão: FORM F51_PGANT_MOEDAS_DIF
ENDIF.
* << Fim da inclusão
IF sy-subrc = 0.
READ TABLE itab_zycbt032 WITH KEY tcode = 'F-51'
tabela = '/PWS/ZYCBT108'
cpochv = v_chave
tpmsg = 'S'.
IF sy-subrc = 0.
v_ok = 'X'.
MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg.
itab_zycbt131-belnr_as = itab_zycbt032-belnr.
MODIFY itab_zycbt131 TRANSPORTING belnr_as
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCMGF2TOP
...
v_ok TYPE c,
v_chave LIKE /pws/zycbe033-cpochv,
v_sempartida TYPE c,
v_saldototal TYPE c VALUE 'S',
v_nrseq LIKE /pws/zycbt112-nrseq,
v_tpdoc TYPE c,
v_ind_msg2 TYPE c,
v_ind_errocont TYPE c,
v_saldo LIKE /pws/zycbe112-slassoc,
v_saldo_pa LIKE /pws/zycbe112-slassoc,
* >> Início da exclusão:
v_modo_bi,
* << Fim da exclusão
v_zuonr LIKE bseg-zuonr,
v_zuonr_fi LIKE bseg-zuonr,
v_zuonr_fa LIKE bseg-zuonr,
v_data LIKE sy-datum,
v_dtassoc LIKE sy-datum,
v_moedadif,
v_sucesso,
v_linhas TYPE i,
v_trans(1) TYPE c,
v_belnr_ult LIKE bseg-belnr,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCMGF2X01
...
INCLUDE STRUCTURE /pws/zycbt108.
DATA: END OF itab_zycbt108.
DATA:
itab_zycbt034 LIKE /pws/zycbt034 OCCURS 10 WITH HEADER LINE,
itab_zycbt032 LIKE /pws/zycbt032 OCCURS 10 WITH HEADER LINE,
itab_zycbe033 LIKE /pws/zycbe033 OCCURS 10 WITH HEADER LINE,
itab_zycbt013 LIKE /pws/zycbt013 OCCURS 10 WITH HEADER LINE,
itab_zycbt012 LIKE /pws/zycbt012 OCCURS 10 WITH HEADER LINE,
itab_zycbt036 LIKE /pws/zycbt036 OCCURS 10 WITH HEADER LINE,
itab_zycbe035 type /pws/zycbe035 occurs 10 with header line.
* >> Início da exclusão:
DATA: v_num LIKE itab_zycbt036-belnr.
* << Fim da exclusão
* >> Início da inclusão:
DATA: v_num LIKE itab_zycbt036-belnr,
v_modo_bi.
* << Fim da inclusão
DATA : wa_zycbe112 LIKE /pws/zycbe112,
wa_zycbt112 LIKE /pws/zycbt112,
wa_zycbe117 LIKE /pws/zycbe117,
wa_zycbe119 LIKE /pws/zycbe119,
wa_zycbt131 LIKE /pws/zycbt131,
wa_zycbt131_aux LIKE /pws/zycbt131,
wa_zycbt007 LIKE /pws/zycbt007,
wa_zycbt011 LIKE /pws/zycbt011,
wa_zyglt009 LIKE /pws/zyglt009.
DATA: END OF COMMON PART.