Módulo: CÂMBIO FINANCEIRO
Funcionalidade: Rotina de Pagamento
Data/Hora da Publicação: 11/10/2006 00:00:00
Data/Hora Última Alteração: 18/02/2011 11:43:02
Descrição da Nota: SAÍDA DE PAGAMENTO/COMPLEMENTO - BOLETO/REMESSA FORMATO DE DATA
Sintoma
1) O período para 2005 foi fechado na OB52.
2) Ao entrar em "remessa - modificar" para incluir o IRRF e com a opção "IRRF deduzido da fatura".
Ao gravar, está sendo aberto o pop up corretamente para eu informar a data de lançamento, pois o
período está fechado, mas se eu informar essa data sem colocar os pontos, ou seja, ao invés de
informar 12.09.2006 eu informar 12092006, na F-51 está sendo levado o período errado, ao invés de
09, está levando 92.
Solução
Foi alterada a tela da nova data, forçando o usuário a indicar uma data correta e retornando sempre
no formato correto, independente do formato.
6.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 02246 Data: 11/10/2006 Hora: 08:52:15
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 02246
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 6.0
Pacote : 00025
Agrupamento : 00135
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
SAÍDA DE PAGAMENTO/COMPLEMENTO - BOLETO/REMESSA FORMATO DE DATA
----------------------------------------------------------------------------------------------------
Palavras Chave:
SAÍDA DE PAGAMENTO/COMPLEMENTO - BOLETO/REMESSA FORMATO DE DATA
----------------------------------------------------------------------------------------------------
Objetos da nota:
FUNC /PWS/ZYCA_TRANSACAO_F_02R
FUNC /PWS/ZYCA_TRANSACAO_F_51P
FUNC /PWS/ZYCA_TRANSACAO_F_51Q
FUNC /PWS/ZYCA_TRANSACAO_F_63R
REPS /PWS/LZYCAGF2F01
REPS /PWS/LZYCAGF2TOP
REPS /PWS/MZYCA109F01
REPS /PWS/MZYCB115F01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCA_TRANSACAO_F_02R
...
v_database(10) TYPE c,
v_valut(10) TYPE c,
v_data_conver_char(10) TYPE c,
v_data_val_char(10) TYPE c,
v_data_lanc_char(10) TYPE c,
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_02R
v_data_lanc_char2(10) TYPE c,
* << Fim da inclusão
v_data_venc_char(10) TYPE c,
v_base_char(16) TYPE c,
v_kursf(9) TYPE c,
v_wrbtr(16) TYPE c,
v_dmbtr(16) TYPE c,
...
...
t_dados-bldat TO v_data_doc_char,
t_dados-budat TO v_data_lanc_char,
t_dados-kursf TO v_kursf.
v_monat = t_dados-budat+4(2).
v_gjahr = t_dados-budat+0(4).
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_02R
v_koart = 'CA'.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_02R
v_koart = '+'.
* << Fim da inclusão
PERFORM check_periodo USING v_koart
v_monat
v_bukrs
v_gjahr
v_konto
CHANGING v_data_lanc_char
v_ok.
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_02R
WRITE: t_dados-budat TO v_data_lanc_char2.
IF v_data_lanc_char NE v_data_lanc_char2.
SELECT SINGLE datfm FROM usr01 INTO usr01-datfm
WHERE bname = sy-uname.
IF usr01-datfm = 1 OR sy-subrc NE 0.
* << Fim da inclusão
CONCATENATE '0' v_data_lanc_char+3(2) INTO v_monat.
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_02R
MOVE v_data_lanc_char+6(4) TO v_gjahr.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_02R
ELSE.
CONCATENATE '0' v_data_lanc_char+0(2) INTO v_monat.
ENDIF.
v_gjahr = v_data_lanc_char+6(4).
ENDIF.
* << Fim da inclusão
PERFORM bdc_screen USING 'SAPMF05A' '0100'.
PERFORM bdc_field USING:
'BKPF-BLDAT' v_data_doc_char,
'BKPF-BLART' t_dados-blart,
'BKPF-BUKRS' t_dados-bukrs,
'BKPF-BUDAT' v_data_lanc_char,
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_02R
'BKPF-MONAT' t_dados-budat+4(2),
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_02R
'BKPF-MONAT' v_monat+1(2),
* << Fim da inclusão
'BKPF-WAERS' t_dados-waers,
'BKPF-KURSF' v_kursf,
'BKPF-BKTXT' t_dados-bktxt,
'RF05A-NEWBS' t_dados-newbs,
'RF05A-NEWKO' t_dados-d_newko,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCA_TRANSACAO_F_51P
...
v_cont(2) TYPE n,
v_tabix LIKE sy-tabix,
v_campo(15),
v_bldat(10),
v_budat(10),
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51P
v_budat2(10),
* << Fim da inclusão
v_wrbtr(16),
v_dmbtr(16),
v_residuo(15),
v_kursf(9),
v_xpos(2) TYPE n,
...
...
t_dados-wrbtr TO v_wrbtr CURRENCY t_dados-waers,
t_dados-dmbtr TO v_dmbtr CURRENCY 'X',
t_dados-bukrs TO v_bukrs.
v_monat = t_dados-budat+4(2).
v_gjahr = t_dados-budat+0(4).
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51P
v_koart = 'K'.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51P
v_koart = '+'.
* << Fim da inclusão
PERFORM check_periodo USING v_koart
v_monat
v_bukrs
v_gjahr
v_konto
CHANGING v_budat
v_ok.
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51P
WRITE: t_dados-budat TO v_budat2.
IF v_budat NE v_budat2.
SELECT SINGLE datfm FROM usr01 INTO usr01-datfm
WHERE bname = sy-uname.
IF usr01-datfm = 1 OR sy-subrc NE 0.
* << Fim da inclusão
CONCATENATE '0' v_budat+3(2) INTO v_monat.
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51P
MOVE v_budat+6(4) TO v_gjahr.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51P
ELSE.
CONCATENATE '0' v_budat+0(2) INTO v_monat.
ENDIF.
v_gjahr = v_budat+6(4).
ENDIF.
* << Fim da inclusão
PERFORM bdc_screen USING 'SAPMF05A' '0122'.
PERFORM bdc_field USING:
'BKPF-BLDAT' v_bldat,
'BKPF-BLART' t_dados-blart,
'BKPF-BUKRS' v_bukrs,
'BKPF-BUDAT' v_budat,
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51P
'BKPF-MONAT' v_budat+3(2),
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51P
'BKPF-MONAT' v_monat+1(2),
* << Fim da inclusão
'BKPF-WAERS' t_dados-waers,
'BKPF-KURSF' v_kursf,
'BKPF-BKTXT' t_dados-bktxt,
'RF05A-AUGTX' t_dados-augtx,
'BDC_OKCODE' '=SL'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCA_TRANSACAO_F_51Q
...
v_cont(2) TYPE n,
v_tabix LIKE sy-tabix,
v_campo(15),
v_bldat(10),
v_budat(10),
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51Q
v_budat2(10),
* << Fim da inclusão
v_wrbtr(16),
v_dmbtr(16),
v_residuo(15),
v_kursf(9),
v_xpos(2) TYPE n,
...
...
t_dados-dmbtr to v_dmbtr currency v_waersb,
t_dados-bukrs to v_bukrs.
v_monat = t_dados-budat+4(2).
v_gjahr = t_dados-budat+0(4).
v_koart = t_dados-agkoa.
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51Q
v_koart = '+'.
v_koart = t_dados-agkoa.
* << Fim da inclusão
v_konto = t_dados-agkon.
PERFORM check_periodo USING v_koart
v_monat
v_bukrs
v_gjahr
v_konto
CHANGING v_budat
v_ok.
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51Q
v_dtlanc = v_budat.
* << Fim da exclusão
CONCATENATE '0' v_budat+3(2) INTO v_monat.
MOVE v_budat+6(4) TO v_gjahr.
PERFORM bdc_screen USING 'SAPMF05A' '0122'.
PERFORM bdc_field USING:
'BKPF-BLDAT' v_bldat,
'BKPF-BLART' t_dados-blart,
'BKPF-BUKRS' v_bukrs,
'BKPF-BUDAT' v_budat,
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51Q
'BKPF-MONAT' v_budat+3(2),
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51Q
'BKPF-MONAT' v_monat+1(2),
* << Fim da inclusão
'BKPF-WAERS' t_dados-waers,
'BKPF-KURSF' v_kursf,
'BKPF-BKTXT' t_dados-bktxt,
'RF05A-AUGTX' t_dados-augtx,
'RF05A-NEWBS' t_dados-newbs,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCA_TRANSACAO_F_63R
...
v_data_conv_char(10) TYPE c,
v_database(10) TYPE c,
v_data_conver_char(10) TYPE c,
v_data_val_char(10) TYPE c,
v_data_lanc_char(10) TYPE c,
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_63R
v_data_lanc_char2(10) TYPE c,
* << Fim da inclusão
v_data_valut(10) TYPE c,
v_data_venc_char(10) TYPE c,
v_base_char(16) TYPE c,
v_kursf(9) TYPE c,
v_wrbtr(16) TYPE c,
...
...
IF NOT t_dados-c_valut IS INITIAL.
WRITE t_dados-c_valut TO v_data_valut.
ENDIF.
v_monat = t_dados-budat+4(2).
v_gjahr = t_dados-budat+0(4).
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_63R
v_koart = 'CA'.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_63R
v_koart = '+'.
* << Fim da inclusão
PERFORM check_periodo USING v_koart
v_monat
v_bukrs
v_gjahr
v_konto
CHANGING v_data_lanc_char
v_ok.
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_63R
WRITE: t_dados-budat TO v_data_lanc_char2.
IF v_data_lanc_char NE v_data_lanc_char2.
SELECT SINGLE datfm FROM usr01 INTO usr01-datfm
WHERE bname = sy-uname.
IF usr01-datfm = 1 OR sy-subrc NE 0.
* << Fim da inclusão
CONCATENATE '0' v_data_lanc_char+3(2) INTO v_monat.
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_63R
MOVE v_data_lanc_char+6(4) TO v_gjahr.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_63R
ELSE.
CONCATENATE '0' v_data_lanc_char+0(2) INTO v_monat.
ENDIF.
v_gjahr = v_data_lanc_char+6(4).
ENDIF.
* << Fim da inclusão
PERFORM bdc_screen USING 'SAPLF040' '0100'.
PERFORM bdc_field USING:
'BKPF-BLDAT' v_data_doc_char,
'BKPF-BLART' t_dados-blart,
'BKPF-BUKRS' t_dados-bukrs,
'BKPF-BUDAT' v_data_lanc_char,
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_63R
'BKPF-MONAT' t_dados-budat+4(2),
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_63R
'BKPF-MONAT' v_monat+1(2),
* << Fim da inclusão
'BKPF-WAERS' t_dados-waers,
'BKPF-KURSF' v_kursf,
'BKPF-BKTXT' t_dados-bktxt,
'RF05V-NEWBS' t_dados-newbs,
'RF05V-NEWKO' t_dados-c_newko,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCAGF2F01
...
ENDIF.
p_novadata = v_novadata.
ENDFORM.
FORM entrar_nova_data CHANGING value(p_resposta)
value(p_novadata).
* >> Início da exclusão: FORM ENTRAR_NOVA_DATA
CALL FUNCTION 'POPUP_TO_GET_ONE_VALUE'
* << Fim da exclusão
* >> Início da inclusão: FORM ENTRAR_NOVA_DATA
DATA: v_data_ TYPE d.
WHILE v_data_ IS INITIAL OR
v_data_ EQ '00000000'.
IF sy-index > 1.
MESSAGE i061(/pws/zycbm) WITH text-046.
ENDIF.
CALL FUNCTION 'TR_POPUP_INPUT_DATE'
* << Fim da inclusão
EXPORTING
* >> Início da exclusão: FORM ENTRAR_NOVA_DATA
textline1 = text-010
textline2 = text-011
titel = text-012
valuelength = 10
* << Fim da exclusão
* >> Início da inclusão: FORM ENTRAR_NOVA_DATA
iv_title = text-012
iv_description1 = text-010
iv_description2 = text-011
iv_date = v_data_
* << Fim da inclusão
IMPORTING
* >> Início da exclusão: FORM ENTRAR_NOVA_DATA
answer = p_resposta
value1 = p_novadata
* << Fim da exclusão
* >> Início da inclusão: FORM ENTRAR_NOVA_DATA
ev_date = v_data_
* << Fim da inclusão
EXCEPTIONS
* >> Início da exclusão: FORM ENTRAR_NOVA_DATA
titel_too_long = 1
OTHERS = 2.
* << Fim da exclusão
* >> Início da inclusão: FORM ENTRAR_NOVA_DATA
action_aborted_by_user = 1
value_not_changed = 2
OTHERS = 3.
WRITE v_data_ TO p_novadata.
ENDWHILE.
* << Fim da inclusão
ENDFORM.
FORM trata_string_credito2 TABLES p_t_dados STRUCTURE /pws/zycbe033
p_t_campo STRUCTURE /pws/zycbt034
p_itab_oculto2 LIKE itab_oculto2[]
USING value(p_string)
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCAGF2TOP
...
lfbw,
lfa1,
lfb1,
knb1,
tcurx,
* >> Início da inclusão:
usr01,
* << Fim da inclusão
/pws/zycbt011,
/pws/zycbt007,
/pws/zycbt009,
j_1bam,
/pws/zycet036,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCA109F01
...
tpmsg = 'S'.
IF sy-subrc = 0.
MESSAGE i061 WITH 'PRINCIPAL -' text-164
itab_zycbt032-belnr text-167.
/pws/zycbe124-belnr_f51 = itab_zycbt032-belnr.
* >> Início da exclusão: FORM DESMEMBRA_DOCTO_PROVISAO_PRIN
CONCATENATE v_dtlanc+6(4) v_dtlanc+3(2) v_dtlanc(2)
INTO v_dtlanc.
* << Fim da exclusão
IF v_dtlanc NE /pws/zycbe124-dtdocto AND
NOT v_dtlanc = '00000000' AND
NOT v_dtlanc = ' '.
/pws/zycbe124-dtdocto = v_dtlanc.
wa_zycbt124-dtdocto = v_dtlanc.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB115F01
...
READ TABLE itab_zycbt032 WITH KEY tcode = 'F-51'
tabela = '/PWS/ZYCBT124'
cpochv = itab_zycbt124-nrseq
tpmsg = 'S'.
IF sy-subrc = 0.
* >> Início da exclusão: FORM DESMEMBRA_DOCTO_PROVISAO_CP
CONCATENATE v_dtlanc2+6(4) v_dtlanc2+3(2) v_dtlanc2(2)
INTO v_dtlanc2.
* << Fim da exclusão
IF v_dtlanc2 NE itab_zycbt124-dtdocto AND
NOT v_dtlanc2 = '00000000' AND
NOT v_dtlanc2 = ' '.
itab_zycbt124-dtdocto = v_dtlanc2.
ENDIF.
...