CE PLUS - Nota 002068

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Pagamento de Juros

Data/Hora da Publicação: 08/09/2006 00:00:00

Data/Hora Última Alteração: 18/02/2011 17:10:57

Descrição da Nota: PAGAMENTO DE JUROS - MATCHCODE - EXIBIÇÃO JUROS A SEREM PAGOS

Sintoma

Problema para efetuar pagamento de juros sobre os contratos de câmbio. Se entrarmos no programa de

pagamento de juros e buscarmos no match code as parcelas de juros a serem pagas, o sistema não

retorna nenhum dado a ser selecionado.

 

 

Solução

Ajustar o posicionamento dos campos na record_tab, verificando o mandante. Alterar o posicionamento

dos campos na ajuda de pesquisa e na visão da mesma.

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

PAGTO DE JUROS (MATCHCODE)

Informações Complementares

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

Nota Número 02068 Data: 08/09/2006 Hora: 11:34:37

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

 

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

Nota Número              : 02068

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00025

Agrupamento              : 00133

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

Referência às notas relacionadas:

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

 

01934  - 00001 - 6.0    - 00024  - PAGTO DE JUROS (MATCHCODE)

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

PAGAMENTO DE JUROS - MATCHCODE - EXIBIÇÃO JUROS A SEREM PAGOS

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

Palavras Chave:

PAGAMENTO DE JUROS MATCHCODE EXIBIÇÃO JUROS A SEREM PAGOS

AJUDA DE PESQUISA

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

Objetos da nota:

REPS /PWS/ZZYCBGF3U02

SHLD /PWS/ZYCBA016

VIED /PWS/ZYCBV044

 

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

Modificações efetuadas em REPS /PWS/ZZYCBGF3U02

 

* >> Início da inclusão:

CHECK callcontrol-step = 'DISP'.

* << Fim da inclusão

...

   v_subrc = v_subrc.

CLEAR callcontrol-maxrecords.

READ TABLE record_tab INDEX 1.

SELECT SINGLE nrseqc FROM /pws/zycbt001

  INTO v_nrseqc

* >> Início da exclusão:

  WHERE nrseqc = record_tab+0(08).

* << Fim da exclusão

* >> Início da inclusão:

  WHERE nrseqc = record_tab+3(08).

* << Fim da inclusão

IF sy-subrc NE 0.

  IF NOT v_subrc IS INITIAL.

    DELETE record_tab WHERE string+11(1) NE 'J' AND

                            string+11(1) NE 'D'.

  ENDIF.

...

 

...

      WHERE  nrseqc   EQ v_string+3(08)  AND

             tpdesp   EQ v_string+11(1)  AND

             nrparc   EQ v_string+14(3)  AND

             dtincl   EQ v_string+21(8)  AND

             (

* >> Início da exclusão:

             dtliquid EQ v_string+104(8) OR

             dtliquid EQ v_string+83(8)

* << Fim da exclusão

* >> Início da inclusão:

             dtliquid EQ v_string+92(8) OR

             dtliquid EQ v_string+71(8)

* << Fim da inclusão

             )                           AND

             (

* >> Início da exclusão:

             tpjuros  EQ v_string+141(1) OR

             tpjuros  EQ v_string+119(1)

* << Fim da exclusão

* >> Início da inclusão:

             tpjuros  EQ v_string+122(1) OR

             tpjuros  EQ v_string+100(1)

* << Fim da inclusão

             ).

    IF sy-subrc EQ 0.

      DELETE record_tab INDEX sy-tabix.

      CONTINUE.

    ENDIF.

...

 

...

       WHERE nrseqc   EQ v_string+3(08) AND

             tpdesp   EQ v_string+11(1) AND

             nrparc   EQ v_string+14(3) AND

             dtincl   EQ v_string+21(8) AND

             (

* >> Início da exclusão:

             dtliquid EQ v_string+104(8) OR

             dtliquid EQ v_string+83(8)

* << Fim da exclusão

* >> Início da inclusão:

             dtliquid EQ v_string+92(8) OR

             dtliquid EQ v_string+71(8)

* << Fim da inclusão

             ).

    IF sy-subrc EQ 0.

      IF NOT /pws/zycbt004-vlir IS INITIAL AND

         /pws/zycbt004-tpcontr(1) EQ 'D'.

        CONTINUE.

      ENDIF.

    ENDIF.

    SELECT SINGLE * FROM /pws/zycbt064

* >> Início da exclusão:

        WHERE nrchave  EQ record_tab+3(10)

* << Fim da exclusão

* >> Início da inclusão:

        WHERE nrchave  EQ record_tab+3(8)

* << Fim da inclusão

          AND nrparc   EQ record_tab+14(3)

          AND

            (

* >> Início da exclusão:

             dtliquid EQ v_string+104(8) OR

             dtliquid EQ v_string+83(8)

* << Fim da exclusão

* >> Início da inclusão:

             dtliquid EQ v_string+92(8) OR

             dtliquid EQ v_string+71(8)

* << Fim da inclusão

             ).

    IF sy-subrc NE 0.

      IF v_subrc IS INITIAL.

        SELECT SINGLE * FROM /pws/zycbt006

          INTO /pws/zycbt006

          WHERE nrseqc   = record_tab+3(8)   AND

                nrparc   = record_tab+14(3)  AND

                dtvincul = record_tab+21(8)  AND

                (

* >> Início da exclusão:

                nrinvoic = record_tab+64(10) OR

                nrinvoic = record_tab+61(10) OR

                nrinvoic = record_tab+58(10)

* << Fim da exclusão

* >> Início da inclusão:

                nrinvoic = record_tab+52(10) OR

                nrinvoic = record_tab+49(10) OR

                nrinvoic = record_tab+46(10)

* << Fim da inclusão

                )                            AND

                (

* >> Início da exclusão:

                gsberf   = record_tab+112(4)  OR

                gsberf   = record_tab+109(4)  OR

                gsberf   = record_tab+88(4)

* << Fim da exclusão

* >> Início da inclusão:

                gsberf   = record_tab+100(4)  OR

                gsberf   = record_tab+97(4)  OR

                gsberf   = record_tab+76(4)

* << Fim da inclusão

                )                            AND

                (

* >> Início da exclusão:

                dtpagto  = record_tab+104(8)  OR

                dtpagto  = record_tab+80(8)

* << Fim da exclusão

* >> Início da inclusão:

                dtpagto  = record_tab+92(8)  OR

                dtpagto  = record_tab+60(8)

* << Fim da inclusão

                ).

        IF sy-subrc EQ 0 OR

           v_string+11(1) EQ 'D' OR

           v_string+11(2) EQ 'JC'.

          CLEAR itab_despesas.

...

 

...

            INTO wa_zycbt005

            WHERE nrseqc   = record_tab+3(8)   AND

                  nrparc   = record_tab+14(3)  AND

                  dtvincul = record_tab+21(8)  AND

                (

* >> Início da exclusão:

                nrinvoic = record_tab+64(10) OR

                nrinvoic = record_tab+61(10) OR

                nrinvoic = record_tab+58(10)

* << Fim da exclusão

* >> Início da inclusão:

                nrinvoic = record_tab+52(10) OR

                nrinvoic = record_tab+49(10) OR

                nrinvoic = record_tab+46(10)

* << Fim da inclusão

                )                            AND

                (

* >> Início da exclusão:

                gsberf   = record_tab+112(4)  OR

                gsberf   = record_tab+109(4)  OR

                gsberf   = record_tab+88(4)

* << Fim da exclusão

* >> Início da inclusão:

                gsberf   = record_tab+100(4)  OR

                gsberf   = record_tab+97(4)  OR

                gsberf   = record_tab+76(4)

* << Fim da inclusão

                ).

          IF sy-subrc EQ 0 AND NOT

             wa_zycbt005-dtcredext IS INITIAL.

            CLEAR itab_despesas.

            MOVE v_string TO itab_despesas.

            APPEND itab_despesas.

          ENDIF.

        ENDIF.

      ELSE.

        CLEAR itab_despesas.

* >> Início da exclusão:

        IF v_string+102(8) = '00000000'.

          v_string+102(8) = '        '.

* << Fim da exclusão

* >> Início da inclusão:

        IF v_string+95(8) = '00000000'.

          v_string+95(8) = '        '.

* << Fim da inclusão

        ENDIF.

        MOVE v_string TO itab_despesas.

        APPEND itab_despesas.

      ENDIF.

    ENDIF.

  ENDLOOP.

ELSE.

  IF NOT v_subrc IS INITIAL.

* >> Início da exclusão:

    DELETE record_tab WHERE string+8(1) NE 'J' AND

                            string+8(1) NE 'D'.

* << Fim da exclusão

* >> Início da inclusão:

    DELETE record_tab WHERE string+11(1) NE 'J' AND

                            string+11(1) NE 'D'.

* << Fim da inclusão

  ENDIF.

  LOOP AT record_tab.

    v_string  = record_tab-string.

    SELECT SINGLE * FROM /pws/zycbt044

* >> Início da exclusão:

      WHERE  nrseqc   EQ v_string+0(08)  AND

             tpdesp   EQ v_string+8(1)  AND

             nrparc   EQ v_string+11(3)  AND

             dtincl   EQ v_string+18(8)  AND

* << Fim da exclusão

* >> Início da inclusão:

      WHERE  nrseqc   EQ v_string+3(8)  AND

             tpdesp   EQ v_string+11(1)  AND

             nrparc   EQ v_string+14(3)  AND

             dtincl   EQ v_string+21(8)  AND

* << Fim da inclusão

             (

* >> Início da exclusão:

             dtliquid EQ v_string+101(8) OR

             dtliquid EQ v_string+80(8)

* << Fim da exclusão

* >> Início da inclusão:

             dtliquid EQ v_string+92(8) OR

             dtliquid EQ v_string+71(8)

* << Fim da inclusão

             )                           AND

             (

* >> Início da exclusão:

             tpjuros  EQ v_string+138(1) OR

             tpjuros  EQ v_string+116(1)

* << Fim da exclusão

* >> Início da inclusão:

             tpjuros  EQ v_string+122(1) OR

             tpjuros  EQ v_string+100(1)

* << Fim da inclusão

             ).

    IF sy-subrc EQ 0.

      DELETE record_tab INDEX sy-tabix.

      CONTINUE.

    ENDIF.

    SELECT SINGLE tpcontr vlir FROM /pws/zycbt004

       INTO (/pws/zycbt004-tpcontr, /pws/zycbt004-vlir)

* >> Início da exclusão:

       WHERE nrseqc   EQ v_string+0(08) AND

             tpdesp   EQ v_string+8(1) AND

             nrparc   EQ v_string+11(3) AND

             dtincl   EQ v_string+18(8) AND

* << Fim da exclusão

* >> Início da inclusão:

      WHERE  nrseqc   EQ v_string+3(8)  AND

             tpdesp   EQ v_string+11(1) AND

             nrparc   EQ v_string+14(3) AND

             dtincl   EQ v_string+21(8) AND

* << Fim da inclusão

             (

* >> Início da exclusão:

             dtliquid EQ v_string+101(8) OR

             dtliquid EQ v_string+80(8)

* << Fim da exclusão

* >> Início da inclusão:

             dtliquid EQ v_string+92(8) OR

             dtliquid EQ v_string+71(8)

* << Fim da inclusão

             ).

    IF sy-subrc EQ 0.

      IF NOT /pws/zycbt004-vlir IS INITIAL AND

         /pws/zycbt004-tpcontr(1) EQ 'D'.

        CONTINUE.

      ENDIF.

    ENDIF.

    SELECT SINGLE * FROM /pws/zycbt064

* >> Início da exclusão:

        WHERE nrchave  EQ record_tab+0(10)

          AND nrparc   EQ record_tab+11(3)

* << Fim da exclusão

* >> Início da inclusão:

        WHERE nrchave  EQ record_tab+3(8)

          AND nrparc   EQ record_tab+14(3)

* << Fim da inclusão

          AND

          (

* >> Início da exclusão:

          dtliquid EQ record_tab+123(8) OR

          dtliquid EQ record_tab+102(8)

* << Fim da exclusão

* >> Início da inclusão:

          dtliquid EQ record_tab+92(8) OR

          dtliquid EQ record_tab+71(8)

* << Fim da inclusão

          ).

    IF sy-subrc NE 0.

      IF v_subrc IS INITIAL.

        SELECT SINGLE * FROM /pws/zycbt006

          INTO /pws/zycbt006

* >> Início da exclusão:

          WHERE nrseqc   = record_tab+0(8)   AND

                nrparc   = record_tab+11(3)  AND

                dtvincul = record_tab+18(8)  AND

* << Fim da exclusão

* >> Início da inclusão:

          WHERE nrseqc   = record_tab+3(8)   AND

                nrparc   = record_tab+14(3)  AND

                dtvincul = record_tab+21(8)  AND

* << Fim da inclusão

                (

* >> Início da exclusão:

                nrinvoic = record_tab+61(10) OR

                nrinvoic = record_tab+58(10)

* << Fim da exclusão

* >> Início da inclusão:

                nrinvoic = record_tab+52(10) OR

                nrinvoic = record_tab+49(10)

* << Fim da inclusão

                )                            AND

                (

* >> Início da exclusão:

                gsberf   = record_tab+91(4)  OR

                gsberf   = record_tab+88(4)

* << Fim da exclusão

* >> Início da inclusão:

                gsberf   = record_tab+100(4)  OR

                gsberf   = record_tab+97(4)

* << Fim da inclusão

                )                            AND

                (

* >> Início da exclusão:

                dtpagto  = record_tab+83(8) OR

                dtpagto  = record_tab+80(8)

* << Fim da exclusão

* >> Início da inclusão:

                dtpagto  = record_tab+92(8) OR

                dtpagto  = record_tab+81(8)

* << Fim da inclusão

                ).

        IF sy-subrc EQ 0 OR

* >> Início da exclusão:

           v_string+8(1) EQ 'D' OR

           v_string+8(2) EQ 'JC'.

* << Fim da exclusão

* >> Início da inclusão:

           v_string+11(1) EQ 'D' OR

           v_string+11(2) EQ 'JC'.

* << Fim da inclusão

          CLEAR itab_despesas.

          MOVE v_string TO itab_despesas.

          APPEND itab_despesas.

        ELSEIF sy-subrc NE 0.

          SELECT SINGLE * FROM /pws/zycbt005

            INTO wa_zycbt005

* >> Início da exclusão:

            WHERE nrseqc   = record_tab+0(8)   AND

                  nrparc   = record_tab+11(3)  AND

                  dtvincul = record_tab+18(8)  AND

                  nrinvoic = record_tab+61(10) AND

                  gsberf   = record_tab+91(4).

* << Fim da exclusão

* >> Início da inclusão:

            WHERE nrseqc   = record_tab+3(8)   AND

                  nrparc   = record_tab+14(3)  AND

                  dtvincul = record_tab+21(8)  AND

                  nrinvoic = record_tab+52(10) AND

                  gsberf   = record_tab+100(4).

* << Fim da inclusão

          IF sy-subrc EQ 0 AND NOT

             wa_zycbt005-dtcredext IS INITIAL.

            CLEAR itab_despesas.

            MOVE v_string TO itab_despesas.

            APPEND itab_despesas.

            ENDIF.

        ENDIF.

      ELSE.

        CLEAR itab_despesas.

* >> Início da exclusão:

        IF v_string+99(8) = '00000000'.

          v_string+99(8) = '        '.

* << Fim da exclusão

* >> Início da inclusão:

        IF v_string+92(8) = '00000000'.

          v_string+92(8) = '        '.

* << Fim da inclusão

        ENDIF.

        MOVE v_string TO itab_despesas.

        APPEND itab_despesas.

      ENDIF.

    ENDIF.

...

 

 

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

Modificações efetuadas em SHLD /PWS/ZYCBA016

 

MODIFICAR AJUDA DE PESQUISA: /PWS/ZYCBA016

DESCRIÇÃO BREVE: CB - Parcelas de Despesas

 

PARÂMETROS:

 

 

PARAM.    IMP EXP POSL ISEL EXAJ ELEM. DADOS  MOD  VALOR PROPOSTO

 

De:

BUKRS         X      12   12      BUKRS

DTVENCTO      X       4    4      /PWS/ZYCBL034

NRPARC        X       3    3      /PWS/ZYCBL047

NRSEQC        X       1    1      /PWS/ZYCBL019

TPDESP        X       2    2      /PWS/ZYCBL014

TPJUROS       X      15   15      /PWS/ZYCBL451

VLIR                              /PWS/ZYCBL258

BCONEGOC      X       9    9      /PWS/ZYCBL021

DTINCL        X      11   11      /PWS/ZYCBL033

DTLIQUID      X      13   13      /PWS/ZYCBL036

GSBERF        X      14   14      GSBER

NRCONTR       X      10   10      /PWS/ZYCBL020

NRINVOIC      X       7    7      /PWS/ZYCBL084

NRPARCF       X       8    8      RATNR

VLME                  6    6      WRBTR

WAERS         X       5    5      WAERS

 

Para:

NRSEQC        X       1    1      /PWS/ZYCBL019

TPDESP        X       2    2      /PWS/ZYCBL014

NRPARC        X       3    3      /PWS/ZYCBL047

TPJUROS       X      13   13      /PWS/ZYCBL451

BUKRS         X      10   10      BUKRS

DTVENCTO      X       4    4      /PWS/ZYCBL034

NRCONTR       X       8    8      /PWS/ZYCBL020

NRINVOIC      X       5    5      /PWS/ZYCBL084

NRPARCF       X       6    6      RATNR

BCONEGOC      X       7    7      /PWS/ZYCBL021

DTINCL        X       9    9      /PWS/ZYCBL033

DTLIQUID      X      11   11      /PWS/ZYCBL036

GSBERF        X      12   12      GSBER

WAERS         X      15   15      WAERS

VLME                 14   14      WRBTR

VLIR                              /PWS/ZYCBL258

 

 

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

Modificações efetuadas em VIED /PWS/ZYCBV044

 

MODIFICAR VISAO : /PWS/ZYCBV044

DESCRIÇÃO BREVE: CB - Cadastro de Faturas com Nome Cliente

 

CAMPO VISÃO:     NOME TAB:    NOME CAMPO:     MOD:

 

De:

 

MANDT      /PWS/ZYCBT004 MANDT          MANDT

NRSEQC     /PWS/ZYCBT004 NRSEQC         /PWS/ZYCBL019

TPDESP     /PWS/ZYCBT004 TPDESP         /PWS/ZYCBL014

NRPARC     /PWS/ZYCBT004 NRPARC         /PWS/ZYCBL047

BUKRS      /PWS/ZYCBT004 BUKRS          BUKRS

DTINCL     /PWS/ZYCBT004 DTINCL         /PWS/ZYCBL033

NRCONTR    /PWS/ZYCBT004 NRCONTR        /PWS/ZYCBL020

WAERS      /PWS/ZYCBT004 WAERS          WAERS

VLME       /PWS/ZYCBT004 VLME           WRBTR

DTVENCTO   /PWS/ZYCBT004 DTVENCTO       /PWS/ZYCBL034

NRINVOIC   /PWS/ZYCBT005 NRINVOIC       /PWS/ZYCBL084

NRPARCF    /PWS/ZYCBT005 NRPARCF        RATNR

BELNR      /PWS/ZYCBT004 BELNR          BELNR_D

DTPAGTO    /PWS/ZYCBT004 DTPAGTO        /PWS/ZYCBL036

DTLIQUID   /PWS/ZYCBT004 DTLIQUID       /PWS/ZYCBL036

GSBERF     /PWS/ZYCBT004 GSBERF         GSBER

BCONEGOC   /PWS/ZYCBT005 BCONEGOC       /PWS/ZYCBL021

DTVINCUL   /PWS/ZYCBT005 DTVINCUL       /PWS/ZYCBL035

VLIR       /PWS/ZYCBT004 VLIR           /PWS/ZYCBL258

TPJUROS    /PWS/ZYCBT004 TPJUROS        /PWS/ZYCBL451

 

Para:

 

MANDT      /PWS/ZYCBT004 MANDT          MANDT

NRSEQC     /PWS/ZYCBT004 NRSEQC         /PWS/ZYCBL019

TPDESP     /PWS/ZYCBT004 TPDESP         /PWS/ZYCBL014

NRPARC     /PWS/ZYCBT004 NRPARC         /PWS/ZYCBL047

BUKRS      /PWS/ZYCBT004 BUKRS          BUKRS

DTINCL     /PWS/ZYCBT004 DTINCL         /PWS/ZYCBL033

NRCONTR    /PWS/ZYCBT004 NRCONTR        /PWS/ZYCBL020

DTVENCTO   /PWS/ZYCBT004 DTVENCTO       /PWS/ZYCBL034

NRINVOIC   /PWS/ZYCBT005 NRINVOIC       /PWS/ZYCBL084

NRPARCF    /PWS/ZYCBT005 NRPARCF        RATNR

BELNR      /PWS/ZYCBT004 BELNR          BELNR_D

DTPAGTO    /PWS/ZYCBT004 DTPAGTO        /PWS/ZYCBL036

DTLIQUID   /PWS/ZYCBT004 DTLIQUID       /PWS/ZYCBL036

GSBERF     /PWS/ZYCBT004 GSBERF         GSBER

BCONEGOC   /PWS/ZYCBT005 BCONEGOC       /PWS/ZYCBL021

DTVINCUL   /PWS/ZYCBT005 DTVINCUL       /PWS/ZYCBL035

TPJUROS    /PWS/ZYCBT004 TPJUROS        /PWS/ZYCBL451

WAERS      /PWS/ZYCBT004 WAERS          WAERS

VLME       /PWS/ZYCBT004 VLME           WRBTR

VLIR       /PWS/ZYCBT004 VLIR           /PWS/ZYCBL258