CE PLUS - Nota 001927

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Nota Fiscal

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

Data/Hora Última Alteração: 20/06/2011 12:39:59

Descrição da Nota: PROGRAMA DE NF ESTÁ CONSUMINDO MUITA MEMÓRIA. PROBLEMAS DE PERFORMANCE.

Sintoma

Analisada a performance da transação /PWS/ZYCI016_C, de Nota fiscal e constatada que consumindo

muita memória.

 

 

 

Solução

Feito tratamento em vários pontos do programa da NF visando deixá-lo mais rápido.

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

1 - O EMBARQUE POSSUI DOIS ITENS, UM COM ICMS DIFERIDO E OUTRO DRAWBACK

Informações Complementares

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

Nota Número 01927 Data: 14/08/2006 Hora: 14:21:34

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

 

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

Nota Número              : 01927

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00024

Agrupamento              : 00127

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

Referência às notas relacionadas:

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

 

01182  - 00001 - 6.0    - 00023  - 1 - O EMBARQUE POSSUI DOIS ITENS, UM COM ICMS DIFERIDO E OUTRO DR

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

PROGRAMA DE NF ESTÁ CONSUMINDO MUITA MEMÓRIA. PROBLEMAS DE PERFORMANCE.

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

Palavras Chave:

PERFORMANCE - MEMÓRIA - NOTA FISCAL.

 

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

Objetos da nota:

REPS /PWS/MZYCI016F01

REPS /PWS/MZYCI016I01

REPS /PWS/MZYCI016TOP

 

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

Modificações efetuadas em REPS /PWS/MZYCI016F01

 

...

  MOVE-CORRESPONDING itab_zycit042 TO /pws/zycie042.

  IMPORT /pws/zycie001-embarca FROM MEMORY ID '0001'.

  IF NOT /pws/zycie001-embarca IS INITIAL.

    /pws/zycie042-embarca = /pws/zycie001-embarca.

  ENDIF.

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

  IF NOT itab_zycit042[] IS INITIAL AND

* << Fim da inclusão

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

  CLEAR:   itab_matuse_aux.

  REFRESH: itab_matuse_aux.

  IF NOT itab_zycit042[] IS INITIAL.

* << Fim da exclusão

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

     itab_matuse_aux[] IS INITIAL.

* << Fim da inclusão

    SELECT ebeln ebelp matnr FROM ekpo

           INTO TABLE itab_matuse_aux

           FOR ALL ENTRIES IN itab_zycit042

           WHERE ebeln EQ itab_zycit042-ebeln

             AND ebelp EQ itab_zycit042-ebelp.

...

 

...

  READ TABLE itab_matuse_aux WITH KEY ebeln = itab_zycit042-ebeln

                                      ebelp = itab_zycit042-ebelp.

  IF sy-subrc EQ 0.

    MOVE: itab_matuse_aux-matnr TO /pws/zycie042-matnr.

  ENDIF.

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

  IF NOT itab_zycit042-docnum IS INITIAL AND

         itab_zycit042-nfnum IS INITIAL  AND

         itab_zycit042-series IS INITIAL.

* << Fim da inclusão

  SELECT SINGLE * FROM j_1bnfdoc

    WHERE docnum = itab_zycit042-docnum.

  IF sy-subrc EQ 0.

    /pws/zycie042-nfnum  = j_1bnfdoc-nfnum.

    /pws/zycie042-series = j_1bnfdoc-series.

...

 

...

    WHERE nrseq    = /pws/zycie042-nrseq AND

          nrseqnf  = /pws/zycie042-nrseqnf AND

          ebeln    = /pws/zycie042-ebeln AND

          ebelp    = /pws/zycie042-ebelp AND

          nfglobal = /pws/zycie042-nfglobal.

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

    ENDIF.

* << Fim da inclusão

  ENDIF.

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

  IF v_embarca IS INITIAL.

* << Fim da inclusão

  SELECT SINGLE embarca FROM /pws/zycit001

...

 

...

                WHERE nrseq EQ /pws/zycie042-nrseq.

  IF v_embarca EQ /pws/zycie001-embarca.

    UPDATE /pws/zycit042 SET embarca = /pws/zycie042-embarca

                    WHERE nrseq = /pws/zycie042-nrseq.

  ENDIF.

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

  ENDIF.

* << Fim da inclusão

ENDFORM.

FORM seleciona_itens_nfg.

  DATA: v_nolin TYPE i VALUE IS INITIAL,

        wa_zycit042 LIKE /pws/zycit042 ,

        v_ternacion LIKE /pws/zycit093-ternacion,

        v_ntgew_tot LIKE itab_zycit003-ntgew.

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

  IF t001 IS INITIAL OR /pws/zycit000 IS INITIAL.

* << Fim da inclusão

  SELECT SINGLE * FROM t001 WHERE bukrs = /pws/zycie041-bukrs.

  SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.

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

  ENDIF.

* << Fim da inclusão

  CLEAR v_graneis.

  FREE: itab_zycit003.

  IF NOT itab_zycit100[] IS INITIAL.

    SELECT a~nrseq a~ebeln a~ebelp a~netpr a~vlreal

           a~qtd_iten a~ntgew a~nrseq_pgfat a~waers a~tpnf

...

 

...

  ENDLOOP.

  DESCRIBE TABLE itab_zycit003 LINES v_nolin.

  IF v_nolin IS INITIAL.

    MESSAGE w015 WITH text-003.

  ELSE.

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

    IF /pws/zycit001-waers   IS INITIAL AND

    /pws/zycit001-meioemba   IS INITIAL AND

    /pws/zycit001-inco1      IS INITIAL AND

    /pws/zycit001-embarca    IS INITIAL AND

    /pws/zycit001-j_1bbranch IS INITIAL.

* << Fim da inclusão

    READ TABLE itab_zycit003 INDEX 1.

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

    SELECT SINGLE waers meioemba inco1 FROM /pws/zycit001 INTO

* << Fim da exclusão

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

      SELECT SINGLE waers meioemba inco1 embarca j_1bbranch

            FROM /pws/zycit001 INTO

* << Fim da inclusão

        (/pws/zycit001-waers, /pws/zycit001-meioemba,

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

        /pws/zycit001-inco1)

* << Fim da exclusão

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

          /pws/zycit001-inco1, /pws/zycit001-embarca,

                        /pws/zycit001-j_1bbranch)

* << Fim da inclusão

      WHERE nrseq = itab_zycit003-nrseq.

  ENDIF.

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

  ENDIF.

* << Fim da inclusão

  CLEAR v_ntgew_tot.

  LOOP AT itab_zycit003.

    v_ntgew_tot = v_ntgew_tot + itab_zycit003-ntgew.

  ENDLOOP.

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

  SELECT SINGLE * FROM /pws/zycit062

   WHERE regio = adrc-region.

* << Fim da inclusão

  LOOP AT itab_zycit003.

    READ TABLE itab_zycit042 WITH KEY nrseq = itab_zycit003-nrseq

                                      ebeln = itab_zycit003-ebeln

                                      ebelp = itab_zycit003-ebelp.

    MOVE-CORRESPONDING itab_zycit003 TO itab_zycit042.

    IF sy-subrc NE 0.

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

      SELECT SINGLE embarca j_1bbranch  FROM /pws/zycit001 INTO

        CORRESPONDING FIELDS OF itab_zycit042

        WHERE nrseq = itab_zycit003-nrseq.

* << Fim da exclusão

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

      itab_zycit042-embarca = /pws/zycit001-embarca.

      itab_zycit042-j_1bbranch = /pws/zycit001-j_1bbranch.

* << Fim da inclusão

      itab_zycit042-nrseqnf = /pws/zycie041-nrseq.

      IF NOT itab_zycit003-waers IS INITIAL.

      ENDIF.

      IF NOT itab_zycit003-qtd_itend IS INITIAL.

        MOVE itab_zycit003-qtd_itend TO itab_zycit042-qtd_iten.

...

 

...

          ENDIF.

        ENDIF.

        READ TABLE itab_zycit100 WITH KEY nrseq = itab_zycit003-nrseq

                                          ebeln = itab_zycit003-ebeln

                                          ebelp = itab_zycit003-ebelp.

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

        IF /pws/zycit031 IS INITIAL.

* << Fim da inclusão

        SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie041-bukrs.

        SELECT SINGLE * FROM /pws/zycit031

          WHERE inco1 = /pws/zycit001-inco1

            AND land1 EQ t001-land1.

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

        ENDIF.

* << Fim da inclusão

        IF /pws/zycit093 IS INITIAL.

          SELECT SINGLE * FROM /pws/zycit093

            WHERE nrseqce = /pws/zycit085-nrbl.

        ENDIF.

        IF /pws/zycit031-inco1_ci = 'C&F' AND

...

 

...

          ENDIF.

        ENDIF.

      ELSE.

        MOVE wa_zycit042 TO itab_zycit042.

      ENDIF.

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

      SELECT SINGLE * FROM /pws/zycit062

       WHERE regio = adrc-region.

* << Fim da exclusão

      IF sy-subrc = 0 AND /pws/zycit062-flag_icms = 'X'.

        PERFORM atualiza_icms_unitario.

      ENDIF.

      IF /pws/zycit041-nrseq IS INITIAL.

        /pws/zycit041-nrseq = /pws/zycie041-nrseq.

...

 

...

    SELECT * FROM t001w INTO TABLE itab_t001w

      FOR ALL ENTRIES IN itab_zycit042

      WHERE werks = itab_zycit042-werks.

  ENDIF.

  SORT itab_zycit042     BY tpnf j_1bbranch lifnr nrseq ebeln ebelp.

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

  REFRESH: itab_zycit053_s.

* << Fim da inclusão

  LOOP AT itab_zycit042 WHERE mark = 'X'.

    CLEAR v_lifnr.

    SELECT SINGLE modalidade FROM /pws/zycit001 INTO v_modalidade

      WHERE nrseq = itab_zycit042-nrseq.

    IF itab_zycit042[] IS INITIAL.

...

 

...

                            WHERE nrseq = /pws/zycie041-nrseq AND

                                nfglobal = /pws/zycie041-nfglobal AND

                                  cancel = space.

                        ENDIF.

                        v_status_s = 0.

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

                        COMMIT WORK.

* << Fim da exclusão

                      ENDIF.

                      IF v_modalidade NE '99' OR

                     ( t001-land1 NE 'AR' AND t001-land1 NE 'CL' AND

                        v_modalidade NE '99' ) OR

                       ( v_modalidade = '99' AND

...

 

...

          ENDIF.

        ENDIF.

      ENDLOOP.

    ENDIF.

  ENDLOOP.

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

  MODIFY /pws/zycit053 FROM TABLE itab_zycit053_s.

  COMMIT WORK.

* << Fim da inclusão

 IF v_modalidade = '99' OR ( t001-land1 EQ 'AR' OR t001-land1 EQ 'CL' ).

    LOOP AT itab_zycit042 WHERE docnum IS initial OR

                                docnum = '9999999999' OR

                                docnum = '8888888888'.

    ENDLOOP.

...

 

...

    v_vldp    LIKE /pws/zycit049-vldp,

    v_totitem LIKE /pws/zycit042-netpr,

    v_tot_vldp LIKE /pws/zycit049-vldp,

    v_tot_ntgew LIKE /pws/zycit003-ntgew.

  PERFORM verifica_filial.

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

  IF t001 IS INITIAL OR /pws/zycit000 IS INITIAL.

* << Fim da inclusão

  SELECT SINGLE * FROM t001 WHERE bukrs = /pws/zycie041-bukrs.

  SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.

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

  ENDIF.

* << Fim da inclusão

  LOOP AT itab_zycit042.

    CLEAR: itab_zycit042-vldp, itab_zycit042-vldpii.

    MODIFY itab_zycit042.

  ENDLOOP.

  MOVE itab_zycit042[] TO itab_zycit042_d[].

...

 

...

        v_cod_sisc LIKE /pws/zycit019-codigo,

        v_tot_ntgew LIKE /pws/zycit003-ntgew,

        v_tot_plan LIKE /pws/zycit003-netpr,

        v_tot_real LIKE /pws/zycit003-vlreal,

        v_lines LIKE sy-tabix.

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

  DATA: itab_zycit036_s TYPE /pws/zycit036 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

  CLEAR: itab_zycit036, itab_zycit049, itab_zycit019, itab_zycit020.

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

  REFRESH: itab_zycit049aux, itab_zycit036aux.

* << Fim da exclusão

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

  REFRESH: itab_zycit049aux, itab_zycit036aux, itab_zycit036_s.

* << Fim da inclusão

  IF /pws/zycbt007-waersb IS INITIAL.

    SELECT SINGLE * FROM /pws/zycbt007

                 WHERE bukrs EQ /pws/zycie041-bukrs.

  ENDIF.

  SELECT SINGLE land1

...

 

 

 

...

 

    ENDIF.

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

    MODIFY /pws/zycit036 FROM itab_zycit036.

* << Fim da exclusão

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

    APPEND itab_zycit036 TO itab_zycit036_s.

* << Fim da inclusão

  ENDLOOP.

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

  MODIFY /pws/zycit036 FROM TABLE itab_zycit036_s.

* << Fim da inclusão

  itab_zycit036-nrseqori = itab_zycit042-docnum.

...

 

...

            ENDIF.

          ENDIF.

        ELSE.

          /pws/zycit053-vlreal = itab_zycit036aux-vlmov.

        ENDIF.

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

        MODIFY /pws/zycit053.

* << Fim da exclusão

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

        READ TABLE itab_zycit053_s WITH KEY

                                        nrseqnf  = /pws/zycit053-nrseqnf

                                        nrseq    = /pws/zycit053-nrseq

                                      nfglobal = /pws/zycit053-nfglobal

                                        ebeln    = /pws/zycit053-ebeln

                                        ebelp    = /pws/zycit053-ebelp

                                        codigo   = /pws/zycit053-codigo.

        IF sy-subrc NE 0 .

          APPEND /pws/zycit053 TO itab_zycit053_s.

        ELSE.

          MOVE /pws/zycit053 TO itab_zycit053_s.

          MODIFY itab_zycit053_s TRANSPORTING

                  bukrs werks vlreal waers_real vlcompl waers_compl

                           WHERE nrseqnf  = /pws/zycit053-nrseqnf

                             AND nrseq    = /pws/zycit053-nrseq

                             AND nfglobal = /pws/zycit053-nfglobal

                             AND ebeln    = /pws/zycit053-ebeln

                             AND ebelp    = /pws/zycit053-ebelp

                             AND codigo   = /pws/zycit053-codigo.

        ENDIF.

* << Fim da inclusão

      ENDIF.

    ELSE.

      CLEAR /pws/zycit053-vlreal.

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

      MODIFY /pws/zycit053.

* << Fim da exclusão

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

      READ TABLE itab_zycit053_s WITH KEY

                                      nrseqnf  = /pws/zycit053-nrseqnf

                                      nrseq    = /pws/zycit053-nrseq

                                    nfglobal = /pws/zycit053-nfglobal

                                      ebeln    = /pws/zycit053-ebeln

                                      ebelp    = /pws/zycit053-ebelp

                                      codigo   = /pws/zycit053-codigo.

      IF sy-subrc NE 0 .

        APPEND /pws/zycit053 TO itab_zycit053_s.

      ELSE.

        MOVE /pws/zycit053 TO itab_zycit053_s.

        MODIFY itab_zycit053_s TRANSPORTING

                bukrs werks vlreal waers_real vlcompl waers_compl

                         WHERE nrseqnf  = /pws/zycit053-nrseqnf

                           AND nrseq    = /pws/zycit053-nrseq

                           AND nfglobal = /pws/zycit053-nfglobal

                           AND ebeln    = /pws/zycit053-ebeln

                           AND ebelp    = /pws/zycit053-ebelp

                           AND codigo   = /pws/zycit053-codigo.

* << Fim da inclusão

    ENDIF.

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

    ENDIF.

* << Fim da inclusão

  ENDLOOP.

...

 

...

              / v_tot_real * itab_zycit049aux-vldp.

              v_total_dp = v_total_dp + /pws/zycit053-vlreal.

            ENDIF.

          ENDIF.

        ENDIF.

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

        MODIFY /pws/zycit053.

* << Fim da exclusão

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

        READ TABLE itab_zycit053_s WITH KEY

                                        nrseqnf  = /pws/zycit053-nrseqnf

                                        nrseq    = /pws/zycit053-nrseq

                                      nfglobal = /pws/zycit053-nfglobal

                                        ebeln    = /pws/zycit053-ebeln

                                        ebelp    = /pws/zycit053-ebelp

                                        codigo   = /pws/zycit053-codigo.

        IF sy-subrc NE 0 .

          APPEND /pws/zycit053 TO itab_zycit053_s.

        ELSE.

          MOVE /pws/zycit053 TO itab_zycit053_s.

          MODIFY itab_zycit053_s TRANSPORTING

                  bukrs werks vlreal waers_real vlcompl waers_compl

                           WHERE nrseqnf  = /pws/zycit053-nrseqnf

                             AND nrseq    = /pws/zycit053-nrseq

                             AND nfglobal = /pws/zycit053-nfglobal

                             AND ebeln    = /pws/zycit053-ebeln

                             AND ebelp    = /pws/zycit053-ebelp

                             AND codigo   = /pws/zycit053-codigo.

        ENDIF.

* << Fim da inclusão

      ENDLOOP.

    ENDIF.

  ENDLOOP.

  IF NOT /pws/zycit000-flag_txsisc IS INITIAL.

    DESCRIBE TABLE itab_zycit116 LINES v_line.

...

 

...

        /pws/zycit053-bukrs       = /pws/zycie041-bukrs.

        /pws/zycit053-werks       = /pws/zycie041-werks.

        /pws/zycit053-ebeln       = itab_zycit003-ebeln.

        /pws/zycit053-ebelp       = itab_zycit003-ebelp.

        /pws/zycit053-vlreal      = itab_zycit100-vl_sisco.

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

        MODIFY /pws/zycit053.

* << Fim da exclusão

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

        READ TABLE itab_zycit053_s WITH KEY

                                        nrseqnf  = /pws/zycit053-nrseqnf

                                        nrseq    = /pws/zycit053-nrseq

                                      nfglobal = /pws/zycit053-nfglobal

                                        ebeln    = /pws/zycit053-ebeln

                                        ebelp    = /pws/zycit053-ebelp

                                        codigo   = /pws/zycit053-codigo.

        IF sy-subrc NE 0 .

          APPEND /pws/zycit053 TO itab_zycit053_s.

        ELSE.

          MOVE /pws/zycit053 TO itab_zycit053_s.

          MODIFY itab_zycit053_s TRANSPORTING

                  bukrs werks vlreal waers_real vlcompl waers_compl

                           WHERE nrseqnf  = /pws/zycit053-nrseqnf

                             AND nrseq    = /pws/zycit053-nrseq

                             AND nfglobal = /pws/zycit053-nfglobal

                             AND ebeln    = /pws/zycit053-ebeln

                             AND ebelp    = /pws/zycit053-ebelp

                             AND codigo   = /pws/zycit053-codigo.

        ENDIF.

* << Fim da inclusão

      ENDLOOP.

    ENDLOOP.

  ENDIF.

ENDFORM.

FORM carrega_resum.

...

 

...

                                    ebeln = itab_zycit042-ebeln

                                    ebelp = itab_zycit042-ebelp.

  READ TABLE itab_zycit003 WITH KEY nrseq = itab_zycit042-nrseq

                                    ebeln = itab_zycit042-ebeln

                                    ebelp = itab_zycit042-ebelp.

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

  IF t001 IS INITIAL OR /pws/zycit000 IS INITIAL.

* << Fim da inclusão

  SELECT SINGLE * FROM t001 WHERE bukrs = /pws/zycie041-bukrs.

  SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.

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

  ENDIF.

* << Fim da inclusão

  PERFORM convert_matnr.

  IF NOT itab_ekpo-matnr IS INITIAL.

    it_zycee007-matnr = v_matnr.

    IF /pws/zycit000-flag_matnr IS INITIAL.

      SHIFT it_zycee007-matnr LEFT DELETING LEADING '0'.

...

 

...

                                    ebelp = itab_zycit044-ebelp.

  it_zycee007-rate          = itab_zycit003-advalicms.

  it_zycee007-mfrpn         = itab_zycit003-mfrpn   .

  CONCATENATE itab_zycit044-ebeln '/' itab_zycit044-ebelp

        INTO it_zycee007-msg1.

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

  IF t001 IS INITIAL OR /pws/zycit000 IS INITIAL.

* << Fim da inclusão

  SELECT SINGLE * FROM t001 WHERE bukrs = /pws/zycie041-bukrs.

  SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.

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

  ENDIF .

* << Fim da inclusão

  IF NOT itab_ekpo-matnr IS INITIAL.

    it_zycee007-matnr = itab_ekpo-matnr.

    IF /pws/zycit000-flag_matnr IS INITIAL.

      SHIFT it_zycee007-matnr LEFT DELETING LEADING '0'.

    ENDIF.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI016I01

 

...

    itab_zycit042_c-subser_c  =  /pws/zycie042a-subser_c.

  ENDIF.

  MODIFY itab_zycit042_c INDEX tc_itens_nfc-current_line.

ENDMODULE.

MODULE atualiza_itab_zycit042 INPUT.

* >> Início da exclusão: MODULE ATUALIZA_ITAB_ZYCIT042

  LOOP AT itab_zycit042.

* << Fim da exclusão

* >> Início da inclusão: MODULE ATUALIZA_ITAB_ZYCIT042

  LOOP AT itab_zycit042 WHERE docnum NE space.

    CHECK itab_zycit042-nfnum  IS INITIAL AND

          itab_zycit042-series IS INITIAL AND

          itab_zycit042-subser IS INITIAL.

* << Fim da inclusão

    itab_zycit042-nfglobal = /pws/zycie041-nfglobal.

    itab_zycit042-processado = space.

    SELECT SINGLE * FROM j_1bnfdoc

      WHERE docnum = itab_zycit042-docnum.

    IF sy-subrc EQ 0.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI016TOP

 

...

      itab_zycit034  like /pws/zycit034 occurs 10 with header line,

      itab_zycie033  like /pws/zycbe033 occurs 10 with header line,

      itab_zycit032  like /pws/zycit032 occurs 10 with header line,

      itab_zycit031  like /pws/zycie031 occurs 10 with header line,

      itab_zycit263  like /pws/zycit263 occurs 0 with header line.

* >> Início da inclusão:

DATA: itab_zycit053_s TYPE /pws/zycit053 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

 TYPES: BEGIN OF MSG_STRUC,

         TCODE LIKE BDCMSGCOLL-TCODE,

         DYNAME LIKE BDCMSGCOLL-DYNAME,

         DYNUMB LIKE BDCMSGCOLL-DYNUMB,

         MSGTYP LIKE BDCMSGCOLL-MSGTYP,

...