Módulo: CÂMBIO FINANCEIRO
Funcionalidade: Rotina Mensal
Data/Hora da Publicação: 28/07/2010 00:00:00
Data/Hora Última Alteração: 18/02/2011 14:28:34
Descrição da Nota: ROTINA MENSAL -BI- TRATAR PARAMETRIZAÇAO DA 321-FINAC E IMPORT
Sintoma
Novo tratamento, no preechimento de campos no batch imput de rotina mensal de importação e
financeiro, considerando as regras da tabela de parametro /PWS/ZYGLT321.
Solução
Novo tratamento, no preechimento de campos no batch imput de rotina mensal de importação e
financeiro, considerando as regras da tabela de parametro /PWS/ZYGLT321.
8.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 10442 Data: 28/07/2010 Hora: 15:10:55
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 10442
Categoria : Melhoria
Prioridade : Baixa
Versão PW.CE : 8.0
Pacote : 00004
Agrupamento : 00032
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
01034 - 00006 - 6.0 - 00022 - ROTINA MENSAL IMPORTAÇÃO - ESTORNO MENSAL - DATA DE LANÇAMENTO
07119 - 00005 - 7.0 - 00006 - ROTINA MENSAL IMP. - PARCELAS DE PRINCIPAL A MAIS QUE PARCELAS DE
07450 - 00004 - 7.0 - 00007 - DA - ROTINA MENSAL DE ESTORNO PARA EXP, IMP, FINANC
09327 - 00003 - 8.0 - 00001 - EMPRÉSTIMO - ROTINAS MENSAIS - CONSIDERAR DE-PARA CATEGORIA DA MO
10211 - 00002 - 8.0 - 00003 - SOCIEDADE PARCEIRA ROTINA MENSAL DE IMPORTAÇÃO
10226 - 00001 - 8.0 - 00003 - SOCIEDADE PARCEIRA ROTINA MENSAL FINANCEIRO
----------------------------------------------------------------------------------------------------
ROTINA MENSAL -BI- TRATAR PARAMETRIZAÇAO DA 321-FINAC E IMPORT
----------------------------------------------------------------------------------------------------
Palavras Chave:
ROTINA MENSAL -BI- TRATAR PARAMETRIZAÇAO DA 321-FINAC E IMPORT
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/ZYCBI112
REPS /PWS/ZYCBI113
REPS /PWS/ZYCBR112
REPS /PWS/ZYCBR113
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCBI112
...
itab_zycbe033-budat = itab_contabil-dtcont.
endif.
itab_zycbe033-bukrs = itab_contabil-bukrs.
itab_zycbe033-waers = itab_contabil-waers.
itab_zycbe033-wrbtr = itab_contabil-vlme.
if wa_zycbt007-fdtdoc = 'L'.
itab_zycbe033-bldat = itab_zycbe033-budat.
else.
itab_zycbe033-bldat = sy-datum.
endif.
* >> Início da exclusão: FORM LANCAMENTO_PROVISAO
if wa_zycbt007-dt_efet = 'D'.
itab_zycbe033-d_valut = itab_zycbe033-budat.
itab_zycbe033-c_valut = itab_zycbe033-budat.
elseif wa_zycbt007-dt_efet = 'L'.
itab_zycbe033-d_valut = sy-datum.
itab_zycbe033-c_valut = sy-datum.
elseif wa_zycbt007-dt_efet = 'E'.
itab_zycbe033-d_valut = itab_contabil-dtfpar.
itab_zycbe033-c_valut = itab_contabil-dtfpar.
endif.
* << Fim da exclusão
itab_zycbe033-bktxt = wa_zycbt007-bktxt.
read table itab_zycbt112 with key nrseq = itab_contabil-nrseq.
* >> Início da exclusão: FORM LANCAMENTO_PROVISAO
if wa_zycbt007-fprovisao = 'C' or itab_contabil-tpcontab = 'T'.
loop at itab_zycbt013.
case itab_zycbt013-cpor3.
when 'XBLNR'.
case itab_zycbt013-cpocb.
when 'NRSEQC'.
itab_zycbe033-xblnr = itab_contabil-nrseq.
when 'NRSEQ'.
itab_zycbe033-xblnr = itab_contabil-nrseq.
when 'NRCONTR'.
itab_zycbe033-xblnr = itab_contabil-nrseq.
when 'NRINVOIC'.
itab_zycbe033-xblnr = itab_contabil-nrseq.
endcase.
endcase.
endloop.
itab_zycbe033-d_zuonr = itab_zycbt112-nrfinanc.
itab_zycbe033-c_zuonr = itab_zycbt112-nrfinanc.
else.
itab_zycbe033-d_zuonr = itab_contabil-bco.
itab_zycbe033-c_zuonr = itab_contabil-bco.
endif.
itab_zycbe033-vbund = itab_zycbt112-vbund.
itab_zycbe033-kursf = itab_contabil-kursf.
itab_zycbe033-blart = itab_contabil-blart.
itab_zycbe033-d_sgtxt = itab_contabil-d_sgtxt.
itab_zycbe033-c_sgtxt = itab_contabil-c_sgtxt.
itab_zycbe033-ps_posid = itab_contabil-ps_posid.
itab_zycbe033-d_newko = itab_contabil-d_newko.
itab_zycbe033-d_gsber = itab_contabil-gsber.
itab_zycbe033-d_kostl = itab_contabil-kostl.
itab_zycbe033-d_prctr = itab_contabil-prctr.
itab_zycbe033-d_fipos = itab_contabil-fipos.
itab_zycbe033-d_fictr = itab_contabil-fictr.
itab_zycbe033-c_newko = itab_contabil-c_newko.
itab_zycbe033-c_gsber = itab_contabil-gsber.
itab_zycbe033-c_kostl = itab_contabil-kostl.
itab_zycbe033-c_prctr = itab_contabil-prctr.
itab_zycbe033-c_fipos = itab_contabil-fipos.
itab_zycbe033-c_fictr = itab_contabil-fictr.
if itab_contabil-vlme > 0.
append itab_zycbe033.
* << Fim da exclusão
* >> Início da inclusão: FORM LANCAMENTO_PROVISAO
if itab_contabil-tpcontab is initial .
v_codeven = '002J'.
perform seleciona_321_i using v_codeven.
elseif itab_contabil-tpcontab = 'C'.
v_codeven = '001C'.
perform seleciona_321_i using v_codeven.
* << Fim da inclusão
endif.
if not itab_contabil-vlmeir is initial.
* >> Início da inclusão: FORM LANCAMENTO_PROVISAO
v_codeven = '003I'.
* << Fim da inclusão
concatenate 'IR' itab_contabil-codint itab_contabil-bco
itab_contabil-bukrs itab_contabil-gsber
itab_contabil-waers itab_contabil-d_newkoir
itab_contabil-c_newkoir into itab_zycbe033-cpochv.
itab_zycbe033-wrbtr = itab_contabil-vlmeir.
itab_zycbe033-d_newko = itab_contabil-d_newkoir.
itab_zycbe033-c_newko = itab_contabil-c_newkoir.
* >> Início da exclusão: FORM LANCAMENTO_PROVISAO
itab_zycbe033-d_sgtxt = itab_contabil-d_sgtxtir.
itab_zycbe033-c_sgtxt = itab_contabil-c_sgtxtir.
* << Fim da exclusão
itab_zycbe033-blart = itab_contabil-blartir.
* >> Início da exclusão: FORM LANCAMENTO_PROVISAO
append itab_zycbe033.
* << Fim da exclusão
* >> Início da inclusão: FORM LANCAMENTO_PROVISAO
perform seleciona_321_i using v_codeven.
* << Fim da inclusão
endif.
loop at itab_zycbt034.
concatenate text-114 itab_contabil-bco itab_contabil-bukrs
...
...
itab_zycbe033-bldat = itab_zycbe033-budat.
endif.
itab_zycbe033-bktxt = wa_zycbt007-bktxt.
itab_zycbe033-wrbtr = itab_contabil-vlme.
itab_zycbe033-agums = wa_zycbt011-agums.
itab_zycbe033-agkoa = wa_zycbt011-koart.
itab_zycbe033-c_gsber = itab_contabil-gsber.
itab_zycbe033-d_gsber = itab_contabil-gsber.
read table itab_zycbt112 with key nrseq = itab_contabil-nrseq.
itab_zycbe033-agkon = itab_zycbt112-lifnr.
* >> Início da exclusão: FORM CLEARING_TRANSFERENCIA
if wa_zycbt007-dt_efet = 'D'.
itab_zycbe033-d_valut = itab_zycbe033-budat.
itab_zycbe033-c_valut = itab_zycbe033-budat.
elseif wa_zycbt007-dt_efet = 'L'.
itab_zycbe033-d_valut = sy-datum.
itab_zycbe033-c_valut = sy-datum.
elseif wa_zycbt007-dt_efet = 'E'.
itab_zycbe033-d_valut = itab_contabil-dtfpar.
itab_zycbe033-c_valut = itab_contabil-dtfpar.
endif.
* << Fim da exclusão
read table itab_zycbt113p with key nrseq = itab_contabil-nrseq
nrparc = itab_contabil-nrparcp.
if sy-subrc = 0.
itab_zycbt036-tcode = text-100.
itab_zycbt036-tabela = text-101.
itab_zycbt036-cpochv = itab_contabil-nrseq.
itab_zycbt036-belnr = itab_zycbt113p-belnr_lp.
if itab_zycbt113p-belnr_lp = itab_zycbt113p-belnr_ori.
if not itab_zycbt113p-dtcont_ori is initial.
v_dtcont = itab_zycbt113p-dtcont_ori.
...
...
changing v_ano.
select single awkey from bkpf
into itab_zycbt036-awkey
where belnr eq itab_zycbt113p-belnr_lp
and bukrs eq itab_zycbt112-bukrs
and gjahr eq v_ano.
append itab_zycbt036.
endif.
itab_zycbe033-d_newko = itab_contabil-d_newko.
itab_zycbe033-c_newko = itab_contabil-c_newko.
* >> Início da exclusão: FORM CLEARING_TRANSFERENCIA
itab_zycbe033-xblnr = itab_contabil-nrseq.
itab_zycbe033-d_zuonr = itab_contabil-nrseq.
itab_zycbe033-c_zuonr = itab_contabil-nrseq.
itab_zycbe033-d_sgtxt = wa_zycbt011-txtdesc.
itab_zycbe033-c_sgtxt = wa_zycbt011-txtdesc.
* << Fim da exclusão
perform verify_null_field using itab_contabil-bukrs
'BUKRS'
text-073.
itab_zycbe033-bukrs = itab_contabil-bukrs.
perform verify_null_field using itab_contabil-waers
'WAERS'
text-035.
itab_zycbe033-waers = itab_contabil-waers.
itab_zycbe033-kursf = itab_contabil-kursf.
perform verify_null_field using wa_zycbt011-blart
'BLART'
text-103.
itab_zycbe033-blart = wa_zycbt011-blart.
itab_zycbe033-vbund = itab_zycbt112-vbund.
* >> Início da inclusão: FORM CLEARING_TRANSFERENCIA
if itab_contabil-tpcontab = 'T'.
v_codeven = '001T'.
perform seleciona_321_i using v_codeven.
endif.
* << Fim da inclusão
append itab_zycbe033.
loop at itab_zycbt034.
concatenate text-114 itab_contabil-bco itab_contabil-bukrs
itab_contabil-gsber itab_contabil-nrseq
text-115 itab_zycbt034-descricao text-116
into v_msg separated by space.
write: / v_msg.
endloop.
if itab_zycbt034[] is initial.
call function '/PWS/ZYCM_TRANSACAO_F_51T'
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCBI113
...
else.
itab_zycbe033-budat = itab_contabil-dtcont.
endif.
itab_zycbe033-bukrs = itab_contabil-bukrs.
itab_zycbe033-waers = itab_contabil-waers.
if wa_zycbt007-fdtdoc = 'L'.
itab_zycbe033-bldat = itab_zycbe033-budat.
else.
itab_zycbe033-bldat = sy-datum.
endif.
* >> Início da exclusão: FORM LANCAMENTO_PROVISAO
if wa_zycbt007-dt_efet = 'D'.
itab_zycbe033-d_valut = itab_zycbe033-budat.
itab_zycbe033-c_valut = itab_zycbe033-budat.
elseif wa_zycbt007-dt_efet = 'L'.
itab_zycbe033-d_valut = sy-datum.
itab_zycbe033-c_valut = sy-datum.
elseif wa_zycbt007-dt_efet = 'E'.
itab_zycbe033-d_valut = itab_contabil-dtfpar.
itab_zycbe033-c_valut = itab_contabil-dtfpar.
endif.
* << Fim da exclusão
itab_zycbe033-bktxt = wa_zycbt007-bktxt.
* >> Início da exclusão: FORM LANCAMENTO_PROVISAO
loop at itab_zycbt013.
case itab_zycbt013-cpor3.
when 'XBLNR'.
case itab_zycbt013-cpocb.
when 'NRSEQC'.
itab_zycbe033-xblnr = itab_contabil-nrcorresp.
when 'NRSEQ'.
itab_zycbe033-xblnr = itab_contabil-nrcorresp.
when 'NRCONTR'.
itab_zycbe033-xblnr = itab_contabil-nrcorresp.
when 'NRINVOIC'.
itab_zycbe033-xblnr = itab_contabil-nrcorresp.
endcase.
endcase.
endloop.
* << Fim da exclusão
clear itab_zycbt128.
read table itab_zycbt128 with key nrseq = itab_contabil-nrcorresp.
* >> Início da exclusão: FORM LANCAMENTO_PROVISAO
itab_zycbe033-d_zuonr = itab_zycbt128-nremprest.
itab_zycbe033-c_zuonr = itab_zycbt128-nremprest.
* << Fim da exclusão
itab_zycbe033-kursf = itab_contabil-kursf.
itab_zycbe033-blart = itab_contabil-blart.
* >> Início da exclusão: FORM LANCAMENTO_PROVISAO
itab_zycbe033-d_sgtxt = itab_contabil-d_sgtxt.
itab_zycbe033-c_sgtxt = itab_contabil-c_sgtxt.
* << Fim da exclusão
itab_zycbe033-d_newko = itab_contabil-d_newko.
itab_zycbe033-d_gsber = itab_contabil-gsber.
itab_zycbe033-d_kostl = itab_contabil-kostl.
itab_zycbe033-d_prctr = itab_zycbt128-prctr.
itab_zycbe033-d_fipos = itab_contabil-fipos.
itab_zycbe033-d_fictr = itab_contabil-fictr.
itab_zycbe033-c_newko = itab_contabil-c_newko.
itab_zycbe033-c_gsber = itab_contabil-gsber.
itab_zycbe033-c_prctr = itab_zycbt128-prctr.
itab_zycbe033-c_fipos = itab_contabil-fipos.
itab_zycbe033-c_fictr = itab_contabil-fictr.
perform verifica_pais_filial using itab_zycbt128-bukrs
itab_zycbt128-j_1bbranch.
itab_zycbe033-brnch = itab_zycbt128-j_1bbranch.
itab_zycbe033-vbund = itab_zycbt128-vbund.
* >> Início da exclusão: FORM LANCAMENTO_PROVISAO
if itab_zycbe033-wrbtr > 0.
append itab_zycbe033.
* << Fim da exclusão
* >> Início da inclusão: FORM LANCAMENTO_PROVISAO
if itab_contabil-tpcontab is initial .
v_codeven = '002J'.
perform seleciona_321_f using v_codeven.
elseif itab_contabil-tpcontab = 'C'.
v_codeven = '001C'.
perform seleciona_321_f using v_codeven.
* << Fim da inclusão
endif.
if itab_contabil-vlrprovir > 0.
itab_zycbe033-wrbtr = itab_contabil-vlrprovir.
if itab_contabil-tpcontab is initial.
concatenate 'IR' itab_contabil-bco
itab_contabil-bukrs itab_contabil-gsber
itab_contabil-waers itab_contabil-d_newkoir
itab_contabil-c_newkoir itab_contabil-nrcorresp
into itab_zycbe033-cpochv.
* >> Início da inclusão: FORM LANCAMENTO_PROVISAO
v_codeven = '002I'.
* << Fim da inclusão
elseif itab_contabil-tpcontab = 'C'.
concatenate 'CI' itab_contabil-bco
itab_contabil-bukrs itab_contabil-gsber
itab_contabil-waers itab_contabil-d_newkoir
itab_contabil-c_newkoir itab_contabil-nrcorresp
into itab_zycbe033-cpochv.
* >> Início da inclusão: FORM LANCAMENTO_PROVISAO
v_codeven = '001IC'.
* << Fim da inclusão
endif.
if not itab_contabil-d_newkoir is initial and
not itab_contabil-c_newkoir is initial.
itab_zycbe033-d_newko = itab_contabil-d_newkoir.
itab_zycbe033-c_newko = itab_contabil-c_newkoir.
* >> Início da exclusão: FORM LANCAMENTO_PROVISAO
itab_zycbe033-d_sgtxt = itab_contabil-d_sgtxtir.
itab_zycbe033-c_sgtxt = itab_contabil-c_sgtxtir.
* << Fim da exclusão
itab_zycbe033-blart = itab_contabil-blartir.
* >> Início da exclusão: FORM LANCAMENTO_PROVISAO
append itab_zycbe033.
* << Fim da exclusão
endif.
* >> Início da inclusão: FORM LANCAMENTO_PROVISAO
perform seleciona_321_f using v_codeven.
* << Fim da inclusão
endif.
loop at itab_zycbt034.
...
...
itab_zycbe033-bldat = itab_zycbe033-budat.
endif.
itab_zycbe033-bktxt = wa_zycbt007-bktxt.
itab_zycbe033-wrbtr = itab_contabil-vlme.
itab_zycbe033-agums = wa_zycbt011-agums.
itab_zycbe033-agkoa = wa_zycbt011-koart.
itab_zycbe033-c_gsber = itab_contabil-gsber.
itab_zycbe033-d_gsber = itab_contabil-gsber.
read table itab_zycbt128 with key nrseq = itab_contabil-nrcorresp.
itab_zycbe033-agkon = itab_zycbt128-bcofinan.
* >> Início da exclusão: FORM CLEARING_TRANSFERENCIA
if wa_zycbt007-dt_efet = 'D'.
itab_zycbe033-d_valut = itab_zycbe033-budat.
itab_zycbe033-c_valut = itab_zycbe033-budat.
elseif wa_zycbt007-dt_efet = 'L'.
itab_zycbe033-d_valut = sy-datum.
itab_zycbe033-c_valut = sy-datum.
elseif wa_zycbt007-dt_efet = 'E'.
itab_zycbe033-d_valut = itab_contabil-dtfpar.
itab_zycbe033-c_valut = itab_contabil-dtfpar.
endif.
* << Fim da exclusão
read table itab_zycbt129p with key nrseq = itab_contabil-nrcorresp
nrparc = itab_contabil-nrparcp.
if sy-subrc = 0.
itab_zycbt036-tcode = text-114.
itab_zycbt036-tabela = text-115.
itab_zycbt036-cpochv = itab_contabil-nrcorresp.
itab_zycbt036-belnr = itab_zycbt129p-belnr_lp.
clear v_ano.
if itab_zycbt128-fdtinicial = 'D' or
itab_zycbt128-fdtinicial = 'I' or
...
...
endif.
select single awkey from bkpf
into itab_zycbt036-awkey
where belnr eq itab_zycbt129p-belnr_lp
and bukrs eq itab_zycbt128-bukrs
and gjahr eq v_ano.
append itab_zycbt036.
endif.
itab_zycbe033-d_newko = itab_contabil-d_newko.
itab_zycbe033-c_newko = itab_contabil-c_newko.
* >> Início da exclusão: FORM CLEARING_TRANSFERENCIA
itab_zycbe033-xblnr = itab_contabil-nrcorresp.
itab_zycbe033-d_zuonr = itab_contabil-nrcorresp.
itab_zycbe033-c_zuonr = itab_contabil-nrcorresp.
itab_zycbe033-d_sgtxt = wa_zycbt011-txtdesc.
itab_zycbe033-c_sgtxt = wa_zycbt011-txtdesc.
* << Fim da exclusão
perform verify_null_field using itab_contabil-bukrs
'BUKRS'
text-081.
itab_zycbe033-bukrs = itab_contabil-bukrs.
perform verify_null_field using itab_contabil-waers
'WAERS'
text-035.
itab_zycbe033-waers = itab_contabil-waers.
itab_zycbe033-kursf = itab_contabil-kursf.
perform verify_null_field using wa_zycbt011-blart
'BLART'
text-117.
itab_zycbe033-blart = wa_zycbt011-blart.
perform verifica_pais_filial using itab_zycbt128-bukrs
itab_zycbt128-j_1bbranch.
itab_zycbe033-brnch = itab_zycbt128-j_1bbranch.
itab_zycbe033-vbund = itab_zycbt128-vbund.
* >> Início da inclusão: FORM CLEARING_TRANSFERENCIA
if itab_contabil-tpcontab = 'T'.
v_codeven = '001T'.
perform seleciona_321_f using v_codeven.
endif.
* << Fim da inclusão
append itab_zycbe033.
loop at itab_zycbt034.
concatenate text-089 itab_contabil-bco itab_contabil-bukrs
itab_contabil-gsber itab_contabil-nrcorresp
text-090 itab_zycbt034-descricao text-091
into v_msg separated by space.
write: / v_msg.
endloop.
if itab_zycbt034[] is initial.
call function '/PWS/ZYCA_TRANSACAO_F_51T'
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCBR112
...
end of itab_pagas.
data: begin of itab_status occurs 5,
fcode like rsmpe-func,
end of itab_status.
data: itab_zycbt009 like /pws/zycbt009 occurs 3 with header line,
itab_zycbt010 like /pws/zycbt010 occurs 2 with header line,
itab_zycbt011 like /pws/zycbt011 occurs 5 with header line,
itab_zycbt013 like /pws/zycbt013 occurs 5 with header line,
itab_zycbt154 like /pws/zycbt154 occurs 10 with header line,
itab_tcurx like tcurx occurs 10 with header line.
* >> Início da inclusão:
data: itab_zyglt321 type /pws/zyglt321 occurs 0 with header line.
* << Fim da inclusão
data: begin of itab_contabil occurs 20,
tpcontab type c,
codmodul like /pws/zycbt120-codmodul,
bco like /pws/zycbt112-bcofinan,
dtcont like sy-datum,
bukrs like /pws/zycbt112-bukrs,
gsber like /pws/zycbt112-gsber,
waers like /pws/zycbt112-waers,
vlme like /pws/zycbt112-vlme,
vlmeir like /pws/zycbt112-vlme,
...
...
modify screen.
endif.
endloop.
endif.
endform.
form estorna_documento_selecionado.
v_codmod = 'I'.
export v_codmod to memory id 'E019'.
submit /pws/zyglr020 via selection-screen and return.
endform.
* >> Início da inclusão:
form seleciona_321_i using v_codeven.
refresh itab_zyglt321.
select * from /pws/zyglt321
into table itab_zyglt321
where ktosl = 'PVI'
and codeven = v_codeven.
read table itab_zycbt113j with key nrseq = itab_contabil-nrseq
belnr_p =' ' .
loop at itab_zyglt321.
case itab_zyglt321-cpor3.
when 'SGTXT'.
if itab_zyglt321-cpocb = 'NRSEQ' .
itab_zycbe033-d_sgtxt = itab_contabil-nrseq.
itab_zycbe033-c_sgtxt = itab_contabil-nrseq.
itab_zycbe033-augtx = itab_contabil-nrseq.
elseif itab_zyglt321-cpocb = 'NRFINANC'.
itab_zycbe033-d_sgtxt = itab_zycbt112-nrfinanc.
itab_zycbe033-c_sgtxt = itab_zycbt112-nrfinanc.
itab_zycbe033-augtx = itab_zycbt112-nrfinanc.
elseif itab_zyglt321-cpocb = space.
if itab_zyglt321-descr <> ''.
itab_zycbe033-d_sgtxt = itab_zyglt321-descr.
itab_zycbe033-c_sgtxt = itab_zyglt321-descr.
itab_zycbe033-augtx = itab_zyglt321-descr.
else.
itab_zycbe033-d_sgtxt = itab_zycbt011-txtdesc.
itab_zycbe033-c_sgtxt = itab_zycbt011-txtdesc.
itab_zycbe033-augtx = itab_zycbt011-txtdesc.
endif.
endif.
when 'XBLNR'.
if itab_zyglt321-cpocb = 'NRFINANC'.
itab_zycbe033-xblnr = itab_zycbt112-nrfinanc.
elseif itab_zyglt321-cpocb = 'NRSEQ' .
itab_zycbe033-xblnr = itab_contabil-nrseq.
elseif itab_zyglt321-cpocb = space.
itab_zycbe033-xblnr = itab_zyglt321-descr.
endif.
when 'ZFBDT'.
if itab_zyglt321-cpocb = 'DTVENCTO'.
itab_zycbe033-zfbdt = itab_zycbt112-dtvencto.
elseif itab_zyglt321-cpocb = 'DTFINAL'.
itab_zycbe033-zfbdt = itab_zycbt113j-dtfinal.
endif.
when 'VALUT'.
if itab_zyglt321-cpocb = 'DTINCL'.
itab_zycbe033-d_valut = itab_zycbt112-dtincl.
itab_zycbe033-c_valut = itab_zycbt112-dtincl.
elseif itab_zyglt321-cpocb = 'DTVENCTO'.
itab_zycbe033-d_valut = itab_zycbt112-dtvencto.
itab_zycbe033-c_valut = itab_zycbt112-dtvencto.
elseif itab_zyglt321-cpocb = 'DTFINAL'.
itab_zycbe033-d_valut = itab_zycbt113j-dtfinal.
itab_zycbe033-c_valut = itab_zycbt113j-dtfinal.
endif.
when 'ZUONR'.
if itab_zyglt321-cpocb = 'NRSEQ' .
itab_zycbe033-d_zuonr = itab_contabil-nrseq.
itab_zycbe033-c_zuonr = itab_contabil-nrseq.
elseif itab_zyglt321-cpocb = 'NRFINANC'.
itab_zycbe033-d_zuonr = itab_zycbt112-nrfinanc.
itab_zycbe033-c_zuonr = itab_zycbt112-nrfinanc.
elseif itab_zyglt321-cpocb = space.
if itab_zyglt321-descr <> ''.
itab_zycbe033-d_sgtxt = itab_zyglt321-descr.
itab_zycbe033-c_sgtxt = itab_zyglt321-descr.
itab_zycbe033-augtx = itab_zyglt321-descr.
else.
itab_zycbe033-d_sgtxt = itab_zycbt011-txtdesc.
itab_zycbe033-c_sgtxt = itab_zycbt011-txtdesc.
itab_zycbe033-augtx = itab_zycbt011-txtdesc.
endif.
endif.
endcase.
endloop.
if v_codeven = '002J' or
v_codeven = '001C'.
itab_zycbe033-vbund = itab_zycbt112-vbund.
itab_zycbe033-kursf = itab_contabil-kursf.
itab_zycbe033-blart = itab_contabil-blart.
if itab_zycbe033-d_sgtxt is initial.
itab_zycbe033-d_sgtxt = itab_contabil-d_sgtxt.
itab_zycbe033-c_sgtxt = itab_contabil-c_sgtxt.
endif.
if itab_zycbe033-d_valut is initial.
if wa_zycbt007-dt_efet = 'D'.
itab_zycbe033-d_valut = itab_zycbe033-budat.
itab_zycbe033-c_valut = itab_zycbe033-budat.
elseif wa_zycbt007-dt_efet = 'L'.
itab_zycbe033-d_valut = sy-datum.
itab_zycbe033-c_valut = sy-datum.
elseif wa_zycbt007-dt_efet = 'E'.
itab_zycbe033-d_valut = itab_contabil-dtfpar.
itab_zycbe033-c_valut = itab_contabil-dtfpar.
endif.
endif.
itab_zycbe033-ps_posid = itab_contabil-ps_posid.
itab_zycbe033-d_newko = itab_contabil-d_newko.
itab_zycbe033-d_gsber = itab_contabil-gsber.
itab_zycbe033-d_kostl = itab_contabil-kostl.
itab_zycbe033-d_prctr = itab_contabil-prctr.
itab_zycbe033-d_fipos = itab_contabil-fipos.
itab_zycbe033-d_fictr = itab_contabil-fictr.
itab_zycbe033-c_newko = itab_contabil-c_newko.
itab_zycbe033-c_gsber = itab_contabil-gsber.
itab_zycbe033-c_kostl = itab_contabil-kostl.
itab_zycbe033-c_prctr = itab_contabil-prctr.
itab_zycbe033-c_fipos = itab_contabil-fipos.
itab_zycbe033-c_fictr = itab_contabil-fictr.
if itab_contabil-vlme > 0.
append itab_zycbe033.
endif.
endif.
if v_codeven = '003I'.
if itab_zycbe033-d_sgtxt is initial.
itab_zycbe033-d_sgtxt = itab_contabil-d_sgtxtir.
itab_zycbe033-c_sgtxt = itab_contabil-c_sgtxtir.
endif.
append itab_zycbe033.
endif.
if v_codeven = '001T'.
if itab_zycbe033-d_valut is initial.
if wa_zycbt007-dt_efet = 'D'.
itab_zycbe033-d_valut = itab_zycbe033-budat.
itab_zycbe033-c_valut = itab_zycbe033-budat.
elseif wa_zycbt007-dt_efet = 'L'.
itab_zycbe033-d_valut = sy-datum.
itab_zycbe033-c_valut = sy-datum.
elseif wa_zycbt007-dt_efet = 'E'.
itab_zycbe033-d_valut = itab_contabil-dtfpar.
itab_zycbe033-c_valut = itab_contabil-dtfpar.
endif.
endif.
if itab_zycbe033-d_zuonr is initial.
itab_zycbe033-d_zuonr = itab_contabil-nrseq.
itab_zycbe033-c_zuonr = itab_contabil-nrseq.
endif .
if itab_zycbe033-d_sgtxt is initial.
itab_zycbe033-d_sgtxt = wa_zycbt011-txtdesc.
itab_zycbe033-c_sgtxt = wa_zycbt011-txtdesc.
endif.
endif.
endform.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCBR113
...
nrseq like /pws/zycbt128-nrseq,
nremprest like /pws/zycbt128-nremprest,
nrparc like /pws/zycbt129-nrparc,
tpmsg like /pws/zycbt032-tpmsg,
msg like /pws/zycbt032-msg,
end of itab_msg.
data: itab_zycbt032 like /pws/zycbt032 occurs 10 with header line,
itab_zycbe033 like /pws/zycbe033 occurs 10 with header line,
itab_zycbt034 like /pws/zycbt034 occurs 10 with header line,
itab_zycbt036 like /pws/zycbt036 occurs 10 with header line.
* >> Início da inclusão:
data: itab_zyglt321 type /pws/zyglt321 occurs 0 with header line.
* << Fim da inclusão
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,
...
...
form consiste_dias_provisionar using p_nrdias.
data: v_nrdias_provisionados(5) type n.
itab_relat_aux[] = itab_relat[].
loop at itab_relat_aux where nrseq = itab_zycbt129p-nrseq
and nrparcp < itab_zycbt129p-nrparc.
v_nrdias_provisionados = v_nrdias_provisionados +
itab_relat_aux-nrdias_prov.
endloop.
p_nrdias = itab_zycbt129j-nrdias_j - v_nrdias_provisionados.
endform.
* >> Início da inclusão:
form seleciona_321_f using p_v_codeven.
refresh itab_zyglt321.
select * from /pws/zyglt321
into table itab_zyglt321
where ktosl = 'PVF'
and codeven = v_codeven.
read table itab_zycbt129j with key nrseq = itab_zycbt128-nrseq
belnr_p =' ' .
loop at itab_zyglt321.
case itab_zyglt321-cpor3.
when 'SGTXT'.
if itab_zyglt321-cpocb = 'NRSEQ' .
itab_zycbe033-d_sgtxt = itab_zycbt128-nrseq.
itab_zycbe033-c_sgtxt = itab_zycbt128-nrseq.
itab_zycbe033-augtx = itab_zycbt128-nrseq.
elseif itab_zyglt321-cpocb = 'NREMPREST'.
itab_zycbe033-d_sgtxt = itab_zycbt128-nremprest.
itab_zycbe033-c_sgtxt = itab_zycbt128-nremprest.
itab_zycbe033-augtx = itab_zycbt128-nremprest.
elseif itab_zyglt321-cpocb = space.
if itab_zyglt321-descr <> ''.
itab_zycbe033-d_sgtxt = itab_zyglt321-descr.
itab_zycbe033-c_sgtxt = itab_zyglt321-descr.
itab_zycbe033-augtx = itab_zyglt321-descr.
else.
itab_zycbe033-d_sgtxt = itab_zycbt011-txtdesc.
itab_zycbe033-c_sgtxt = itab_zycbt011-txtdesc.
itab_zycbe033-augtx = itab_zycbt011-txtdesc.
endif.
endif.
when 'XBLNR'.
if itab_zyglt321-cpocb = 'NREMPREST'.
itab_zycbe033-xblnr = itab_zycbt128-nremprest.
elseif itab_zyglt321-cpocb = 'NRSEQ' .
itab_zycbe033-xblnr = itab_zycbt128-nrseq.
elseif itab_zyglt321-cpocb = space.
itab_zycbe033-xblnr = itab_zyglt321-descr.
endif.
when 'ZFBDT'.
if itab_zyglt321-cpocb = 'DTVENCTO'.
itab_zycbe033-zfbdt = itab_zycbt128-dtvencto.
elseif itab_zyglt321-cpocb = 'DTFINAL'.
itab_zycbe033-zfbdt = itab_zycbt129j-dtfinal.
endif.
when 'VALUT'.
if itab_zyglt321-cpocb = 'DTINCL'.
itab_zycbe033-d_valut = itab_zycbt128-dtincl.
itab_zycbe033-c_valut = itab_zycbt128-dtincl.
elseif itab_zyglt321-cpocb = 'DTVENCTO'.
itab_zycbe033-d_valut = itab_zycbt128-dtvencto.
itab_zycbe033-c_valut = itab_zycbt128-dtvencto.
elseif itab_zyglt321-cpocb = 'DTFINAL'.
itab_zycbe033-d_valut = itab_zycbt129j-dtfinal.
itab_zycbe033-c_valut = itab_zycbt129j-dtfinal.
endif.
when 'ZUONR'.
if itab_zyglt321-cpocb = 'NRSEQ' .
itab_zycbe033-d_zuonr = itab_zycbt128-nrseq.
itab_zycbe033-c_zuonr = itab_zycbt128-nrseq.
elseif itab_zyglt321-cpocb = 'NREMPREST'.
itab_zycbe033-d_zuonr = itab_zycbt128-nremprest.
itab_zycbe033-c_zuonr = itab_zycbt128-nremprest.
elseif itab_zyglt321-cpocb = space.
if itab_zyglt321-descr <> ''.
itab_zycbe033-d_sgtxt = itab_zyglt321-descr.
itab_zycbe033-c_sgtxt = itab_zyglt321-descr.
itab_zycbe033-augtx = itab_zyglt321-descr.
else.
itab_zycbe033-d_sgtxt = itab_zycbt011-txtdesc.
itab_zycbe033-c_sgtxt = itab_zycbt011-txtdesc.
itab_zycbe033-augtx = itab_zycbt011-txtdesc.
endif.
endif.
endcase.
endloop.
if v_codeven = '002J' or
v_codeven = '001C'.
if itab_zycbe033-d_sgtxt is initial.
itab_zycbe033-d_sgtxt = itab_contabil-d_sgtxt.
itab_zycbe033-c_sgtxt = itab_contabil-c_sgtxt.
endif.
if itab_zycbe033-d_valut is initial.
if wa_zycbt007-dt_efet = 'D'.
itab_zycbe033-d_valut = itab_zycbe033-budat.
itab_zycbe033-c_valut = itab_zycbe033-budat.
elseif wa_zycbt007-dt_efet = 'L'.
itab_zycbe033-d_valut = sy-datum.
itab_zycbe033-c_valut = sy-datum.
elseif wa_zycbt007-dt_efet = 'E'.
itab_zycbe033-d_valut = itab_contabil-dtfpar.
itab_zycbe033-c_valut = itab_contabil-dtfpar.
endif.
endif.
if itab_zycbe033-wrbtr > 0.
append itab_zycbe033.
endif.
endif.
if v_codeven = '002I' or
v_codeven = '001IC'.
if not itab_contabil-d_newkoir is initial and
not itab_contabil-c_newkoir is initial.
if itab_zycbe033-d_sgtxt is initial.
itab_zycbe033-d_sgtxt = itab_contabil-d_sgtxtir.
itab_zycbe033-c_sgtxt = itab_contabil-c_sgtxtir.
endif.
endif.
append itab_zycbe033.
endif.
if v_codeven = '001T'.
if itab_zycbe033-d_valut is initial.
if wa_zycbt007-dt_efet = 'D'.
itab_zycbe033-d_valut = itab_zycbe033-budat.
itab_zycbe033-c_valut = itab_zycbe033-budat.
elseif wa_zycbt007-dt_efet = 'L'.
itab_zycbe033-d_valut = sy-datum.
itab_zycbe033-c_valut = sy-datum.
elseif wa_zycbt007-dt_efet = 'E'.
itab_zycbe033-d_valut = itab_contabil-dtfpar.
itab_zycbe033-c_valut = itab_contabil-dtfpar.
endif.
endif.
if itab_zycbe033-d_zuonr is initial.
itab_zycbe033-d_zuonr = itab_zycbt128-nrseq.
itab_zycbe033-c_zuonr = itab_zycbt128-nrseq.
endif .
if itab_zycbe033-d_sgtxt is initial.
itab_zycbe033-d_sgtxt = wa_zycbt011-txtdesc.
itab_zycbe033-c_sgtxt = wa_zycbt011-txtdesc.
endif.
endif.
endform.
* << Fim da inclusão