Módulo: CÂMBIO EXPORTAÇÃO
Funcionalidade: Rotina de Pagamento
Data/Hora da Publicação: 07/08/2007 00:00:00
Data/Hora Última Alteração: 18/02/2011 13:56:30
Descrição da Nota: SAÍDA DE PAGAMENTO - ORDEM DE PAGAMENTO - DATA EFETIVA
Sintoma
Ao efetuar a saída de pagamento com ordem de pagamento, na F-30 não esta mapeando o campo VALUT após
o duplo clique e o mesmo é obrigatório, parando a contabilização.
Solução
Verificar corretamente se o lançamento é total da ordem ou parcial e mapear o campo valut com o
valor válido quando for por ordem.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 04364 Data: 07/08/2007 Hora: 17:02:21
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 04364
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00002
Agrupamento : 00007
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
01959 - 00001 - 6.0 - 00024 - MAPEAMENTO DO CAMPO BSEG-VALUT NO BATCH INPUT DA DEVOLUÇÃO
02237 - 00002 - 6.0 - 00025 - VINCULAÇÃO COM LIQ. AUTOMÁTICA - ESTORNO DP - ZFBDT
----------------------------------------------------------------------------------------------------
SAÍDA DE PAGAMENTO - ORDEM DE PAGAMENTO - DATA EFETIVA
----------------------------------------------------------------------------------------------------
Palavras Chave:
SAÍDA DE PAGAMENTO ORDEM DE PAGAMENTO DATA EFETIVA
VALUT DESMEMBRAMENTO CONTA CORRENTE ME F-30
----------------------------------------------------------------------------------------------------
Objetos da nota:
FUNC /PWS/ZYCB_TRANSACAO_F_30_P
REPS /PWS/MZYCB115F02
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCB_TRANSACAO_F_30_P
...
WRITE: t_dados-bukrs TO v_bukrs,
t_dados-bldat TO v_bldat,
t_dados-budat TO v_budat,
t_dados-zfbdt TO v_zfbdt,
t_dados-kursf TO v_kursf,
t_dados-zfbdt TO v_zfbdt2,
t_dados-zbd1t TO v_zbd1t.
IF NOT t_dados-d_valut = '00000000' AND
NOT t_dados-d_valut = ' '.
WRITE: t_dados-d_valut TO v_valut.
* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P
ELSEIF NOT t_dados-c_valut IS INITIAL AND
NOT v_op IS INITIAL.
WRITE: t_dados-c_valut TO v_valut.
* << Fim da inclusão
ENDIF.
SELECT SINGLE periv FROM t001
INTO v_periv
WHERE bukrs EQ v_bukrs.
CALL FUNCTION 'DETERMINE_PERIOD'
EXPORTING
date = t_dados-budat
version = v_periv
IMPORTING
period = v_monat
...
...
IF NOT t_dados-brnch IS INITIAL.
PERFORM bdc_field USING:
'BSEG-BUPLA' t_dados-brnch.
ENDIF.
IF NOT v_zuonr IS INITIAL.
PERFORM bdc_field USING 'BSEG-ZUONR' v_zuonr.
ENDIF.
IF NOT t_dados-d_sgtxt IS INITIAL.
PERFORM bdc_field USING 'BSEG-SGTXT' t_dados-d_sgtxt.
ENDIF.
* >> Início da exclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P
IF NOT t_dados-d_valut IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P
IF NOT t_dados-d_valut IS INITIAL
OR ( NOT t_dados-c_valut IS INITIAL AND
NOT v_op IS INITIAL ).
* << Fim da inclusão
READ TABLE itab_oculto WITH KEY campo = 'BSEG-VALUT'
chave = v_lanc1.
IF sy-subrc <> 0.
PERFORM bdc_field USING 'BSEG-VALUT' v_valut.
ENDIF.
ENDIF.
IF v_last EQ 'X'.
PERFORM bdc_field USING: 'BDC_OKCODE' '=PA'.
ELSE.
PERFORM bdc_field USING: 'RF05A-NEWBS' t_dados-newbs,
...
...
INTO (c_sgtxt,
c_zuonr,
c_brnch,
c_gsber,
c_zfbdt,
c_zbd1t)
WHERE bukrs = t_dados-bukrs AND
lifnr = t_dados-d_newko AND
gjahr = v_year AND
belnr = t_dados-belnr.
* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P
ENDIF.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P
IF v_op = 'X' AND v_vinc_tot IS INITIAL.
v_lanc2 = 'D'.
* << Fim da inclusão
ENDIF.
IF wa_tbsl-koart EQ 'D'.
IF NOT v_vinc_tot IS INITIAL.
CLEAR: itab_oculto, v_string_credito.
REFRESH: itab_oculto.
...
...
v_vinc_tot IS INITIAL AND
v_desc_rec IS INITIAL.
READ TABLE itab_oculto WITH KEY campo = 'BSEG-BUPLA'
chave = v_lanc2.
IF sy-subrc <> 0.
PERFORM bdc_field USING:
'BSEG-BUPLA' c_brnch.
ENDIF.
ENDIF.
ENDIF.
* >> Início da exclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P
IF NOT t_dados-d_valut IS INITIAL AND
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P
IF ( NOT t_dados-d_valut IS INITIAL AND
* << Fim da inclusão
NOT t_dados-d_valut EQ '00000000'
AND v_vinc_tot IS INITIAL
AND v_dev IS INITIAL
* >> Início da exclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P
AND v_linhas LT '002'.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P
AND v_linhas LT '002' )
or ( not v_op is initial and v_vinc_tot is initial ).
* << Fim da inclusão
IF NOT c_valut IS INITIAL .
READ TABLE itab_oculto WITH KEY campo = 'BSEG-VALUT'
chave = v_lanc2.
IF sy-subrc <> 0.
PERFORM define_campo TABLES t_telas
USING v_programa
v_tela
'BSEG-VALUT'.
IF v_invisible EQ 0.
IF v_input EQ 1 OR v_required EQ 1
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB115F02
...
itab_zycbe033-kursf.
PERFORM verify_null_field USING itab_zycbe033-kursf
'KURSF'
text-075.
IF p_estorno IS INITIAL.
itab_zycbe033-wrbtr = itab_zycbt232_assoc-vlr_associado.
ELSE.
itab_zycbe033-wrbtr = itab_zycbt232_assoc-vlr_associado
+ itab_zycbt232_assoc-sld_exterior.
ENDIF.
* >> Início da exclusão: FORM DESMEMBRA_CONTA_CORRENTE_ME
IF itab_zycbe033-wrbtr EQ itab_zycbt232_assoc-vl_pagto.
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_CONTA_CORRENTE_ME
IF ( itab_zycbt232_assoc-sld_exterior IS INITIAL AND
p_estorno IS INITIAL ) OR NOT p_estorno IS INITIAL.
* << Fim da inclusão
v_assoc_tot = 'X'.
ELSE.
CLEAR v_assoc_tot.
ENDIF.
IF NOT itab_zycbt226-belnr_op2 IS INITIAL.
itab_zycbe033-belnr = itab_zycbt226-belnr_op2.
itab_zycbe033-dtdocto = itab_zycbt226-dtlancto2.
ELSE.
itab_zycbe033-belnr = itab_zycbt226-belnr_op.
itab_zycbe033-dtdocto = itab_zycbt226-dtlancto.
...