Módulo: CÂMBIO EXPORTAÇÃO
Funcionalidade: Vinculação
Data/Hora da Publicação: 17/04/2007 00:00:00
Data/Hora Última Alteração: 10/03/2010 15:18:18
Descrição da Nota: VINCULAÇÃO LIQ. AUT. / LIQUIDAÇÃO - CÂMBIO PRONTO - ARBITRAGEM
Sintoma
Ao efetuar vinculação de câmbio pronto com liquidação automática, cenário de arbitragem, o sistema
esta se perdendo nos contábeis, lançando o contrato na moeda da fatura, buscando a taxa incorreta e
não lançando arbitragem.
Ao efetuar liquidação de câmbio pronto, arbitragem, o sistema esta lançando a arbitragem na chave 40
correta, mas com a conta crédito.
Solução
Incluir na vinculação com liquidação automática de CP, arbitragem, os tratamentos da liquidação
(programa /pws/sapmzycb004).
Fazer a busca da conta débito na liquidação, utilizando o campo KONTS no lugar do KONTH.
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 03478 Data: 17/04/2007 Hora: 11:41:53
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 03478
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00001
Agrupamento : 00162
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
VINCULAÇÃO LIQ. AUT. / LIQUIDAÇÃO - CÂMBIO PRONTO - ARBITRAGEM
----------------------------------------------------------------------------------------------------
Palavras Chave:
VINCULAÇÃO LIQUIDAÇÃO AUTOMÁTICA LIQUIDAÇÃO CÂMBIO PRONTO
ARBITRAGEM MOEDAS DIFERENTES
----------------------------------------------------------------------------------------------------
Objetos da nota:
FUNC /PWS/ZYCB_TRANSACAO_F_30_W
REPS /PWS/MZYCB004F01
REPS /PWS/MZYCB004F02
REPS /PWS/MZYCB009F08
REPS /PWS/MZYCB009F09
REPS /PWS/MZYCB009F10
REPS /PWS/MZYCB009TOP
REPT /PWS/SAPMZYCB009
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCB_TRANSACAO_F_30_W
...
SORT itab_parts BY shkzg agkoa agkon agums ASCENDING.
ELSE.
SORT itab_parts BY shkzg agkoa agkon agums.
ENDIF.
CLEAR: v_last.
READ TABLE itab_parts WITH KEY agkon = t_dados-d_newko.
IF sy-subrc EQ 0.
MOVE: itab_parts-agkoa TO v_agkoa,
itab_parts-agkon TO v_agkon_emp.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_W
IF NOT v_res_liq_and IS INITIAL.
ADD 1 TO v_linhas.
ENDIF.
* << Fim da inclusão
LOOP AT itab_parts.
AT LAST.
v_last = 'X'.
ENDAT.
IF itab_parts-agkoa EQ 'D'.
IF itab_parts-agums IS INITIAL.
v_tela = '0301'.
ELSE.
PERFORM define_tela2 USING itab_parts-tcode
t_dados-bukrs
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB004F01
...
ENDIF.
IF p_v_sinal EQ '-'.
itab_zycbe033-c_newko = itab_zyglt316-konth.
PERFORM verify_null_field USING itab_zycbe033-c_newko
'SAKNR'
text-041.
ELSE.
IF wa_zycbt007-liq_trans EQ 'R'.
itab_zycbe033-d_newko = itab_zycbt012-saknr2.
ELSE.
* >> Início da exclusão: FORM GET_PARAMETERS_002
itab_zycbe033-d_newko = itab_zyglt316-konth.
* << Fim da exclusão
* >> Início da inclusão: FORM GET_PARAMETERS_002
itab_zycbe033-d_newko = itab_zyglt316-konts.
* << Fim da inclusão
ENDIF.
PERFORM verify_null_field USING itab_zycbe033-d_newko
'SAKNR'
text-010.
ENDIF.
ENDFORM.
FORM verify_null_field USING value(p_field)
value(p_fieldname)
value(p_description).
IF p_field IS INITIAL.
...
...
EXPORT itab_erro TO MEMORY ID '001'.
SUBMIT /pws/zycbr126 AND RETURN.
REFRESH itab_erro.
ENDIF.
ENDFORM.
FORM clearing_newko.
PERFORM clear_date_batch.
itab_zycbe033-agkoa = 'S'.
IF itab_zycbt006-agkon IS INITIAL.
PERFORM get_parameters_002 USING '+'.
* >> Início da exclusão: FORM CLEARING_NEWKO
itab_zycbe033-agkon = itab_zyglt316-konth.
* << Fim da exclusão
* >> Início da inclusão: FORM CLEARING_NEWKO
itab_zycbe033-agkon = itab_zyglt316-konts.
* << Fim da inclusão
ELSE.
itab_zycbe033-agkon = itab_zycbt006-agkon.
ENDIF.
PERFORM verify_null_field USING itab_zycbe033-agkon
'agkon'
text-028.
IF itab_zycbt006-v_armda EQ 'X'.
PERFORM fill_date6_f30_2.
ELSE.
PERFORM fill_date6_f30.
...
...
ELSE.
itab_zycbe033-agkon = itab_zycbt209-hkont.
itab_zycbe033-umskz = itab_zycbt209-umskz.
itab_zycbe033-agkoa = itab_zycbt209-koart.
ENDIF.
ELSE.
itab_zycbe033-agkon = itab_zycbt209-hkont.
itab_zycbe033-umskz = itab_zycbt209-umskz.
itab_zycbe033-agkoa = itab_zycbt209-koart.
ENDIF.
* >> Início da exclusão: FORM FILL_DATE6_F30_LIQUID_3
itab_zycbe033-d_newko = itab_zyglt316-konth.
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID_3
itab_zycbe033-d_newko = itab_zyglt316-konts.
* << Fim da inclusão
itab_zycbe033-newbs = '40'.
itab_zycbe033-awtyp = '2'.
DELETE itab_zycbt209 WHERE belnr_d IS initial
AND nrinvoic = itab_zycbt006-nrinvoic
AND nrparcf = itab_zycbt006-nrparcf
AND gsberf = itab_zycbt006-gsberf.
READ TABLE itab_zycbt209
WITH KEY nrinvoic = itab_zycbt006-nrinvoic
nrparcf = itab_zycbt006-nrparcf
gsberf = itab_zycbt006-gsberf
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB004F02
...
TABLES
account = itab_zyglt316
EXCEPTIONS
key_not_found = 1
rules_not_found = 2
OTHERS = 3.
IF sy-subrc EQ 0.
READ TABLE itab_zyglt316 INDEX 1.
ENDIF.
ENDIF.
* >> Início da exclusão: FORM GET_PARAMETERS_002_ARB
itab_zycbe033-d_newko = itab_zyglt316-konth.
* << Fim da exclusão
* >> Início da inclusão: FORM GET_PARAMETERS_002_ARB
itab_zycbe033-d_newko = itab_zyglt316-konts.
* << Fim da inclusão
PERFORM verify_null_field USING itab_zycbe033-d_newko
'SAKNR'
text-010.
ENDFORM.
FORM get_parameters_003_arb USING v_sinal.
DATA: v_nrdias_arb TYPE i,
v_prazo_arb,
v_cod_param LIKE /pws/zyglt316-codaux1.
CLEAR itab_zycbt012.
CONCATENATE '003' /pws/zycbe005-tpcontr INTO v_codeven.
...
...
ELSE.
itab_zycbe033-d_gsber = itab_zycbt006-gsberf.
ENDIF.
itab_zycbe033-dtdocto = itab_zycbt006-dtpagto.
itab_zycbe033-koart = 'S'.
IF itab_zycbt005-slpagar IS INITIAL AND
NOT itab_zycbt005-tpcontr(1) CA 'CE'.
itab_zycbe033-flag_nc = 'X'. " usar essa variável para controlar se
" houve desmembramento ou não.
ENDIF.
IF v_variacao < 0.
itab_zycbe033-newbs = '40'.
ELSEIF v_variacao > 0.
itab_zycbe033-newbs = '50'.
* >> Início da exclusão: FORM FILL_DATE6_F30_2
itab_zycbe033-d_newko = itab_zyglt316-konth.
* << Fim da exclusão
ELSE.
CLEAR itab_zycbe033-newbs.
ENDIF.
IF NOT v_desmembramento IS INITIAL.
itab_zycbt036-dtdocto = itab_zycbt030-budat.
CLEAR itab_zycbe033-c_zuonr.
ELSE.
itab_zycbt036-dtdocto = itab_zycbt030-budat.
ENDIF.
IF NOT itab_zycbt209[] IS INITIAL.
CLEAR itab_zycbe033-c_zuonr.
ENDIF.
APPEND itab_zycbe033.
ENDFORM. " fill_date6_f30_2
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB009F08
...
v_kursf = itab_zycbe033-kursf.
PERFORM clearing TABLES itab_vinc
USING itab_zycbt035-d_newko
v_datum
v_kursf
v_koart
itab_vinc-belnr_vinc
itab_vinc-dtvincul
text-341
wa_zycbt011-agums
* >> Início da inclusão: FORM ESTORNO_PERIODO_FECHADO
itab_vinc-bukrs
itab_vinc-waers
/pws/zycbe005-j_1bbranch
* << Fim da inclusão
CHANGING v_belnr.
v_belnr_001 = v_belnr.
v_dtdocto = itab_vinc-dtvincul.
IF sy-subrc NE 0.
v_subrc = 4.
v_erro_estorno = 'X'.
EXIT.
ENDIF.
itab_vinc-belnr = v_belnr.
MODIFY itab_vinc TRANSPORTING belnr
...
...
ENDFORM.
FORM clearing TABLES itab_vinc STRUCTURE itab_zycbt005
USING value(p_conta)
value(p_budat)
value(p_kursf)
value(p_agkoa)
value(p_belnr_ref)
value(p_budat_ref)
value(p_texto)
value(p_agums)
* >> Início da inclusão: FORM CLEARING
value(p_bukrs)
value(p_waers)
value(p_j_1bbranch)
* << Fim da inclusão
CHANGING p_belnr.
itab_zycbe033-tcode = 'F-30'.
itab_zycbe033-cpochv = itab_vinc-nrinvoic.
itab_zycbe033-tabela = 'ZYCBT005'.
REFRESH itab_zycbt013.
SELECT * FROM /pws/zycbt013
INTO TABLE itab_zycbt013
WHERE tabela = itab_zycbe033-tabela.
PERFORM verify_null_field USING p_budat
'BUDAT'
...
...
itab_zycbe033-d_zuonr = /pws/zycbe001-nrcontr.
ELSEIF itab_zyglt321-cpocb IS INITIAL AND
NOT itab_zyglt321-descr IS INITIAL.
itab_zycbe033-d_zuonr = itab_zyglt321-descr.
ENDIF.
itab_zycbe033-c_zuonr = itab_zycbe033-d_zuonr.
ENDIF.
ENDCASE.
ENDLOOP.
itab_zycbe033-bktxt = wa_zycbt007-bktxt.
* >> Início da exclusão: FORM CLEARING
PERFORM verify_null_field USING itab_vinc-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM CLEARING
PERFORM verify_null_field USING p_bukrs
* << Fim da inclusão
'BUKRS'
text-004.
* >> Início da exclusão: FORM CLEARING
itab_zycbe033-bukrs = itab_vinc-bukrs.
PERFORM verify_null_field USING itab_vinc-waers
* << Fim da exclusão
* >> Início da inclusão: FORM CLEARING
itab_zycbe033-bukrs = p_bukrs.
PERFORM verify_null_field USING p_waers
* << Fim da inclusão
'WAERS'
text-005.
* >> Início da exclusão: FORM CLEARING
itab_zycbe033-waers = itab_vinc-waers.
* << Fim da exclusão
* >> Início da inclusão: FORM CLEARING
itab_zycbe033-waers = p_waers.
* << Fim da inclusão
PERFORM verify_null_field USING wa_zycbt011-blart
'BLART'
...
...
NOT p_agums IS INITIAL.
itab_zycbe033-newbs = '19'.
itab_zycbe033-agums = p_agums.
ENDIF.
itab_zycbe033-belnr = p_belnr_ref.
itab_zycbe033-dtdocto = p_budat_ref.
IF /pws/zycbe001-tpcontr(1) NE 'D'.
itab_zycbe033-d_zuonr = itab_vinc-nrinvoic.
itab_zycbe033-c_zuonr = itab_vinc-nrinvoic.
ENDIF.
* >> Início da exclusão: FORM CLEARING
IF NOT /pws/zycbe005-j_1bbranch IS INITIAL.
PERFORM verifica_pais_filial USING /pws/zycbe005-bukrs
/pws/zycbe005-j_1bbranch.
itab_zycbe033-brnch = /pws/zycbe005-j_1bbranch.
* << Fim da exclusão
* >> Início da inclusão: FORM CLEARING
IF NOT p_j_1bbranch IS INITIAL.
PERFORM verifica_pais_filial USING p_bukrs
p_j_1bbranch.
itab_zycbe033-brnch = p_j_1bbranch.
* << Fim da inclusão
ELSE.
PERFORM local_negocio.
* >> Início da exclusão: FORM CLEARING
PERFORM verifica_pais_filial USING /pws/zycbe005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM CLEARING
PERFORM verifica_pais_filial USING p_bukrs
* << Fim da inclusão
wa_t001w-j_1bbranch.
itab_zycbe033-brnch = wa_t001w-j_1bbranch.
...
...
v_kursf = itab_zycbe033-kursf.
PERFORM clearing TABLES itab_vinc
USING v_kunnr
itab_vinc-dtvincul
v_kursf
'D'
v_belnr2
v_budat2
text-296
' '
* >> Início da inclusão: FORM ESTORNO_PERIODO_ABERTO
itab_vinc-bukrs
itab_vinc-waers
/pws/zycbe005-j_1bbranch
* << Fim da inclusão
CHANGING v_belnr.
IF sy-subrc NE 0.
v_subrc = 4.
v_erro_estorno = 'X'.
EXIT.
ENDIF.
DELETE FROM /pws/zycbt084
WHERE nrseqc = itab_vinc-nrseqc AND
nrparc = itab_vinc-nrparc AND
dtincl = itab_vinc-dtincl AND
...
...
IF itab_zycbt209-koart NE 'D'.
PERFORM clearing TABLES itab_vinc
USING itab_trans-hkont
itab_vinc-dtvincul
v_kursf
itab_trans-koart
v_belnr2
v_budat2
text-249
itab_zycbt209-umskz
* >> Início da inclusão: FORM ESTORNO_PERIODO_ABERTO
itab_vinc-bukrs
itab_vinc-waers
/pws/zycbe005-j_1bbranch
* << Fim da inclusão
CHANGING v_belnr.
ELSE.
PERFORM clearing TABLES itab_vinc
USING itab_zycbt209-hkont
itab_vinc-dtvincul
v_kursf
itab_zycbt209-koart
v_belnr2
v_budat2
text-249
itab_zycbt209-umskz
* >> Início da inclusão: FORM ESTORNO_PERIODO_ABERTO
itab_vinc-bukrs
itab_vinc-waers
/pws/zycbe005-j_1bbranch
* << Fim da inclusão
CHANGING v_belnr.
ENDIF.
IF sy-subrc NE 0.
v_subrc = 4.
v_erro_estorno = 'X'.
EXIT.
ENDIF.
itab_zycbt209-belnr2 = v_belnr.
itab_zycbt209-dtbelnr = itab_vinc-dtvincul.
itab_zycbt209-saldo = itab_zycbt209-saldo + itab_trans-wrbtr.
...
...
APPEND itab_zycbt036.
MODIFY itab_zycbt221.
ENDLOOP.
ENDIF.
CLEAR itab_zycbt030-vbeln.
PERFORM verifica_data2 USING /pws/zycbt089-tx_cl_ace_liq
itab_vinc-dtvincul
itab_vinc-nrinvoic.
IF NOT v_databl IS INITIAL.
PERFORM define_cambio USING v_databl
* >> Início da exclusão: FORM ESTORNO_PERIODO_ABERTO
itab_vinc-waers
* << Fim da exclusão
* >> Início da inclusão: FORM ESTORNO_PERIODO_ABERTO
/pws/zycbe001-waers
* << Fim da inclusão
wa_zycbt007-waersb
itab_zycbe033-kursf.
ENDIF.
v_kursf = itab_zycbe033-kursf.
IF /pws/zycbe001-tpcontr(01) EQ 'D'.
v_agkoa = 'D'.
ELSE.
v_agkoa = 'S'.
ENDIF.
PERFORM clearing TABLES itab_vinc
USING v_saknr_ace
itab_vinc-dtvincul
v_kursf
v_agkoa
v_belnr
v_dtlanc
text-302
wa_zycbt011-agums
* >> Início da inclusão: FORM ESTORNO_PERIODO_ABERTO
/pws/zycbe001-bukrs
/pws/zycbe001-waers
/pws/zycbe001-j_1bbranch
* << Fim da inclusão
CHANGING v_belnr.
IF sy-subrc NE 0.
v_subrc = 4.
v_erro_estorno = 'X'.
EXIT.
ENDIF.
itab_vinc-belnr = v_belnr.
itab_vinc-dtbelnr = itab_vinc-dtvincul.
itab_vinc-slpagar = itab_vinc-slpagar -
itab_vinc-vldif.
...
...
APPEND itab_erro.
ENDLOOP.
v_subrc = 4.
v_erro_estorno = 'X'.
ENDIF.
sy-subrc = v_subrc.
ENDFORM.
FORM seleciona_paga_documento USING p_flag.
PERFORM seleciona_zycbt030_b.
PERFORM seleciona_zycbt045.
* >> Início da inclusão: FORM SELECIONA_PAGA_DOCUMENTO
IF /pws/zycbe001-tpcontr(1) NE 'C'.
* << Fim da inclusão
PERFORM lancamento_provisao_dp USING p_flag.
* >> Início da inclusão: FORM SELECIONA_PAGA_DOCUMENTO
ELSE.
PERFORM fill_date1_f30_cp.
ENDIF.
* << Fim da inclusão
ENDFORM.
FORM lancamento_provisao_dp USING p_flag.
DATA: v_docto LIKE /pws/zycbt030-belnr,
v_subrc LIKE sy-subrc,
...
...
IF /pws/zycbe001-tpcontr(1) = 'D'.
itab_zycbe033-c_zuonr = itab_zycbe033-d_zuonr.
ENDIF.
WHEN 'ZTERM'.
IF itab_zyglt321-cpocb = 'ZTERM'.
itab_zycbe033-zterm = itab_zycbt017-zterm.
ENDIF.
ENDCASE.
ENDLOOP.
itab_zycbe033-bktxt = wa_zycbt007-bktxt.
* >> Início da exclusão: FORM DESMEMBRA_ACE
PERFORM verify_null_field USING itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
PERFORM verify_null_field USING /pws/zycbe001-bukrs
* << Fim da inclusão
'BUKRS'
text-004.
* >> Início da exclusão: FORM DESMEMBRA_ACE
itab_zycbe033-bukrs = itab_zycbt005-bukrs.
PERFORM verify_null_field USING itab_zycbt005-waers
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
itab_zycbe033-bukrs = /pws/zycbe001-bukrs.
PERFORM verify_null_field USING /pws/zycbe001-waers
* << Fim da inclusão
'WAERS'
text-005.
* >> Início da exclusão: FORM DESMEMBRA_ACE
itab_zycbe033-waers = itab_zycbt005-waers.
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
itab_zycbe033-waers = /pws/zycbe001-waers.
* << Fim da inclusão
PERFORM verify_null_field USING wa_zycbt011-blart
'BLART'
...
...
itab_zycbe033-d_gsber = /pws/zycbe001-gsber.
ELSE.
itab_zycbe033-d_gsber = itab_zycbt005-gsberf.
ENDIF.
itab_zycbe033-c_gsber = itab_zycbe033-d_gsber.
PERFORM verifica_data2 USING /pws/zycbt089-tx_desm_ace
itab_zycbt005-dtvincul
itab_zycbt005-nrinvoic.
IF NOT v_databl IS INITIAL.
PERFORM define_cambio USING v_databl
* >> Início da exclusão: FORM DESMEMBRA_ACE
itab_zycbt005-waers
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
/pws/zycbe001-waers
* << Fim da inclusão
wa_zycbt007-waersb
itab_zycbe033-kursf.
ENDIF.
CLEAR itab_zycbt012.
IF itab_zycbt005-tpcontr(01) = 'C'.
CONCATENATE '003' /pws/zycbe001-tpcontr INTO v_codeven.
ELSEIF itab_zycbt005-tpcontr(01) = 'D'.
CONCATENATE '002' /pws/zycbe001-tpcontr INTO v_codeven.
ENDIF.
IF v_nrdias > 360.
...
...
chlanc = 'C'
tpcodaux = 'G'
codaux = ''
codaux2 = ''.
ENDIF.
ELSEIF itab_zycbt005-tpcontr(01) = 'C'.
CONCATENATE itab_zycbt005-tpcontr(01) v_prazo
INTO v_codaux1 SEPARATED BY space.
CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'
EXPORTING
* >> Início da exclusão: FORM DESMEMBRA_ACE
bukrs = itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
bukrs = /pws/zycbe001-bukrs
* << Fim da inclusão
ktosl = 'CPT'
codaux1 = v_codaux1
TABLES
account = itab_zyglt316
EXCEPTIONS
key_not_found = 1
rules_not_found = 2
OTHERS = 3.
ENDIF.
CLEAR v_vinc_tot.
...
...
WHEN 'O'.
v_data = /pws/zycbe001-dtcontr.
WHEN 'D'.
v_data = /pws/zycbe001-dtdesem.
WHEN OTHERS.
v_data = /pws/zycbe001-dtcred.
ENDCASE.
CLEAR v_year.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
* >> Início da exclusão: FORM DESMEMBRA_ACE
v_bukrs = itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
v_bukrs = /pws/zycbe001-bukrs
* << Fim da inclusão
v_date = v_data
IMPORTING
v_year = v_year
EXCEPTIONS
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.
SELECT wrbtr shkzg
FROM bseg
INTO (v_wrbtr1, v_shkzg)
* >> Início da exclusão: FORM DESMEMBRA_ACE
WHERE belnr = /pws/zycbe001-belnr AND
bukrs = itab_zycbt005-bukrs AND
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
WHERE belnr = /pws/zycbe001-belnr AND
bukrs = /pws/zycbe001-bukrs AND
* << Fim da inclusão
gjahr = v_year AND
hkont = itab_zycbe033-d_newko AND
augbl = ' '.
IF v_shkzg EQ 'H'.
v_wrbtr = v_wrbtr + v_wrbtr1.
ELSE.
v_wrbtr = v_wrbtr - v_wrbtr1.
ENDIF.
ENDSELECT.
ELSE.
...
...
IF /pws/zycbe001-fdtlanc = 'C'.
/pws/zycbe001-dtvincul = /pws/zycbe001-dtcred.
ELSEIF /pws/zycbe001-fdtlanc = 'D'.
/pws/zycbe001-dtvincul = /pws/zycbe001-dtdesem.
ELSEIF /pws/zycbe001-fdtlanc = 'O'.
/pws/zycbe001-dtvincul = /pws/zycbe001-dtcontr.
ENDIF.
ENDIF.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
* >> Início da exclusão: FORM DESMEMBRA_ACE
v_bukrs = itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
v_bukrs = /pws/zycbe001-bukrs
* << Fim da inclusão
v_date = /pws/zycbe001-dtvincul
IMPORTING
v_year = v_year
EXCEPTIONS
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.
SELECT wrbtr shkzg
FROM bseg
INTO (v_wrbtr1, v_shkzg)
* >> Início da exclusão: FORM DESMEMBRA_ACE
WHERE belnr = /pws/zycbe001-belnr2 AND
bukrs = itab_zycbt005-bukrs AND
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
WHERE belnr = /pws/zycbe001-belnr2 AND
bukrs = /pws/zycbe001-bukrs AND
* << Fim da inclusão
gjahr = v_year AND
hkont = itab_zycbe033-d_newko AND
augbl = ' '.
IF v_shkzg EQ 'H'.
v_wrbtr = v_wrbtr + v_wrbtr1.
ELSE.
v_wrbtr = v_wrbtr - v_wrbtr1.
ENDIF.
ENDSELECT.
ENDIF.
ELSE.
CLEAR v_year.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
* >> Início da exclusão: FORM DESMEMBRA_ACE
v_bukrs = itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
v_bukrs = /pws/zycbe001-bukrs
* << Fim da inclusão
v_date = /pws/zycbt005-dtvincul
IMPORTING
v_year = v_year
EXCEPTIONS
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.
SELECT wrbtr shkzg
FROM bseg
INTO (v_wrbtr1, v_shkzg)
WHERE belnr = itab_zycbt005-belnr AND
* >> Início da exclusão: FORM DESMEMBRA_ACE
bukrs = itab_zycbt005-bukrs AND
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
bukrs = /pws/zycbe001-bukrs AND
* << Fim da inclusão
gjahr = v_year AND
hkont = itab_zycbe033-d_newko AND
augbl = ' '.
IF v_shkzg EQ 'H'.
v_wrbtr = v_wrbtr + v_wrbtr1.
ELSE.
v_wrbtr = v_wrbtr - v_wrbtr1.
ENDIF.
ENDSELECT.
ENDIF.
...
...
itab_zycbe033-dtdocto = /pws/zycbe001-dtvincul.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
CLEAR v_vinc_tot.
IF /pws/zycbe001-tpcontr+0(1) = 'D'.
CLEAR v_year.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
* >> Início da exclusão: FORM DESMEMBRA_ACE
v_bukrs = itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
v_bukrs = /pws/zycbe001-bukrs
* << Fim da inclusão
v_date = itab_zycbt030-budat
IMPORTING
v_year = v_year
EXCEPTIONS
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.
SELECT SINGLE wrbtr
FROM bsid
INTO v_wrbtr2
WHERE belnr = itab_zycbe033-belnr
AND gjahr = v_year
AND kunnr = itab_zycbe033-d_newko
* >> Início da exclusão: FORM DESMEMBRA_ACE
AND bukrs = itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
AND bukrs = /pws/zycbe001-bukrs
* << Fim da inclusão
AND umskz = itab_zycbe033-umskz
AND shkzg = 'H'.
IF v_wrbtr2 EQ itab_zycbt005-vlme_p.
v_vinc_tot = 'X'.
ENDIF.
ENDIF.
IF /pws/zycbe001-tpcontr(01) NE 'C' AND
itab_zycbt005-vlme_p NE itab_zycbt005-vlvinc .
IF NOT /pws/zycbe005-j_1bbranch IS INITIAL.
* >> Início da exclusão: FORM DESMEMBRA_ACE
PERFORM verifica_pais_filial USING itab_zycbt005-bukrs
itab_zycbt005-j_1bbranch.
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
PERFORM verifica_pais_filial USING /pws/zycbe001-bukrs
/pws/zycbe001-j_1bbranch.
* << Fim da inclusão
itab_zycbe033-brnch = itab_zycbt005-j_1bbranch.
ELSE.
PERFORM local_negocio.
* >> Início da exclusão: FORM DESMEMBRA_ACE
PERFORM verifica_pais_filial USING itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
PERFORM verifica_pais_filial USING /pws/zycbe001-bukrs
* << Fim da inclusão
wa_t001w-j_1bbranch.
itab_zycbe033-brnch = wa_t001w-j_1bbranch.
ENDIF.
ELSE.
CLEAR itab_zycbe033-brnch.
ENDIF.
itab_zycbt036-tcode = 'F-30'.
itab_zycbt036-tabela = 'ZYCBT005'.
itab_zycbt036-cpochv = itab_zycbe033-cpochv.
* >> Início da exclusão: FORM DESMEMBRA_ACE
itab_zycbt036-residuo = itab_zycbt005-vlme_p.
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
itab_zycbt036-residuo = /pws/zycbe001-vlme.
* << Fim da inclusão
CONCATENATE text-376 itab_zycbt005-nrinvoic
INTO itab_zycbt036-zuonr
SEPARATED BY space.
IF itab_zycbt005-tpcontr(1) CA 'CE'.
itab_zycbt036-belnr = itab_zycbe033-belnr.
CLEAR v_year.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
* >> Início da exclusão: FORM DESMEMBRA_ACE
v_bukrs = itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
v_bukrs = /pws/zycbe001-bukrs
* << Fim da inclusão
v_date = itab_zycbe033-dtdocto
IMPORTING
v_year = v_year
EXCEPTIONS
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.
SELECT SINGLE * FROM bkpf
* >> Início da exclusão: FORM DESMEMBRA_ACE
WHERE bukrs = itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
WHERE bukrs = /pws/zycbe001-bukrs
* << Fim da inclusão
AND belnr = itab_zycbt036-belnr
AND gjahr = v_year.
itab_zycbt036-dtdocto = bkpf-budat.
ELSE.
IF NOT itab_zycbt005-belnr IS INITIAL.
itab_zycbt036-belnr = itab_zycbt005-belnr.
v_data = itab_zycbt005-dtvincul.
ELSE.
IF /pws/zycbe001-belnr2 IS INITIAL.
CASE /pws/zycbe001-fdtlanc.
...
...
ENDCASE.
itab_zycbt036-belnr = /pws/zycbe001-belnr.
ELSE.
itab_zycbt036-belnr = /pws/zycbe001-belnr2.
v_data = /pws/zycbe001-dtvincul.
ENDIF.
ENDIF.
CLEAR v_year.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
* >> Início da exclusão: FORM DESMEMBRA_ACE
v_bukrs = itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
v_bukrs = /pws/zycbe001-bukrs
* << Fim da inclusão
v_date = v_data
IMPORTING
v_year = v_year
EXCEPTIONS
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.
SELECT SINGLE * FROM bkpf
* >> Início da exclusão: FORM DESMEMBRA_ACE
WHERE bukrs = itab_zycbt005-bukrs
* << Fim da exclusão
* >> Início da inclusão: FORM DESMEMBRA_ACE
WHERE bukrs = /pws/zycbe001-bukrs
* << Fim da inclusão
AND belnr = itab_zycbt036-belnr
AND gjahr = v_year.
itab_zycbt036-dtdocto = bkpf-budat.
ENDIF.
APPEND itab_zycbt036.
IF itab_zycbt005-slpagar IS INITIAL AND
itab_zycbt005-tpcontr(1) NA 'CE'.
itab_zycbe033-flag_nc = 'X'.
ENDIF.
IF itab_zycbt005-tpcontr(1) CA 'CE' AND
...
...
itab_partidas-v_sinal = '+'.
ELSE.
CONCATENATE text-375
itab_zycbt005-nrinvoic
INTO itab_partidas-d_zuonr
SEPARATED BY space.
itab_partidas-v_sinal = '-'.
ENDIF.
APPEND itab_partidas.
ENDLOOP.
* >> Início da exclusão: FORM BAIXA_CLIENTE_ACE
IF sy-subrc EQ 0 AND
* << Fim da exclusão
* >> Início da inclusão: FORM BAIXA_CLIENTE_ACE
IF ( sy-subrc EQ 0 AND
* << Fim da inclusão
itab_zycbt030-vlsltrans GT 0 AND
* >> Início da exclusão: FORM BAIXA_CLIENTE_ACE
NOT itab_zycbt030-belnr_d IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: FORM BAIXA_CLIENTE_ACE
NOT itab_zycbt030-belnr_d IS INITIAL
AND /pws/zycbt089-tp_liq_and NE 'Z' ) OR
( /pws/zycbe001-waers NE itab_zycbt005-waers ).
* << Fim da inclusão
v_res_liq_and = 'X'.
...
...
ENDIF.
MODIFY /pws/zycbt030 FROM TABLE itab_zycbt030.
COMMIT WORK.
MOVE wa_zycbt005 TO itab_zycbt005.
MODIFY itab_zycbt005.
ENDFORM.
FORM abre_docto_cliente_2.
PERFORM encontra_documento.
MODIFY itab_zycbt030.
PERFORM fill_date6_f30_cliente.
* >> Início da exclusão: FORM ABRE_DOCTO_CLIENTE_2
IF NOT v_desmembramento IS INITIAL.
EXIT.
ENDIF.
* << Fim da exclusão
LOOP AT itab_zycbt034.
MESSAGE i016 WITH itab_zycbt034-descricao.
ENDLOOP.
IF itab_zycbt034 IS INITIAL.
CALL FUNCTION '/PWS/ZYCB_TRANSACAO_F_30_P'
EXPORTING
v_modo = v_modo_bi
* >> Início da inclusão: FORM ABRE_DOCTO_CLIENTE_2
v_vinc_tot = 'X'
* << Fim da inclusão
TABLES
t_dados = itab_zycbe033
t_campo = itab_zycbt034
t_zycbt032 = itab_zycbt032
t_zycbt036 = itab_zycbt036
t_doctos = itab_doctos
EXCEPTIONS
campo_em_branco = 1
OTHERS = 2.
IF sy-subrc = 0.
...
...
bukrs = wa_zycbt005-bukrs AND
kunnr = wa_zycbt005-kunnr.
IF sy-subrc EQ 0.
SELECT SINGLE budat
FROM bkpf
INTO itab_zycbe033-dtdocto
WHERE belnr = itab_zycbt030-belnr AND
bukrs = wa_zycbt005-bukrs AND
gjahr = v_gjahr.
ENDIF.
* >> Início da exclusão: FORM FILL_DATE6_F30_CLIENTE
IF v_wrbtr EQ itab_zycbe033-wrbtr.
itab_zycbt030-belnr_d = itab_zycbe033-belnr.
itab_zycbt030-status_d = 'X'.
MODIFY itab_zycbt030.
v_desmembramento = 'X'.
EXIT.
ENDIF.
* << Fim da exclusão
PERFORM verifica_prorrogacao.
itab_zycbe033-zbd1t = v_zbd1t.
IF itab_zycbe033-wrbtr GT 0.
APPEND itab_zycbe033.
ENDIF.
itab_zycbt036-tcode = itab_zycbe033-tcode.
itab_zycbt036-tabela = itab_zycbe033-tabela.
itab_zycbt036-cpochv = itab_zycbe033-cpochv.
itab_zycbt036-residuo = itab_zycbe033-wrbtr.
itab_zycbt036-zuonr = itab_zycbe033-d_zuonr.
...
...
itab_doctos-tcode = itab_zycbe033-tcode.
itab_doctos-tabela = itab_zycbe033-tabela.
itab_doctos-cpochv = itab_zycbe033-cpochv.
itab_doctos-belnr = itab_zycbe033-belnr.
itab_doctos-dtdocto = itab_zycbe033-dtdocto.
APPEND itab_doctos.
ENDFORM.
FORM abre_docto_ace_2.
PERFORM clear_date_batch.
PERFORM fill_date6_f30_cp.
* >> Início da exclusão: FORM ABRE_DOCTO_ACE_2
IF NOT v_desmembramento IS INITIAL.
EXIT.
ENDIF.
IF /pws/zycbe001-tpcontr(01) = 'C'.
v_desmembramento = 'X'.
ENDIF.
* << Fim da exclusão
LOOP AT itab_zycbt034.
MESSAGE i016 WITH itab_zycbt034-descricao.
ENDLOOP.
IF itab_zycbt034 IS INITIAL.
CALL FUNCTION '/PWS/ZYCB_TRANSACAO_F_30_P'
EXPORTING
v_modo = v_modo_bi
TABLES
t_dados = itab_zycbe033
t_campo = itab_zycbt034
...
...
ENDIF.
MOVE itab_zycbt032[] TO itab_zycbt032a[].
PERFORM clear_date_batch.
sy-subrc = v_subrc.
ENDFORM.
FORM lancamento_liquida_2.
DATA: v_nrdias TYPE i,
v_vlmel LIKE /pws/zycbt006-vlme,
v_prazo.
v_vlmel = itab_zycbt005-vlme_p.
* >> Início da exclusão: FORM LANCAMENTO_LIQUIDA_2
IF v_nrdias > 360.
v_prazo = 'L'.
ELSE.
v_prazo = 'S'.
ENDIF.
* << Fim da exclusão
* >> Início da inclusão: FORM LANCAMENTO_LIQUIDA_2
PERFORM clear_date_batch.
* << Fim da inclusão
* >> Início da exclusão: FORM LANCAMENTO_LIQUIDA_2
READ TABLE itab_zycbt012 WITH KEY codeven = v_codeven
codmod = 'E'
chlanc = 'D'
tpcodaux = 'G'
codaux = ''
codaux2 = v_prazo.
* << Fim da exclusão
* >> Início da inclusão: FORM LANCAMENTO_LIQUIDA_2
PERFORM busca_conta.
* << Fim da inclusão
PERFORM encontra_documento.
PERFORM fill_date6_f30_liquid.
LOOP AT itab_zycbt034.
MESSAGE i016 WITH itab_zycbt034-descricao.
ENDLOOP.
IF itab_zycbt034[] IS INITIAL.
IF /pws/zycbe001-tpcontr(01) = 'C'.
* >> Início da exclusão: FORM LANCAMENTO_LIQUIDA_2
CALL FUNCTION '/PWS/ZYCB_TRANSACAO_F_28_A'
* << Fim da exclusão
* >> Início da inclusão: FORM LANCAMENTO_LIQUIDA_2
CALL FUNCTION '/PWS/ZYCB_TRANSACAO_F_30_W'
* << Fim da inclusão
EXPORTING
v_modo = v_modo_bi
* >> Início da inclusão: FORM LANCAMENTO_LIQUIDA_2
v_vinc_tot = 'X'
* << Fim da inclusão
TABLES
t_dados = itab_zycbe033
t_campo = itab_zycbt034
t_zycbt032 = itab_zycbt032
* >> Início da exclusão: FORM LANCAMENTO_LIQUIDA_2
t_zycbt036 = itab_zycbt036
t_doctos = itab_doctos
* << Fim da exclusão
* >> Início da inclusão: FORM LANCAMENTO_LIQUIDA_2
t_partidas = itab_partidas
* << Fim da inclusão
EXCEPTIONS
campo_em_branco = 1
OTHERS = 2.
ELSEIF /pws/zycbe001-tpcontr(01) = 'D'.
CALL FUNCTION '/PWS/ZYCB_TRANSACAO_F_30_U'
EXPORTING
v_modo = v_modo_bi
TABLES
t_dados = itab_zycbe033
t_campo = itab_zycbt034
...
...
OTHERS = 2.
ENDIF.
IF sy-subrc = 0.
CONCATENATE wa_zycbt005-nrseqc wa_zycbt005-tpdesp
wa_zycbt005-nrparc wa_zycbt005-dtincl
wa_zycbt005-nrinvoic wa_zycbt005-gsberf
wa_zycbt005-nrparcf
wa_zycbt005-dtvincul wa_zycbt005-dtvencto
itab_zycbt030-budat itab_zycbt030-vbeln
itab_zycbt030-belnr INTO v_cpochv.
* >> Início da exclusão: FORM LANCAMENTO_LIQUIDA_2
IF /pws/zycbe001-tpcontr(01) = 'C'.
READ TABLE itab_zycbt032 WITH KEY tcode = 'F-28'
tabela = 'ZYCBT006'
cpochv = v_cpochv
tpmsg = 'S'.
ELSEIF /pws/zycbe001-tpcontr(01) = 'D'.
* << Fim da exclusão
READ TABLE itab_zycbt032 WITH KEY tcode = 'F-30'
tabela = 'ZYCBT006'
cpochv = v_cpochv
tpmsg = 'S'.
* >> Início da exclusão: FORM LANCAMENTO_LIQUIDA_2
ENDIF.
* << Fim da exclusão
IF sy-subrc = 0.
wa_zycbt005-belnr_f28 = itab_zycbt032-belnr.
v_data_f_28 = itab_zycbe033-budat.
...
...
LOOP AT itab_zycbt034.
MESSAGE i016 WITH itab_zycbt034-descricao.
ENDLOOP.
ENDIF.
ENDIF.
MOVE itab_zycbt032[] TO itab_zycbt032a[].
PERFORM clear_date_batch.
sy-subrc = v_subrc.
ENDFORM.
FORM fill_date6_f30_cp.
* >> Início da inclusão: FORM FILL_DATE6_F30_CP
DATA: v_cod_param LIKE /pws/zyglt316-codaux1.
* << Fim da inclusão
READ TABLE itab_zycbt005
WITH KEY nrinvoic = itab_zycbt006-nrinvoic
gsberf = itab_zycbt006-gsberf.
CONCATENATE wa_zycbt005-nrseqc wa_zycbt005-tpdesp
wa_zycbt005-nrparc wa_zycbt005-dtincl
wa_zycbt005-nrinvoic wa_zycbt005-gsberf
wa_zycbt005-nrparcf
wa_zycbt005-dtvincul wa_zycbt005-dtvencto
itab_zycbt030-budat itab_zycbt030-vbeln
itab_zycbt030-belnr INTO v_cpochv.
...
...
NOT itab_zyglt321-descr IS INITIAL.
itab_zycbe033-d_zuonr = itab_zyglt321-descr.
ENDIF.
WHEN 'ZTERM'.
IF itab_zyglt321-cpocb = 'ZTERM'.
itab_zycbe033-zterm = itab_zycbt017-zterm.
ENDIF.
ENDCASE.
ENDLOOP.
IF itab_zycbt005-tpcontr(01) = 'C'.
* >> Início da exclusão: FORM FILL_DATE6_F30_CP
CLEAR itab_zycbt012.
READ TABLE itab_zycbt012 WITH KEY codeven = v_codeven
codmod = 'E'
chlanc = 'D'
tpcodaux = 'G'
codaux = ''
codaux2 = 'C'.
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATE6_F30_CP
v_nrdias = /pws/zycbe006-dtpagto - /pws/zycbe005-dtvincul.
IF v_nrdias > 360.
v_prazo = 'L'.
ELSE.
v_prazo = 'S'.
ENDIF.
IF /pws/zycbe001-tpcontr+0(01) EQ 'E' OR
/pws/zycbe001-tpcontr+0(01) EQ 'C'.
CONCATENATE /pws/zycbe001-tpcontr v_prazo
INTO v_cod_param SEPARATED BY space .
CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'
EXPORTING
bukrs = /pws/zycbe001-bukrs
ktosl = 'CPT'
codaux1 = v_cod_param
TABLES
account = itab_zyglt316
EXCEPTIONS
key_not_found = 1
rules_not_found = 2
OTHERS = 3.
IF sy-subrc EQ 0.
READ TABLE itab_zyglt316 INDEX 1.
ENDIF.
ELSE.
CONCATENATE 'E' v_prazo INTO v_cod_param SEPARATED BY space .
CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'
EXPORTING
bukrs = /pws/zycbe001-bukrs
ktosl = 'CPT'
codaux1 = v_cod_param
codaux2 = /pws/zycbe001-tpcontr
TABLES
account = itab_zyglt316
EXCEPTIONS
key_not_found = 1
rules_not_found = 2
OTHERS = 3.
IF sy-subrc EQ 0.
READ TABLE itab_zyglt316 INDEX 1.
ENDIF.
ENDIF.
itab_zycbe033-agkon = itab_zyglt316-konth.
itab_zycbe033-d_newko = itab_zyglt316-konth.
* << Fim da inclusão
* >> Início da exclusão: FORM FILL_DATE6_F30_CP
itab_zycbe033-d_newko = itab_zycbt012-saknr1.
* << Fim da exclusão
itab_zycbe033-newbs = '50'.
CLEAR itab_zycbe033-agums.
ELSEIF itab_zycbt005-tpcontr(01) = 'D'.
itab_zycbe033-d_newko = /pws/zycbe001-kunnr.
MOVE wa_zycbt011-agums TO itab_zycbe033-agums.
MOVE wa_zycbt011-agums TO itab_zycbe033-umskz.
itab_zycbe033-newbs = '19'.
ENDIF.
itab_zycbe033-wrbtr = itab_zycbt005-vlme_p * itab_zycbt005-parid..
itab_zycbe033-c_gsber = wa_zycbt005-gsberf.
...
...
period_in_not_valid = 4
period_not_assigned = 5
version_undefined = 6
OTHERS = 7.
SELECT SINGLE * FROM bkpf
WHERE bukrs = itab_zycbt006-bukrs
AND belnr = itab_zycbt036-belnr
AND gjahr = v_year.
itab_zycbt036-dtdocto = bkpf-budat.
APPEND itab_zycbt036.
* >> Início da exclusão: FORM FILL_DATE6_F30_CP
IF v_desmembramento IS INITIAL.
* << Fim da exclusão
APPEND itab_zycbe033.
* >> Início da exclusão: FORM FILL_DATE6_F30_CP
ELSE.
wa_zycbt005-belnr_d = itab_zycbe033-belnr.
v_data_desm_ace = itab_zycbe033-dtdocto.
MODIFY itab_zycbt006.
EXIT.
ENDIF.
* << Fim da exclusão
ENDFORM.
FORM fill_date6_f30_liquid.
CONCATENATE wa_zycbt005-nrseqc wa_zycbt005-tpdesp
wa_zycbt005-nrparc wa_zycbt005-dtincl
wa_zycbt005-nrinvoic wa_zycbt005-gsberf
wa_zycbt005-nrparcf
wa_zycbt005-dtvincul wa_zycbt005-dtvencto
itab_zycbt030-budat itab_zycbt030-vbeln
itab_zycbt030-belnr INTO v_cpochv.
* >> Início da exclusão: FORM FILL_DATE6_F30_LIQUID
IF /pws/zycbe001-tpcontr(01) = 'C'.
itab_zycbe033-tcode = 'F-28'.
ELSEIF /pws/zycbe001-tpcontr(01) = 'D'.
* << Fim da exclusão
itab_zycbe033-tcode = 'F-30'.
* >> Início da exclusão: FORM FILL_DATE6_F30_LIQUID
ENDIF.
* << Fim da exclusão
itab_zycbe033-tabela = 'ZYCBT006'.
itab_zycbe033-cpochv = v_cpochv.
PERFORM verify_null_field USING wa_zycbt005-dtvincul
'DTPAGTO'
text-003.
itab_zycbe033-budat = wa_zycbt005-dtvincul.
...
...
text-004.
itab_zycbe033-bukrs = wa_zycbt005-bukrs.
PERFORM verify_null_field USING wa_zycbt005-waers
'WAERS'
text-005.
itab_zycbe033-waers = wa_zycbt005-waers.
PERFORM verify_null_field USING wa_zycbt011-blart
'BLART'
text-006.
itab_zycbe033-blart = wa_zycbt011-blart.
* >> Início da exclusão: FORM FILL_DATE6_F30_LIQUID
CLEAR itab_zycbt012.
READ TABLE itab_zycbt012 WITH KEY codeven = v_codeven
codmod = 'E'
chlanc = 'D'
tpcodaux = 'G'
codaux = ''
codaux2 = 'C'.
PERFORM verifica_data3.
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
PERFORM verifica_data2 USING wa_zycbt007-dtliquid
itab_zycbe033-budat
wa_zycbt005-nrinvoic.
IF NOT v_databl IS INITIAL.
* << Fim da inclusão
PERFORM define_cambio USING v_databl
wa_zycbt005-waers
wa_zycbt007-waersb
itab_zycbe033-kursf.
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
ENDIF.
* << Fim da inclusão
PERFORM verify_null_field USING itab_zycbe033-kursf
'KURSF'
text-051.
itab_zycbe033-c_gsber = wa_zycbt005-gsberf.
itab_zycbe033-d_gsber = wa_zycbt005-gsberf.
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
READ TABLE itab_zycbt209
WITH KEY nrinvoic = wa_zycbt005-nrinvoic
nrparcf = wa_zycbt005-nrparcf
gsberf = wa_zycbt005-gsberf
nrseqc = wa_zycbt005-nrseqc.
IF sy-subrc NE 0.
READ TABLE itab_zycbt209
WITH KEY nrinvoic = wa_zycbt005-nrinvoic
nrparcf = wa_zycbt005-nrparcf
gsberf = wa_zycbt005-gsberf.
IF sy-subrc NE 0.
* << Fim da inclusão
itab_zycbe033-agkon = wa_zycbt005-kunnr.
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
itab_zycbe033-agkoa = 'D'.
ELSE.
itab_zycbe033-agkon = itab_zycbt209-hkont.
itab_zycbe033-umskz = itab_zycbt209-umskz.
itab_zycbe033-agkoa = itab_zycbt209-koart.
ENDIF.
ELSE.
itab_zycbe033-agkon = itab_zycbt209-hkont.
itab_zycbe033-umskz = itab_zycbt209-umskz.
itab_zycbe033-agkoa = itab_zycbt209-koart.
ENDIF.
* << Fim da inclusão
IF itab_zycbt005-tpcontr(01) = 'C'.
* >> Início da exclusão: FORM FILL_DATE6_F30_LIQUID
itab_zycbe033-d_newko = itab_zycbt012-saknr1.
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
itab_zycbe033-d_newko = itab_zyglt316-konts.
* << Fim da inclusão
itab_zycbe033-newbs = '40'.
ELSEIF itab_zycbt005-tpcontr(01) = 'D'.
itab_zycbe033-d_newko = /pws/zycbe001-kunnr.
itab_zycbe033-agums = wa_zycbt011-agums.
itab_zycbe033-umskz = wa_zycbt011-agums.
itab_zycbe033-newbs = '09'.
ENDIF.
itab_zycbe033-agkoa = 'D'.
itab_zycbe033-awtyp = '2'.
itab_zycbe033-belnr = itab_zycbt030-belnr_d.
itab_zycbe033-zfbdt = itab_zycbe033-budat.
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
DELETE itab_zycbt209 WHERE belnr_d IS initial
AND nrinvoic = wa_zycbt005-nrinvoic
AND nrparcf = wa_zycbt005-nrparcf
AND gsberf = wa_zycbt005-gsberf.
READ TABLE itab_zycbt209
WITH KEY nrinvoic = wa_zycbt005-nrinvoic
nrparcf = wa_zycbt005-nrparcf
gsberf = wa_zycbt005-gsberf
nrseqc = wa_zycbt005-nrseqc.
IF sy-subrc NE 0.
READ TABLE itab_zycbt209
WITH KEY nrinvoic = wa_zycbt005-nrinvoic
nrparcf = wa_zycbt005-nrparcf
gsberf = wa_zycbt005-gsberf.
IF sy-subrc NE 0.
itab_zycbe033-belnr = itab_zycbt030-belnr_d.
ELSE.
itab_zycbe033-belnr = itab_zycbt209-belnr_d.
ENDIF.
ELSE.
itab_zycbe033-belnr = itab_zycbt209-belnr_d.
ENDIF.
* << Fim da inclusão
itab_zycbe033-wrbtr = itab_zycbt030-v_kwert.
v_data = itab_zycbe033-budat(4).
CLEAR v_year.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
v_bukrs = wa_zycbt005-bukrs
v_date = v_data
IMPORTING
v_year = v_year
EXCEPTIONS
...
...
empresa_nao_encontrada = 3
period_in_not_valid = 4
period_not_assigned = 5
version_undefined = 6
OTHERS = 7.
SELECT SINGLE * FROM bkpf
WHERE bukrs = wa_zycbt005-bukrs
AND belnr = itab_zycbt030-belnr_d
AND gjahr = v_year.
itab_zycbe033-dtdocto = bkpf-budat.
* >> Início da exclusão: FORM FILL_DATE6_F30_LIQUID
CONCATENATE text-375 itab_zycbt006-nrinvoic
INTO itab_zycbe033-d_zuonr
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
CONCATENATE text-375 wa_zycbt005-nrinvoic
INTO itab_zycbe033-c_zuonr
SEPARATED BY space.
LOOP AT itab_zycbt030 WHERE nrinvoic = wa_zycbt005-nrinvoic AND
gsberf = wa_zycbt005-gsberf AND
nrparcf = wa_zycbt005-nrparcf.
CHECK NOT itab_zycbt030-belnr_d IS INITIAL.
itab_partidas-tcode = itab_zycbe033-tcode.
itab_partidas-tabela = itab_zycbe033-tabela.
itab_partidas-cpochv = itab_zycbe033-cpochv.
itab_partidas-belnr = itab_zycbt030-belnr_d.
itab_partidas-agkon = itab_zycbt017-kunag.
itab_partidas-agkoa = 'D'.
itab_partidas-agums = space.
itab_partidas-bukrs = wa_zycbt005-bukrs.
itab_partidas-shkzg = 'H'.
itab_partidas-v_sinal = '+'.
itab_partidas-dtdocto = itab_zycbt006-dtpagto.
CONCATENATE 'Des.'
wa_zycbt005-nrinvoic
INTO itab_partidas-d_zuonr
* << Fim da inclusão
SEPARATED BY space.
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
itab_partidas-v_sinal = '-'.
APPEND itab_partidas.
ENDLOOP.
IF NOT itab_partidas[] IS INITIAL.
itab_zycbe033-agkon = itab_zycbt017-kunag.
CLEAR itab_zycbe033-umskz.
itab_zycbe033-agkoa = 'D'.
ENDIF.
* << Fim da inclusão
APPEND itab_zycbe033.
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
LOOP AT itab_zycbt209 WHERE nrinvoic = wa_zycbt005-nrinvoic AND
gsberf = wa_zycbt005-gsberf AND
nrparcf = wa_zycbt005-nrparcf AND
baixa = 'X'.
itab_partidas-tcode = itab_zycbe033-tcode.
itab_partidas-tabela = itab_zycbe033-tabela.
itab_partidas-cpochv = itab_zycbe033-cpochv.
itab_partidas-belnr = itab_zycbt209-belnr_d.
itab_partidas-dtdocto = itab_zycbt209-budat_d.
itab_partidas-agkon = itab_zycbt209-hkont.
itab_partidas-agkoa = itab_zycbt209-koart.
itab_partidas-agums = itab_zycbt209-umskz.
itab_partidas-bukrs = itab_zycbt209-bukrs.
itab_partidas-shkzg = 'H'.
* << Fim da inclusão
* >> Início da exclusão: FORM FILL_DATE6_F30_LIQUID
itab_zycbt036-tcode = itab_zycbe033-tcode.
itab_zycbt036-tabela = itab_zycbe033-tabela.
itab_zycbt036-cpochv = itab_zycbe033-cpochv.
itab_zycbt036-residuo = itab_zycbe033-wrbtr.
CONCATENATE text-376 wa_zycbt005-nrinvoic
INTO itab_zycbt036-zuonr
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
CONCATENATE 'Des.'
wa_zycbt005-nrinvoic
INTO itab_partidas-d_zuonr
* << Fim da inclusão
SEPARATED BY space.
* >> Início da exclusão: FORM FILL_DATE6_F30_LIQUID
APPEND itab_zycbt036.
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
itab_partidas-v_sinal = '-'.
APPEND itab_partidas.
* << Fim da inclusão
* >> Início da exclusão: FORM FILL_DATE6_F30_LIQUID
itab_doctos-tcode = itab_zycbe033-tcode.
itab_doctos-tabela = itab_zycbe033-tabela.
itab_doctos-cpochv = itab_zycbe033-cpochv.
itab_doctos-belnr = itab_zycbe033-belnr.
itab_doctos-dtdocto = itab_zycbe033-dtdocto.
APPEND itab_doctos.
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATE6_F30_LIQUID
ENDLOOP.
* << Fim da inclusão
ENDFORM.
FORM lancamento_clearing_2.
DATA v_vltot.
v_waersbrl = wa_zycbt007-waersb.
PERFORM clearing_newko.
itab_zycbt036-tcode = 'F-30'.
itab_zycbt036-tabela = 'ZYCBT006'.
itab_zycbt036-cpochv = v_cpochv.
itab_zycbt036-belnr = wa_zycbt005-belnr_d.
itab_zycbt036-dtdocto = v_data_desm_ace.
...
...
campo_em_branco = 1
periodo_fechado = 2
OTHERS = 3.
IF sy-subrc = 0.
READ TABLE itab_zycbt032 WITH KEY tcode = 'F-30'
tabela = 'ZYCBT006'
cpochv = v_cpochv
tpmsg = 'S'.
IF sy-subrc = 0.
wa_zycbt005-status = 'C'.
* >> Início da inclusão: FORM LANCAMENTO_CLEARING_2
/pws/zycbt084-nrseqc = itab_zycbt006-nrseqc.
/pws/zycbt084-tpdesp = itab_zycbt006-tpdesp.
/pws/zycbt084-nrparc = itab_zycbt006-nrparc.
/pws/zycbt084-dtincl = itab_zycbt006-dtincl.
/pws/zycbt084-nrinvoic = itab_zycbt006-nrinvoic.
/pws/zycbt084-nrparcf = itab_zycbt006-nrparcf.
/pws/zycbt084-gsberf = itab_zycbt006-gsberf.
/pws/zycbt084-dtvincul = itab_zycbt006-dtvincul.
/pws/zycbt084-dtvencto = itab_zycbt006-dtvencto.
/pws/zycbt084-dtpagto = itab_zycbt006-dtpagto.
/pws/zycbt084-vbeln = itab_zycbt030-vbeln.
/pws/zycbt084-belnr = itab_zycbt032-belnr.
/pws/zycbt084-liq_and = space.
/pws/zycbt084-tdesmemb = 'A'.
MODIFY /pws/zycbt084 FROM /pws/zycbt084.
COMMIT WORK.
* << Fim da inclusão
itab_contabil-docto = itab_zycbt032-belnr.
itab_contabil-dtdocto = itab_zycbe033-budat.
itab_contabil-bukrs = itab_zycbt006-bukrs.
* >> Início da exclusão: FORM LANCAMENTO_CLEARING_2
itab_contabil-msg = text-287.
* << Fim da exclusão
* >> Início da inclusão: FORM LANCAMENTO_CLEARING_2
itab_contabil-msg = text-062.
* << Fim da inclusão
APPEND itab_contabil.
...
...
ENDIF.
ENDIF.
PERFORM clear_date_batch.
CLEAR itab_zycbt036.
REFRESH itab_zycbt036.
sy-subrc = v_subrc.
ENDFORM.
FORM clearing_newko.
PERFORM clear_date_batch.
IF wa_zycbt005-tpcontr(01) = 'C'.
* >> Início da exclusão: FORM CLEARING_NEWKO
itab_zycbe033-agkon = itab_zycbt012-saknr1.
* << Fim da exclusão
itab_zycbe033-koart = 'S'.
* >> Início da inclusão: FORM CLEARING_NEWKO
itab_zycbe033-agkoa = 'S'.
PERFORM get_parameters_002_cp USING '+'.
itab_zycbe033-agkon = itab_zyglt316-konts.
* << Fim da inclusão
ELSEIF wa_zycbt005-tpcontr(01) = 'D'.
itab_zycbe033-agkon = wa_zycbt005-kunnr.
itab_zycbe033-koart = 'D'.
ENDIF.
...
...
CLEAR skb1.
SELECT SINGLE xsalh FROM skb1
INTO skb1-xsalh
WHERE bukrs EQ wa_zycbt005-bukrs
AND saknr EQ lfb1-akont.
ELSEIF wa_zycbt005-tpcontr(01) = 'C'.
CLEAR skb1.
SELECT SINGLE xsalh FROM skb1
INTO skb1-xsalh
WHERE bukrs EQ wa_zycbt005-bukrs
* >> Início da exclusão: FORM CALCULA_DIFERENCA_REAIS
AND saknr EQ itab_zycbe033-agkon.
* << Fim da exclusão
* >> Início da inclusão: FORM CALCULA_DIFERENCA_REAIS
AND saknr EQ itab_zycbe033-d_newko.
* << Fim da inclusão
ENDIF.
CLEAR t001a.
SELECT SINGLE kurst FROM t001a
INTO t001a-kurst
WHERE bukrs EQ wa_zycbt005-bukrs.
* >> Início da inclusão: FORM CALCULA_DIFERENCA_REAIS
CLEAR t001.
SELECT SINGLE xslta FROM t001
INTO t001-xslta
WHERE bukrs EQ itab_zycbt006-bukrs.
* << Fim da inclusão
PERFORM converte_brl.
* >> Início da exclusão: FORM CALCULA_DIFERENCA_REAIS
IF NOT skb1-xsalh IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: FORM CALCULA_DIFERENCA_REAIS
IF NOT skb1-xsalh IS INITIAL
or NOT t001-xslta IS INITIAL.
* << Fim da inclusão
CLEAR bkpf.
CLEAR v_year.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB009F09
FORM fill_date6_f30_2.
* >> Início da inclusão: FORM FILL_DATE6_F30_2
DATA: v_nrdias_arb TYPE i,
v_prazo_arb,
v_codaux_arb LIKE /pws/zyglt316-codaux1.
* << Fim da inclusão
CLEAR: v_data.
itab_zycbe033-tcode = 'F-30'.
itab_zycbe033-tabela = 'ZYCBT006'.
CONCATENATE wa_zycbt005-nrseqc wa_zycbt005-tpdesp
wa_zycbt005-nrparc wa_zycbt005-dtincl
wa_zycbt005-nrinvoic wa_zycbt005-gsberf
wa_zycbt005-nrparcf
wa_zycbt005-dtvincul wa_zycbt005-dtvencto
itab_zycbt030-budat itab_zycbt030-vbeln
itab_zycbt030-belnr INTO v_cpochv.
...
...
text-004.
itab_zycbe033-bukrs = wa_zycbt005-bukrs.
PERFORM verify_null_field USING wa_zycbt005-waers_c
'WAERS'
text-005.
itab_zycbe033-waers = wa_zycbt005-waers_c.
PERFORM verify_null_field USING wa_zycbt011-blart
'BLART'
text-006.
itab_zycbe033-blart = wa_zycbt011-blart.
* >> Início da exclusão: FORM FILL_DATE6_F30_2
CLEAR itab_zycbt012.
READ TABLE itab_zycbt012 WITH KEY codeven = v_codeven
codmod = 'E'
chlanc = 'D'
tpcodaux = 'G'
codaux = ''
codaux2 = 'C'.
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATE6_F30_2
IF itab_zycbt005-tpcontr(01) = 'C'.
itab_zycbe033-agkon = itab_zyglt316-konts.
ENDIF.
IF /pws/zycbe001-waers NE itab_zycbt005-waers.
v_nrdias_arb = /pws/zycbe006-dtpagto - /pws/zycbe005-dtvincul.
IF v_nrdias_arb > 360.
v_prazo_arb = 'L'.
ELSE.
v_prazo_arb = 'S'.
ENDIF.
IF /pws/zycbe001-tpcontr(01) EQ 'E'.
CONCATENATE 'E' v_prazo_arb
INTO v_codaux_arb SEPARATED BY space .
CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'
EXPORTING
bukrs = /pws/zycbe001-bukrs
ktosl = 'ARB'
codaux1 = v_codaux_arb
TABLES
account = itab_zyglt316
EXCEPTIONS
key_not_found = 1
rules_not_found = 2
OTHERS = 3.
IF sy-subrc EQ 0.
READ TABLE itab_zyglt316 INDEX 1.
ENDIF.
ELSE.
CONCATENATE 'E' v_prazo_arb
INTO v_codaux_arb SEPARATED BY space .
CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'
EXPORTING
bukrs = /pws/zycbe001-bukrs
ktosl = 'ARB'
codaux1 = v_codaux_arb
codaux2 = /pws/zycbe001-tpcontr(01)
TABLES
account = itab_zyglt316
EXCEPTIONS
key_not_found = 1
rules_not_found = 2
OTHERS = 3.
IF sy-subrc EQ 0.
READ TABLE itab_zyglt316 INDEX 1.
ENDIF.
ENDIF.
ENDIF.
* << Fim da inclusão
IF itab_zycbt005-tpcontr(01) = 'C'.
* >> Início da exclusão: FORM FILL_DATE6_F30_2
itab_zycbe033-agkon = itab_zycbt012-saknr1.
* << Fim da exclusão
* >> Início da inclusão: FORM FILL_DATE6_F30_2
itab_zycbe033-d_newko = itab_zyglt316-konts.
* << Fim da inclusão
itab_zycbe033-agkoa = 'S'.
CLEAR itab_zycbe033-umskz.
ELSEIF itab_zycbt005-tpcontr(01) = 'D'.
...
...
ELSEIF itab_zyglt321-cpocb = 'DTVINCUL'.
itab_zycbe033-d_valut = itab_zycbt005-dtvincul.
itab_zycbe033-c_valut = itab_zycbt005-dtvincul.
ENDIF.
WHEN 'ZTERM'.
IF itab_zyglt321-cpocb = 'ZTERM'.
itab_zycbe033-zterm = itab_zycbt017-zterm.
ENDIF.
ENDCASE.
ENDLOOP.
* >> Início da exclusão: FORM FILL_DATE6_F30_2
CONCATENATE text-376 wa_zycbt005-nrinvoic
INTO itab_zycbe033-c_zuonr
SEPARATED BY space.
* << Fim da exclusão
CALL CUSTOMER-FUNCTION '004'
IMPORTING
v_subrc = v_retexit.
IF v_retexit = 'X'.
itab_zycbe033-d_gsber = /pws/zycbe001-gsber.
ELSE.
itab_zycbe033-d_gsber = wa_zycbt005-gsberf.
ENDIF.
itab_zycbe033-dtdocto = wa_zycbt005-dtvincul.
IF wa_zycbt005-slpagar IS INITIAL AND
NOT wa_zycbt005-tpcontr(1) CA 'CE'.
itab_zycbe033-flag_nc = 'X'.
ENDIF.
IF v_variacao < 0.
itab_zycbe033-newbs = '40'.
ELSEIF v_variacao > 0.
itab_zycbe033-newbs = '50'.
* >> Início da exclusão: FORM FILL_DATE6_F30_2
itab_zycbe033-d_newko = itab_zyglt316-konth.
* << Fim da exclusão
ELSE.
CLEAR itab_zycbe033-newbs.
ENDIF.
* >> Início da exclusão: FORM FILL_DATE6_F30_2
READ TABLE itab_zycbt012_aux WITH KEY codeven = v_codeven_aux
codmod = 'E'
chlanc = 'D'
tpcodaux = 'G'
codaux = ''.
itab_zycbe033-d_newko = itab_zycbt012_aux-saknr1.
CONCATENATE text-375 itab_zycbt006-nrinvoic
INTO itab_zycbe033-c_zuonr
SEPARATED BY space.
* << Fim da exclusão
IF NOT v_desmembramento IS INITIAL.
itab_zycbt036-dtdocto = itab_zycbt030-budat.
CLEAR itab_zycbe033-c_zuonr.
ELSE.
itab_zycbt036-dtdocto = itab_zycbt030-budat.
ENDIF.
APPEND itab_zycbe033.
ENDFORM.
FORM verifica_data_arb.
IF wa_zycbt007-dtliquid = 'DTEMB'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB009F10
...
ENDIF.
APPEND 'endform. ' TO t_prog.
GENERATE SUBROUTINE POOL t_prog NAME w_prog.
IF sy-subrc = 0.
PERFORM log IN PROGRAM (w_prog) USING p_dados
p_tabela
CHANGING p_wa_log
IF FOUND.
ENDIF.
ENDFORM.
* >> Início da inclusão:
form get_parameters_002_cp using value(p_v_sinal).
DATA: v_nrdias TYPE i,
v_prazo,
v_codaux LIKE /pws/zyglt316-codaux1.
CONCATENATE '003' /pws/zycbe005-tpcontr INTO v_codeven.
v_nrdias = /pws/zycbe006-dtpagto - /pws/zycbe005-dtvincul.
IF v_nrdias > 360.
v_prazo = 'L'.
ELSE.
v_prazo = 'S'.
ENDIF.
IF /pws/zycbe001-tpcontr(01) EQ 'E' OR
/pws/zycbe001-tpcontr(01) EQ 'C'.
CONCATENATE /pws/zycbE001-tpcontr v_prazo
INTO v_codaux SEPARATED BY space .
CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'
EXPORTING
bukrs = /pws/zycbe001-bukrs
ktosl = 'CPT'
codaux1 = v_codaux
TABLES
account = itab_zyglt316
EXCEPTIONS
key_not_found = 1
rules_not_found = 2
OTHERS = 3.
IF sy-subrc EQ 0.
READ TABLE itab_zyglt316 INDEX 1.
ENDIF.
ELSE.
CONCATENATE 'E' v_prazo
INTO v_codaux SEPARATED BY space .
CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'
EXPORTING
bukrs = /pws/zycbe001-bukrs
ktosl = 'CPT'
codaux1 = v_codaux
codaux2 = /pws/zycbe001-tpcontr
TABLES
account = itab_zyglt316
EXCEPTIONS
key_not_found = 1
rules_not_found = 2
OTHERS = 3.
IF sy-subrc EQ 0.
READ TABLE itab_zyglt316 INDEX 1.
ENDIF.
ENDIF.
itab_zycbe033-v_sinal = p_v_sinal.
IF itab_zycbt030-flag = 'X'.
itab_zycbe033-flag_nc = 'X'.
ENDIF.
IF p_v_sinal EQ '-'.
itab_zycbe033-c_newko = itab_zyglt316-konth.
PERFORM verify_null_field USING itab_zycbe033-c_newko
'SAKNR'
text-014.
ELSE.
IF wa_zycbt007-liq_trans EQ 'R'.
itab_zycbe033-d_newko = itab_zycbt012-saknr2.
ELSE.
itab_zycbe033-d_newko = itab_zyglt316-konts.
ENDIF.
PERFORM verify_null_field USING itab_zycbe033-d_newko
'SAKNR'
text-011.
ENDIF.
endform.
form busca_conta.
DATA: v_cod_param LIKE /pws/zyglt316-codaux1,
v_prazo,
v_nrdias TYPE i.
v_nrdias = /pws/zycbe006-dtpagto - /pws/zycbe005-dtvincul.
IF v_nrdias > 360.
v_prazo = 'L'.
ELSE.
v_prazo = 'S'.
ENDIF.
IF /pws/zycbe001-tpcontr(01) EQ 'E' OR
/pws/zycbe001-tpcontr(01) EQ 'C'.
CONCATENATE /pws/zycbe001-tpcontr
v_prazo INTO v_cod_param SEPARATED BY space .
CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'
EXPORTING
bukrs = /pws/zycbe001-bukrs
ktosl = 'CPT'
codaux1 = v_cod_param
TABLES
account = itab_zyglt316
EXCEPTIONS
key_not_found = 1
rules_not_found = 2
OTHERS = 3.
IF sy-subrc EQ 0.
READ TABLE itab_zyglt316 INDEX 1.
ENDIF.
ELSE.
CONCATENATE 'E' v_prazo INTO v_cod_param SEPARATED BY space .
CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'
EXPORTING
bukrs = /pws/zycbe001-bukrs
ktosl = 'CPT'
codaux1 = v_cod_param
codaux2 = /pws/zycbe001-tpcontr(01)
TABLES
account = itab_zyglt316
EXCEPTIONS
key_not_found = 1
rules_not_found = 2
OTHERS = 3.
IF sy-subrc EQ 0.
READ TABLE itab_zyglt316 INDEX 1.
ENDIF.
ENDIF.
endform.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB009TOP
...
/pws/zycet001,
/pws/zycet002,
/pws/zycet020,
/pws/zycet037,
t052u,
cskb,
knb1,
lfb1,
skb1,
t001a,
* >> Início da inclusão:
t001,
* << Fim da inclusão
/pws/zycbt214,
/pws/zycbt209,
/pws/zyglt364,
j_1bbranch,
adrc,
/pws/zycbt220,
/pws/zycbe223,
/pws/zycbe074,
/pws/zycbt031,
/pws/zycbt044,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCB009
Incluído símbolo de texto:
Idioma: PT
Símbolo: 062
Texto: (31 caracteres)
"Clearing cta. ACE/Câmbio Pronto"
Comprimento máximo: 31