CE PLUS - Nota 006267

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Captação

Data/Hora da Publicação: 27/03/2008 00:00:00

Data/Hora Última Alteração: 22/02/2011 12:52:21

Descrição da Nota: CAPTAÇÃO HISTÓRICO CONT.SLD A PAGAR E DOC LIQ ATUALIZAM C/STATUS C T006

Sintoma

Erro na exbição do Histórico Contábil

 

 

Solução

Ajustar funções e report para exibição dos dados corretamente

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

AJUSTE NA IMPRESSÃO DO HISTÓRICO CONTÁBIL

Informações Complementares

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

Nota Número 06267 Data: 27/03/2008 Hora: 09:19:32

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

 

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

Nota Número              : 06267

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00005

Agrupamento              : 00040

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

Referência às notas relacionadas:

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

 

00865  - 00001 - 6.0    - 00022  - AJUSTE NA IMPRESSÃO DO HISTÓRICO CONTÁBIL

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

CAPTAÇÃO HISTÓRICO CONT.SLD A PAGAR E DOC LIQ ATUALIZAM C/STATUS C T006

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

Palavras Chave:

CAPTAÇÃO HISTÓRICO CONT.SLD A PAGAR E DOC LIQ ATUALIZAM C/STATUS C T006

 

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

Objetos da nota:

FUNC /PWS/ZYCB_TRANSACAO_F_30_P

FUNC /PWS/ZYCB_TRANSACAO_F_30_W

REPS /PWS/ZYCBR059

 

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

Modificações efetuadas em FUNC /PWS/ZYCB_TRANSACAO_F_30_P

 

...

              date                = t_dados-budat

              version             = v_periv

         IMPORTING

              period              = v_monat

         EXCEPTIONS

              period_in_not_valid = 1

              period_not_assigned = 2

              version_undefined   = 3

              OTHERS              = 4.

    v_gjahr = v_date.

* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

 WHILE v_ok EQ 'N'.

* << Fim da inclusão

    PERFORM check_periodo USING    '+'

                                   v_monat

                                   v_bukrs

                                   v_gjahr

                          CHANGING v_budat

                                   v_ok.

* >> Início da exclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

    MOVE v_date TO v_gjahr.

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

    MOVE v_budat+6(4) TO v_gjahr.

    MOVE v_budat+3(2) TO v_monat.

 ENDWHILE.

* << Fim da inclusão

    MOVE v_monat+1(2) TO v_periodo.

    PERFORM bdc_screen USING 'SAPMF05A' '0122'.

    PERFORM bdc_field USING:

            'BKPF-BLDAT'     v_bldat,

            'BKPF-BLART'     t_dados-blart,

            'BKPF-BUKRS'     t_dados-bukrs,

            'BKPF-BUDAT'     v_budat,

            'BKPF-WAERS'     t_dados-waers,

            'BKPF-KURSF'     v_kursf,

            'BKPF-BKTXT'     t_dados-bktxt,

...

 

 

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

Modificações efetuadas em FUNC /PWS/ZYCB_TRANSACAO_F_30_W

 

...

              date                = t_dados-budat

              version             = v_periv

         IMPORTING

              period              = v_monat

         EXCEPTIONS

              period_in_not_valid = 1

              period_not_assigned = 2

              version_undefined   = 3

              OTHERS              = 4.

    v_gjahr = v_date.

* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_W

 WHILE v_ok EQ 'N'.

* << Fim da inclusão

    PERFORM check_periodo USING    '+'

                                   v_monat

                                   t_dados-bukrs

                                   v_gjahr

                          CHANGING v_budat

                                   v_ok.

* >> Início da exclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_W

    MOVE v_date TO v_gjahr.

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_W

    MOVE v_budat+6(4) TO v_gjahr.

    MOVE v_budat+3(2) TO v_monat.

 ENDWHILE.

* << Fim da inclusão

    MOVE v_monat+1(2) TO v_periodo.

    WRITE t_dados-budat TO v_dtdocto.

    IF v_budat NE v_dtdocto.

      SELECT SINGLE datfm FROM usr01 INTO usr01-datfm

                    WHERE bname = sy-uname.

      IF usr01-datfm = 1 OR sy-subrc NE 0.

        CONCATENATE v_budat+6(4) v_budat+3(2) v_budat(2)

                    INTO v_dtlanc.

      ELSE.

        CONCATENATE v_budat+6(4) v_budat(2) v_budat+3(2)

...

 

 

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

Modificações efetuadas em REPS /PWS/ZYCBR059

 

...

  CALL FUNCTION '/PWS/ZYCB_DIA_DA_SEMANA'

       EXPORTING

            datum         = sy-datum

       IMPORTING

            dia_da_semana = v_dia_sem

       EXCEPTIONS

            OTHERS        = 0.

ENDFORM.

FORM seleciona_dados.

  DATA: nrseqc LIKE /pws/zycbt001-nrseqc,

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

        v_liq  TYPE /pws/zycbt084-belnr.

* << Fim da exclusão

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

        v_liq  TYPE /pws/zycbt084-belnr,

        v_slapagar LIKE /pws/zycbt001-slpagar.

* << Fim da inclusão

  GET PARAMETER ID '/PWS/ZYCBP019' FIELD nrseqc.

  IF sy-subrc NE 0.

    MESSAGE i015 WITH text-051 text-052.

    LEAVE LIST-PROCESSING.

  ENDIF.

  SELECT * FROM /pws/zycbt001

          INTO TABLE itab_zycbt001

          WHERE nrseqc = nrseqc.

  IF sy-subrc NE 0.

    MESSAGE i015 WITH text-032.

...

 

...

            FOR ALL ENTRIES IN itab_zycbt005

            WHERE nrseqc   EQ  itab_zycbt005-nrseqc

            AND   tpdesp   EQ  itab_zycbt005-tpdesp

            AND   nrparc   EQ  itab_zycbt005-nrparc

            AND   dtincl   EQ  itab_zycbt005-dtincl

            AND   nrinvoic EQ  itab_zycbt005-nrinvoic

            AND   nrparcf  EQ  itab_zycbt005-nrparcf

            AND   gsberf   EQ  itab_zycbt005-gsberf

            AND   dtvencto EQ  itab_zycbt005-dtvencto

            AND   dtvincul EQ  itab_zycbt005-dtvincul.

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

    CLEAR v_slapagar.

* << Fim da inclusão

    LOOP AT itab_zycbt006.

      READ TABLE itab_zycbt005 WITH KEY nrseqc  = itab_zycbt006-nrseqc

                                       nrparc   = itab_zycbt006-nrparc

                                     nrinvoic = itab_zycbt006-nrinvoic

                                       dtincl   = itab_zycbt006-dtincl

                                       tpdesp   = itab_zycbt006-tpdesp

                                    dtvincul  = itab_zycbt006-dtvincul

                                    dtvencto  = itab_zycbt006-dtvencto.

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

     IF itab_zycbt006-status EQ 'C'.

* << Fim da inclusão

      IF itab_zycbt005-waers NE itab_zycbt005-waers_c.

        READ TABLE itab_zycbt001 WITH KEY nrseqc = itab_zycbt005-nrseqc.

        IF itab_zycbt001-tpcontr = 'DP'.

          v_vlliq = v_vlliq + itab_zycbt005-vlvinc.

        ELSE.

          v_vlliq = v_vlliq +

                        ( itab_zycbt006-vlme * itab_zycbt005-parid ).

        ENDIF.

      ELSE.

        v_vlliq = v_vlliq +

                       ( itab_zycbt006-vlme * itab_zycbt005-parid ).

      ENDIF.

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

     ELSEIF itab_zycbt006-status EQ 'I'.

          v_slapagar = v_slapagar + itab_zycbt006-vlme.

     ENDIF.

* << Fim da inclusão

    ENDLOOP.

    CLEAR v_vlvinc.

    LOOP AT itab_zycbt005.

      v_vlvinc = v_vlvinc + itab_zycbt005-vlvinc.

    ENDLOOP.

    SELECT * FROM /pws/zycbt084

             INTO TABLE itab_zycbt084

             FOR ALL ENTRIES IN itab_zycbt005

             WHERE nrseqc   EQ itab_zycbt005-nrseqc

             AND   nrinvoic EQ itab_zycbt005-nrinvoic

...

 

...

    CLEAR v_slavinc.

    v_slavinc = itab_zycbt001-slvinc.

    MOVE:

          itab_zycbt001-nrcontr  TO   itab_cabecalho-nrcontr,

          itab_zycbt001-waers    TO   itab_cabecalho-waers,

          itab_zycbt001-waers    TO   v_moeda_contrato,

          itab_zycbt001-nrseqc   TO   itab_cabecalho-nrseqc,

          itab_zycbt001-vlme     TO   itab_cabecalho-vlme,

          v_vlvinc               TO   itab_cabecalho-vlvinc,

          v_vlliq                TO   itab_cabecalho-vlliq,

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

          v_slavinc              TO   itab_cabecalho-slavinc,

          itab_zycbt001-slpagar  TO   itab_cabecalho-slapagar,

* << Fim da exclusão

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

          v_slavinc              TO   itab_cabecalho-slavinc.

          IF NOT itab_zycbt001-slpagar IS INITIAL.

            MOVE itab_zycbt001-slpagar  TO   itab_cabecalho-slapagar.

          ELSE.

            MOVE v_slapagar           TO  itab_cabecalho-slapagar.

          ENDIF.

          MOVE:

* << Fim da inclusão

          itab_zycbt001-belnr    TO   itab_cabecalho-belnr.

    APPEND itab_cabecalho.

    LOOP AT itab_zycbt004_desp

            WHERE nrseqc   = itab_zycbt001-nrseqc   AND

                  tpdesp   NE 'J'                   AND

                  tpdesp   NE 'D'.

      MOVE: itab_zycbt004_desp-nrinvoic  TO itab_despesa-nrinvoic,

            itab_zycbt004_desp-nrparcf   TO itab_despesa-nrparcf,

            itab_zycbt004_desp-gsberf    TO itab_despesa-gsberf,

            itab_zycbt004_desp-tpdesp    TO itab_despesa-tpdesp,

...

 

...

    IF v_belnr_liq IS INITIAL.

      WRITE:

        (01) '|' NO-GAP, (010) text-009 CENTERED NO-GAP.

    ENDIF.

    IF v_belnr_cli_ace IS INITIAL.

      WRITE:

      (01) '|' NO-GAP, (010) text-065 CENTERED NO-GAP.

    ENDIF.

    IF NOT v_belnr_liq IS INITIAL.

      IF itab_zycbt006-tpcontr = 'C' OR itab_zycbt006-tpcontr = 'DP'.

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

       IF itab_zycbt006-status = 'C'.

* << Fim da inclusão

        WRITE:

         (01) '|' NO-GAP, (010) text-009 CENTERED NO-GAP.

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

       ENDIF.

* << Fim da inclusão

      ELSE.

        IF /pws/zycbt089-est_variacao IS INITIAL.

          WRITE:

           (01) '|' NO-GAP, (010) text-009 CENTERED NO-GAP.

        ENDIF.

...

 

...

    IF v_belnr_liq IS INITIAL.

      WRITE:

        (01) '|' NO-GAP, (010) text-071 CENTERED NO-GAP.

    ENDIF.

    IF v_belnr_cli_ace IS INITIAL.

      WRITE:

      (01) '|' NO-GAP, (010) text-017 CENTERED NO-GAP.

    ENDIF.

    IF NOT v_belnr_liq IS INITIAL.

      IF itab_zycbt006-tpcontr = 'C' OR itab_zycbt006-tpcontr = 'DP'.

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

       IF itab_zycbt006-status = 'C'.

* << Fim da inclusão

        WRITE:

         (01) '|' NO-GAP, (010) text-071 CENTERED NO-GAP.

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

       ENDIF.

* << Fim da inclusão

      ELSE.

        IF /pws/zycbt089-est_variacao IS INITIAL.

          WRITE:

           (01) '|' NO-GAP, (010) text-071 CENTERED NO-GAP.

        ENDIF.

...

 

...

                           COL_HEADING INVERSE HOTSPOT NO-GAP.

      ENDIF.

    ENDIF.

    IF v_belnr_cli_ace IS INITIAL.

      WRITE:

       (01) '|' NO-GAP, (010) itab_dados-belnr_cli_ace CENTERED COLOR

                              COL_HEADING INVERSE HOTSPOT NO-GAP.

    ENDIF.

    IF NOT v_belnr_liq IS INITIAL.

      IF itab_zycbt006-tpcontr = 'C' OR itab_zycbt006-tpcontr = 'DP'.

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

       IF itab_zycbt006-status = 'C'.

* << Fim da inclusão

        WRITE:

         (01) '|' NO-GAP, (010) itab_dados-belnr5 CENTERED COLOR

                                COL_HEADING INVERSE HOTSPOT NO-GAP.

        itab_dados-belnr_liq = itab_dados-belnr5.

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

       ENDIF.

* << Fim da inclusão

      ELSE.

        IF /pws/zycbt089-est_variacao IS INITIAL.

          WRITE:

...

 

...

  ENDLOOP.

  IF sy-subrc NE 0.

    v_belnr_perf = 'X'.

  ENDIF.

  LOOP AT itab_dados WHERE belnr_liq NE space        AND

                           belnr_liq NE '          ' AND

                           belnr_liq NE '0000000000'.

    v_colunas = v_colunas + 39.

    EXIT.

  ENDLOOP.

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

  IF sy-subrc NE 0.

    v_belnr_liq = 'X'.

  ENDIF.

* << Fim da exclusão

  IF sy-subrc NE 0.

    v_belnr_liq = 'X'.

  ENDIF.

  IF NOT v_belnr_liq IS INITIAL.

    IF itab_zycbt006-tpcontr = 'C'.

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

       IF itab_zycbt006-status = 'C'.

* << Fim da inclusão

      v_colunas = v_colunas + 11.

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

       ENDIF.

* << Fim da inclusão

    ELSE.

      IF /pws/zycbt089-est_variacao IS INITIAL.

        v_colunas = v_colunas + 11.

      ENDIF.

      IF itab_zycbt006-tpcontr = 'DP'.

        v_colunas = v_colunas + 11.

      ENDIF.

    ENDIF.

  ENDIF.

  LOOP AT itab_dados WHERE belnr_desm_cc NE space        AND

...