Módulo: CÂMBIO EXPORTAÇÃO
Funcionalidade: Rotina de Pagamento
Data/Hora da Publicação: 24/09/2007 00:00:00
Data/Hora Última Alteração: 10/03/2010 17:01:16
Descrição da Nota: SAÍDA DE PAGAMENTO - BOLETO
Sintoma
Ao parametrizar na tabela /PWS/ZYGL007 para que a data do documento seja a data do dia, para o
pagamento de fatura de importação o programa não está respeitando essa data na saída de pagamento,
e o programa está preenchendo a data do lançamento igual a data do documento.
Solução
Alteração nas funções verificando se a empresa está parametrizada para data do dia ou de lançamento:
* /PWS/ZYCA_TRANSACAO_F_51
* /PWS/ZYCA_TRANSACAO_F_51B
* /PWS/ZYCA_TRANSACAO_F_51C
* /PWS/ZYCA_TRANSACAO_F_51Q
* /PWS/ZYCB_TRANSACAO_F_02A
* /PWS/ZYCM_TRANSACAO_F_51A
* /PWS/ZYCM_TRANSACAO_F_51G
* /PWS/ZYCM_TRANSACAO_F_51O
* /PWS/ZYGL_TRANSACAO_F_02
* /PWS/ZYGL_TRANSACAO_F_04
* /PWS/ZYGL_TRANSACAO_F_30
* /PWS/ZYGL_TRANSACAO_F_51
* /PWS/ZYGL_TRANSACAO_F_53
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 04797 Data: 24/09/2007 Hora: 09:04:56
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 04797
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00003
Agrupamento : 00013
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
SAÍDA DE PAGAMENTO - BOLETO
----------------------------------------------------------------------------------------------------
Palavras Chave:
SAÍDA DE PAGAMENTO - BOLETO
----------------------------------------------------------------------------------------------------
Objetos da nota:
FUNC /PWS/ZYCA_TRANSACAO_F_51
FUNC /PWS/ZYCA_TRANSACAO_F_51B
FUNC /PWS/ZYCA_TRANSACAO_F_51C
FUNC /PWS/ZYCA_TRANSACAO_F_51Q
FUNC /PWS/ZYCB_TRANSACAO_F_02A
FUNC /PWS/ZYCM_TRANSACAO_F_51A
FUNC /PWS/ZYCM_TRANSACAO_F_51G
FUNC /PWS/ZYCM_TRANSACAO_F_51O
FUNC /PWS/ZYGL_TRANSACAO_F_02
FUNC /PWS/ZYGL_TRANSACAO_F_04
FUNC /PWS/ZYGL_TRANSACAO_F_30
FUNC /PWS/ZYGL_TRANSACAO_F_51
FUNC /PWS/ZYGL_TRANSACAO_F_53
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCA_TRANSACAO_F_51
...
v_periodo(2),
v_date LIKE t009b-bdatj,
v_valut(10),
v_xpos1(2) TYPE n,
v_xpos2(2) TYPE n,
v_xpos_awkey(15),
v_dtdocto(10),
v_xpos_belnr(2) TYPE n,
v_selecao(2) TYPE n,
v_konto LIKE t001b-vkont,
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_reg TYPE i.
DATA: itab_t041t LIKE t041t OCCURS 0 WITH HEADER LINE.
DATA: wa_zycbt089 LIKE /pws/zycbt089.
SELECT SINGLE selps FROM t021r
INTO v_xpos1
WHERE event = 'SL-AG'
AND feldn = 'BELNR'.
ADD 1 TO v_xpos1.
SHIFT v_xpos1 LEFT DELETING LEADING '0'.
CONCATENATE 'RF05A-XPOS1(' v_xpos1 ')' INTO v_xpos.
...
...
WHERE spras = sy-langu.
READ TABLE itab_t041t WITH KEY auglv = 'UMBUCHNG'.
v_xpos1 = sy-tabix.
SHIFT v_xpos1 LEFT DELETING LEADING '0'.
CONCATENATE 'RF05A-XPOS1(' v_xpos1 ')' INTO v_xpos_comp.
LOOP AT t_dados.
SELECT SINGLE * FROM /pws/zycbt089 INTO wa_zycbt089
WHERE bukrs EQ t_dados-bukrs.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51
v_bukrs = t_dados-bukrs
v_date = t_dados-budat
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51
v_bukrs = t_dados-bukrs
v_date = t_dados-budat
* << Fim da inclusão
IMPORTING
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51
v_year = v_date
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51
v_year = v_date
* << Fim da inclusão
EXCEPTIONS
* >> Início da exclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51
VARIANTE_DE_EXERCICIO = 1
DATA_NAO_ENCONTRADA = 2
EMPRESA_NAO_ENCONTRADA = 3
PERIOD_IN_NOT_VALID = 4
PERIOD_NOT_ASSIGNED = 5
VERSION_UNDEFINED = 6
OTHERS = 7.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51
variante_de_exercicio = 1
data_nao_encontrada = 2
empresa_nao_encontrada = 3
period_in_not_valid = 4
period_not_assigned = 5
version_undefined = 6
OTHERS = 7.
* << Fim da inclusão
CHECK t_dados-tcode = 'F-51'.
IF ( t_dados-bukrs = space ).
t_campo-mandt = t_dados-mandt.
t_campo-campo = 'BKPF-BUKRS'.
t_campo-descricao = text-021.
APPEND t_campo.
RAISE campo_em_branco.
ENDIF.
IF ( t_dados-d_newko = space ).
t_campo-mandt = t_dados-mandt.
t_campo-campo = 'RF05A-NEWKO'.
t_campo-descricao = text-020.
APPEND t_campo.
RAISE campo_em_branco.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
WRITE: t_dados-bldat TO v_bldat,
t_dados-budat TO v_budat,
t_dados-kursf TO v_kursf,
t_dados-wrbtr TO v_wrbtr CURRENCY t_dados-waers,
t_dados-bukrs TO v_bukrs.
SELECT SINGLE periv FROM t001
INTO v_periv
WHERE bukrs EQ v_bukrs.
CALL FUNCTION 'DETERMINE_PERIOD'
EXPORTING
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCA_TRANSACAO_F_51B
...
v_ok(1) VALUE 'N',
v_monat LIKE t001b-frpe1,
v_bukrs LIKE t001-bukrs,
v_gjahr LIKE t001b-frye1,
v_zfbdt(10) TYPE c,
v_valut(10),
v_data_val_char(10) TYPE c,
v_dtdocto(10),
v_xpos_belnr(2) TYPE n,
v_selecao(2) TYPE n,
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51B
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_konto like T001B-VKONT.
DATA: itab_t041t LIKE t041t OCCURS 0 WITH HEADER LINE.
DATA: wa_zycbt089 LIKE /pws/zycbt089.
SELECT SINGLE selps FROM t021r
INTO v_xpos
WHERE event = 'SL-AG'
AND feldn = 'BELNR'.
ADD 1 TO v_xpos.
CONCATENATE 'RF05A-XPOS1(' v_xpos ')' INTO v_campo.
SELECT SINGLE selps FROM t021r
...
...
APPEND t_campo.
RAISE campo_em_branco.
ENDIF.
IF ( t_dados-d_newko = space ).
t_campo-mandt = t_dados-mandt.
t_campo-campo = 'RF05A-NEWKO'.
t_campo-descricao = text-027.
APPEND t_campo.
RAISE campo_em_branco.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51B
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
WRITE: t_dados-bldat TO v_bldat,
t_dados-budat TO v_budat,
t_dados-kursf TO v_kursf,
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).
v_koart = 'K'.
PERFORM check_periodo USING v_koart
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCA_TRANSACAO_F_51C
...
v_monat LIKE t001b-frpe1,
v_bukrs LIKE t001-bukrs,
v_gjahr LIKE t001b-frye1,
v_valut(10),
v_data_val_char(10) TYPE c,
v_xpos1(2) TYPE n,
v_xpos_awkey(15),
v_zfbdt(10) TYPE c,
v_xpos_belnr(2) TYPE n,
v_selecao(2) TYPE n,
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51C
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_konto like T001B-VKONT.
DATA: itab_t041t LIKE t041t OCCURS 0 WITH HEADER LINE.
DATA: wa_zycbt089 LIKE /pws/zycbt089.
SELECT SINGLE selps FROM t021r
INTO v_xpos_belnr
WHERE event = 'SL-AG'
AND feldn = 'BELNR'.
ADD 1 TO v_xpos_belnr.
LOOP AT t_dados.
SELECT SINGLE * FROM /pws/zycbt089 INTO wa_zycbt089
...
...
APPEND t_campo.
RAISE campo_em_branco.
ENDIF.
IF ( t_dados-d_newko = space ).
t_campo-mandt = t_dados-mandt.
t_campo-campo = 'RF05A-NEWKO'.
t_campo-descricao = text-027.
APPEND t_campo.
RAISE campo_em_branco.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51C
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
WRITE: t_dados-bldat TO v_bldat,
t_dados-budat TO v_budat,
t_dados-kursf TO v_kursf,
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).
v_koart = 'K'.
PERFORM check_periodo USING v_koart
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCA_TRANSACAO_F_51Q
...
v_ok(1) VALUE 'N',
v_monat LIKE t001b-frpe1,
v_bukrs LIKE t001-bukrs,
v_gjahr LIKE t001b-frye1,
v_zfbdt(10) TYPE c,
v_valut(10),
v_data_val_char(10) TYPE c,
v_xpos_belnr(2) TYPE n,
v_selecao(2) TYPE n,
v_konto LIKE t001b-vkont,
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51Q
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_waersb LIKE /pws/zycbt007-waersb.
DATA: itab_t041t LIKE t041t OCCURS 0 WITH HEADER LINE.
DATA: wa_zycbt089 LIKE /pws/zycbt089.
SELECT SINGLE selps FROM t021r
INTO v_xpos
WHERE event = 'SL-AG'
AND feldn = 'BELNR'.
ADD 1 TO v_xpos.
CONCATENATE 'RF05A-XPOS1(' v_xpos ')' INTO v_campo.
SELECT SINGLE selps FROM t021r
...
...
ENDIF.
IF ( t_dados-agkon = space ).
t_campo-mandt = t_dados-mandt.
t_campo-campo = 'RF05A-NEWKO'.
t_campo-descricao = text-027.
APPEND t_campo.
RAISE campo_em_branco.
ENDIF.
SELECT SINGLE waersb FROM /pws/zycbt007 INTO v_waersb
WHERE bukrs = t_dados-bukrs.
* >> Início da inclusão: FUNCTION /PWS/ZYCA_TRANSACAO_F_51Q
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
WRITE: t_dados-bldat to v_bldat,
t_dados-budat to v_budat,
t_dados-kursf to v_kursf,
t_dados-wrbtr to v_wrbtr currency t_dados-waers,
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.
v_koart = '+'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCB_TRANSACAO_F_02A
...
v_bukrs LIKE t001-bukrs,
v_gjahr LIKE t001b-frye1,
v_date LIKE t009b-bdatj,
v_pep LIKE prps-posid,
v_periv(2),
v_periodo(2),
v_tela(4),
v_zfbdt(10),
v_f02(1) TYPE c,
v_umskz LIKE /pws/zycbe033-umskz,
* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_02A
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_programa(40) TYPE c VALUE 'SAPMF05A'.
DATA: wa_tbsl TYPE tbsl,
itab_tbsl TYPE TABLE OF tbsl,
t_telas TYPE rpy_dyfatc OCCURS 0 WITH HEADER LINE.
v_f02 = 'X'.
LOOP AT t_dados.
CHECK t_dados-tcode = 'F-02'.
IF ( t_dados-bukrs = space ).
t_campo-mandt = t_dados-mandt.
t_campo-campo = 'BKPF-BUKRS'.
...
...
CLEAR itab_oculto.
REFRESH itab_oculto.
PERFORM trata_string_debito TABLES t_dados
t_campo
itab_oculto
USING v_string_debito.
PERFORM trata_string_credito TABLES t_dados
t_campo
itab_oculto
USING v_string_credito1.
* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_02A
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
WRITE: t_dados-bukrs TO v_bukrs,
t_dados-bldat TO v_data_doc_char,
t_dados-budat TO v_data_lanc_char,
t_dados-zfbdt TO v_zfbdt,
t_dados-kursf TO v_kursf.
SELECT SINGLE periv FROM t001
INTO v_periv
WHERE bukrs EQ v_bukrs.
CALL FUNCTION 'DETERMINE_PERIOD'
EXPORTING
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCM_TRANSACAO_F_51A
...
v_bukrs LIKE t001-bukrs,
v_gjahr LIKE t001b-frye1,
v_periv(2),
v_periodo(2),
v_date LIKE t009b-bdatj,
v_valut(10),
v_xpos1(2) TYPE n,
v_dtdocto(10),
v_xpos_belnr(2) TYPE n,
v_selecao(2) TYPE n,
* >> Início da inclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_51A
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_reg TYPE i.
DATA: itab_t041t LIKE t041t OCCURS 0 WITH HEADER LINE.
DATA: wa_zycbt089 LIKE /pws/zycbt089.
SELECT SINGLE selps FROM t021r
INTO v_xpos1
WHERE event = 'SL-AG'
AND feldn = 'BELNR'.
ADD 1 TO v_xpos1.
SHIFT v_xpos1 LEFT DELETING LEADING '0'.
CONCATENATE 'RF05A-XPOS1(' v_xpos1 ')' INTO v_xpos.
...
...
APPEND t_campo.
RAISE campo_em_branco.
ENDIF.
IF ( t_dados-d_newko = space ).
t_campo-mandt = t_dados-mandt.
t_campo-campo = 'RF05A-NEWKO'.
t_campo-descricao = text-020.
APPEND t_campo.
RAISE campo_em_branco.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_51A
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
WRITE: t_dados-bldat TO v_bldat,
t_dados-budat TO v_budat,
t_dados-kursf TO v_kursf,
t_dados-wrbtr TO v_wrbtr CURRENCY t_dados-waers,
t_dados-bukrs TO v_bukrs.
SELECT SINGLE periv FROM t001
INTO v_periv
WHERE bukrs EQ v_bukrs.
CALL FUNCTION 'DETERMINE_PERIOD'
EXPORTING
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCM_TRANSACAO_F_51G
...
v_koart like t001b-mkoar,
v_ok(1) value 'N',
v_monat like t001b-frpe1,
v_bukrs like t001-bukrs,
v_gjahr like t001b-frye1,
v_periv(2),
v_periodo(2),
v_date like t009b-bdatj,
v_valut(10),
v_xpos1(2) type n,
* >> Início da inclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_51G
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_dtdocto(10).
data: itab_t041t like t041t occurs 0 with header line.
select single selps from t021r
into v_xpos1
where event = 'SL-AG'
and feldn = 'BELNR'.
add 1 to v_xpos1.
shift v_xpos1 left deleting leading '0'.
concatenate 'RF05A-XPOS1(' v_xpos1 ')' into v_xpos.
clear v_xpos1.
...
...
append t_campo.
raise campo_em_branco.
endif.
if ( t_dados-d_newko = space ).
t_campo-mandt = t_dados-mandt.
t_campo-campo = 'RF05A-NEWKO'.
t_campo-descricao = text-020.
append t_campo.
raise campo_em_branco.
endif.
* >> Início da inclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_51G
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
write: t_dados-bldat to v_bldat,
t_dados-budat to v_budat,
t_dados-kursf to v_kursf,
t_dados-wrbtr to v_wrbtr currency t_dados-waers,
t_dados-bukrs to v_bukrs.
select single periv from t001
into v_periv
where bukrs eq v_bukrs.
call function 'DETERMINE_PERIOD'
exporting
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCM_TRANSACAO_F_51O
...
v_string_debito LIKE tbsl-faus1,
v_valut(10),
v_xpos_belnr(2) TYPE n,
v_selecao(2) TYPE n,
v_string_credito TYPE tbsl-faus1,
v_srows TYPE sy-srows,
v_dtdocto(10),
v_xpos_budat(15),
v_campo2(15),
v_reg TYPE i,
* >> Início da inclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_51O
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_ch(1) TYPE c.
DATA: itab_t041t LIKE t041t OCCURS 0 WITH HEADER LINE.
DATA: wa_zycbt089 LIKE /pws/zycbt089.
DATA: t_zycbe035_aux LIKE t_zycbe035 OCCURS 0 WITH HEADER LINE,
t_zycbt036_aux LIKE t_zycbt036 OCCURS 0 WITH HEADER LINE.
SELECT SINGLE selps FROM t021r
INTO v_xpos_belnr
WHERE event = 'SL-AG'
AND feldn = 'BELNR'.
ADD 1 TO v_xpos_belnr.
...
...
APPEND t_campo.
RAISE campo_em_branco.
ENDIF.
IF v_op IS INITIAL.
IF ( t_dados-d_newko = space ).
t_campo-mandt = t_dados-mandt.
t_campo-campo = 'RF05A-NEWKO'.
t_campo-descricao = text-027.
APPEND t_campo.
RAISE campo_em_branco.
* >> Início da inclusão: FUNCTION /PWS/ZYCM_TRANSACAO_F_51O
ENDIF.
ENDIF.
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
* << Fim da inclusão
ENDIF.
ENDIF.
WRITE: t_dados-bldat TO v_bldat,
t_dados-budat TO v_budat,
t_dados-budat TO v_budat_ant,
t_dados-kursf TO v_kursf,
t_dados-wrbtr TO v_wrbtr CURRENCY t_dados-waers,
t_dados-bukrs TO v_bukrs.
SELECT SINGLE periv FROM t001 INTO t001-periv
WHERE bukrs = t_dados-bukrs.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYGL_TRANSACAO_F_02
...
v_monat LIKE t001b-frpe1,
v_bukrs LIKE t001-bukrs,
v_gjahr LIKE t001b-frye1,
v_date LIKE t009b-bdatj,
v_pep LIKE prps-posid,
v_periv(2),
v_periodo(2),
v_tela(4),
v_emprsa(1),
v_zfbdt(10),
* >> Início da inclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_02
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_akont(10).
LOOP AT t_dados.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
v_bukrs = t_dados-bukrs
v_date = t_dados-budat
IMPORTING
v_year = v_date
EXCEPTIONS
variante_de_exercicio = 1
...
...
CLEAR itab_oculto.
REFRESH itab_oculto.
PERFORM trata_string_debito TABLES t_dados
t_campo
itab_oculto
USING v_string_debito.
PERFORM trata_string_credito TABLES t_dados
t_campo
itab_oculto
USING v_string_credito.
* >> Início da inclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_02
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
WRITE: t_dados-bukrs TO v_bukrs,
t_dados-bldat TO v_data_doc_char,
t_dados-budat TO v_data_lanc_char,
t_dados-kursf TO v_kursf.
SELECT SINGLE periv FROM t001
INTO v_periv
WHERE bukrs EQ v_bukrs.
CALL FUNCTION 'DETERMINE_PERIOD'
EXPORTING
date = t_dados-budat
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYGL_TRANSACAO_F_04
...
v_koart LIKE t001b-mkoar,
v_ok(1) VALUE 'N',
v_monat LIKE t001b-frpe1,
v_bukrs LIKE t001-bukrs,
v_date LIKE t009b-bdatj,
v_periv(2),
v_periodo(2),
v_gjahr LIKE t001b-frye1,
v_xpos1(2) TYPE n,
v_dmbtr(16),
* >> Início da inclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_04
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_wrbtr(16) TYPE c.
DATA: itab_t041t LIKE t041t OCCURS 0 WITH HEADER LINE.
MOVE t_zycbt036[] TO itab_zycbt036[].
SELECT SINGLE selps FROM t021r
INTO v_xpos1
WHERE event = 'SL-AG'
AND feldn = 'BELNR'.
ADD 1 TO v_xpos1.
SHIFT v_xpos1 LEFT DELETING LEADING '0'.
CONCATENATE 'RF05A-XPOS1(' v_xpos1 ')' INTO v_xpos.
...
...
ELSEIF t_dados-newbs EQ '50'.
PERFORM determina_string USING v_chave_credito
t_dados-bukrs
v_newko
CHANGING v_string_debito.
PERFORM trata_string_debito TABLES t_dados
t_campo
itab_oculto
USING v_string_debito.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_04
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
WRITE: t_dados-bukrs TO v_bukrs,
t_dados-bldat TO v_bldat,
t_dados-budat TO v_budat,
t_dados-kursf TO v_kursf,
t_dados-dmbtr TO v_dmbtr CURRENCY t_dados-waersb.
SELECT SINGLE periv FROM t001
INTO v_periv
WHERE bukrs EQ v_bukrs.
CALL FUNCTION 'DETERMINE_PERIOD'
EXPORTING
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYGL_TRANSACAO_F_30
...
v_msgno LIKE t100-msgnr,
v_koart LIKE t001b-mkoar,
v_ok(1) VALUE 'N',
v_monat LIKE t001b-frpe1,
v_bukrs LIKE t001-bukrs,
v_date LIKE t009b-bdatj,
v_periv(2),
v_periodo(2),
v_gjahr LIKE t001b-frye1,
v_xpos1(2) TYPE n,
* >> Início da inclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_30
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_selecao(2) TYPE n.
DATA: itab_t041t LIKE t041t OCCURS 0 WITH HEADER LINE,
wa_zycbt089 LIKE /pws/zycbt089.
MOVE t_zycbt036[] TO itab_zycbt036[].
CLEAR v_xpos1.
SELECT SINGLE selps FROM t021r
INTO v_xpos1
WHERE event = 'SU-AG'
AND feldn = 'BUDAT'.
SHIFT v_xpos1 LEFT DELETING LEADING '0'.
...
...
IF t_dados-agkoa EQ 'S'.
PERFORM determina_string USING v_chave_debito
t_dados-bukrs
v_agkon
CHANGING v_string_debito.
PERFORM trata_string_debito TABLES t_dados
t_campo
itab_oculto
USING v_string_debito.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_30
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
WRITE: t_dados-bukrs TO v_bukrs,
t_dados-bldat TO v_bldat,
t_dados-budat TO v_budat,
t_dados-kursf TO v_kursf.
SELECT SINGLE periv FROM t001
INTO v_periv
WHERE bukrs EQ v_bukrs.
CALL FUNCTION 'DETERMINE_PERIOD'
EXPORTING
date = t_dados-budat
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYGL_TRANSACAO_F_51
...
v_koart like t001b-mkoar,
v_ok(1) value 'N',
v_monat like t001b-frpe1,
v_bukrs like t001-bukrs,
v_gjahr like t001b-frye1,
v_periv(2),
v_periodo(2),
v_date like t009b-bdatj,
v_valut(10),
v_xpos1(2) type n,
* >> Início da inclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_51
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_dtdocto(10).
data: itab_t041t like t041t occurs 0 with header line.
select single selps from t021r
into v_xpos1
where event = 'SL-AG'
and feldn = 'BELNR'.
add 1 to v_xpos1.
shift v_xpos1 left deleting leading '0'.
concatenate 'RF05A-XPOS1(' v_xpos1 ')' into v_xpos.
clear v_xpos1.
...
...
append t_campo.
raise campo_em_branco.
endif.
if ( t_dados-d_newko = space ).
t_campo-mandt = t_dados-mandt.
t_campo-campo = 'RF05A-NEWKO'.
t_campo-descricao = text-020.
append t_campo.
raise campo_em_branco.
endif.
* >> Início da inclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_51
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
write: t_dados-bldat to v_bldat,
t_dados-budat to v_budat,
t_dados-kursf to v_kursf,
t_dados-wrbtr to v_wrbtr currency t_dados-waers,
t_dados-bukrs to v_bukrs.
select single periv from t001
into v_periv
where bukrs eq v_bukrs.
call function 'DETERMINE_PERIOD'
exporting
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYGL_TRANSACAO_F_53
...
v_bukrs LIKE t001-bukrs,
v_date LIKE t009b-bdatj,
v_periv(2),
v_periodo(2),
v_gjahr LIKE t001b-frye1,
v_xpos1(2) TYPE n,
v_xpos_budat(15),
v_dtdocto(10),
v_outros(1),
v_selecao(2) TYPE n,
* >> Início da inclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_53
v_fdtdoc TYPE /pws/zycbt007-fdtdoc,
* << Fim da inclusão
v_reg TYPE i.
DATA: wa_zycbt089 LIKE /pws/zycbt089,
t_zycbt036_aux LIKE t_zycbt036 OCCURS 0 WITH HEADER LINE.
CLEAR v_outros.
SELECT SINGLE selps FROM t021r
INTO v_xpos_belnr
WHERE event = 'SL-AG'
AND feldn = 'BELNR'.
CLEAR v_xpos1.
SELECT SINGLE selps FROM t021r
...
...
PERFORM determina_string USING v_chave_credito
t_dados-bukrs
t_dados-c_newko
CHANGING v_string_credito.
CLEAR itab_oculto.
REFRESH itab_oculto.
PERFORM trata_string_credito TABLES t_dados
t_campo
itab_oculto
USING v_string_credito.
* >> Início da inclusão: FUNCTION /PWS/ZYGL_TRANSACAO_F_53
CLEAR v_fdtdoc.
SELECT SINGLE fdtdoc
INTO v_fdtdoc
FROM /pws/zycbt007
WHERE bukrs = t_dados-bukrs.
IF sy-subrc = 0.
IF v_fdtdoc = 'D'.
t_dados-bldat = sy-datum.
ELSE.
t_dados-bldat = t_dados-budat.
ENDIF.
ENDIF.
* << Fim da inclusão
WRITE: t_dados-bukrs TO v_bukrs,
t_dados-bldat TO v_bldat,
t_dados-budat TO v_budat,
t_dados-c_valut TO v_valut,
t_dados-kursf TO v_kursf,
t_dados-wrbtr TO v_wrbtr CURRENCY t_dados-waers,
t_dados-dmbtr TO v_dmbtr CURRENCY t_dados-waersb.
SELECT SINGLE periv FROM t001
INTO v_periv
WHERE bukrs EQ v_bukrs.
...