CE PLUS - Nota 001914

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Embarque

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

Data/Hora Última Alteração: 20/06/2011 12:55:27

Descrição da Nota: RESUMO DE DOCTOS DE EMBARQUE COM REGIME 14 NAO APRESENTA DÉBITO EM CONTA

Sintoma

No resumo de documento do embarque, o sistema não está mostrando o débito em conta gerado

automaticamente pela F-02.Isto ocorre somente nos embarques com regime 14.

 

 

Solução

Ajustado programa para consistir criação de débito em conta.

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

AGREGAR OS CUSTOS EFETIVOS DA ADMISSÃO NA NACIONALIZAÇÃO DA MERCADORIA

ACRESCENTAR A MENSAGEM NA TELA DE EMBARQUE " IMPOSSÍVEL EXCLUIR ÍTEM

PERFORMANCE DA TRANSAÇÃO /PWS/ZYCI001_A ESTÁ CONSUMINDO MUITA MEMÓRIA.

DESENVOLVIMENTO ENTREPOSTO ADUANEIRO

Informações Complementares

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

Nota Número 01914 Data: 10/08/2006 Hora: 15:40:26

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

 

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

Nota Número              : 01914

Categoria                : Consultoria

Prioridade               : Alta

Versão PW.CE             : 6.0

Pacote                   : 00024

Agrupamento              : 00126

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

Referência às notas relacionadas:

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

 

01268  - 00003 - 6.0    - 00023  - DESENVOLVIMENTO ENTREPOSTO ADUANEIRO

01272  - 00001 - 6.0    - 00023  - ACRESCENTAR A MENSAGEM NA TELA DE EMBARQUE " IMPOSSÍVEL EXCLUIR Í

01417  - 00002 - 6.0    - 00023  - AGREGAR OS CUSTOS EFETIVOS DA ADMISSÃO NA NACIONALIZAÇÃO DA MERCA

01940  - 00004 - 6.0    - 00024  - PERFORMANCE DA TRANSAÇÃO /PWS/ZYCI001_A ESTÁ CONSUMINDO MUITA MEM

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

RESUMO DE DOCTOS DE EMBARQUE COM REGIME 14 NAO APRESENTA DÉBITO EM CONTA

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

Palavras Chave:

RESUMO DE DOCUMENTOS - REGIME 14 - DA - DÉBITO EM CONTA

F-02 - ENTREPOSTO ADUANEIRO

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

Objetos da nota:

REPS /PWS/MZYCI001F01

REPS /PWS/MZYCI001F02

REPS /PWS/MZYCI001F03

REPS /PWS/MZYCI001O01

REPS /PWS/MZYCI001TOP

REPS /PWS/MZYCI001X01

REPT /PWS/SAPMZYCI001

TABD /PWS/ZYCIT455

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F01

 

...

          sy-uname           TO it_zycit255-usuario.

    APPEND it_zycit255.

    INSERT INTO /pws/zycit255 VALUES it_zycit255.

  ENDIF.

  MOVE /pws/zycie001 TO wa_zycit001.

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

  LOOP AT itab_zycit125.

    CLEAR /pws/zycit125.

    SELECT SINGLE *

           FROM  /pws/zycit125

           WHERE nrseq EQ /pws/zycie001-nrseq

           AND   lifnr EQ itab_zycit125-lifnr.

    IF sy-subrc IS INITIAL.

      IF itab_zycit125-tipo NE /pws/zycit125-tipo.

        MESSAGE s013 WITH text-322 itab_zycit125-lifnr text-323.

        v_sair = 'X'.

        EXIT.

      ENDIF.

    ELSE.

      CLEAR itab_zycit460.

      READ TABLE itab_zycit460 WITH KEY

                               nrseqda = itab_zycit003-nrseqda

                               lifnr   = itab_zycit125-lifnr.

      IF sy-subrc IS INITIAL.

        IF itab_zycit125-tipo NE itab_zycit460-tipo.

          MESSAGE s013 WITH text-322 itab_zycit125-lifnr text-323.

          v_sair = 'X'.

          EXIT.

        ENDIF.

      ENDIF.

    ENDIF.

  ENDLOOP.

  IF v_sair = 'X'.

    EXIT.

  ENDIF.

* << Fim da inclusão

  MODIFY /pws/zycit125 FROM TABLE itab_zycit125.

  LOOP AT itab_zycit125_aux.

    READ TABLE itab_zycit125 WITH KEY

                     lifnr = itab_zycit125_aux-lifnr.

    IF sy-subrc NE 0.

...

 

...

      EXIT.

    ELSE.

      CLEAR /pws/zycit013.

      MOVE-CORRESPONDING itab_zycit003 TO /pws/zycit013.

      MODIFY /pws/zycit013.

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

    ENDIF.

  ENDLOOP.

* << Fim da inclusão

      MODIFY /pws/zycit003 FROM TABLE itab_zycit003.

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

    ENDIF.

  ENDLOOP.

* << Fim da exclusão

  IF NOT v_sair IS INITIAL.

    EXIT.

  ENDIF.

  LOOP AT itab_zycit003_aux2.

    CLEAR itab_zycit003.

...

 

...

  IF sy-subrc = 0.

    SELECT SINGLE * FROM /pws/zycit093 INTO /pws/zycit093

      WHERE nrseqce = /pws/zycit094-nrseqce.

    IF sy-subrc = 0.

      /pws/zycit093-meiotransp = /pws/zycie001-meioemba.

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

      IF /pws/zycit000 IS INITIAL.

* << Fim da inclusão

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

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

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

      ENDIF.

* << Fim da inclusão

      IF /pws/zycit000-flagbl IS INITIAL.

        /pws/zycit093-paemb      = /pws/zycit001-paorigem.

        /pws/zycit093-padest     = /pws/zycit001-padest.

        /pws/zycit093-paispae    = /pws/zycit001-paispao.

      ENDIF.

      MODIFY /pws/zycit093.

    ENDIF.

  ENDIF.

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

  IF NOT /pws/zycie356 IS INITIAL.

* << Fim da inclusão

  MODIFY /pws/zycit356 FROM /pws/zycie356.

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

  ENDIF.

* << Fim da inclusão

  IF /pws/zycie001-regime EQ '14' OR /pws/zycie001-regime EQ '16'.

...

 

...

      MODIFY itab_zycit003.

      MODIFY /pws/zycit003 FROM itab_zycit003.

    ENDLOOP.

  ENDIF.

  LOOP AT itab_zycit455_del.

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

    UPDATE /pws/zycit455 SET nrseq = itab_zycit455_del-nrseq

                 WHERE ebeln   = itab_zycit455_del-ebeln

                   AND ebelp   = itab_zycit455_del-ebelp

                   AND nrseqda = itab_zycit455_del-nrseqda.

* << Fim da exclusão

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

    CLEAR v_tabix.

    SELECT COUNT( * )

           INTO v_tabix

           FROM /pws/zycit455

           WHERE nrseqda EQ itab_zycit455_del-nrseqda.

    IF v_tabix GT 1.

      DELETE FROM /pws/zycit455

                  WHERE nrseqda = itab_zycit455_del-nrseqda

                  AND   itseqda = itab_zycit455_del-itseqda

                  AND   nrseq   = itab_zycit455_del-nrseq

                  AND   ebeln   = itab_zycit455_del-ebeln

                  AND   ebelp   = itab_zycit455_del-ebelp.

    ELSE.

      UPDATE /pws/zycit455 SET nrseq = space

                  WHERE nrseqda = itab_zycit455_del-nrseqda

                  AND   itseqda = itab_zycit455_del-itseqda

                  AND   nrseq   = itab_zycit455_del-nrseq

                  AND   ebeln   = itab_zycit455_del-ebeln

                  AND   ebelp   = itab_zycit455_del-ebelp.

    ENDIF.

* << Fim da inclusão

  ENDLOOP.

  IF /pws/zycie001-regime EQ '14'.

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

    CLEAR /pws/zycit036.

    SELECT SINGLE *

           FROM  /pws/zycit036

           WHERE nrseq  EQ /pws/zycie001-nrseq

           AND   ( origem EQ 'PCD' OR

                   origem EQ 'DCD' ).

    IF NOT sy-subrc IS INITIAL.

* << Fim da inclusão

    PERFORM gravar_custos.

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

    ENDIF.

* << Fim da inclusão

  ENDIF.

...

 

...

  ENDIF.

ENDFORM.

FORM verifica_itens.

  DATA:

    v_existe_bl ,

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

    v_ebelp      LIKE konv-kposn,

    itab_zycit100_per LIKE /pws/zycit100 OCCURS 0 WITH HEADER LINE.

* << Fim da exclusão

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

    v_ebelp      LIKE konv-kposn.

* << Fim da inclusão

  IF ( sy-tcode = '/PWS/ZYCI001_E' OR

       sy-tcode = '/PWS/ZYCI001_A' ) AND

     ( okcode = 'P-' OR okcode = 'P--' OR

       okcode = 'P+' OR okcode = 'P++' ).

  ELSEIF okcode EQ 'PED' OR okcode EQ 'ENTE' OR okcode EQ 'SAVE' OR

...

 

...

                OTHERS       = 1.

      READ TABLE itab_komk_aux WITH KEY knumv = itab_komk-knumv.

      itab_komv-ebeln = itab_komk_aux-ebeln.

      MODIFY itab_komv TRANSPORTING ebeln

        WHERE knumv = itab_komk-knumv.

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

    ENDLOOP.

    IF NOT itab_komv[] IS INITIAL.

      SELECT * FROM konp INTO TABLE itab_komp

         FOR ALL ENTRIES IN itab_komv WHERE

          knumh = itab_komv-knumh AND

          kopos = itab_komv-kopos.

      IF sy-subrc EQ 0.

        SORT itab_komp BY knumh kopos loevm_ko.

        LOOP AT itab_komv.

          v_index =  sy-tabix.

          READ TABLE itab_komp WITH KEY knumh =  itab_komv-knumh

                                        kopos =  itab_komv-kopos.

          IF sy-subrc EQ 0.

            IF itab_komp-loevm_ko EQ 'X'.

            ENDIF.

          ENDIF.

* << Fim da exclusão

        ENDLOOP.

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

      ENDIF.

    ENDIF.

* << Fim da exclusão

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

    SELECT SINGLE * FROM /pws/zycit031

      WHERE inco1 = /pws/zycie001-inco1

        AND land1 EQ t001-land1.

    SELECT * FROM /pws/zycit030

...

 

...

      ENDIF.

      PERFORM: aplicacao.

      PERFORM verifica_taxa.

      MODIFY itab_zycit003.

    ENDLOOP.

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

    IF /pws/zycit094 IS INITIAL.

* << Fim da inclusão

    SELECT SINGLE * FROM /pws/zycit094

      WHERE nrseq = /pws/zycie001-nrseq.

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

    IF sy-subrc = 0.

* << Fim da exclusão

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

    ENDIF.

    IF NOT /pws/zycit094 IS INITIAL.

      IF /pws/zycit093 IS INITIAL.

* << Fim da inclusão

      SELECT SINGLE * FROM /pws/zycit093

        WHERE nrseqce = /pws/zycit094-nrseqce.

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

      IF sy-subrc = 0.

* << Fim da exclusão

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

      ENDIF.

      IF NOT /pws/zycit093 IS INITIAL.

* << Fim da inclusão

        CLEAR v_tot_ntgew.

        LOOP AT itab_zycit003.

          v_tot_ntgew = v_tot_ntgew + itab_zycit003-ntgew.

        ENDLOOP.

        IF v_tot_ntgew > /pws/zycit093-brgew.

...

 

...

    /pws/zycie001-waers = /pws/zycbt007-waersa.

    IF /pws/zycbt007-waersa IS INITIAL.

      MESSAGE e015 WITH text-213.

    ENDIF.

  ENDIF.

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

  IF NOT itab_zycit003[] IS INITIAL.

    SELECT *

      FROM /pws/zycit100

      INTO TABLE itab_zycit100_per

      FOR ALL ENTRIES IN itab_zycit003

      WHERE nrseq = itab_zycit003-nrseq

        AND ebeln = itab_zycit003-ebeln

        AND ebelp = itab_zycit003-ebelp.

  ENDIF.

* << Fim da exclusão

  LOOP AT itab_zycit003.

    v_tabix = sy-tabix.

    IF v_waers_diferente = 'X'.

      PERFORM busca_taxa_dia USING itab_zycit003-waers

                             CHANGING v_taxa .

...

 

...

    /pws/zycie001-netpr = /pws/zycie001-netpr + v_netpr.

    IF /pws/zycie001-netpr < 0.

      CLEAR /pws/zycie001-netpr.

      MESSAGE e061 WITH text-235 text-236.

    ENDIF.

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

    IF itab_zycit003-tpnf IS INITIAL.

* << Fim da inclusão

    SELECT SINGLE j_1bmatuse INTO ekpo-j_1bmatuse

             FROM ekpo

            WHERE ebeln EQ itab_zycit003-ebeln

              AND ebelp EQ itab_zycit003-ebelp.

    SELECT SINGLE tpnf tpnf_ld tpnf_db tpnf_icms INTO

    CORRESPONDING FIELDS OF /pws/zycit012

             FROM /pws/zycit012

             WHERE j_1bmatuse EQ ekpo-j_1bmatuse.

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

    READ TABLE itab_zycit100_per WITH KEY nrseq = itab_zycit003-nrseq

                                          ebeln = itab_zycit003-ebeln

                                          ebelp = itab_zycit003-ebelp.

    IF itab_zycit003-tpnf IS INITIAL.

* << Fim da exclusão

      READ TABLE itab_zycit100 WITH KEY nrseq = itab_zycit003-nrseq

                                        ebeln = itab_zycit003-ebeln

                                        ebelp = itab_zycit003-ebelp.

      IF sy-subrc EQ 0.

        IF NOT itab_zycit003-nrseqd IS INITIAL

...

 

...

    ENDIF.

    PERFORM recuperando_itens.

  ELSE.

    MESSAGE i015 WITH text-026.

  ENDIF.

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

  REFRESH itab_zycit100.

  CLEAR: /pws/zycit085.

* << Fim da inclusão

ENDFORM.

FORM call_fatura.

  DATA v_nrseq_pgfat LIKE /pws/zycie006-nrseq_pgfat.

  DATA: v_flag_loop,

       e_status.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F02

 

...

FORM busca_fornecedores.

  SELECT * FROM /pws/zycit125

           INTO TABLE itab_zycit125

           WHERE nrseq = /pws/zycie001-nrseq.

  MOVE : itab_zycit125[] TO itab_zycit125_aux[].

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

  IF /pws/zycie001-regime EQ '14'.

    IF NOT itab_zycit003[] IS INITIAL.

      CLEAR   itab_zycit460.

      REFRESH itab_zycit460.

      SELECT *

             INTO  TABLE itab_zycit460

             FROM  /pws/zycit460

             FOR ALL ENTRIES IN itab_zycit003

             WHERE nrseqda EQ itab_zycit003-nrseqda.

    ENDIF.

  ENDIF.

  IF itab_zycit125[] IS INITIAL.

    itab_zycit125[] = itab_zycit460[].

  ENDIF.

* << Fim da inclusão

ENDFORM.

FORM busca_sequencial_copia.

  DATA:

     v_nrseq     LIKE /pws/zycit001-nrseq,

     v_nrseq_ant LIKE /pws/zycit001-nrseq,

...

 

...

  DELETE ADJACENT DUPLICATES FROM itab_zycit125

                  COMPARING  nrseq

                             lifnr

                             tipo.

  SORT itab_zycit125 BY tipo lifnr.

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

  IF sy-tcode EQ '/PWS/ZYCI001_A' AND

     sy-ucomm EQ 'ENTE'.

    LOOP AT itab_zycit125.

      CLEAR /pws/zycit125.

      SELECT SINGLE *

             FROM  /pws/zycit125

             WHERE nrseq EQ /pws/zycie001-nrseq

             AND   lifnr EQ itab_zycit125-lifnr.

      IF sy-subrc IS INITIAL.

        IF itab_zycit125-tipo NE /pws/zycit125-tipo.

          MESSAGE i013 WITH text-322 itab_zycit125-lifnr text-323.

        ENDIF.

      ENDIF.

    ENDLOOP.

  ENDIF.

* << Fim da inclusão

ENDFORM.

FORM seleciona_nf.

  SELECT * FROM /pws/zycit042 INTO TABLE itab_zycit042_d

         WHERE nrseq EQ /pws/zycie001-nrseq.

  IF sy-subrc EQ 0 .

...

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F03

 

 

...

          EXIT.

        ENDIF.

      ENDLOOP.

    WHEN 'FC_FORNEC'.

      LOOP AT itab_zycit125 WHERE mark = 'X'.

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

        DELETE itab_zycit125 INDEX sy-tabix.

* << Fim da exclusão

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

        v_tabix = sy-tabix.

        CLEAR itab_zycit460.

        READ TABLE itab_zycit460 WITH KEY

                                 nrseqda = itab_zycit003-nrseqda

                                 lifnr   = itab_zycit125-lifnr

                                 tipo    = itab_zycit125-tipo.

        IF NOT sy-subrc IS INITIAL.

          DELETE itab_zycit125 INDEX v_tabix.

* << Fim da inclusão

        CLEAR itab_zycit125.

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

        ENDIF.

* << Fim da inclusão

      ENDLOOP.

    WHEN 'FC_DA'.

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

      LOOP AT itab_zycit003 WHERE mark = 'X'.

        LOOP AT itab_zycit460 WHERE nrseqda EQ itab_zycit003-nrseqda.

          v_tabix = sy-tabix.

          DELETE itab_zycit125 WHERE lifnr EQ itab_zycit460-lifnr

                               AND   tipo  EQ itab_zycit460-tipo.

          DELETE itab_zycit460 WHERE nrseqda EQ itab_zycit003-nrseqda

                               AND   lifnr   EQ itab_zycit460-lifnr

                               AND   tipo    EQ itab_zycit460-tipo.

        ENDLOOP.

      ENDLOOP.

* << Fim da inclusão

      CLEAR  : itab_zycit036_del, itab_zycit455_del.

      REFRESH: itab_zycit036_del, itab_zycit455_del.

      DATA: v_ret_pcd,

            v_ret_dcd.

      CLEAR  : it_zycit008, itab_zycit016, itab_zycit026,

...

 

...

          IF /pws/zycie001-regime EQ '14'.

            MOVE:itab_zycit003-ebeln    TO itab_zycit036_del-ebeln,

                 itab_zycit003-ebelp    TO itab_zycit036_del-ebelp,

                 itab_zycit003-nrseq    TO itab_zycit036_del-nrseq.

            APPEND itab_zycit036_del.

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

            READ TABLE itab_zycit455 WITH KEY

                                     nrseqda = itab_zycit003-nrseqda

                                     nrseq   = itab_zycit003-nrseq

                                     ebeln   = itab_zycit003-ebeln

                                     ebelp   = itab_zycit003-ebelp.

* << Fim da inclusão

            MOVE:itab_zycit003-ebeln    TO itab_zycit455_del-ebeln,

                 itab_zycit003-ebelp    TO itab_zycit455_del-ebelp,

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

                 space                  TO itab_zycit455_del-nrseq,

* << Fim da exclusão

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

                 itab_zycit003-nrseq    TO itab_zycit455_del-nrseq,

                 itab_zycit455-itseqda  TO itab_zycit455_del-itseqda,

* << Fim da inclusão

                 itab_zycit003-nrseqda  TO itab_zycit455_del-nrseqda.

            APPEND itab_zycit455_del.

          ENDIF.

          MOVE:itab_zycit003-nrseqda    TO itab_zycit467_del-nrseqda,

               itab_zycit003-nrseq      TO itab_zycit467_del-nrseq  ,

...

 

...

          screen-input = '0'.

        ENDIF.

        MODIFY SCREEN.

      ENDIF.

      IF screen-name = '/PWS/ZYCIE001-MEIOEMBA'.

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

        IF NOT /pws/zycie001-nrseq IS INITIAL.

* << Fim da inclusão

        SELECT SINGLE * FROM /pws/zycit094

          WHERE nrseq = /pws/zycie001-nrseq.

        IF sy-subrc = 0 AND NOT /pws/zycie001-nrseq IS INITIAL.

          screen-input = 0.

          MODIFY SCREEN.

        ELSE.

          screen-input = 1.

          MODIFY SCREEN.

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

          ENDIF.

* << Fim da inclusão

        ENDIF.

        IF /pws/zycie001-regime EQ '14' .

          screen-input = 0.

          MODIFY SCREEN.

        ENDIF.

...

 

...

      ENDIF.

    ELSE.

      IF screen-name EQ '/PWS/ZYCIE001-PAORIGEM' OR

         screen-name EQ '/PWS/ZYCIE001-PAISPAO'  OR

         screen-name EQ '/PWS/ZYCIE001-PADEST'.

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

        IF NOT /pws/zycie001-nrseq IS INITIAL.

* << Fim da inclusão

        SELECT SINGLE * FROM /pws/zycit094

          WHERE nrseq = /pws/zycie001-nrseq.

        IF sy-subrc NE 0.

          IF v_status_s = 1.

            screen-input = 1.

          ELSE.

            screen-input = 0.

          ENDIF.

          MODIFY SCREEN.

        ENDIF.

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

        ENDIF.

* << Fim da inclusão

      ENDIF.

    ENDIF.

    IF screen-name = '/PWS/ZYCIE001-EMBARCA'.

      IF v_status_s = '1'.

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

        IF NOT /pws/zycie001-nrseq IS INITIAL.

* << Fim da inclusão

        SELECT SINGLE * FROM /pws/zycit094

          WHERE nrseq = /pws/zycie001-nrseq.

        IF sy-subrc NE 0 OR /pws/zycie001-nrseq IS INITIAL.

          screen-input = 1.

          MODIFY SCREEN.

        ENDIF.

      ENDIF.

    ENDIF.

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

    ENDIF.

* << Fim da inclusão

    IF screen-name = '/PWS/ZYCIE001-DT_ENT_DE' OR

       screen-name = '/PWS/ZYCIE001-DT_ENT_ATE'.

      IF /pws/zycie001-regime = '02' AND v_status_s = 0.

        screen-input = 0.

        screen-invisible = 0.

...

 

...

               /pws/zycie001-nrseq TO itab_zycit467-nrseq    ,

               itab_da-qtd_nac     TO itab_zycit467-qtd_nac  .

        APPEND itab_zycit467.

      ENDIF.

    ENDLOOP.

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

    IF /pws/zycie001-regime EQ '14'.

      CLEAR   itab_zycit460.

      REFRESH itab_zycit460.

      SELECT *

             INTO  TABLE itab_zycit460

             FROM  /pws/zycit460

             FOR ALL ENTRIES IN itab_da

             WHERE nrseqda EQ itab_da-nrseqda.

    ENDIF.

    IF NOT itab_zycit460[] IS INITIAL.

      IF itab_zycit125[] IS INITIAL.

        itab_zycit125[] = itab_zycit125_aux[] = itab_zycit460[].

      ELSE.

        IF itab_zycit125_aux[] IS INITIAL.

          LOOP AT itab_zycit460.

            CLEAR itab_zycit125.

            READ TABLE itab_zycit125 WITH KEY

                                     nrseq = /pws/zycie001-nrseq

                                     lifnr = itab_zycit460-lifnr.

            IF NOT sy-subrc IS INITIAL.

              itab_zycit125 = itab_zycit460.

              APPEND itab_zycit125.

              CLEAR  itab_zycit125.

            ELSE.

              v_tabix = sy-tabix.

              IF itab_zycit460-tipo NE itab_zycit125-tipo.

                MESSAGE i013 WITH text-322 itab_zycit125-lifnr text-323.

                DELETE itab_zycit125 INDEX v_tabix.

                itab_zycit125 = itab_zycit460.

                APPEND itab_zycit125.

                CLEAR  itab_zycit125.

              ENDIF.

            ENDIF.

          ENDLOOP.

          itab_zycit125_aux[] = itab_zycit125[].

        ENDIF.

      ENDIF.

    ENDIF.

* << Fim da inclusão

    SELECT SINGLE *

      FROM /pws/zycit442

      WHERE nrseqda EQ itab_da-nrseqda

        AND ( codreg EQ '02' OR

              codreg EQ '04' ).

...

 

...

      ENDIF.

      UPDATE /pws/zycit463 SET qtd_nac = v_qtdutil_da

                      WHERE nrseqda    = itab_da_aux-nrseqda

                      AND   lote_forn  = itab_da_aux-lote_forn.

    ENDLOOP.

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

    LOOP AT itab_zycit003.

      UPDATE /pws/zycit455 SET nrseq = itab_zycit003-nrseq

                      WHERE nrseqda  = /pws/zycit442-nrseqda

                      AND   ebeln    = itab_zycit003-ebeln

                      AND   ebelp    = itab_zycit003-ebelp .

    ENDLOOP.

* << Fim da exclusão

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

    DESCRIBE TABLE itab_zycit455.

    IF NOT sy-tfill IS INITIAL.

      READ TABLE itab_zycit455 INDEX sy-tfill.

    ENDIF.

    IF sy-subrc IS INITIAL.

      IF itab_zycit455-nrseq IS INITIAL.

        UPDATE /pws/zycit455 SET   nrseq   = /pws/zycie001-nrseq

                             WHERE nrseqda = /pws/zycit442-nrseqda

                             AND   itseqda = itab_zycit455-itseqda.

      ELSE.

        IF itab_zycit455-nrseq NE /pws/zycie001-nrseq.

          itab_zycit455-itseqda = itab_zycit455-itseqda + 1.

          itab_zycit455-nrseq   = /pws/zycie001-nrseq.

          INSERT /pws/zycit455 FROM itab_zycit455.

        ENDIF.

      ENDIF.

* << Fim da inclusão

  ENDIF.

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

  ENDIF.

* << Fim da inclusão

  MODIFY /pws/zycit467 FROM TABLE itab_zycit467[].

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

  IF /pws/zycie001-regime EQ '14'.

    IF itab_zycit125[] IS INITIAL.

      itab_zycit125[] = itab_zycit460[].

    ELSE.

      IF NOT itab_zycit125_aux[] IS INITIAL.

        LOOP AT itab_zycit460.

          CLEAR itab_zycit125.

          READ TABLE itab_zycit125 WITH KEY

                                   nrseq = itab_zycit003-nrseq

                                   lifnr = itab_zycit460-lifnr

                                   tipo  = itab_zycit460-tipo.

          IF NOT sy-subrc IS INITIAL.

            itab_zycit125 = itab_zycit460.

            APPEND itab_zycit125.

            CLEAR  itab_zycit125.

          ENDIF.

        ENDLOOP.

      ELSE.

        LOOP AT itab_zycit460.

          itab_zycit125 = itab_zycit460.

          APPEND itab_zycit125.

          CLEAR  itab_zycit125.

        ENDLOOP.

      ENDIF.

    ENDIF.

  ENDIF.

* << Fim da inclusão

 CLEAR:    itab_zycit463, itab_zycit467, itab_zycit467_aux, itab_da_aux.

 REFRESH : itab_zycit463, itab_zycit467, itab_zycit467_aux, itab_da_aux.

  COMMIT WORK.

ENDFORM.

FORM salva_dados_rc.

...

 

...

           itab_zycit443-qtd_da ) * /pws/zycie003-qtd_iten.

ENDFORM.

FORM carrega_instrucao.

  REFRESH itab_zycit003_aux.

  MOVE itab_zycit003[] TO itab_zycit003_aux[].

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

  IF v_canal IS INITIAL.

* << Fim da inclusão

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

  SELECT SINGLE nrseqdi

  FROM /pws/zycit100

  INTO v_nrseqdi

  WHERE nrseq = /pws/zycie001-nrseq.

* << Fim da exclusão

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

    IF v_nrseqdi IS INITIAL.

      READ TABLE itab_zycit100 INDEX 1.

      v_nrseqdi = itab_zycit100-nrseqdi.

    ENDIF.

* << Fim da inclusão

  IF NOT v_nrseqdi IS INITIAL.

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

    SELECT SINGLE canal

    FROM /pws/zycit085

    INTO v_canal

    WHERE nrseqdi = v_nrseqdi.

* << Fim da exclusão

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

      IF /pws/zycit085 IS INITIAL.

        SELECT SINGLE * FROM /pws/zycit085 WHERE nrseqdi = v_nrseqdi.

      ENDIF.

      v_canal = /pws/zycit085-canal.

* << Fim da inclusão

  ENDIF.

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

  ENDIF.

  IF v_cotne IS INITIAL AND

    NOT /pws/zycie001-paispao IS INITIAL.

* << Fim da inclusão

  SELECT SINGLE /pws/cotne

  FROM t005

  INTO v_cotne

  WHERE land1 = /pws/zycie001-paispao.

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

  ENDIF.

  IF itab_zycit390[] IS INITIAL.

* << Fim da inclusão

  SELECT * FROM /pws/zycit390

  INTO TABLE itab_zycit390.

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

  ENDIF.

  IF NOT /pws/zycie001-nrseq IS INITIAL.

    IF /pws/zycit094 IS INITIAL.

      SELECT SINGLE * FROM /pws/zycit094

      WHERE nrseq = /pws/zycie001-nrseq.

    ENDIF.

  ENDIF.

  IF NOT /pws/zycit094-nrseqce IS INITIAL.

    IF /pws/zycit055 IS INITIAL.

      SELECT SINGLE * FROM /pws/zycit055

      WHERE nrseq = /pws/zycit094-nrseqce.

    ENDIF.

    SELECT SINGLE * FROM /pws/zycit093

      WHERE nrseqce = /pws/zycit094-nrseqce.

  ENDIF.

  READ TABLE itab_zycit100 INDEX 1.

  IF /pws/zycit085 IS INITIAL AND sy-subrc EQ 0.

    SELECT SINGLE * FROM /pws/zycit085

    WHERE nrseqdi = itab_zycit100-nrseqdi.

  ENDIF.

* << Fim da inclusão

  LOOP AT itab_zycit003.

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

    IF itab_zycit003-dtremessa IS INITIAL.

* << Fim da inclusão

    SELECT SINGLE eindt

    FROM eket

    INTO itab_zycit003_aux-dtremessa

    WHERE ebeln = itab_zycit003-ebeln AND

          ebelp = itab_zycit003-ebelp.

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

    ENDIF.

* << Fim da inclusão

    PERFORM verif_dtproventrega.

    MODIFY itab_zycit003.

    CLEAR itab_zycit003.

  ENDLOOP.

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001O01

 

...

                  WHERE lifnr = itab_zycit125-lifnr.

    v_descforn = lfa1-name1.

  ENDIF.

  DESCRIBE TABLE itab_zycit125 LINES v_line.

  tc_fornec-lines = tc_fornec-lines + 15.

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

  IF NOT itab_zycit460[]      IS INITIAL AND

         /pws/zycie001-regime EQ '14'.

    IF NOT itab_zycit125-tipo IS INITIAL.

      CLEAR itab_zycit460.

      READ TABLE itab_zycit460 WITH KEY

                               nrseqda = itab_zycit003-nrseqda

                               lifnr   = itab_zycit125-lifnr

                               tipo    = itab_zycit125-tipo.

      IF sy-subrc IS INITIAL.

        LOOP AT SCREEN.

          IF screen-name EQ '/PWS/ZYCIE125-TIPO' OR

             screen-name EQ '/PWS/ZYCIE125-LIFNR'.

            screen-input = 0.

            MODIFY SCREEN.

          ENDIF.

        ENDLOOP.

      ENDIF.

    ENDIF.

  ENDIF.

* << Fim da inclusão

ENDMODULE.

MODULE status_0104 OUTPUT.

  SET PF-STATUS '0104'.

ENDMODULE.

MODULE load_test OUTPUT.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001TOP

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001X01

 

...

       adicao    TYPE /pws/zycie455-adicao   ,

       itseqda   TYPE /pws/zycie455-itseqda  ,

       rc        TYPE flag,

       mark.

DATA: END OF itab_da.

* >> Início da inclusão:

DATA: BEGIN OF itab_zycit460 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycit460.

DATA: END   OF itab_zycit460.

* << Fim da inclusão

DATA: itab_zycit443_aux LIKE itab_zycit443 OCCURS 0 WITH HEADER LINE,

      itab_da_aux       LIKE itab_da OCCURS 0 WITH HEADER LINE,

      itab_da_aux2      LIKE itab_da OCCURS 0 WITH HEADER LINE,

      itab_zycit467     LIKE /pws/zycit467 OCCURS 0 WITH HEADER LINE,

      itab_zycit467_del LIKE /pws/zycit467 OCCURS 0 WITH HEADER LINE.

...

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCI001

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 322

 

Texto: (10 caracteres)

"Fornecedor"

 

Comprimento máximo: 10

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 323

 

Texto: (25 caracteres)

"já existe para outro Tipo"

 

Comprimento máximo: 25

 

 

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

Modificações efetuadas em TABD /PWS/ZYCIT455

 

*Alterada tabela de verificação do campo NRSEQDA

 

Nome campo Chv Elem.dados    Tab.verif.    N CtDt Comp. Grupo

NRSEQDA     X  /PWS/ZYCIL831 /PWS/ZYCIT442   CHAR    10

NRSEQDA     X  /PWS/ZYCIL831 /PWS/ZYCIT085   CHAR    10