Módulo: CÂMBIO IMPORTAÇÃO
Funcionalidade: Rotina de Pagamento
Data/Hora da Publicação: 29/07/2008 00:00:00
Data/Hora Última Alteração: 18/02/2011 10:00:08
Descrição da Nota: COMPLEMENTO DO BOLETO-PAGAMENTO ANTECIPADO-F-43-FORMATO DATA AAAA/MM/DD
Sintoma
Ao efetuar a F-43 de um boleto gerado para pagamento antecipado e, o campo data tem formato
AAAA/MM/DD, esta levando o período e data incorreto ao batch-input.
Solução
Tratar para carregar com todas opções de formato de data do SAP.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 07043 Data: 29/07/2008 Hora: 15:42:10
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 07043
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00006
Agrupamento : 00058
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
04814 - 00001 - 7.0 - 00003 - COMPLEMENTO DO BOLETO
06513 - 00002 - 7.0 - 00005 - COMPLEMENTO DO BOLETO - CAMPO ZFBDT F-43
----------------------------------------------------------------------------------------------------
COMPLEMENTO DO BOLETO-PAGAMENTO ANTECIPADO-F-43-FORMATO DATA AAAA/MM/DD
----------------------------------------------------------------------------------------------------
Palavras Chave:
COMPLEMENTO DO BOLETO PAGAMENTO ANTECIPADO F-43 FORMATO DATA AAAA/MM/DD
ZFBDT
----------------------------------------------------------------------------------------------------
Objetos da nota:
FUNC /PWS/ZYCM_TRANSACAO_F_43C
REPS /PWS/MZYCM110F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCM_TRANSACAO_F_43C
...
v_koart = 'K'.
v_data_lanc_char_ant = v_data_lanc_char.
PERFORM check_periodo USING v_koart
v_monat
v_bukrs
v_gjahr
CHANGING v_data_lanc_char
v_ok.
IF usr01-datfm = 1 OR sy-subrc NE 0.
CONCATENATE '0' v_data_lanc_char+3(2) INTO v_monat.
* >> Início da exclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_43C
ELSE.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_43C
v_gjahr = v_data_lanc_char+6(4).
ELSEIF usr01-datfm = 2 OR usr01-datfm = 3.
* << Fim da inclusão
CONCATENATE '0' v_data_lanc_char+0(2) INTO v_monat.
* >> Início da inclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_43C
v_gjahr = v_data_lanc_char+6(4).
ELSEIF usr01-datfm > 3.
CONCATENATE '0' v_data_lanc_char+5(2) INTO v_monat.
v_gjahr = v_data_lanc_char+0(4).
* << Fim da inclusão
ENDIF.
* >> Início da exclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_43C
v_gjahr = v_data_lanc_char+6(4).
* << Fim da exclusão
t_dados-budat(4) = v_data_lanc_char+6(4).
IF usr01-datfm = 1 OR sy-subrc NE 0.
t_dados-budat+4(2) = v_data_lanc_char+3(2).
t_dados-budat+6(2) = v_data_lanc_char+0(2).
* >> Início da exclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_43C
ELSE.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_43C
ELSEIF usr01-datfm = 2 OR usr01-datfm = 3.
* << Fim da inclusão
t_dados-budat+4(2) = v_data_lanc_char(2).
t_dados-budat+6(2) = v_data_lanc_char+3(2).
* >> Início da inclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_43C
ELSEIF usr01-datfm > 3.
t_dados-budat+4(2) = v_data_lanc_char+5(2).
t_dados-budat+6(2) = v_data_lanc_char+8(2).
t_dados-budat(4) = v_data_lanc_char+0(4).
* << Fim da inclusão
ENDIF.
PERFORM bdc_screen USING 'SAPMF05A' '0100'.
...
...
ENDIF.
IF /pws/zycbt007-fdivisao IS INITIAL.
READ TABLE itab_oculto WITH KEY campo = 'BSEG-GSBER'
chave = 'D'.
IF sy-subrc <> 0.
PERFORM bdc_field USING 'BSEG-GSBER' t_item-c_gsber.
ENDIF.
ENDIF.
PERFORM bdc_field USING 'BSEG-WRBTR' v_wrbtr.
IF NOT v_zfbdt_char IS INITIAL AND
* >> Início da exclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_43C
v_zfbdt_char NE '00.00.0000'.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_43C
v_zfbdt_char(2) NE '00'.
* << Fim da inclusão
SELECT SINGLE ulsk1 ulsk2
FROM t042
INTO (v_ulsk1, v_ulsk2)
WHERE bukrs = t_dados-bukrs.
IF sy-subrc EQ 0.
IF t_dados-umskz CA v_ulsk1 OR
t_dados-umskz CA v_ulsk2.
PERFORM bdc_field USING 'BSEG-ZFBDT' v_zfbdt_char.
ELSE.
SELECT SINGLE umsks
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCM110F01
...
IF NOT /pws/zycbe031-contabreal IS INITIAL.
itab_zycbe033-contabreal = 'X'.
ENDIF.
itab_zycbe033-bktxt = wa_zycbt007-bktxt.
itab_zycbe033-umskz = wa_zycbt011-agums.
IF v_tcode = 'F-43'.
itab_zycbe033-newbs1 = '31'.
ENDIF.
itab_zycbe033-newbs = '29'.
itab_zycbe033-bcorec = /pws/zycbe031-bco.
* >> Início da inclusão: FORM FILL_DATE_F-63_IA
itab_zycbe033-zfbdt = /pws/zycbe031-dtcredpr.
* << Fim da inclusão
PERFORM verify_null_field USING wa_zycbt117-lifnr
'LIFNR'
text-061.
itab_zycbe033-agkon = wa_zycbt117-lifnr.
itab_zycbe033-d_newko = wa_zycbt117-lifnr.
LOOP AT itab_zycbt013.
CASE itab_zycbt013-cpor3.
WHEN 'XBLNR'.
CASE itab_zycbt013-cpocb.
WHEN 'NRSEQ'.
...