CE PLUS - Nota 007342

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Relatórios

Data/Hora da Publicação: 22/09/2008 00:00:00

Data/Hora Última Alteração: 18/02/2011 15:53:22

Descrição da Nota: RELATÓRIO DE CÂMBIOS FECHADOS - DATA POSIÇÃO EM

Sintoma

Quando é flegado as opções "Contrato pendente" e "Contrato liquidado" aparecem contratos com a data

maior que a data digitada em POSIÇÃO EM: e não deveria, pois o correto é fazer a checagem do campo

Data de Liquidação "DTLIQUID" na tabela de Captação /PWS/ZYCBT001, o programa deverá verificar na

tabela de Prorrogação /PWS/ZYCBT003 se existe algum registro do tipo Prorrogação de Liquidação

TPPROR = L. Havendo registro do tipo L, o programa deverá considerar o registro que possui a última

data de prorrogação de liquidação. O programa deverá considerar apenas contratos em que a data de

liquidação ou data de prorrogação seja inferior ou igual à data solicitada no campo POSIÇÃO EM. Se a

data de prorrogação for maior que data solicitada no campo POSIÇÃO EM o relatório não deverá

imprimir o contrato.

 

 

Solução

Apenas fazer o filtro com a dtliquid da /pws/zycbt001 e tratar o mesmo quando for selecionado

Pendente ou Liquidado.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

PROGRAMA DE CAMBIOS FECHADOS - CAMPO 'POSIÇÃO EM'

SELEÇÃO DO RELATORIO DE CAMBIOS FECHADOS COMO O CAMPO "POSIÇÃO EM"

Informações Complementares

----------------------------------------------------------------------------------------------------

Nota Número 07342 Data: 22/09/2008 Hora: 17:11:52

----------------------------------------------------------------------------------------------------

 

----------------------------------------------------------------------------------------------------

Nota Número              : 07342

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00007

Agrupamento              : 00066

----------------------------------------------------------------------------------------------------

Referência às notas relacionadas:

Número - Ordem - Versão - Pacote - Descrição Breve

 

07151  - 00001 - 7.0    - 00006  - SELEÇÃO DO RELATORIO DE CAMBIOS FECHADOS COMO O CAMPO "POSIÇÃO EM

07319  - 00002 - 7.0    - 00007  - PROGRAMA DE CAMBIOS FECHADOS - CAMPO 'POSIÇÃO EM'

----------------------------------------------------------------------------------------------------

RELATÓRIO DE CÂMBIOS FECHADOS - DATA POSIÇÃO EM

----------------------------------------------------------------------------------------------------

Palavras Chave:

RELATÓRIO DE CÂMBIOS FECHADOS - DATA POSIÇÃO EM

 

----------------------------------------------------------------------------------------------------

Objetos da nota:

REPS /PWS/ZYCBR047

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/ZYCBR047

 

...

         itab_zycbt005,

         itab_zycbt006,

         sy-subrc,

         v_tabix,

         v_nrseq,

         v_invoic,

         v_vr.

 sort  itab_zycbt001 by NRSEQC .

 sort  itab_zycbt005 by NRSEQC .

 sort  itab_zycbt006 by NRSEQC .

* >> Início da inclusão: FORM FILTRA_DADOS

  IF p_todos IS INITIAL.

    IF p_dtliq NE '00000000'.

      DELETE itab_zycbt001 WHERE dtliquid GT p_dtliq.

    ELSE.

      DELETE itab_zycbt001 WHERE dtliquid GT sy-datum.

    ENDIF.

  ENDIF.

* << Fim da inclusão

  LOOP AT itab_zycbt001.

    clear v_vr.

    v_tabix = sy-tabix.

    IF p_contp EQ 'X'.

      IF p_dtliq NE '00000000'.

        LOOP AT  itab_zycbt005

                      WHERE nrseqc   = itab_zycbt001-nrseqc.

          IF itab_zycbt005-dtvincul LE p_dtliq.

            v_vr = itab_zycbt005-vlvinc + v_vr.

          ENDIF.

...

 

...

            IF itab_zycbt001[] IS INITIAL.

              MESSAGE i222.

              STOP.

            ENDIF.

          ENDIF.

      ENDIF.

   ENDIF.

  ENDLOOP.

    IF p_todos EQ 'X'.

      IF p_dtliq NE '00000000'.

* >> Início da exclusão: FORM FILTRA_DADOS

        DELETE itab_zycbt001 WHERE dtcontr  GT p_dtliq.

* << Fim da exclusão

* >> Início da inclusão: FORM FILTRA_DADOS

      DELETE itab_zycbt001 WHERE dtliquid GT p_dtliq.

* << Fim da inclusão

        DELETE itab_zycbt005 WHERE DTVINCUL GT p_dtliq.

        delete itab_zycbt006 where dtpagto  GT p_dtliq.

      else.

        DELETE itab_zycbt001 WHERE dtliquid GT sy-datum.

* >> Início da exclusão: FORM FILTRA_DADOS

        DELETE itab_zycbt001 WHERE dtcontr  GT sy-datum .

* << Fim da exclusão

      endif.

    ENDIF.

ENDFORM.