Módulo: CÂMBIO FINANCEIRO
Funcionalidade: Empréstimos
Data/Hora da Publicação: 31/03/2008 00:00:00
Data/Hora Última Alteração: 18/02/2011 14:25:21
Descrição da Nota: FINANCIAMENTO/EMPRESTIMO - JUROS E COMISSÃO COM IRRF DEDUZIDO
Sintoma
Atualmente o programa não efetua a dedução do valor do irrf no pagamento de juros/comissão sobre
financiamento e emprestimo.
Solução
Criado novo tratamento nas funcionalidades financiamento, emprestimo e rotina mensal das comissões e
juros com irrf por conta do credor.
7.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 06290 Data: 31/03/2008 Hora: 16:26:22
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 06290
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00005
Agrupamento : 00041
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
00490 - 00001 - 6.0 - 00022 - ROTINA MENSAL O DOCUMENTO CONTÁBIL RELATIVO AO MÊS
02175 - 00002 - 6.0 - 00025 - ROTINA DE PAGAMENTO - CAMPO DATA "DE" "ATÉ"
02651 - 00003 - 6.0 - 00025 - PROCESSAR BOLETO - FINANCIAMENTO - FILTRO POR DATA PARC. PRIN/JUR
03282 - 00004 - 6.0 - 00026 - ROTINA MENSAL - KOSTL EMPRESTIMO TABELA 129 - JUROS E COMISSÃO
03791 - 00005 - 7.0 - 00001 - ROTINA DE PAGAMENTO - EMPRÉSTIMO - FILIAL(BUPLA)
03813 - 00006 - 7.0 - 00001 - ROTINA MENSAL FINANCIAMENTO ELEMENTO PEP
04196 - 00007 - 7.0 - 00002 - IRRF SOBRE COMISSÃO DE EMPRÉSTIMO CONTABILIZADO NO COMPLEMENTO DO
05088 - 00008 - 7.0 - 00003 - REFINANCIAMENTO - FINANCIAMENTO - BLOQUEIO JUROS/COMISSÃO
05587 - 00009 - 7.0 - 00004 - VERIFICAÇÃO E CODE INSPECTOR
05648 - 00010 - 7.0 - 00004 - VERIFICAÇÃO AMPLIADA, CODE INSPECTOR, ROTINA MENSAL DE CAMBIO IMP
05775 - 00011 - 7.0 - 00004 - VERIFICAÇÃO AMPLIADA, CODE INSPECTOR PROGRAMA DE EMPRESTIMO
06164 - 00012 - 7.0 - 00004 - FINANCIAMENTO
----------------------------------------------------------------------------------------------------
FINANCIAMENTO/EMPRESTIMO - JUROS E COMISSÃO COM IRRF DEDUZIDO
----------------------------------------------------------------------------------------------------
Palavras Chave:
FINANCIAMENTO/EMPRESTIMO - JUROS E COMISSÃO COM IRRF DEDUZIDO
----------------------------------------------------------------------------------------------------
Objetos da nota:
DYNP /PWS/SAPMZYCA111 0103
DYNP /PWS/SAPMZYCA111 0104
DYNP /PWS/SAPMZYCM101 0103
REPS /PWS/MZYCA111F01
REPS /PWS/MZYCA111O01
REPS /PWS/MZYCM101F01
REPS /PWS/ZYCBI112
REPS /PWS/ZYCBI112X
REPS /PWS/ZYCBI113
REPS /PWS/ZYCBI113X
REPS /PWS/ZYCBR113
REPS /PWS/ZYGLR001
REPS /PWS/ZYGLR003
TABD /PWS/ZYCBE113
TABD /PWS/ZYCBE129
TABD /PWS/ZYCBT113
TABD /PWS/ZYCBT129
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCA111 0103
* Efetuado o download da tela 103 para arquivo.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCA111 0104
* Efetuado o download da tela 104 para arquivo.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCM101 0103
* Efetuado o download da tela 103 para arquivo.
-------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCA111F01
...
( v_vlmeamj *
( ( itab_zycbt129j-txjtotal /
100 ) / /pws/zycbt010-nrdias )
* itab_zycbt129j-nrdias_j ).
ELSE.
itab_zycbt129j-vlme =
( v_vlmeamj *
( ( itab_zycbt129j-txjtotal / 100 ) / /pws/zycbt010-nrdias )
* itab_zycbt129j-nrdias ).
ENDIF.
CHECK itab_zycbt129j-vlme > 0.
* >> Início da inclusão: FORM UPDATE_ITAB_ZYCBT129J
IF /pws/zycbe129-reajbase EQ 'X' AND
/pws/zycbe129-ded_fat EQ 'X'.
CLEAR: /pws/zycbe129-reajbase,
/pws/zycbe129-ded_fat.
ENDIF.
MOVE: /pws/zycbe129-reajbase TO itab_zycbt129j-reajbase,
/pws/zycbe129-ded_fat TO itab_zycbt129j-ded_fat.
IF ( itab_zycbt129j-aliqir > 0 ).
IF /pws/zycbe129-reajbase IS INITIAL.
* << Fim da inclusão
itab_zycbt129j-vlir =
( ( itab_zycbt129j-aliqir / 100 ) * itab_zycbt129j-vlme ).
* >> Início da inclusão: FORM UPDATE_ITAB_ZYCBT129J
ELSE.
IF itab_zycbt129j-aliqir < 100.
itab_zycbt129j-vlir =
( itab_zycbt129j-vlme /
( ( 100 - itab_zycbt129j-aliqir ) / 100 ) )
* ( itab_zycbt129j-aliqir / 100 ).
ENDIF.
ENDIF.
ENDIF.
* << Fim da inclusão
itab_zycbt129j-txtinf = /pws/zycbe129-txtinf.
itab_zycbt129j-vliof =
( ( itab_zycbt129j-aliqiof / 100 ) * itab_zycbt129j-vlme ).
ELSE.
CONCATENATE v_conc_nrparc /pws/zycbe129-nrparc
INTO v_conc_nrparc SEPARATED BY space.
ENDIF.
MOVE: /pws/zycbe129-kostl TO itab_zycbt129j-kostl,
/pws/zycbe129-aufnr TO itab_zycbt129j-aufnr,
/pws/zycbe129-kstrg TO itab_zycbt129j-kstrg,
...
...
itab_zycbt129c-vlme = /pws/zycbe128-vlcomis.
itab_zycbt129c-nrdias = 0.
ELSEIF /pws/zycbe128-tpcomis EQ 'V'.
itab_zycbt129c-vlme = ( /pws/zycbe128-vlcomis /
/pws/zycbe128-nrparc ).
ENDIF.
ELSEIF /pws/zycbe128-fpagto_c EQ 'L'.
itab_zycbt129c-vlme = /pws/zycbe129-vlme.
ENDIF.
MODIFY itab_zycbt129c INDEX /pws/zycbe129-nrparc.
* >> Início da inclusão: FORM UPDATE_ITAB_ZYCBT129C
IF ( /pws/zycbe129-reajbase EQ 'X' AND
/pws/zycbe129-ded_fat EQ 'X' ) OR
/pws/zycbe129-remissivel NE 'S'.
CLEAR: /pws/zycbe129-reajbase,
/pws/zycbe129-ded_fat.
ENDIF.
MOVE: /pws/zycbe129-reajbase TO itab_zycbt129c-reajbase,
/pws/zycbe129-ded_fat TO itab_zycbt129c-ded_fat.
IF ( itab_zycbt129c-aliqir > 0 ).
IF /pws/zycbe129-reajbase IS INITIAL OR
/pws/zycbe129-remissivel NE 'S'.
* << Fim da inclusão
itab_zycbt129c-vlir =
( ( itab_zycbt129c-aliqir / 100 ) * itab_zycbt129c-vlme ).
* >> Início da inclusão: FORM UPDATE_ITAB_ZYCBT129C
ELSE.
IF itab_zycbt129c-aliqir < 100.
itab_zycbt129c-vlir =
( itab_zycbt129c-vlme /
( ( 100 - itab_zycbt129c-aliqir ) / 100 ) )
* ( itab_zycbt129c-aliqir / 100 ).
ENDIF.
ENDIF.
ENDIF.
* << Fim da inclusão
itab_zycbt129c-vliof =
( ( itab_zycbt129c-aliqiof / 100 ) * itab_zycbt129c-vlme ).
itab_zycbt129c-remissivel = /pws/zycbe129-remissivel.
itab_zycbt129c-txtinf = /pws/zycbe129-txtinf.
MOVE: /pws/zycbe129-kostl TO itab_zycbt129c-kostl,
/pws/zycbe129-aufnr TO itab_zycbt129c-aufnr,
/pws/zycbe129-kstrg TO itab_zycbt129c-kstrg,
/pws/zycbe129-prctr TO itab_zycbt129c-prctr,
/pws/zycbe129-ps_posid TO itab_zycbt129c-ps_posid,
/pws/zycbe129-nplnr TO itab_zycbt129c-nplnr,
...
...
PERFORM fill_date1_f02.
ENDFORM.
FORM clear_date_batch.
CLEAR: itab_zycbt034,
itab_zycbe033,
itab_zycbt032.
REFRESH: itab_zycbt034, itab_zycbe033, itab_zycbt032.
ENDFORM.
FORM verify_null_field USING value(p_field)
value(p_fieldname)
* >> Início da exclusão: FORM VERIFY_NULL_FIELD
value(p_description)."#EC *
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFY_NULL_FIELD
value(p_description). "#EC *
* << Fim da inclusão
IF p_field IS INITIAL.
itab_zycbt034-campo = p_fieldname.
itab_zycbt034-descricao = p_description.
APPEND itab_zycbt034.
ENDIF.
ENDFORM.
FORM popup_message USING value(p_textline1)
* >> Início da exclusão: FORM POPUP_MESSAGE
value(p_titel). "#EC *
* << Fim da exclusão
* >> Início da inclusão: FORM POPUP_MESSAGE
value(p_titel). "#EC *
* << Fim da inclusão
CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
EXPORTING
defaultoption = 'Y'
textline1 = p_textline1
titel = p_titel
IMPORTING
answer = v_answer
EXCEPTIONS
* >> Início da exclusão: FORM POPUP_MESSAGE
OTHERS = 0."#EC *
* << Fim da exclusão
* >> Início da inclusão: FORM POPUP_MESSAGE
OTHERS = 0. "#EC *
* << Fim da inclusão
ENDFORM.
FORM obtem_taxa_cambial.
v_ftaxa = /pws/zycbe128-ftaxa.
CALL FUNCTION '/PWS/ZYCB_MONTANTE_CONVERTE'
EXPORTING
i_montante = /pws/zycbe128-sldesem
i_demoeda = /pws/zycbe128-waers
i_paramoeda = wa_zycbt007-waersb
i_ctmoeda = v_ftaxa
i_dtbase = sy-datum
...
...
ENDIF.
SELECT nrseq dtpagto status
FROM /pws/zycbt118
INTO (/pws/zycbt118-nrseq, /pws/zycbt118-dtpagto,
/pws/zycbt118-status)
UP TO 1 ROWS
WHERE nrref = /pws/zycbe128-nrseq AND
dtpagto <> '00000000' AND
status <> 'E' AND
codmodul = 'EM'.
* >> Início da exclusão: FORM DELETE_ZYCBT128
ENDSELECT. "#EC CI_NOFIELD
* << Fim da exclusão
* >> Início da inclusão: FORM DELETE_ZYCBT128
ENDSELECT. "#EC CI_NOFIELD
* << Fim da inclusão
IF sy-subrc EQ 0.
MESSAGE i015 WITH text-035 text-034.
v_erro_exclusao = 'X'.
ELSE.
SELECT *
INTO TABLE itab_zycbt118
FROM /pws/zycbt118
WHERE nrref = /pws/zycbe128-nrseq AND
status <> 'E' AND
* >> Início da exclusão: FORM DELETE_ZYCBT128
codmodul = 'EM'. "#EC CI_NOFIELD
* << Fim da exclusão
* >> Início da inclusão: FORM DELETE_ZYCBT128
codmodul = 'EM'. "#EC CI_NOFIELD
* << Fim da inclusão
IF sy-subrc EQ 0.
PERFORM popup_message USING text-031 text-032.
IF v_answer = 'J'.
PERFORM verifica_parcelas.
IF v_apagar = 'S'.
PERFORM reverse_document_zycbt128.
IF v_erro_exclusao IS INITIAL.
PERFORM reverse_document_zycbt129.
IF v_erro_exclusao IS INITIAL.
PERFORM exclui_emprestimo.
...
...
v_diasj = v_diasj + /pws/zycbe129-nrdias.
WHEN '0104'.
v_diasc = v_diasc + /pws/zycbe129-nrdias.
ENDCASE.
ENDFORM.
FORM ver_vlprinc.
DATA: vlprinc LIKE /pws/zycbt128-vlme,
vdtaux LIKE sy-datum,
vdtfinal LIKE sy-datum, "#EC NEEDED
vdtfinal2 LIKE sy-datum, "#EC NEEDED
* >> Início da exclusão: FORM VER_VLPRINC
vdtfinal3 LIKE sy-datum,"#EC NEEDED
* << Fim da exclusão
* >> Início da inclusão: FORM VER_VLPRINC
vdtfinal3 LIKE sy-datum, "#EC NEEDED
* << Fim da inclusão
v_line TYPE i.
CLEAR v_ind_valor.
LOOP AT itab_zycbt129p.
vlprinc = vlprinc + itab_zycbt129p-vlme.
vdtaux = itab_zycbt129p-dtfinal.
AT LAST.
vdtfinal = vdtaux.
ENDAT.
ENDLOOP.
IF vlprinc <> /pws/zycbe128-vlme.
...
...
itab_zycbe033-kursf = v_taxacambial.
ENDIF.
PERFORM verify_null_field USING wa_zycbt011-blart
'BLART'
text-014.
itab_zycbe033-blart = wa_zycbt011-blart.
PERFORM verify_null_field USING itab_zycbt129c-vlme
'VLME'
text-028.
itab_zycbe033-wrbtr = itab_zycbt129c-vlme.
* >> Início da inclusão: FORM FILL_DATE_F02
IF itab_zycbt129c-ded_fat EQ 'X'.
itab_zycbe033-wrbtr = itab_zycbe033-wrbtr - itab_zycbt129c-vlir.
ENDIF.
* << Fim da inclusão
itab_zycbe033-d_gsber = /pws/zycbe128-gsber.
itab_zycbe033-d_kostl = /pws/zycbe128-kostl.
itab_zycbe033-d_prctr = /pws/zycbe128-prctr.
itab_zycbe033-d_fipos = /pws/zycbe128-fipos.
itab_zycbe033-d_fictr = /pws/zycbe128-fictr.
itab_zycbe033-c_gsber = /pws/zycbe128-gsber.
itab_zycbe033-c_kostl = /pws/zycbe128-kostl.
itab_zycbe033-c_prctr = /pws/zycbe128-prctr.
itab_zycbe033-c_fipos = /pws/zycbe128-fipos.
itab_zycbe033-c_fictr = /pws/zycbe128-fictr.
...
...
CLEAR v_text.
CONCATENATE text-103 text-086 INTO v_text SEPARATED BY space.
PERFORM processa_boleto.
ENDCASE.
ENDIF.
ENDIF.
ENDFORM.
FORM modo_batch_input.
SELECT *
FROM /pws/zycbt039
* >> Início da exclusão: FORM MODO_BATCH_INPUT
INTO CORRESPONDING FIELDS OF TABLE itab_modo."#EC CI_NOWHERE
* << Fim da exclusão
* >> Início da inclusão: FORM MODO_BATCH_INPUT
INTO CORRESPONDING FIELDS OF TABLE itab_modo. "#EC CI_NOWHERE
* << Fim da inclusão
SORT itab_modo DESCENDING.
CALL FUNCTION 'POPUP_TO_DECIDE_LIST'
EXPORTING
textline1 = text-056
textline2 = text-057
titel = text-058
IMPORTING
answer = v_modo_bi
TABLES
t_spopli = itab_modo
EXCEPTIONS
not_enough_answers = 1
too_much_answers = 2
too_much_marks = 3
* >> Início da exclusão: FORM MODO_BATCH_INPUT
OTHERS = 4."#EC *
* << Fim da exclusão
* >> Início da inclusão: FORM MODO_BATCH_INPUT
OTHERS = 4. "#EC *
* << Fim da inclusão
if sy-subrc = 0.
else.
endif.
IF v_modo_bi EQ '3'.
v_modo_bi = 'A'.
ELSEIF v_modo_bi EQ '2'.
v_modo_bi = 'E'.
ELSEIF v_modo_bi EQ '1'.
v_modo_bi = 'N'.
ENDIF.
...
...
v_lock = 0.
ENDIF.
ENDFORM.
FORM verifica_despesa.
DATA v_answer_aux.
IF sy-tcode = '/PWS/ZYCB111_C'.
SELECT *
FROM /pws/zycbt118
INTO TABLE itab_zycbt118
WHERE nrref = v_nrseq AND
* >> Início da exclusão: FORM VERIFICA_DESPESA
codmodul = 'CE'. "#EC CI_NOFIELD
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_DESPESA
codmodul = 'CE'. "#EC CI_NOFIELD
* << Fim da inclusão
IF sy-subrc = 0.
CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
text_question = text-059
text_button_1 = text-060
icon_button_1 = 'ICON_OKAY'
text_button_2 = text-061
icon_button_2 = 'ICON_CANCEL'
display_cancel_button = ' '
IMPORTING
answer = v_answer_aux
EXCEPTIONS
text_not_found = 1
OTHERS = 2.
if sy-subrc = 0.
else.
endif.
IF v_answer_aux = '1'.
DELETE FROM /pws/zycbt118 WHERE nrref = v_nrseqc2
* >> Início da exclusão: FORM VERIFICA_DESPESA
AND codmodul = 'FR'."#EC CI_NOFIELD
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_DESPESA
AND codmodul = 'FR'. "#EC CI_NOFIELD
* << Fim da inclusão
IF sy-subrc = 0.
MESSAGE i015 WITH text-062.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDFORM.
FORM preenche_itab_aux.
CASE sy-dynnr.
WHEN '0102'.
...
...
WHERE nrseq EQ v_nrseqc AND
tpparc EQ 'P' AND
belnr_p NE ' '.
ENDSELECT.
IF sy-subrc EQ 0.
MOVE /pws/zycbe129 TO wa_zycbt129.
MESSAGE i015 WITH text-093 .
ENDIF.
ENDIF.
ENDFORM.
* >> Início da exclusão: FORM ESTORNA_PARCELAS_EXCLUIDAS
FORM estorna_parcelas_excluidas."#EC CALLED
* << Fim da exclusão
* >> Início da inclusão: FORM ESTORNA_PARCELAS_EXCLUIDAS
FORM estorna_parcelas_excluidas. "#EC CALLED
* << Fim da inclusão
LOOP AT itab_excluidos.
itab_zycbe033-mandt = sy-mandt.
itab_zycbe033-tcode = 'FB08'.
itab_zycbe033-tabela = text-008.
itab_zycbe033-cpochv = wa_zycbt128-nrseq.
itab_zycbe033-belnr = itab_excluidos-belnr.
itab_zycbe033-bukrs = wa_zycbt128-bukrs.
itab_zycbe033-budat = wa_zycbt128-dtdesem.
itab_zycbe033-gjahs = wa_zycbt128-dtdesem+0(4).
v_monat = itab_zycbe033-budat+2(2).
...
...
CHANGING p_ano LIKE T009B-BDATJ.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
v_bukrs = p_bukrs
v_date = p_budat
IMPORTING
v_year = p_ano.
ENDFORM.
FORM determina_periodo USING value(p_budat)
value(p_bukrs)
* >> Início da exclusão: FORM DETERMINA_PERIODO
CHANGING p_monat. "#EC *
* << Fim da exclusão
* >> Início da inclusão: FORM DETERMINA_PERIODO
CHANGING p_monat. "#EC *
* << Fim da inclusão
DATA v_periv(2).
SELECT periv
UP TO 1 ROWS
FROM t001
INTO v_periv
WHERE bukrs EQ p_bukrs.
ENDSELECT.
CALL FUNCTION 'DETERMINE_PERIOD'
EXPORTING
date = p_budat
version = v_periv
IMPORTING
period = p_monat
EXCEPTIONS
period_in_not_valid = 1
period_not_assigned = 2
version_undefined = 3
* >> Início da exclusão: FORM DETERMINA_PERIODO
OTHERS = 4."#EC *
* << Fim da exclusão
* >> Início da inclusão: FORM DETERMINA_PERIODO
OTHERS = 4. "#EC *
* << Fim da inclusão
if sy-subrc = 0.
else.
endif.
ENDFORM.
FORM read_text.
CLEAR: itab_thead, itab_tline.
REFRESH: itab_thead, itab_tline.
PERFORM preenche_thead.
CALL FUNCTION 'READ_TEXT'
EXPORTING
...
...
ENDSELECT.
IF sy-subrc NE 0.
CLEAR v_descricao_natoper.
ENDIF.
ELSE.
CLEAR v_descricao_natoper.
ENDIF.
ENDFORM.
FORM pega_descricao_dominio USING value(p_objeto)
value(p_valor)
* >> Início da exclusão: FORM PEGA_DESCRICAO_DOMINIO
CHANGING p_retorno. "#EC *
* << Fim da exclusão
* >> Início da inclusão: FORM PEGA_DESCRICAO_DOMINIO
CHANGING p_retorno. "#EC *
* << Fim da inclusão
DATA: wa_dd03l LIKE dd03l,
tablename LIKE dd03l-tabname,
fieldname LIKE dd03l-fieldname.
DATA: BEGIN OF itab_dd07t OCCURS 5.
INCLUDE STRUCTURE dd07t.
DATA: END OF itab_dd07t.
SPLIT p_objeto AT '-' INTO tablename fieldname.
IF sy-subrc NE 0.
EXIT.
ENDIF.
...
...
INTO TABLE itab_dd07t
WHERE domname = wa_dd03l-domname AND
ddlanguage = sy-langu(1).
IF sy-subrc = 0.
READ TABLE itab_dd07t WITH KEY domvalue_l = p_valor.
IF sy-subrc EQ 0.
p_retorno = itab_dd07t-ddtext.
ELSE.
LOOP AT itab_dd07t WHERE domvalue_l IS initial.
IF p_valor GE itab_dd07t-domval_ld AND
* >> Início da exclusão: FORM PEGA_DESCRICAO_DOMINIO
p_valor LE itab_dd07t-domval_hd. "#EC PORTABLE
* << Fim da exclusão
* >> Início da inclusão: FORM PEGA_DESCRICAO_DOMINIO
p_valor LE itab_dd07t-domval_hd. "#EC PORTABLE
* << Fim da inclusão
p_retorno = itab_dd07t-ddtext.
EXIT.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
ENDIF.
ENDFORM.
FORM verifica_pais_filial USING p_bukrs like /pws/zycbe128-bukrs
p_brnch like /pws/zycbe128-j_1bbranch.
...
...
IF sy-subrc = 0.
LOOP AT itab_zycbt129c.
v_tabix = v_tabix + 1.
CONCATENATE itab_zycbt129c-nrseq
itab_zycbt129c-tpparc
itab_zycbt129c-nrparc
INTO v_cpochv.
READ TABLE itab_zycbt032 WITH KEY tcode = c_f02
tabela = c_zycbt129
cpochv = v_cpochv
* >> Início da exclusão: FORM CONTABILIZA_IR_COMISSAO
tpmsg = 'S'. "#EC *
* << Fim da exclusão
* >> Início da inclusão: FORM CONTABILIZA_IR_COMISSAO
tpmsg = 'S'. "#EC *
* << Fim da inclusão
IF sy-subrc = 0.
MESSAGE i015 WITH text-132 itab_zycbt032-msg.
itab_zycbt129c-belnr_ci = itab_zycbt032-belnr.
itab_zycbt129c-budat_ci = itab_zycbe033-budat.
MOVE itab_zycbt129c TO /pws/zycbt129.
MODIFY /pws/zycbt129.
COMMIT WORK.
MODIFY itab_zycbt129c INDEX v_tabix.
MOVE itab_zycbt129c[] TO itab_zycbt129_ant[].
ELSE.
...
...
IF sy-subrc = 0.
LOOP AT itab_zycbt129_ant.
CHECK NOT itab_zycbt129_ant-belnr_ci IS INITIAL.
CONCATENATE itab_zycbt129_ant-nrseq
itab_zycbt129_ant-tpparc
itab_zycbt129_ant-nrparc
INTO v_cpochv.
READ TABLE itab_zycbt032 WITH KEY tcode = c_fb08
tabela = c_zycbt129
cpochv = v_cpochv
* >> Início da exclusão: FORM ESTORNA_IR_COMISSAO
tpmsg = 'S'."#EC *
* << Fim da exclusão
* >> Início da inclusão: FORM ESTORNA_IR_COMISSAO
tpmsg = 'S'. "#EC *
* << Fim da inclusão
IF sy-subrc EQ 0.
MESSAGE i030 WITH itab_zycbt129_ant-belnr_ci.
READ TABLE itab_zycbt129c WITH KEY
nrseq = itab_zycbt129_ant-nrseq
nrparc = itab_zycbt129_ant-nrparc.
CLEAR itab_zycbt129c-belnr_ci.
CLEAR itab_zycbt129c-budat_ci.
MODIFY itab_zycbt129c TRANSPORTING belnr_ci budat_ci
WHERE nrseq = itab_zycbt129_ant-nrseq
AND nrparc = itab_zycbt129_ant-nrparc.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCA111O01
...
READ TABLE itab_zycbt031
WITH KEY nrcorresp = /pws/zycbe129-nrseq
tpparc = /pws/zycbe129-tpparc
nrparc = /pws/zycbe129-nrparc.
IF sy-subrc = 0 AND NOT /pws/zycbe129-nrparc IS INITIAL.
IF screen-name <> 'MARK'.
screen-input = '0'.
MODIFY SCREEN.
ENDIF.
ENDIF.
* >> Início da inclusão: MODULE INSERT_LINE
IF screen-name EQ '/PWS/ZYCBE129-DED_FAT' OR
screen-name EQ '/PWS/ZYCBE129-REAJBASE' .
IF v_status_s NE 0 OR v_status_s IS INITIAL
.
IF /PWS/ZYCBE129-remissivel EQ 'S'.
screen-input = '1'.
ELSE.
screen-input = '0'.
/PWS/ZYCBE129-REAJBASE = space.
/PWS/ZYCBE129-DED_FAT = space.
ENDIF.
MODIFY screen.
ENDIF.
ENDIF.
* << Fim da inclusão
ENDLOOP.
ENDCASE.
ENDMODULE.
MODULE taxa OUTPUT.
IF NOT /pws/zycbe128-kursf IS INITIAL.
LOOP AT SCREEN.
IF screen-name = 'V_COMPRA'
OR screen-name = 'V_MEDIA'
OR screen-name = 'V_VENDA'.
screen-input = '0'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCM101F01
...
WHERE tptxjur = itab_zycbt113j-tptxjur.
v_vlmeamj = /pws/zycbe112-vlme.
LOOP AT itab_zycbt113p WHERE
dtfinal <= itab_zycbt113j-dtinicio.
v_vlmeamj = v_vlmeamj - itab_zycbt113p-vlme.
ENDLOOP.
itab_zycbt113j-vlme =
( v_vlmeamj *
( ( itab_zycbt113j-txjtotal / 100 ) / /pws/zycbt010-nrdias )
* itab_zycbt113j-nrdias ).
* >> Início da inclusão: FORM UPDATE_ITAB_ZYCBT113J
IF /pws/zycbe113-reajbase EQ 'X' AND
/pws/zycbe113-ded_fat EQ 'X'.
CLEAR: /pws/zycbe113-reajbase,
/pws/zycbe113-ded_fat.
ENDIF.
MOVE: /pws/zycbe113-reajbase TO itab_zycbt113j-reajbase,
/pws/zycbe113-ded_fat TO itab_zycbt113j-ded_fat.
IF ( itab_zycbt113j-aliqir > 0 ).
IF /pws/zycbe113-reajbase IS INITIAL.
* << Fim da inclusão
itab_zycbt113j-vlir =
( ( itab_zycbt113j-aliqir / 100 ) * itab_zycbt113j-vlme ).
* >> Início da inclusão: FORM UPDATE_ITAB_ZYCBT113J
ELSE.
IF itab_zycbt113j-aliqir < 100.
itab_zycbt113j-vlir =
( itab_zycbt113j-vlme /
( ( 100 - itab_zycbt113j-aliqir ) / 100 ) )
* ( itab_zycbt113j-aliqir / 100 ).
ENDIF.
ENDIF.
ENDIF.
* << Fim da inclusão
itab_zycbt113j-txtinf = /pws/zycbe113-txtinf.
ELSE.
MESSAGE i015 WITH text-052.
ENDIF.
IF /pws/zycbe113-nrdias <> itab_zycbt113j-nrdias
OR /pws/zycbe113-dtfinal <> itab_zycbt113j-dtfinal.
itab_zycbt113j-dtvecto = itab_zycbt113j-dtfinal.
ENDIF.
ENDIF.
MOVE mark TO itab_zycbt113j-mark.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCBI112
...
ENDIF.
itab_msg-nrseq = itab_zycbt112-nrseq.
itab_msg-nrfinanc = itab_zycbt112-nrfinanc.
itab_msg-codint = itab_zycbt112-codint.
itab_msg-tpmsg = 'E'.
APPEND itab_msg.
ELSE.
itab_relat-vlmej =
itab_relat-vlmej * ( 10 ** ( itab_tcurx-currdec - 2 ) ).
MOVE-CORRESPONDING itab_relat TO wa_taxa_cambial.
* >> Início da inclusão: FORM PROCESSA_CALCULO_JUROS
IF itab_zycbt113j-reajbase IS INITIAL.
* << Fim da inclusão
itab_relat-vlmeir =
itab_relat-vlmej * ( itab_zycbt113j-aliqir / 100 ).
* >> Início da inclusão: FORM PROCESSA_CALCULO_JUROS
ELSE.
itab_relat-vlmeir =
( itab_relat-vlmej /
( ( 100 - itab_zycbt113j-aliqir ) / 100 ) )
* ( itab_zycbt113j-aliqir / 100 ).
ENDIF.
* << Fim da inclusão
IF v_nrdias = v_dias_mes AND
NOT s_rbrotd IS INITIAL.
itab_relat-vlme_mes = itab_relat-vlmej.
ELSEIF v_nrdias <> v_dias_mes AND
NOT s_rbrotd IS INITIAL.
CALL FUNCTION '/PWS/ZYCB_JUROS_CALCULA'
EXPORTING
i_vlme = v_vlmeaux
i_txj = p_txj
i_nrdiabase = v_nrdiabase
...
...
me_nao_encontrada = 10
ctg_cambio_nao_encontrada = 11
dtbase_nao_encontrada = 12
OTHERS = 13."#EC *
IF sy-subrc = 0.
itab_relat-vlme_mes =
itab_relat-vlme_mes * ( 10 ** ( itab_tcurx-currdec - 2 ) ).
ENDIF.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM PROCESSA_CALCULO_JUROS
itab_relat-ded_fat = itab_zycbt113j-ded_fat.
* << Fim da inclusão
APPEND itab_relat.
CLEAR itab_relat.
ENDFORM.
FORM seleciona_parametros_gerais.
SELECT * FROM /pws/zycbt009
INTO TABLE itab_zycbt009.
SELECT * FROM /pws/zycbt010
INTO TABLE itab_zycbt010.
SELECT * FROM tcurx
INTO TABLE itab_tcurx
...
...
ENDON.
CLEAR: v_ok, v_ok2.
IF itab_relat-vlmej > 0 OR
itab_relat-vlmeir > 0.
IF wa_zycbt007-fprovisao = 'C' AND itab_relat-tpcontab = ' '
AND v_ok = 0.
PERFORM totaliza_juros_ir.
v_tjuros = v_tjuros - itab_relat-vlrjprov + itab_relat-vlpagj.
v_tir = v_tir - itab_relat-vlrjprov2 + itab_relat-vlpagir.
v_ok = 1.
* >> Início da inclusão: FORM PROCESSA_DADOS_CONTABIL
IF NOT itab_relat-ded_fat IS INITIAL.
v_tjuros = v_tjuros - itab_relat-vlmeir.
ENDIF.
* << Fim da inclusão
ENDIF.
IF wa_zycbt007-fprovisao = 'C' AND itab_relat-tpcontab = 'C'
AND v_ok2 = 0.
PERFORM totaliza_comissao.
v_tcomis = v_tcomis - itab_relat-vlrjprov3 +
itab_relat-vlpagc.
v_ok2 = 1.
ENDIF.
ENDIF.
IF ( v_tjuros > 0 OR v_tir > 0 ) AND
...
...
UPDATE /pws/zycbt021 SET data = sy-datum
hora = sy-uzeit
usuario = sy-uname
WHERE codrel = '112'.
IF NOT wa_zycbt007-fprovisao = 'C'.
PERFORM lancamento_estorno.
ENDIF.
PERFORM lancamento_provisao.
ENDFORM.
FORM processa_subtotal_waers USING p_v_vlmej p_v_vlmeir."#EC *
* >> Início da exclusão: FORM PROCESSA_SUBTOTAL_WAERS
data: v_vlmej(16) type n,
v_vlmeir(16) type n.
* << Fim da exclusão
* >> Início da inclusão: FORM PROCESSA_SUBTOTAL_WAERS
data: v_vlmej type wrbtr,
v_vlmeir type wrbtr.
* << Fim da inclusão
v_vlmej = p_v_vlmej.
v_vlmeir = p_v_vlmeir.
IF v_vlmej > 0 OR
v_vlmeir > 0.
ULINE.
PERFORM preenche_itab_contabil USING p_v_vlmej
p_v_vlmeir.
FORMAT COLOR 2 INVERSE OFF INTENSIFIED ON.
WRITE: sy-vline,
text-006,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCBI112X
...
vlrjprov LIKE /pws/zycbt154-vlme,
vlrprov2 LIKE /pws/zycbt154-vlme,
vlrjprov2 LIKE /pws/zycbt154-vlme,
vlrprov3 LIKE /pws/zycbt154-vlme,
vlrjprov3 LIKE /pws/zycbt154-vlme,
vlpagj LIKE /pws/zycbt154-vlme,
vlpagir LIKE /pws/zycbt154-vlme,
vlpagc LIKE /pws/zycbt154-vlme,
dtfpar LIKE sy-datum,
ps_posid LIKE /pws/zycbt113-ps_posid,
* >> Início da inclusão:
ded_fat LIKE /pws/zycbt113-ded_fat,
* << Fim da inclusão
END OF itab_relat.
DATA: END OF COMMON PART.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCBI113
...
itab_msg-msg = text-021.
ENDCASE.
itab_msg-nrseq = itab_zycbt128-nrseq.
itab_msg-nremprest = itab_zycbt128-nremprest.
itab_msg-tpmsg = 'E'.
APPEND itab_msg.
ELSE.
itab_relat-vlmej =
itab_relat-vlmej * ( 10 ** ( itab_tcurx-currdec - 2 ) ).
MOVE-CORRESPONDING itab_relat TO wa_taxa_cambial.
* >> Início da inclusão: FORM PROCESSA_CALCULO_JUROS
IF itab_zycbt129j-reajbase IS INITIAL.
* << Fim da inclusão
itab_relat-vlmeir =
itab_relat-vlmej * ( itab_zycbt129j-aliqir / 100 ).
* >> Início da inclusão: FORM PROCESSA_CALCULO_JUROS
ELSE.
itab_relat-vlmeir =
( itab_relat-vlmej /
( ( 100 - itab_zycbt129j-aliqir ) / 100 ) )
* ( itab_zycbt129j-aliqir / 100 ).
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM PROCESSA_CALCULO_JUROS
ENDIF.
* << Fim da inclusão
IF wa_zycbt007-fprovisao = 'C'.
itab_relat-vlrprov = itab_relat-vlmej - itab_zycbt129j-vlrprov.
itab_relat-vlrjprov = itab_zycbt129j-vlrprov.
ELSEIF wa_zycbt007-fprovisao = space.
itab_relat-vlrprov = itab_relat-vlmej.
itab_relat-vlrjprov = itab_zycbt129j-vlrprov.
ENDIF.
itab_relat-vlrjprov = itab_zycbt129j-vlrprov.
itab_relat-vlrprovir =
itab_relat-vlrprov * ( itab_zycbt129j-aliqir / 100 ).
* >> Início da inclusão: FORM PROCESSA_CALCULO_JUROS
itab_relat-ded_fat = itab_zycbt129j-ded_fat.
* << Fim da inclusão
APPEND itab_relat.
CLEAR itab_relat.
ENDFORM.
FORM seleciona_parametros_gerais.
SELECT SINGLE * FROM /pws/zyglt009
WHERE bukrs EQ s_bukrs.
SELECT * FROM /pws/zycbt009
INTO TABLE itab_zycbt009.
SELECT * FROM /pws/zycbt010
INTO TABLE itab_zycbt010.
...
...
CONTINUE.
ENDIF.
ENDIF.
ENDIF.
CHECK itab_relat-f_encerrado IS INITIAL.
IF ( NOT itab_relat-vlmej IS INITIAL AND
NOT itab_relat-vlrprov IS INITIAL ) OR
( NOT itab_relat-vlmeir IS INITIAL AND
NOT itab_relat-vlrprovir IS INITIAL ) OR
itab_relat-tpcontab = 'T'.
* >> Início da inclusão: FORM PROCESSA_DADOS_CONTABIL
IF NOT itab_relat-ded_fat IS INITIAL.
itab_relat-vlrprov = itab_relat-vlrprov - itab_relat-vlmeir.
itab_relat-vlmej = itab_relat-vlmej - itab_relat-vlmeir.
MODIFY itab_relat.
ENDIF.
* << Fim da inclusão
MOVE itab_relat TO wa_itab_relat.
IF itab_relat-vlmetransf IS INITIAL.
ADD itab_relat-vlmej TO v_vlmej_w.
ADD itab_relat-vlmeir TO v_vlmeir_w.
v_vlrprov_w = itab_relat-vlrprov.
ELSE.
ADD itab_relat-vlmetransf TO v_vlmej_w.
ENDIF.
PERFORM processa_subtotal_waers USING v_vlmej_w
v_vlmeir_w
...
...
itab_relat-kostl = itab_zycbt129j-kostl.
itab_relat-prctr = itab_zycbt128-prctr.
itab_relat-fipos = itab_zycbt128-fipos.
itab_relat-fictr = itab_zycbt128-fictr.
itab_relat-blart = v_blart.
itab_relat-c_sgtxt = v_c_sgtxt.
itab_relat-d_sgtxt = v_d_sgtxt.
itab_relat-tpemprest = itab_zycbt128-tpemprest.
itab_relat-dtfpar = itab_pagas-dtfinal.
itab_relat-aliqir = itab_pagas-aliqir.
* >> Início da inclusão: FORM COMPLETA_ITAB_RELAT
IF itab_pagas-reajbase IS INITIAL.
* << Fim da inclusão
itab_relat-vlmeir =
itab_relat-vlme * ( itab_relat-aliqir / 100 ).
* >> Início da inclusão: FORM COMPLETA_ITAB_RELAT
ELSE.
itab_relat-vlmeir =
( itab_relat-vlmej /
( ( 100 - itab_relat-aliqir ) / 100 ) )
* ( itab_relat-aliqir / 100 ).
ENDIF.
itab_relat-ded_fat = itab_pagas-ded_fat.
* << Fim da inclusão
IF wa_zycbt007-fprovisao = 'C'.
itab_relat-vlrprov = itab_relat-vlmej - itab_zycbt129j-vlrprov.
itab_relat-vlrjprov = itab_zycbt129j-vlrprov.
ELSEIF wa_zycbt007-fprovisao = space.
itab_relat-vlrprov = itab_relat-vlmej.
itab_relat-vlrjprov = itab_zycbt129j-vlrprov.
ENDIF.
itab_relat-vlrjprov = itab_zycbt129j-vlrprov.
itab_relat-vlrprovir =
itab_relat-vlrprov * ( itab_zycbt129j-aliqir / 100 ).
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCBI113X
...
vlrprov LIKE /pws/zycbt129-vlrprov,
vlrprovir LIKE /pws/zycbt129-vlrprov,
vlrjprov LIKE /pws/zycbt129-vlrprov,
vlrjprovir LIKE /pws/zycbt129-vlrprov,
aux(1) TYPE c,
vlpagj LIKE /pws/zycbt154-vlme,
vlpagir LIKE /pws/zycbt154-vlme,
vlpagc LIKE /pws/zycbt154-vlme,
dtfpar LIKE sy-datum,
nrdias_prov(5) TYPE n,
* >> Início da inclusão:
ded_fat LIKE /pws/zycbt129-ded_fat,
* << Fim da inclusão
END OF itab_relat.
DATA: END OF COMMON PART.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCBR113
...
DATA: BEGIN OF itab_pagas OCCURS 2,
nrseq LIKE /pws/zycbt113-nrseq,
tpparc LIKE /pws/zycbt113-tpparc,
nrparc LIKE /pws/zycbt113-nrparc,
nrdias LIKE /pws/zycbt113-nrdias,
dtinicio LIKE /pws/zycbt113-dtinicio,
dtfinal LIKE /pws/zycbt113-dtfinal,
v_total LIKE /pws/zycbt113-vlme,
dtpagto LIKE /pws/zycbt113-dtpagto,
aliqir LIKE /pws/zycbt129-aliqir,
* >> Início da inclusão:
reajbase LIKE /pws/zycbt129-reajbase,
ded_fat LIKE /pws/zycbt129-ded_fat,
* << Fim da inclusão
END OF itab_pagas.
DATA: wa_itab_relat LIKE itab_relat,
wa_zycbt011 LIKE /pws/zycbt011,
wa_zycbt007 LIKE /pws/zycbt007,
v_contabilizado,
v_cpochv LIKE /pws/zycbe033-cpochv,
v_codeven LIKE /pws/zycbt011-codeven.
DATA: BEGIN OF wa_taxa_cambial,
kursf LIKE tcurr-ukurs,
ftme LIKE tcurr-ffact,
...
...
SELECT * FROM /pws/zycbt129
INTO TABLE itab_zycbt129j
FOR ALL ENTRIES IN itab_zycbt128
WHERE nrseq = itab_zycbt128-nrseq
AND dtinicio <= s_dtentr
AND tpparc = 'J'
AND status NE 'E' .
IF wa_zycbt007-fprovisao <> 'C'.
SELECT nrseq tpparc nrparc nrdias dtinicio dtfinal vlme dtpagto
aliqir
* >> Início da inclusão: FORM SELECIONA_DADOS
reajbase ded_fat
* << Fim da inclusão
INTO TABLE itab_pagas
FROM /pws/zycbt129
FOR ALL ENTRIES IN itab_zycbt128
WHERE nrseq = itab_zycbt128-nrseq
AND tpparc = 'C'
AND dtinicio <= s_dtentr
AND dtpagto = '00000000'
AND status NE 'E'.
ELSE.
SELECT nrseq tpparc nrparc nrdias dtinicio dtfinal vlme dtpagto
aliqir
* >> Início da inclusão: FORM SELECIONA_DADOS
reajbase ded_fat
* << Fim da inclusão
INTO TABLE itab_pagas
FROM /pws/zycbt129
FOR ALL ENTRIES IN itab_zycbt128
WHERE nrseq = itab_zycbt128-nrseq
AND tpparc = 'C'
AND dtinicio <= s_dtentr
AND status NE 'E'.
ENDIF.
SELECT * FROM /pws/zycbt031
INTO TABLE itab_zycbt031
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYGLR001
...
dtinicio LIKE /pws/zycbt113-dtinicio,
dtfinal LIKE /pws/zycbt113-dtfinal,
txjfixa LIKE /pws/zycbt113-txjfixa,
txjvar LIKE /pws/zycbt113-txjvar,
txjtotal LIKE /pws/zycbt113-txjtotal,
aliqir LIKE /pws/zycbt113-aliqir,
vlme LIKE /pws/zycbt113-vlme,
vlir LIKE /pws/zycbt113-vlir,
txtinf LIKE /pws/zycbt113-txtinf,
bloq_juros TYPE /pws/zycbt113-bloq_juros,
* >> Início da inclusão:
ded_fat TYPE /pws/zycbt113-ded_fat,
* << Fim da inclusão
END OF itab_zycbt113,
BEGIN OF itab_zycbt118 OCCURS 100,
nrseq LIKE /pws/zycbt118-nrseq,
nrdesp LIKE /pws/zycbt118-nrdesp,
tpdesp LIKE /pws/zycbt118-tpdesp,
bukrs LIKE /pws/zycbt118-bukrs,
codmodul LIKE /pws/zycbt118-codmodul,
nrref LIKE /pws/zycbt118-nrref,
dtvencto LIKE /pws/zycbt118-dtvencto,
benefic LIKE /pws/zycbt118-benefic,
...
...
APPEND itab_selreg.
ENDLOOP.
CLEAR: v_tipo, v_taxa_dia, itab_zycbt118, /pws/zycbt015, itab_selreg.
ENDFORM.
FORM seleciona_financi.
FREE itab_zycbt113.
IF data-high IS INITIAL.
SELECT nrseq tpparc nrparc nrfinanc dtinicio dtfinal
txjfixa txjvar txjtotal aliqir vlme vlir txtinf
bloq_juros
* >> Início da inclusão: FORM SELECIONA_FINANCI
ded_fat
* << Fim da inclusão
APPENDING TABLE itab_zycbt113
FROM /pws/zycbt113
WHERE ( dtpagto EQ '00000000' OR dtpagto EQ ' ' )
AND dtfinal LE v_data
AND status NE 'E'
AND tpparc NE 'C'
AND nrseq IN financi.
ELSE.
SELECT nrseq tpparc nrparc nrfinanc dtinicio dtfinal
txjfixa txjvar txjtotal aliqir vlme vlir txtinf
bloq_juros
* >> Início da inclusão: FORM SELECIONA_FINANCI
ded_fat
* << Fim da inclusão
APPENDING TABLE itab_zycbt113
FROM /pws/zycbt113
WHERE ( dtpagto EQ '00000000' OR dtpagto EQ ' ' )
AND dtfinal IN data
AND status NE 'E'
AND tpparc NE 'C'
AND nrseq IN financi.
ENDIF.
IF data-high IS INITIAL.
SELECT nrseq tpparc nrparc nrfinanc dtinicio dtvecto
txjfixa txjvar txjtotal aliqir vlme vlir txtinf
bloq_juros
* >> Início da inclusão: FORM SELECIONA_FINANCI
ded_fat
* << Fim da inclusão
APPENDING TABLE itab_zycbt113
FROM /pws/zycbt113
WHERE ( dtpagto EQ '00000000' OR dtpagto EQ ' ' )
AND dtvecto LE v_data
AND status NE 'E'
AND tpparc EQ 'C'
AND nrseq IN financi.
ELSE.
SELECT nrseq tpparc nrparc nrfinanc dtinicio dtvecto
txjfixa txjvar txjtotal aliqir vlme vlir txtinf
bloq_juros
* >> Início da inclusão: FORM SELECIONA_FINANCI
ded_fat
* << Fim da inclusão
APPENDING TABLE itab_zycbt113
FROM /pws/zycbt113
WHERE ( dtpagto EQ '00000000' OR dtpagto EQ ' ' )
AND dtvecto IN data
AND status NE 'E'
AND tpparc EQ 'C'
AND nrseq IN financi.
ENDIF.
IF NOT itab_zycbt113[] IS INITIAL.
SELECT * FROM /pws/zycbt112 INTO TABLE itab_zycbt112
...
...
INTO v_tipo.
ELSEIF itab_zycbt113-tpparc = 'C'.
CONCATENATE itab_zycbt113-nrparc '/' v_nrparc '-' text-004
INTO v_tipo.
ENDIF.
CLEAR: v_me, v_usd, v_saldo.
IF itab_zycbt113-tpparc <> 'P'.
v_saldo = itab_zycbt113-vlme.
ELSE.
v_saldo = itab_zycbt113-vlme.
* >> Início da inclusão: FORM SELECIONA_FINANCI
ENDIF.
IF itab_zycbt113-tpparc EQ 'J' AND
itab_zycbt113-ded_fat EQ 'X'.
v_saldo = v_saldo - itab_zycbt113-vlir.
* << Fim da inclusão
ENDIF.
v_me = v_saldo.
MOVE:
text-030 TO itab_selreg-mod,
itab_zycbt113-nrseq TO itab_selreg-nrchave,
itab_zycbt113-nrfinanc TO itab_selreg-docto,
'/PWS/ZYCBT113' TO itab_selreg-tab,
itab_zycbt113-tpparc TO itab_selreg-tpparc,
itab_zycbt113-nrparc TO itab_selreg-nrparc,
v_tipo TO itab_selreg-tipo,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYGLR003
...
txjfixa LIKE /pws/zycbt129-txjfixa,
txjvar LIKE /pws/zycbt129-txjvar,
txjtotal LIKE /pws/zycbt129-txjtotal,
aliqir LIKE /pws/zycbt129-aliqir,
vlme LIKE /pws/zycbt129-vlme,
vlir LIKE /pws/zycbt129-vlir,
vliof LIKE /pws/zycbt129-vliof,
txtinf LIKE /pws/zycbt129-txtinf,
dtpagto LIKE /pws/zycbt129-dtpagto,
dtvencto LIKE /pws/zycbt129-dtpagto,
* >> Início da inclusão:
ded_fat LIKE /pws/zycbt129-ded_fat,
* << Fim da inclusão
END OF itab_zycbt129,
BEGIN OF itab_zycbt124 OCCURS 100,
nrseq LIKE /pws/zycbt124-nrseq,
nrfech LIKE /pws/zycbt124-nrfech,
bukrs LIKE /pws/zycbt124-bukrs,
dtvencto LIKE /pws/zycbt124-dtvencto,
bcofech LIKE /pws/zycbt124-bcofech,
waers LIKE /pws/zycbt124-waers,
vlme LIKE /pws/zycbt124-vlme,
vlir LIKE /pws/zycbt124-vlir,
...
...
itab_zycbt118-frggr TO itab_selreg-frggr.
APPEND itab_selreg.
ENDLOOP.
CLEAR: v_tipo, v_taxa_dia, itab_zycbt118, /pws/zycbt015.
ENDFORM.
FORM seleciona_emprestimo.
IF data-high IS INITIAL.
SELECT nrseq tpparc nrparc nremprest dtinicio dtfinal
txjfixa txjvar txjtotal aliqir vlme vlir vliof txtinf
dtpagto dtvencto
* >> Início da inclusão: FORM SELECIONA_EMPRESTIMO
ded_fat
* << Fim da inclusão
INTO TABLE itab_zycbt129
FROM /pws/zycbt129
WHERE ( dtpagto EQ '00000000' OR dtpagto EQ ' ' )
AND dtvencto LE v_data
AND status NE 'E'
AND nrseq IN emprest.
ELSE.
SELECT nrseq tpparc nrparc nremprest dtinicio dtfinal
txjfixa txjvar txjtotal aliqir vlme vlir vliof txtinf
dtpagto dtvencto
* >> Início da inclusão: FORM SELECIONA_EMPRESTIMO
ded_fat
* << Fim da inclusão
INTO TABLE itab_zycbt129
FROM /pws/zycbt129
WHERE ( dtpagto EQ '00000000' OR dtpagto EQ ' ' )
AND dtvencto IN data
AND status NE 'E'
AND nrseq IN emprest.
ENDIF.
IF NOT itab_zycbt129[] IS INITIAL.
SELECT * FROM /pws/zycbt128 INTO TABLE itab_zycbt128
FOR ALL ENTRIES IN itab_zycbt129
...
...
ELSE.
CONTINUE.
ENDIF.
SELECT MAX( nrparc ) INTO (v_nrparc) UP TO 1 ROWS
FROM /pws/zycbt129
WHERE nrseq EQ itab_zycbt129-nrseq
AND tpparc EQ itab_zycbt129-tpparc.
IF itab_zycbt129-tpparc = 'J'.
CONCATENATE itab_zycbt129-nrparc '/' v_nrparc '-' text-003
INTO v_tipo.
* >> Início da inclusão: FORM SELECIONA_EMPRESTIMO
IF NOT itab_zycbt129-ded_fat IS INITIAL.
itab_zycbt129-vlme = itab_zycbt129-vlme - itab_zycbt129-vlir.
ENDIF.
* << Fim da inclusão
ELSEIF itab_zycbt129-tpparc = 'P'.
CONCATENATE itab_zycbt129-nrparc '/' v_nrparc '-' text-004
INTO v_tipo.
ELSEIF itab_zycbt129-tpparc = 'C'.
CONCATENATE itab_zycbt129-nrparc '/' v_nrparc '-' text-005
INTO v_tipo.
* >> Início da inclusão: FORM SELECIONA_EMPRESTIMO
IF NOT itab_zycbt129-ded_fat IS INITIAL.
itab_zycbt129-vlme = itab_zycbt129-vlme - itab_zycbt129-vlir.
ENDIF.
* << Fim da inclusão
ENDIF.
CLEAR: v_me, v_usd.
v_me = itab_zycbt129-vlme.
MOVE:
text-038 TO itab_selreg-mod,
itab_zycbt129-nrseq TO itab_selreg-nrchave,
itab_zycbt129-nremprest TO itab_selreg-docto,
'/PWS/ZYCBT129' TO itab_selreg-tab,
itab_zycbt129-tpparc TO itab_selreg-tpparc,
itab_zycbt129-nrparc TO itab_selreg-nrparc,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYCBE113
Componente TipoComponente
...
GEBER BP_GEBER
EBELN EBELN
COD_AREA /PWS/ZYGLL891
BLOQ_JUROS /PWS/ZYGLL1366
* >> Inicio da Inclusão: Componentes
REAJBASE XFELD
DED_FAT XFELD
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYCBE129
Componente TipoComponente
...
BELNR_CI BELNR_D
BUDAT_CI /PWS/ZYCBL033
BELNR_CICL BELNR_D
BUDAT_CICL /PWS/ZYCBL033
* >> Inicio da Inclusão: Componentes
REAJBASE XFELD
DED_FAT XFELD
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYCBT113
Componente TipoComponente
...
GEBER BP_GEBER
EBELN EBELN
COD_AREA /PWS/ZYGLL891
BLOQ_JUROS /PWS/ZYGLL1366
* >> Inicio da Inclusão: Componentes
REAJBASE XFELD
DED_FAT XFELD
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYCBT129
Componente TipoComponente
...
BELNR_CI BELNR_D
BUDAT_CI /PWS/ZYCBL033
BELNR_CICL BELNR_D
BUDAT_CICL /PWS/ZYCBL033
* >> Inicio da Inclusão: Componentes
REAJBASE XFELD
DED_FAT XFELD
* << Fim da inclusão