Módulo: CÂMBIO EXPORTAÇÃO
Funcionalidade: Rotina Mensal
Data/Hora da Publicação: 13/06/2006 00:00:00
Data/Hora Última Alteração: 18/02/2011 17:23:24
Descrição da Nota: ROTINA MENSAL EXPORTAÇÃO - ESTORNO MENSAL - OPÇÃO FILTRO
Sintoma
Rotina Mensal - Tela Seleção
1) Na versão antiga pw.CE-Câmbio \ Export.\ Rot.Mens.\Tela Seleção campo "Núm.Seq.Contr." está
aberto, liberado p/ seleção contrs., tanto Forma de Processamento (Rot.Mensal ou Relatório),
qto..Rot.Mensal (Fechto. Mensal e Fechto.Intermed.).
2) Na versão nova pw.CE-Câmbio \ Export.\ Rot.Mensal \ Tela Seleção campos "Núm.Seq.Contr." e "Tipo
de Contr." estão:
2.1) bloqueados, qdo.flag Rot.Mensal e Fechto.Mensal
2.2) bloqueados, qdo.flag Rot.Mensal Diferenc.e Fechto.Mensal
2.3) bloqueados, qdo.flag Rot.Mensal e Fechto.Intermed.
2.4) bloqueados, qdo.flag Rot.Mensal Diferenc.e Fechto.Intermed.
Nos demais casos está aberto, liberado p/seleção contrs.
O usuário solicita que a tela de seleção da Rot.Mensal da nova versão (Upgrade) esteja com campos
"Núm.Seq.Contr." e "Tipo de Contr." liberados p/consulta.
Outro problema encontrado é que na rotina mensal de estorno esta duplicando a provisão de juros de
um contrato.
Solução
Para o filtro em rotina de estorno mensal, a solução é abrir novamente os campos de seleção por
Número de Contrato e Tipo Contrato, mas só permitindo excluir contratos pela seleção múltipla, se
fizer filtro direto exibirá mensagem e não deixa prosseguir. Somente no caso de rodar o Relatório da
Rotina Mensal em estorno mensal, o filtro esta liberado conforme faz no clearing no pagamento.
Para o erro de duplicidade a solução é carregar o número do contrato na itab_contabil, para apagar
os registros iguais.
6.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 01575 Data: 13/06/2006 Hora: 10:47:47
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 01575
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 6.0
Pacote : 00024
Agrupamento : 00119
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
01253 - 00001 - 6.0 - 00023 - ROTINA MENSAL EXPORTAÇÃO - ESTORNO MENSAL - INIBIÇÃO CAMPOS SELEÇ
----------------------------------------------------------------------------------------------------
ROTINA MENSAL EXPORTAÇÃO - ESTORNO MENSAL - OPÇÃO FILTRO
----------------------------------------------------------------------------------------------------
Palavras Chave:
ROTINA MENSAL EXPORTAÇÃO ESTORNO MENSAL OPÇÃO FILTRO
NÚMERO SEQUENCIAL TIPO CONTRATO
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/ZYCBR003
REPT /PWS/ZYCBR003
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCBR003
...
SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.
SELECT-OPTIONS s_bukrs FOR /pws/zycbt001-bukrs.
PARAMETERS: s_dtentr LIKE sy-datum.
SELECTION-SCREEN END OF BLOCK a1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-046.
* >> Início da exclusão:
PARAMETERS: s_rbrotm RADIOBUTTON GROUP rg1 USER-COMMAND s_rbrotm,
* << Fim da exclusão
* >> Início da inclusão:
PARAMETERS: s_rbrotm RADIOBUTTON GROUP rg1,
* << Fim da inclusão
s_rbrotd RADIOBUTTON GROUP rg1,
s_rbrela RADIOBUTTON GROUP rg1.
SELECTION-SCREEN END OF BLOCK b2.
SELECTION-SCREEN BEGIN OF BLOCK c3 WITH FRAME TITLE text-045.
PARAMETERS: s_rbmens RADIOBUTTON GROUP rg2,
...
...
SELECT-OPTIONS: s_nrseqc FOR /pws/zycbt001-nrseqc
MATCHCODE OBJECT /pws/zycba050,
s_tpcont FOR /pws/zycbt001-tpcontr.
SELECTION-SCREEN END OF BLOCK d4.
INCLUDE /pws/zycbi003.
* >> Início da exclusão:
INITIALIZATION.
SELECT SINGLE fprovisao FROM /pws/zycbt007 INTO wa_zycbt007-fprovisao.
CHECK wa_zycbt007-fprovisao IS INITIAL.
LOOP AT SCREEN.
IF screen-name EQ 'S_NRSEQC-LOW' OR
screen-name EQ 'S_NRSEQC-HIGH' OR
screen-name EQ 'S_TPCONT-LOW' OR
screen-name EQ 'S_TPCONT-HIGH'.
CLEAR: s_nrseqc, s_tpcont.
REFRESH: s_nrseqc, s_tpcont.
screen-input = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
* << Fim da exclusão
TOP-OF-PAGE.
PERFORM exibe_cabecalho.
START-OF-SELECTION.
PERFORM seleciona_dados.
PERFORM processa_dados.
...
...
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE i015 WITH text-120.
ENDIF.
ENDCASE.
* >> Início da exclusão:
AT SELECTION-SCREEN OUTPUT.
CHECK wa_zycbt007-fprovisao IS INITIAL.
IF NOT s_rbrotm IS INITIAL OR
NOT s_rbrotd IS INITIAL.
LOOP AT SCREEN.
IF screen-name EQ 'S_NRSEQC-LOW' OR
screen-name EQ 'S_NRSEQC-HIGH' OR
screen-name EQ 'S_TPCONT-LOW' OR
screen-name EQ 'S_TPCONT-HIGH'.
CLEAR: s_nrseqc, s_tpcont.
REFRESH: s_nrseqc, s_tpcont.
screen-input = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ELSEIF NOT s_rbrela IS INITIAL.
LOOP AT SCREEN.
IF screen-name EQ 'S_NRSEQC-LOW' OR
screen-name EQ 'S_NRSEQC-HIGH' OR
screen-name EQ 'S_TPCONT-LOW' OR
screen-name EQ 'S_TPCONT-HIGH'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
* << Fim da exclusão
FORM seleciona_dados.
DATA: v_f_encerrado LIKE /pws/zycbt001-f_encerrado,
v_flag_e LIKE /pws/zycbt001-f_encerrado,
wa_zycbt002_aux LIKE /pws/zycbt002.
DATA: BEGIN OF itab_zycbt216 OCCURS 0.
INCLUDE STRUCTURE /pws/zycbt216.
DATA: END OF itab_zycbt216.
DATA: BEGIN OF itab_zycbt002_aux OCCURS 0.
INCLUDE STRUCTURE /pws/zycbt002.
DATA: END OF itab_zycbt002_aux.
* >> Início da inclusão: FORM SELECIONA_DADOS
CLEAR wa_zycbt007.
SELECT *
UP TO 1 ROWS
FROM /pws/zycbt007
INTO wa_zycbt007
WHERE bukrs IN s_bukrs.
ENDSELECT.
IF wa_zycbt007-fprovisao IS INITIAL AND
( NOT s_nrseqc[] IS INITIAL OR
NOT s_tpcont[] IS INITIAL ) AND
s_rbrela NE 'X'.
LOOP AT s_nrseqc WHERE sign EQ 'I'.
ENDLOOP.
IF sy-subrc = 0.
MESSAGE i061 WITH text-134 text-135 text-136.
STOP.
ELSE.
LOOP AT s_tpcont WHERE sign EQ 'I'.
ENDLOOP.
IF sy-subrc = 0.
MESSAGE i061 WITH text-134 text-135 text-136.
STOP.
ENDIF.
ENDIF.
ENDIF.
* << Fim da inclusão
IF s_rbrotm = 'X' OR s_rbrotd = 'X'.
IF s_rbmens = 'X'.
PERFORM verifica_data_entrada.
ENDIF.
ELSE.
ENDIF.
v_flag_e = 'E'.
v_f_encerrado = 'C'.
* >> Início da exclusão: FORM SELECIONA_DADOS
CLEAR wa_zycbt007.
SELECT *
UP TO 1 ROWS
FROM /pws/zycbt007
INTO wa_zycbt007
WHERE bukrs IN s_bukrs.
ENDSELECT.
* << Fim da exclusão
IF s_dtentr IS INITIAL.
s_dtentr = sy-datum.
ENDIF.
IF s_nrseqc IS INITIAL.
SELECT *
...
...
itab_contabil-nrparcp = wa_itab_relat-nrparcp.
itab_contabil-kursf = wa_itab_relat-txc.
itab_contabil-dtcont = s_dtentr.
itab_contabil-vlme = itab_relat-vlrprov.
itab_contabil-vlmeir = itab_relat-vlirprov.
* >> Início da inclusão: FORM PROCESSA_ABERTO
itab_contabil-nrcorresp = wa_itab_relat-nrseqc.
* << Fim da inclusão
APPEND itab_contabil.
CLEAR itab_contabil.
ENDIF.
ELSE.
IF itab_relat-tpcontab EQ 'C' AND
...
...
IF sy-subrc EQ 0.
READ TABLE itab_zycbt009 WITH KEY codpadr = itab_zycbt011-ctmoed.
IF sy-subrc EQ 0.
CALL FUNCTION '/PWS/ZYCB_MONTANTE_CONVERTE'
i_montante = v_vlmeaux
i_demoeda = itab_zycbt001-waers
i_paramoeda = /pws/zycbt007-waersb
i_ctmoeda = itab_zycbt009-kurst
i_dtbase = s_dtentr
IMPORTING
e_txc = itab_relat-txc
* >> Início da inclusão: FORM PREENCHE_ITAB_RELAT_PR
EXCEPTIONS
i_demoeda_nao_encontrado = 1
i_paramoeda_nao_encontrado = 2
i_ctmoeda_nao_encontrado = 3
i_dtbase_nao_encontrada = 4
taxa_nao_encontrada = 5
fator_nao_encontrado = 6
i_montante_nao_encontrado = 7
OTHERS = 8.
ENDIF.
IF sy-subrc NE 0.
v_defator = 1.
v_parafator = 1.
* << Fim da inclusão
ENDIF.
ENDIF.
SELECT name1
UP TO 1 ROWS
INTO (lfa1-name1)
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/ZYCBR003
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 134
Texto: (50 caracteres)
"Na rotina de Estorno Mensal,só é permitido filtrar"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 135
Texto: (50 caracteres)
"por Nr. Sequencial Contrato e/ou Tipo de Contrato,"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 136
Texto: (45 caracteres)
"quando estiver selecionada a opção Relatório."
Comprimento máximo: 50