CE PLUS - Nota 001575

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.

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

ROTINA MENSAL EXPORTAÇÃO - ESTORNO MENSAL - INIBIÇÃO CAMPOS SELEÇÃ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