CE PLUS - Nota 003090

Módulo: DOC. EXPORTAÇÃO

Funcionalidade: Registro de Exportação (RE)

Data/Hora da Publicação: 13/02/2007 00:00:00

Data/Hora Última Alteração: 03/03/2010 12:59:26

Descrição da Nota: PREENCHIMENTO DE CAMPO 24 QUANDO RE COM DRAWBACK

Sintoma

 

Erro na criação de RE's de processos vinculados ao Drawback:

-Não esta preenchendoi o código de enquadramento;

-Não esta preenchendo o campo 24;

-Não esta sendo possivel salvar o processo, o sistema esta emitindo a mensagem: "Registro não

gravado pois Total de Itens superior."

 

Solução

 

Programa ajustado.

Versões Tratadas

6.0

Informações Complementares

 

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

Nota Número 03090 Data: 13/02/2007 Hora: 11:29:32

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

 

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

Nota Número              : 03090

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00026

Agrupamento              : 00151

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

PREENCHIMENTO DE CAMPO 24 QUANDO RE COM DRAWBACK

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

Palavras Chave:

RE, DRAWBACK, CAMPO 24, ENQUADRAMENTO

 

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

Objetos da nota:

REPS /PWS/LZYCEGF6F01

REPS /PWS/LZYCEGF6TOP

FUNC /PWS/ZYCE_ENQFAB_RE

REPS /PWS/MZYCE105F01

 

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

Modificações efetuadas em REPS /PWS/LZYCEGF6F01

 

 ...

   IF NOT itab_zycit244[] IS INITIAL.

     SELECT lifnr stcd1 regio FROM lfa1 INTO TABLE itab_lfa1

       FOR ALL ENTRIES IN itab_zycit244

       WHERE lifnr = itab_zycit244-lifnr.

   ENDIF.

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

   READ TABLE itab_zycet116a INDEX 1.

* << Fim da exclusão

 ENDFORM.                    " seleciona_dados

 

 FORM busca_enq_agru.

 ...

 

     LOOP AT itab_zycet118a.

       READ TABLE itab_zycit282a

             WITH KEY vbeln_va = itab_zycet118a-vbeln_va

                      aupos    = itab_zycet118a-aupos

                      vbeln_vl = itab_zycet118a-vbeln_vl

                      posnl    = itab_zycet118a-posnl.

 

       IF sy-subrc EQ 0.

         READ TABLE itab_zycet130

               WITH KEY tipo       = itab_zycit244-tipo

                        modalidade = itab_zycit244-modalidade.

 

         IF sy-subrc EQ 0.

           v_codenq = itab_zycet130-codenq.

         ENDIF.

 

       ELSE.

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

         IF NOT itab_zycet116a-codenq1 IS INITIAL.

           v_codenq = itab_zycet116a-codenq1.

* << Fim da exclusão

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

        IF NOT wa_zycet116-codenq1 IS INITIAL.

          v_codenq = wa_zycet116-codenq1.

* << Fim da inclusão

         ELSE.

 

           SELECT SINGLE *

           FROM /pws/zycet145

           INTO  wa_zycet145

            WHERE bukrs  EQ itab_zycit244-bukrs

              AND branch EQ v_branch.

 

...

 

       IF sy-subrc EQ 0.

         v_index = sy-tabix.

         CASE ' '.

           WHEN itab_zycet078a-codenq1.

             itab_zycet078a-codenq1 = v_codenq.

             MODIFY itab_zycet078a INDEX v_index.

             CASE ' '.

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

               WHEN itab_zycet116a-codenq1.

                 itab_zycet116a-codenq1 = v_codenq.

               WHEN itab_zycet116a-codenq2.

                 IF v_codenq NE itab_zycet116a-codenq1.

                   itab_zycet116a-codenq2 = v_codenq.

                 ENDIF.

               WHEN itab_zycet116a-codenq3.

                 IF v_codenq NE itab_zycet116a-codenq1 AND

                    v_codenq NE itab_zycet116a-codenq2.

                   itab_zycet116a-codenq3 = v_codenq.

                 ENDIF.

               WHEN itab_zycet116a-codenq4.

                 IF v_codenq NE itab_zycet116a-codenq1 AND

                    v_codenq NE itab_zycet116a-codenq2 AND

                    v_codenq NE itab_zycet116a-codenq3.

                   itab_zycet116a-codenq4 = v_codenq.

                 ENDIF.

               WHEN itab_zycet116a-codenq5.

                 IF v_codenq NE itab_zycet116a-codenq1 AND

                    v_codenq NE itab_zycet116a-codenq2 AND

                    v_codenq NE itab_zycet116a-codenq3 AND

                    v_codenq NE itab_zycet116a-codenq4.

                   itab_zycet116a-codenq5 = v_codenq.

 

                ENDIF.

              WHEN itab_zycet116a-codenq6.

                IF v_codenq NE itab_zycet116a-codenq1 AND

                   v_codenq NE itab_zycet116a-codenq2 AND

                   v_codenq NE itab_zycet116a-codenq3 AND

                   v_codenq NE itab_zycet116a-codenq4 AND

                   v_codenq NE itab_zycet116a-codenq5.

                  itab_zycet116a-codenq6 = v_codenq.

                ENDIF.

            ENDCASE.

            MODIFY itab_zycet116a INDEX 1.

* << Fim da exclusão

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

              WHEN wa_zycet116-codenq1.

                wa_zycet116-codenq1 = v_codenq.

              WHEN wa_zycet116-codenq2.

                IF v_codenq NE wa_zycet116-codenq1.

                  wa_zycet116-codenq2 = v_codenq.

                ENDIF.

              WHEN wa_zycet116-codenq3.

                IF v_codenq NE wa_zycet116-codenq1 AND

                   v_codenq NE wa_zycet116-codenq2.

                  wa_zycet116-codenq3 = v_codenq.

                ENDIF.

              WHEN wa_zycet116-codenq4.

                IF v_codenq NE wa_zycet116-codenq1 AND

                   v_codenq NE wa_zycet116-codenq2 AND

                   v_codenq NE wa_zycet116-codenq3.

                  wa_zycet116-codenq4 = v_codenq.

                ENDIF.

              WHEN wa_zycet116-codenq5.

                IF v_codenq NE wa_zycet116-codenq1 AND

                   v_codenq NE wa_zycet116-codenq2 AND

                   v_codenq NE wa_zycet116-codenq3 AND

                   v_codenq NE wa_zycet116-codenq4.

                  wa_zycet116-codenq5 = v_codenq.

                ENDIF.

              WHEN wa_zycet116-codenq6.

                IF v_codenq NE wa_zycet116-codenq1 AND

                   v_codenq NE wa_zycet116-codenq2 AND

                   v_codenq NE wa_zycet116-codenq3 AND

                   v_codenq NE wa_zycet116-codenq4 AND

                   v_codenq NE wa_zycet116-codenq5.

                  wa_zycet116-codenq6 = v_codenq.

                ENDIF.

            ENDCASE.

* << Fim da inclusão

...

 

           WHEN itab_zycet078a-codenq6.

             itab_zycet078a-codenq6 = v_codenq.

             MODIFY itab_zycet078a INDEX v_index.

         ENDCASE.

 

       ELSE.

 

         itab_zycet078a-nrseqre  = itab_zycet118a-nrseqre.

         itab_zycet078a-codnrseq = itab_zycet118a-seqagrupado.

         itab_zycet078a-codenq1  = v_codenq.

 

         CASE ' '.

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

           WHEN itab_zycet116a-codenq1.

             itab_zycet116a-codenq1 = v_codenq.

           WHEN itab_zycet116a-codenq2.

             IF v_codenq NE itab_zycet116a-codenq1.

               itab_zycet116a-codenq2 = v_codenq.

             ENDIF.

           WHEN itab_zycet116a-codenq3.

             IF v_codenq NE itab_zycet116a-codenq1 AND

                v_codenq NE itab_zycet116a-codenq2.

               itab_zycet116a-codenq3 = v_codenq.

             ENDIF.

           WHEN itab_zycet116a-codenq4.

             IF v_codenq NE itab_zycet116a-codenq1 AND

                v_codenq NE itab_zycet116a-codenq2 AND

                v_codenq NE itab_zycet116a-codenq3.

               itab_zycet116a-codenq4 = v_codenq.

             ENDIF.

           WHEN itab_zycet116a-codenq5.

             IF v_codenq NE itab_zycet116a-codenq1 AND

                v_codenq NE itab_zycet116a-codenq2 AND

 

               v_codenq NE itab_zycet116a-codenq3 AND

               v_codenq NE itab_zycet116a-codenq4.

              itab_zycet116a-codenq5 = v_codenq.

            ENDIF.

          WHEN itab_zycet116a-codenq6.

            IF v_codenq NE itab_zycet116a-codenq1 AND

               v_codenq NE itab_zycet116a-codenq2 AND

               v_codenq NE itab_zycet116a-codenq3 AND

               v_codenq NE itab_zycet116a-codenq4 AND

               v_codenq NE itab_zycet116a-codenq5.

              itab_zycet116a-codenq6 = v_codenq.

            ENDIF.

        ENDCASE.

        MODIFY itab_zycet116a INDEX 1.

* << Fim da exclusão

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

          WHEN wa_zycet116-codenq1.

            wa_zycet116-codenq1 = v_codenq.

          WHEN wa_zycet116-codenq2.

            IF v_codenq NE wa_zycet116-codenq1.

              wa_zycet116-codenq2 = v_codenq.

            ENDIF.

          WHEN wa_zycet116-codenq3.

            IF v_codenq NE wa_zycet116-codenq1 AND

               v_codenq NE wa_zycet116-codenq2.

              wa_zycet116-codenq3 = v_codenq.

            ENDIF.

          WHEN wa_zycet116-codenq4.

            IF v_codenq NE wa_zycet116-codenq1 AND

               v_codenq NE wa_zycet116-codenq2 AND

               v_codenq NE wa_zycet116-codenq3.

              wa_zycet116-codenq4 = v_codenq.

            ENDIF.

          WHEN wa_zycet116-codenq5.

            IF v_codenq NE wa_zycet116-codenq1 AND

               v_codenq NE wa_zycet116-codenq2 AND

               v_codenq NE wa_zycet116-codenq3 AND

               v_codenq NE wa_zycet116-codenq4.

              wa_zycet116-codenq5 = v_codenq.

            ENDIF.

          WHEN wa_zycet116-codenq6.

            IF v_codenq NE wa_zycet116-codenq1 AND

               v_codenq NE wa_zycet116-codenq2 AND

               v_codenq NE wa_zycet116-codenq3 AND

               v_codenq NE wa_zycet116-codenq4 AND

               v_codenq NE wa_zycet116-codenq5.

              wa_zycet116-codenq6 = v_codenq.

            ENDIF.

        ENDCASE.

* << Fim da inclusão

        APPEND itab_zycet078a.

      ENDIF.

    ENDLOOP.

  ENDLOOP.

 

...

 

       PERFORM busca_enquadramento

           USING

             itab_zycet002a[]

             itab_zycet118a

           CHANGING

             itab_enquadramento[].

 

     ENDIF.

 

   ENDLOOP.

 

   SORT itab_enquadramento.

   DELETE ADJACENT DUPLICATES FROM itab_enquadramento.

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

   READ TABLE itab_enquadramento INTO itab_zycet116a-codenq1 INDEX 1.

   READ TABLE itab_enquadramento INTO itab_zycet116a-codenq2 INDEX 2.

   READ TABLE itab_enquadramento INTO itab_zycet116a-codenq3 INDEX 3.

   READ TABLE itab_enquadramento INTO itab_zycet116a-codenq4 INDEX 4.

   READ TABLE itab_enquadramento INTO itab_zycet116a-codenq5 INDEX 5.

   READ TABLE itab_enquadramento INTO itab_zycet116a-codenq6 INDEX 6.

   MODIFY itab_zycet116a INDEX 1 TRANSPORTING codenq1

                                              codenq2

                                              codenq3

                                              codenq4

                                              codenq5

                                              codenq6.

* << Fim da exclusão

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

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq1 INDEX 1.

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq2 INDEX 2.

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq3 INDEX 3.

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq4 INDEX 4.

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq5 INDEX 5.

  READ TABLE itab_enquadramento INTO wa_zycet116-codenq6 INDEX 6.

* << Fim da inclusão

   EXPORT itab_zycet078a[] TO MEMORY ID 'T078'.

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

   EXPORT itab_zycet116a[] TO MEMORY ID 'T116'.

* << Fim da exclusão

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

   EXPORT wa_zycet116      TO MEMORY ID 'T116'.

* << Fim da inclusão

   EXPORT itab_zycet119a[] TO MEMORY ID 'T119'.

   EXPORT itab_zycet066a[] TO MEMORY ID 'T066'.

 ENDFORM.                    " busca_enq_agru

 

FORM busca_enquadra.

 

  LOOP AT itab_zycet118a.

    CASE itab_zycet118a-tipo.

 

...

 

    IF sy-subrc EQ 0.

      v_index = sy-tabix.

      CASE ' '.

        WHEN itab_zycet078a-codenq1.

          itab_zycet078a-codenq1 = v_codenq.

          MODIFY itab_zycet078a INDEX v_index.

          CASE ' '.

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

            WHEN itab_zycet116a-codenq1.

              itab_zycet116a-codenq1 = v_codenq.

            WHEN itab_zycet116a-codenq2.

              IF v_codenq NE itab_zycet116a-codenq1.

                itab_zycet116a-codenq2 = v_codenq.

              ENDIF.

            WHEN itab_zycet116a-codenq3.

              IF v_codenq NE itab_zycet116a-codenq1 AND

                 v_codenq NE itab_zycet116a-codenq2.

                itab_zycet116a-codenq3 = v_codenq.

              ENDIF.

            WHEN itab_zycet116a-codenq4.

              IF v_codenq NE itab_zycet116a-codenq1 AND

                 v_codenq NE itab_zycet116a-codenq2 AND

                 v_codenq NE itab_zycet116a-codenq3.

                itab_zycet116a-codenq4 = v_codenq.

              ENDIF.

            WHEN itab_zycet116a-codenq5.

              IF v_codenq NE itab_zycet116a-codenq1 AND

                 v_codenq NE itab_zycet116a-codenq2 AND

                 v_codenq NE itab_zycet116a-codenq3 AND

 

                 v_codenq NE itab_zycet116a-codenq4.

                itab_zycet116a-codenq5 = v_codenq.

              ENDIF.

            WHEN itab_zycet116a-codenq6.

              IF v_codenq NE itab_zycet116a-codenq1 AND

                 v_codenq NE itab_zycet116a-codenq2 AND

                 v_codenq NE itab_zycet116a-codenq3 AND

                 v_codenq NE itab_zycet116a-codenq4 AND

                 v_codenq NE itab_zycet116a-codenq5.

                itab_zycet116a-codenq6 = v_codenq.

              ENDIF.

          ENDCASE.

          MODIFY itab_zycet116a INDEX 1.

* << Fim da exclusão

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

            WHEN wa_zycet116-codenq1.

              wa_zycet116-codenq1 = v_codenq.

            WHEN wa_zycet116-codenq2.

              IF v_codenq NE wa_zycet116-codenq1.

                wa_zycet116-codenq2 = v_codenq.

              ENDIF.

            WHEN wa_zycet116-codenq3.

              IF v_codenq NE wa_zycet116-codenq1 AND

                 v_codenq NE wa_zycet116-codenq2.

                wa_zycet116-codenq3 = v_codenq.

              ENDIF.

            WHEN wa_zycet116-codenq4.

              IF v_codenq NE wa_zycet116-codenq1 AND

                 v_codenq NE wa_zycet116-codenq2 AND

                 v_codenq NE wa_zycet116-codenq3.

                wa_zycet116-codenq4 = v_codenq.

              ENDIF.

            WHEN wa_zycet116-codenq5.

              IF v_codenq NE wa_zycet116-codenq1 AND

                 v_codenq NE wa_zycet116-codenq2 AND

                 v_codenq NE wa_zycet116-codenq3 AND

                 v_codenq NE wa_zycet116-codenq4.

                wa_zycet116-codenq5 = v_codenq.

              ENDIF.

            WHEN wa_zycet116-codenq6.

              IF v_codenq NE wa_zycet116-codenq1 AND

                 v_codenq NE wa_zycet116-codenq2 AND

                 v_codenq NE wa_zycet116-codenq3 AND

                 v_codenq NE wa_zycet116-codenq4 AND

                 v_codenq NE wa_zycet116-codenq5.

                wa_zycet116-codenq6 = v_codenq.

              ENDIF.

          ENDCASE.

* << Fim da inclusão

        WHEN itab_zycet078a-codenq2.

          itab_zycet078a-codenq2 = v_codenq.

          MODIFY itab_zycet078a INDEX v_index.

        WHEN itab_zycet078a-codenq3.

          itab_zycet078a-codenq3 = v_codenq.

          MODIFY itab_zycet078a INDEX v_index.

        WHEN itab_zycet078a-codenq4.

          itab_zycet078a-codenq4 = v_codenq.

          MODIFY itab_zycet078a INDEX v_index.

        WHEN itab_zycet078a-codenq5.

          itab_zycet078a-codenq5 = v_codenq.

 

...

 

     ELSE.

 

       itab_zycet078a-nrseqre  = itab_zycet118a-nrseqre.

       itab_zycet078a-codnrseq = itab_zycet118a-codnrseq.

       itab_zycet078a-codenq1  = v_codenq.

 

       CASE ' '.

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

         WHEN itab_zycet116a-codenq1.

           itab_zycet116a-codenq1 = v_codenq.

         WHEN itab_zycet116a-codenq2.

           IF v_codenq NE itab_zycet116a-codenq1.

             itab_zycet116a-codenq2 = v_codenq.

           ENDIF.

         WHEN itab_zycet116a-codenq3.

           IF v_codenq NE itab_zycet116a-codenq1 AND

              v_codenq NE itab_zycet116a-codenq2.

             itab_zycet116a-codenq3 = v_codenq.

           ENDIF.

         WHEN itab_zycet116a-codenq4.

           IF v_codenq NE itab_zycet116a-codenq1 AND

              v_codenq NE itab_zycet116a-codenq2 AND

              v_codenq NE itab_zycet116a-codenq3.

             itab_zycet116a-codenq4 = v_codenq.

           ENDIF.

         WHEN itab_zycet116a-codenq5.

           IF v_codenq NE itab_zycet116a-codenq1 AND

              v_codenq NE itab_zycet116a-codenq2 AND

              v_codenq NE itab_zycet116a-codenq3 AND

              v_codenq NE itab_zycet116a-codenq4.

             itab_zycet116a-codenq5 = v_codenq.

           ENDIF.

         WHEN itab_zycet116a-codenq6.

           IF v_codenq NE itab_zycet116a-codenq1 AND

              v_codenq NE itab_zycet116a-codenq2 AND

              v_codenq NE itab_zycet116a-codenq3 AND

              v_codenq NE itab_zycet116a-codenq4 AND

              v_codenq NE itab_zycet116a-codenq5.

             itab_zycet116a-codenq6 = v_codenq.

           ENDIF.

       ENDCASE.

       MODIFY itab_zycet116a INDEX 1.

* << Fim da exclusão

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

        WHEN wa_zycet116-codenq1.

          wa_zycet116-codenq1 = v_codenq.

        WHEN wa_zycet116-codenq2.

          IF v_codenq NE wa_zycet116-codenq1.

            wa_zycet116-codenq2 = v_codenq.

          ENDIF.

        WHEN wa_zycet116-codenq3.

          IF v_codenq NE wa_zycet116-codenq1 AND

             v_codenq NE wa_zycet116-codenq2.

            wa_zycet116-codenq3 = v_codenq.

          ENDIF.

        WHEN wa_zycet116-codenq4.

          IF v_codenq NE wa_zycet116-codenq1 AND

             v_codenq NE wa_zycet116-codenq2 AND

             v_codenq NE wa_zycet116-codenq3.

            wa_zycet116-codenq4 = v_codenq.

          ENDIF.

        WHEN wa_zycet116-codenq5.

          IF v_codenq NE wa_zycet116-codenq1 AND

             v_codenq NE wa_zycet116-codenq2 AND

             v_codenq NE wa_zycet116-codenq3 AND

             v_codenq NE wa_zycet116-codenq4.

            wa_zycet116-codenq5 = v_codenq.

          ENDIF.

        WHEN wa_zycet116-codenq6.

          IF v_codenq NE wa_zycet116-codenq1 AND

             v_codenq NE wa_zycet116-codenq2 AND

             v_codenq NE wa_zycet116-codenq3 AND

             v_codenq NE wa_zycet116-codenq4 AND

             v_codenq NE wa_zycet116-codenq5.

            wa_zycet116-codenq6 = v_codenq.

          ENDIF.

      ENDCASE.

* << Fim da inclusão

       APPEND itab_zycet078a.

     ENDIF.

   ENDLOOP.

   EXPORT itab_zycet078a[] TO MEMORY ID 'T078'.

* >> Início da exclusão: FORM BUSCA_ENQUADRA.

   EXPORT itab_zycet116a[] TO MEMORY ID 'T116'.

* << Fim da exclusão

* >> Início da inclusão: FORM BUSCA_ENQUADRA.

  EXPORT wa_zycet116      TO MEMORY ID 'T116'.

* << Fim da inclusão

   EXPORT itab_zycet119a[] TO MEMORY ID 'T119'.

   EXPORT itab_zycet066a[] TO MEMORY ID 'T066'.

 ENDFORM.                    " busca_enquadra

 

...

 

              itab_zycet119a-vlme = itab_zycet066a-vlemb1 -

                                           itab_zycit244_aux-vlt_mimp.

            ENDIF.

 

            MODIFY itab_zycet119a INDEX 1

                   TRANSPORTING ncm nrato vrkme fkimg vlme.

 

          ELSE. " Intermediário

 

            itab_zycet119a-nrseqre  = itab_zycet092a-nrseqre.

            itab_zycet119a-codnrseq = itab_zycet092a-codnrseq.

 

            PERFORM preenche_cnpj_nao_formatado

                    USING

* >> Início da exclusão: FORM FABRI_AGRUP.

                        itab_zycet116a-stcd1

* << Fim da exclusão

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

                        wa_zycet116-stcd1

* << Fim da inclusão

                    CHANGING

                        itab_zycet119a-stcd1.

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

            itab_zycet119a-regio    = itab_zycet116a-regio.

* << Fim da exclusão

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

            itab_zycet119a-regio    = wa_zycet116-regio.

* << Fim da inclusão

            itab_zycet119a-fkimg    = itab_zycet092a-fkimg.

            itab_zycet119a-waers    = itab_zycet092a-waers.

            itab_zycet119a-tipo     = itab_zycit244-tipo. "G.

 

            READ TABLE itab_zycet066a WITH KEY

                                    nrseqre  = itab_zycet092a-nrseqre

                                   codnrseq = itab_zycet092a-codnrseq.

 

            IF sy-subrc EQ 0.

              itab_zycet119a-vlme = itab_zycet066a-vlemb1 -

 

...

 

  LOOP AT itab_zycet119a.

    v_index = sy-tabix.

    seq = seq + 1.

    itab_zycet119a-sequencial = seq.

    SHIFT itab_zycet119a-sequencial RIGHT DELETING TRAILING space.

    UNPACK  itab_zycet119a-sequencial TO itab_zycet119a-sequencial.

    MODIFY itab_zycet119a INDEX v_index TRANSPORTING sequencial.

  ENDLOOP.

 

  DELETE itab_zycet119a WHERE vlme = space OR

                              vlme = '0.00'.

 

  EXPORT itab_zycet119a[] TO MEMORY ID 'T119'.

  EXPORT itab_zycet066a[] TO MEMORY ID 'T066'.

  EXPORT itab_zycet078a[] TO MEMORY ID 'T078'.

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

  EXPORT itab_zycet116a[] TO MEMORY ID 'T116'.

* << Fim da exclusão

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

  EXPORT wa_zycet116   TO MEMORY ID 'T116'.

* << Fim da inclusão

  EXPORT itab_zycit282a[] TO MEMORY ID 'T282'.

  EXPORT itab_zycit244[]  TO MEMORY ID 'T244'.

ENDFORM.                    " fabri_agrup

 

...

 

 FORM fabricante.

 

   SORT itab_zycet118a BY seqagrupado nrato.

 

   LOOP AT itab_zycet118a.

     LOOP AT itab_zycit282a WHERE

            vbeln_va EQ itab_zycet118a-vbeln_va AND

            aupos    EQ itab_zycet118a-aupos    AND

            vbeln_vl EQ itab_zycet118a-vbeln_vl AND

            posnl    EQ itab_zycet118a-posnl    AND

            ebeln    EQ itab_zycet118a-ebeln    AND

            ebelp    EQ itab_zycet118a-ebelp.

       CLEAR itab_zycet119a.

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

       itab_zycet119a-nrseqre  = itab_zycet116a-nrseqre.

* << Fim da exclusão

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

       itab_zycet119a-nrseqre  = wa_zycet116-nrseqre.

* << Fim da inclusão

       itab_zycet119a-codnrseq = itab_zycet118a-codnrseq.

 

       READ TABLE itab_zycit244 WITH KEY nrseqd = itab_zycit282a-nrseqd.

       IF sy-subrc = 0.

         itab_zycet119a-nrato = itab_zycit244-nratoc.

         READ TABLE itab_lfa1 WITH KEY lifnr = itab_zycit244-lifnr.

         IF sy-subrc = 0.

           itab_zycet119a-stcd1 = itab_lfa1-stcd1.

           itab_zycet119a-regio = itab_lfa1-regio.

         ENDIF.

       ENDIF.

 

       itab_zycet119a-ncm   = itab_zycit282a-j_1bnbmimp.

       itab_zycet119a-fkimg = itab_zycet118a-fkimg.

       itab_zycet119a-vlme  = itab_zycet118a-vfob.

       APPEND itab_zycet119a.

 

     READ TABLE itab_zycet066a WITH KEY nrseqre = itab_zycet118a-nrseqre

                                   codnrseq = itab_zycet118a-seqagrupado.

       IF sy-subrc NE 0.

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

         itab_zycet066a-nrseqre  = itab_zycet116a-nrseqre.

* << Fim da exclusão

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

         itab_zycet066a-nrseqre  = wa_zycet116-nrseqre.

* << Fim da inclusão

         itab_zycet066a-codnrseq = itab_zycet118a-seqagrupado.

         itab_zycet066a-expfab   = text-011. "N

         APPEND itab_zycet066a.

       ELSE.

         v_index = sy-tabix.

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

         itab_zycet066a-nrseqre  = itab_zycet116a-nrseqre.

* << Fim da exclusão

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

         itab_zycet066a-nrseqre  = wa_zycet116-nrseqre.

* << Fim da inclusão

         itab_zycet066a-codnrseq = itab_zycet118a-seqagrupado.

         itab_zycet066a-expfab   = text-011. "N

         MODIFY itab_zycet066a INDEX v_index.

       ENDIF.

     ENDLOOP.

   ENDLOOP.

 

...

 

 

          IF sy-subrc EQ 0.

            itab_zycet119a-vlme = itab_zycet066a-vlemb1 -

                                            itab_zycit244_aux-vlt_mimp.

          ENDIF.

          MODIFY itab_zycet119a INDEX 1 TRANSPORTING nrato ncm vlme.

 

        ELSE.

 

          itab_zycet119a-nrseqre  = itab_zycet118a-nrseqre.

          itab_zycet119a-codnrseq = itab_zycet118a-codnrseq.

 

          PERFORM preenche_cnpj_nao_formatado

                  USING

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

                      itab_zycet116a-stcd1

* << Fim da exclusão

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

                      wa_zycet116-stcd1

* << Fim da inclusão

                  CHANGING

                      itab_zycet119a-stcd1.

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

          itab_zycet119a-regio    = itab_zycet116a-regio.

* << Fim da exclusão

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

          itab_zycet119a-regio    = wa_zycet116-regio.

* << Fim da inclusão

          itab_zycet119a-fkimg    = itab_zycet118a-fkimg.

          itab_zycet119a-waers    = itab_zycet118a-waers.

          itab_zycet119a-tipo     = itab_zycit244-tipo. "text-071. "G

          itab_zycet119a-ncm      = itab_zycet118a-ncm.

          READ TABLE itab_zycet066a WITH KEY

                                  nrseqre  = itab_zycet118a-nrseqre

                                  codnrseq = itab_zycet118a-codnrseq.

 

          IF sy-subrc EQ 0.

 

...

 

   LOOP AT itab_zycet119a.

     v_index = sy-tabix.

     seq = seq + 1.

     itab_zycet119a-sequencial = seq.

     SHIFT itab_zycet119a-sequencial RIGHT DELETING TRAILING space.

     UNPACK  itab_zycet119a-sequencial TO itab_zycet119a-sequencial.

     MODIFY itab_zycet119a INDEX v_index TRANSPORTING sequencial.

   ENDLOOP.

 

   DELETE itab_zycet119a WHERE vlme = space OR

                               vlme = '0.00'.

 

   EXPORT itab_zycet119a[] TO MEMORY ID 'T119'.

   EXPORT itab_zycet066a[] TO MEMORY ID 'T066'.

   EXPORT itab_zycet078a[] TO MEMORY ID 'T078'.

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

   EXPORT itab_zycet116a[] TO MEMORY ID 'T116'.

* << Fim da exclusão

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

   EXPORT wa_zycet116   TO MEMORY ID 'T116'.

* << Fim da inclusão

 ENDFORM.                    " fabricante

...

 

FORM preenche_092 USING    it_zycet118 LIKE itab_zycet118_aux

                  CHANGING it_zycet092 LIKE itab_auxiliar.

 

  MOVE: it_zycet118-nrseqre  TO it_zycet092-nrseqre,

        it_zycet118-ncm      TO it_zycet092-ncm,

        it_zycet118-naladi   TO it_zycet092-naladi,

        it_zycet118-vrkme    TO it_zycet092-vrkme,

        it_zycet118-matnr    TO it_zycet092-matnr,

        it_zycet118-dsmerc   TO it_zycet092-dsmerc,

        it_zycet118-observ   TO it_zycet092-observ,

        it_zycet118-waerk    TO it_zycet092-waerk,

        it_zycet118-waers    TO it_zycet092-waers,

        it_zycet118-mercosul TO it_zycet092-mercosul,

        it_zycet118-gewei    TO it_zycet092-gewei,

        it_zycet118-nrato    TO it_zycet092-nrato,

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

        it_zycet118-tipo     TO it_zycet092-tipo.

* << Fim da exclusão

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

        it_zycet118-tipo     TO it_zycet092-tipo,

        it_zycet118-status   TO it_zycet092-status.

* << Fim da inclusão

ENDFORM.                    " preenche_092

 

...

 

FORM preenche_092_000007 TABLES it_zycet092 STRUCTURE /pws/zycet092.

 

  DATA: v_ncm        LIKE /pws/zycet118-ncm,

        v_nrato      LIKE /pws/zycet118-nrato,

        v_tipo       LIKE /pws/zycet118-tipo,

        v_preuni_ant LIKE /pws/zycet118-netpr,

        v_ownpr      LIKE mbew-ownpr,

        v_codnrseq   TYPE i,

* >> Início da exclusão: FORM PREENCHE_092_000007.

        v_cont_lim   LIKE /pws/zycet090-itmagrup.

* << Fim da exclusão

* >> Início da inclusão: FORM PREENCHE_092_000007.

        v_cont_lim   LIKE /pws/zycet090-itmagrup,

        v_fornecedor TYPE /pws/zycet118-lifnr.

* << Fim da inclusão

 

  SORT itab_zycet118_aux1 BY ncm nrato tipo preuni.

  LOOP AT itab_zycet118_aux1.

 

    IF NOT v_limite IS INITIAL.

      ON CHANGE OF itab_zycet118_aux1-matnr.

        v_cont_lim = v_cont_lim + 1.

      ENDON.

    ENDIF.

 

    v_index = sy-tabix.

    IF ( v_ncm        NE itab_zycet118_aux1-ncm OR v_ncm IS INITIAL )

    OR ( v_nrato      NE itab_zycet118_aux1-nrato     )

* >> Início da exclusão: FORM PREENCHE_092_000007.

    OR ( v_tipo       NE itab_zycet118_aux1-tipo      ).

* << Fim da exclusão

* >> Início da inclusão: FORM PREENCHE_092_000007.

    OR ( v_tipo       NE itab_zycet118_aux1-tipo      )

    OR ( ( v_fornecedor EQ itab_zycet118_aux1-lifnr     )

         AND NOT v_fornecedor IS INITIAL ).

* << Fim da inclusão

      v_cont_lim = 1.

      CLEAR: it_zycet092, itab_auxiliar.

 

...

    MOVE: itab_zycet118_aux1-ntgew    TO it_zycet092-ntgew,

          itab_zycet118_aux1-brgew    TO it_zycet092-brgew,

          itab_zycet118_aux1-fkimg    TO it_zycet092-fkimg,

          itab_zycet118_aux1-vfob     TO it_zycet092-vfob,

          itab_zycet118_aux1-netpr    TO it_zycet092-netpr,

          itab_zycet118_aux1-qtd_eorg TO it_zycet092-qtd_eorg,

          itab_zycet118_aux1-vlagente TO it_zycet092-vlagente.

    COLLECT it_zycet092.

 

    v_ncm        = itab_zycet118_aux1-ncm.

    v_ownpr      = itab_zycet118_aux1-ownpr.

    v_nrato      = itab_zycet118_aux1-nrato.

    v_tipo       = itab_zycet118_aux1-tipo.

    v_preuni_ant = itab_zycet118_aux1-preuni.

* >> Início da inclusão: FORM PREENCHE_092_000007.

    v_fornecedor = itab_zycet118_aux1-lifnr.

* << Fim da inclusão

    MOVE: it_zycet092-codnrseq TO itab_zycet118_aux1-seqagrupado.

    MODIFY itab_zycet118_aux1 INDEX v_index.

 

  ENDLOOP.

 

...

 

FORM preenche_092_000010 TABLES   it_zycet092 STRUCTURE /pws/zycet092.

 

  DATA: v_ncm       LIKE /pws/zycet118-ncm,

        v_vrkme     LIKE /pws/zycet118-vrkme,

        v_lifnr     LIKE /pws/zycet118-lifnr,

        v_quebra    LIKE /pws/zycet118-quebra,

        v_matnr     LIKE /pws/zycet118-matnr,

        v_dbmig     LIKE /pws/zycet118-dbmig,

        v_nrseqd    LIKE /pws/zycet118-nrseqd,

        v_conta_reg TYPE i VALUE 1,

        v_int(1)    TYPE c,

        v_codnrseq  TYPE i,

* >> Início da exclusão: FORM PREENCHE_092_000010.

        v_cont_lim  LIKE /pws/zycet090-itmagrup.

* << Fim da exclusão

* >> Início da inclusão: FORM PREENCHE_092_000010.

        v_cont_lim   LIKE /pws/zycet090-itmagrup,

        v_fornecedor TYPE /pws/zycet118-lifnr.

* << Fim da inclusão

  DATA: itab_zycet118_semdb LIKE itab_zycet118_aux

                  OCCURS 10 WITH HEADER LINE.

  DATA: itab_zycet118_comdb LIKE itab_zycet118_aux

                  OCCURS 10 WITH HEADER LINE.

  DATA: itab_zycet118_mi LIKE itab_zycet118_aux

               OCCURS 10 WITH HEADER LINE.

 

...

                 MODIFY itab_zycet118_comdb INDEX v_index.

               ENDIF.

             ENDIF.

 

           ELSE.

 

             IF ( itab_zycet118_comdb-ncm NE v_ncm OR v_ncm IS INITIAL )

             OR ( itab_zycet118_comdb-vrkme NE v_vrkme

                  OR v_vrkme IS INITIAL )

             OR ( itab_zycet118_comdb-dbmig NE v_dbmig

                  OR v_dbmig IS INITIAL )

* >> Início da exclusão: FORM PREENCHE_092_000010.

             OR ( itab_zycet118_comdb-nrseqd NE v_nrseqd ).

* << Fim da exclusão

* >> Início da inclusão: FORM PREENCHE_092_000010.

            OR ( itab_zycet118_comdb-nrseqd NE v_nrseqd )

            OR ( itab_zycet118_comdb-lifnr  EQ v_fornecedor ).

* << Fim da inclusão

               CLEAR it_zycet092.

 

               IF v_cont_lim LE v_limite.

                 v_cont_lim = 0.

 

                 MOVE:

                 itab_zycet118_comdb-nrseqre  TO it_zycet092-nrseqre,

                 itab_zycet118_comdb-ncm      TO it_zycet092-ncm,

                 itab_zycet118_comdb-naladi   TO it_zycet092-naladi,

                 itab_zycet118_comdb-vrkme    TO it_zycet092-vrkme,

...

       v_ncm        = itab_zycet118_comdb-ncm.

       v_vrkme      = itab_zycet118_comdb-vrkme.

       v_quebra     = itab_zycet118_comdb-quebra.

       v_matnr      = itab_zycet118_comdb-matnr.

       v_dbmig      = itab_zycet118_comdb-dbmig.

       v_nrseqd     = itab_zycet118_comdb-nrseqd.

* >> Início da inclusão: FORM PREENCHE_092_000010.

       v_fornecedor = itab_zycet118_comdb-lifnr.

* << Fim da inclusão

       IF v_conta_reg > 7.

         CLEAR : it_zycet092, v_ncm, v_vrkme, v_dbmig,

                 v_matnr, v_nrseqd.

         v_conta_reg = 1.

       ENDIF.

     ENDLOOP.

...

 

FORM preenche_092_000013 TABLES it_zycet092 STRUCTURE /pws/zycet092.

 

  DATA: v_ncm        LIKE /pws/zycet118-ncm,

        v_nrato      LIKE /pws/zycet118-nrato,

        v_tipo       LIKE /pws/zycet118-tipo,

        v_preuni_ant LIKE /pws/zycet118-netpr,

        v_codnrseq   TYPE i,

        v_cont_lim   LIKE /pws/zycet090-itmagrup,

* >> Início da exclusão: FORM PREENCHE_092_000013.

        v_matnr      LIKE /pws/zycet118-matnr.

* << Fim da exclusão

* >> Início da inclusão: FORM PREENCHE_092_000013.

        v_matnr      LIKE /pws/zycet118-matnr,

        v_fornecedor TYPE /pws/zycet118-lifnr.

* << Fim da inclusão

 

  SORT itab_zycet118_aux1 BY ncm nrato tipo preuni.

  LOOP AT itab_zycet118_aux1.

 

    IF NOT v_limite IS INITIAL.

      ON CHANGE OF itab_zycet118_aux1-matnr.

        v_cont_lim = v_cont_lim + 1.

      ENDON.

    ENDIF.

 

    v_index = sy-tabix.

    IF ( v_ncm        NE itab_zycet118_aux1-ncm OR v_ncm IS INITIAL )

    OR ( v_nrato      NE itab_zycet118_aux1-nrato     )

    OR ( v_tipo       NE itab_zycet118_aux1-tipo      )

* >> Início da exclusão: FORM PREENCHE_092_000013.

    OR ( v_preuni_ant NE itab_zycet118_aux1-preunifob ).

* << Fim da exclusão

* >> Início da inclusão: FORM PREENCHE_092_000013.

    OR ( v_preuni_ant NE itab_zycet118_aux1-preunifob )

    OR ( v_fornecedor EQ itab_zycet118_aux1-lifnr     ).

* << Fim da inclusão

      v_cont_lim = 1.

 

      CLEAR: it_zycet092, itab_auxiliar.

 

...

 

     ELSEIF NOT v_limite IS INITIAL.

 

       IF v_cont_lim GT v_limite.

 

         v_cont_lim = 1.

 

       IF ( v_ncm        NE itab_zycet118_aux1-ncm OR v_ncm IS INITIAL )

       OR ( v_nrato      NE itab_zycet118_aux1-nrato                   )

       OR ( v_tipo       NE itab_zycet118_aux1-tipo                    )

       OR ( v_preuni_ant NE itab_zycet118_aux1-preunifob               )

* >> Início da exclusão: FORM PREENCHE_092_000013.

       OR ( v_matnr NE itab_zycet118_aux1-matnr OR v_matnr IS INITIAL  ).

* << Fim da exclusão

* >> Início da inclusão: FORM PREENCHE_092_000013.

       OR ( v_matnr NE itab_zycet118_aux1-matnr OR v_matnr IS INITIAL  )

       OR ( v_fornecedor EQ itab_zycet118_aux1-lifnr                   ).

* << Fim da inclusão

           CLEAR: it_zycet092, itab_auxiliar.

 

           PERFORM preenche_092 USING itab_zycet118_aux1

                             CHANGING itab_auxiliar.

 

           MOVE-CORRESPONDING: itab_auxiliar TO it_zycet092.

 

           CLEAR it_zycet092-codnrseq.

           v_codnrseq = v_codnrseq + 1 .

           it_zycet092-codnrseq = v_codnrseq.

           SHIFT it_zycet092-codnrseq RIGHT DELETING TRAILING space.

           UNPACK it_zycet092-codnrseq   TO it_zycet092-codnrseq.

...

     MOVE: itab_zycet118_aux1-ntgew    TO it_zycet092-ntgew,

           itab_zycet118_aux1-brgew    TO it_zycet092-brgew,

           itab_zycet118_aux1-fkimg    TO it_zycet092-fkimg,

           itab_zycet118_aux1-vfob     TO it_zycet092-vfob,

           itab_zycet118_aux1-netpr    TO it_zycet092-netpr,

           itab_zycet118_aux1-qtd_eorg TO it_zycet092-qtd_eorg,

           itab_zycet118_aux1-vlagente TO it_zycet092-vlagente.

     COLLECT it_zycet092.

 

     v_ncm        = itab_zycet118_aux1-ncm.

     v_nrato      = itab_zycet118_aux1-nrato.

     v_tipo       = itab_zycet118_aux1-tipo.

     v_preuni_ant = itab_zycet118_aux1-preunifob.

* >> Início da inclusão: FORM PREENCHE_092_000013.

     v_fornecedor = itab_zycet118_aux1-lifnr.

* << Fim da inclusão

     MOVE: it_zycet092-codnrseq TO itab_zycet118_aux1-seqagrupado.

     MODIFY itab_zycet118_aux1 INDEX v_index.

 

     MOVE: itab_zycet118_aux1-preunifob TO it_zycet092-preco_f,

           itab_zycet118_aux1-preuni    TO it_zycet092-preuni_1.

     MODIFY it_zycet092 TRANSPORTING preco_f preuni_1

                        WHERE codnrseq = it_zycet092-codnrseq.

   ENDLOOP.

 

 ENDFORM.                    " preenche_092_000013

 

...

FORM preenche_092_000014 TABLES it_zycet092 STRUCTURE /pws/zycet092.

 

  DATA: v_nrato      LIKE /pws/zycet118-nrato,

        v_tipo       LIKE /pws/zycet118-tipo,

        v_preuni_ant LIKE /pws/zycet118-netpr,

        v_codnrseq   TYPE i,

        v_cont_lim   LIKE /pws/zycet090-itmagrup,

* >> Início da exclusão: FORM PREENCHE_092_000014.

        v_matnr      LIKE /pws/zycet118-matnr.

* << Fim da exclusão

* >> Início da inclusão: FORM PREENCHE_092_000014.

        v_matnr      LIKE /pws/zycet118-matnr,

        v_fornecedor TYPE /pws/zycet118-lifnr.

* << Fim da inclusão

 

  SORT itab_zycet118_aux1 BY matnr nrato tipo preuni.

  LOOP AT itab_zycet118_aux1.

 

    IF NOT v_limite IS INITIAL.

      ON CHANGE OF itab_zycet118_aux1-matnr.

        v_cont_lim = v_cont_lim + 1.

      ENDON.

    ENDIF.

 

    v_index = sy-tabix.

 

    IF ( v_matnr NE itab_zycet118_aux1-matnr OR v_matnr IS INITIAL )

    OR ( v_nrato      NE itab_zycet118_aux1-nrato     )

    OR ( v_tipo       NE itab_zycet118_aux1-tipo      )

* >> Início da exclusão: FORM PREENCHE_092_000014.

    OR ( v_preuni_ant NE itab_zycet118_aux1-preunifob ).

* << Fim da exclusão

* >> Início da inclusão: FORM PREENCHE_092_000014.

    OR ( v_preuni_ant NE itab_zycet118_aux1-preunifob )

    OR ( v_fornecedor EQ itab_zycet118_aux1-lifnr     ).

* << Fim da inclusão

      v_cont_lim = 1.

 

      CLEAR: it_zycet092, itab_auxiliar.

 

      PERFORM preenche_092 USING itab_zycet118_aux1

                        CHANGING itab_auxiliar.

 

...

 

    ELSEIF NOT v_limite IS INITIAL.

 

      IF v_cont_lim GT v_limite.

 

        v_cont_lim = 1.

 

       IF ( v_matnr NE itab_zycet118_aux1-matnr OR v_matnr IS INITIAL )

                    OR ( v_nrato      NE itab_zycet118_aux1-nrato     )

                    OR ( v_tipo       NE itab_zycet118_aux1-tipo      )

* >> Início da exclusão: FORM PREENCHE_092_000014.

                    OR ( v_preuni_ant NE itab_zycet118_aux1-preunifob ).

* << Fim da exclusão

* >> Início da inclusão: FORM PREENCHE_092_000014.

                    OR ( v_preuni_ant NE itab_zycet118_aux1-preunifob )

                    OR ( v_fornecedor EQ itab_zycet118_aux1-lifnr     ).

* << Fim da inclusão

          CLEAR: it_zycet092, itab_auxiliar.

 

          PERFORM preenche_092 USING itab_zycet118_aux1

                            CHANGING itab_auxiliar.

 

          MOVE-CORRESPONDING: itab_auxiliar TO it_zycet092.

 

          CLEAR it_zycet092-codnrseq.

          v_codnrseq = v_codnrseq + 1 .

 

...

 

     COLLECT it_zycet092.

 

     v_matnr      = itab_zycet118_aux1-matnr.

     v_nrato      = itab_zycet118_aux1-nrato.

     v_tipo       = itab_zycet118_aux1-tipo.

     v_preuni_ant = itab_zycet118_aux1-preunifob.

* >> Início da inclusão: FORM PREENCHE_092_000014.

     v_fornecedor = itab_zycet118_aux1-lifnr.

* << Fim da inclusão

     MOVE: it_zycet092-codnrseq TO itab_zycet118_aux1-seqagrupado.

     MODIFY itab_zycet118_aux1 INDEX v_index.

 

     MOVE: itab_zycet118_aux1-preunifob TO it_zycet092-preco_f,

           itab_zycet118_aux1-preuni    TO it_zycet092-preuni_1.

     MODIFY it_zycet092 TRANSPORTING preco_f preuni_1

                        WHERE codnrseq = it_zycet092-codnrseq.

   ENDLOOP.

 ENDFORM.                    " preenche_092_000014

 

...

 

FORM agrupa_zycet119.

 

  DATA: v_docdat LIKE itab_j1bnfdoc-docdat. " AP - 11/01/2005

 

  CLEAR itab_zycet119a.

* >> Início da exclusão: FORM AGRUPA_ZYCET119.

  itab_zycet119a-nrseqre  = itab_zycet116a-nrseqre.

* << Fim da exclusão

* >> Início da inclusão: FORM AGRUPA_ZYCET119.

  itab_zycet119a-nrseqre  = wa_zycet116-nrseqre.

* << Fim da inclusão

  itab_zycet119a-codnrseq = itab_zycet092a-codnrseq.

 

  READ TABLE itab_zycit244 WITH KEY nrseqd = itab_zycit282a-nrseqd.

 

  IF sy-subrc = 0.

 

    itab_zycet119a-nrato = itab_zycit244-nratoc.

    itab_zycet119a-tipo  = itab_zycit244-tipo.

 

    READ TABLE itab_lfa1 WITH KEY lifnr = itab_zycit244-lifnr.

 

    IF sy-subrc = 0.

      itab_zycet119a-stcd1 = itab_lfa1-stcd1.

      itab_zycet119a-regio = itab_lfa1-regio.

    ENDIF.

  ENDIF.

 

  IF itab_zycit244-tipo EQ text-015. "F

 

* >> Início da inclusão: FORM AGRUPA_ZYCET119.

    CHECK itab_zycet092a-fkimg GE itab_zycit282a-qtd_mexp.

* << Fim da inclusão

    itab_zycet119a-ncm = itab_zycit282a-j_1bnbmimp.

 

    READ TABLE itab_j1bnfdoc WITH KEY docnum = itab_zycit282a-docnumimp.

    IF sy-subrc = 0 AND NOT itab_j1bnfdoc-pstdat IS INITIAL.

 

...

 

    itab_zycet119a-ncm = itab_zycit282a-j_1bnbmexp.

 

    PERFORM preenche_cnpj_nao_formatado

            USING

* >> Início da exclusão: FORM AGRUPA_ZYCET119.

                itab_zycet116a-stcd1

* << Fim da exclusão

* >> Início da inclusão: FORM AGRUPA_ZYCET119.

                wa_zycet116-stcd1

* << Fim da inclusão

            CHANGING

                itab_zycet119a-stcd1.

    itab_zycet119a-regio = itab_zycet116a-regio.

 

    itab_zycet119a-waers = itab_zycet092a-waers.

    MOVE itab_zycit282a TO wa_zycit282.

  ENDIF.

 

  COLLECT itab_zycet119a.

 

  READ TABLE itab_zycet066a WITH KEY nrseqre = itab_zycet118a-nrseqre

                                codnrseq = itab_zycet118a-seqagrupado.

 

  IF sy-subrc NE 0.

* >> Início da exclusão: FORM AGRUPA_ZYCET119.

    itab_zycet066a-nrseqre  = itab_zycet116a-nrseqre.

* << Fim da exclusão

* >> Início da inclusão: FORM AGRUPA_ZYCET119.

    itab_zycet066a-nrseqre  = wa_zycet116-nrseqre.

* << Fim da inclusão

    itab_zycet066a-codnrseq = itab_zycet118a-seqagrupado.

    itab_zycet066a-expfab   = 'N'.

    APPEND itab_zycet066a.

 

  ELSE.

 

    v_index = sy-tabix.

* >> Início da exclusão: FORM AGRUPA_ZYCET119.

    itab_zycet066a-nrseqre  = itab_zycet116a-nrseqre.

* << Fim da exclusão

* >> Início da inclusão: FORM AGRUPA_ZYCET119.

    itab_zycet066a-nrseqre  = wa_zycet116-nrseqre.

* << Fim da inclusão

    itab_zycet066a-codnrseq = itab_zycet118a-seqagrupado.

    itab_zycet066a-expfab   = 'N'.

    MODIFY itab_zycet066a INDEX v_index.

  ENDIF.

ENDFORM.                    " agrupa_zycet119

 

...

 

   CHECK sy-subrc = 0.

 

   SELECT SINGLE tipo_emb

       INTO v_tipo_emb

       FROM /pws/zycet001

       WHERE nrseq = wa_zycet002-nrseq.

 

   CHECK sy-subrc = 0.

 

   SELECT codenq

       APPENDING TABLE p_enquadramento

       FROM /pws/zycet321

       FOR ALL ENTRIES IN p_zycit244

       WHERE tipodoc = wa_zycet002-auart

         AND tipoemb = v_tipo_emb

         AND tipo_db = p_zycit244-tipo

         AND mod_db  = p_zycit244-modalidade.

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

   SELECT codsgp

       APPENDING TABLE p_enquadramento

       FROM /pws/zycet321

       FOR ALL ENTRIES IN p_zycit244

       WHERE tipodoc = wa_zycet002-auart

         AND tipoemb = v_tipo_emb

         AND tipo_db = p_zycit244-tipo

         AND mod_db  = p_zycit244-modalidade

         AND codsgp  <> space.

* << Fim da inclusão

 ENDFORM.                    " busca_enquadramento_db

 

...

 

   CHECK sy-subrc = 0.

 

   SELECT SINGLE tipo_emb

       INTO v_tipo_emb

       FROM /pws/zycet001

       WHERE nrseq = wa_zycet002-nrseq.

 

   CHECK sy-subrc = 0.

 

   SELECT codenq

       APPENDING TABLE p_enquadramento

       FROM /pws/zycet321

       WHERE tipodoc = wa_zycet002-auart

         AND tipoemb = v_tipo_emb

         AND tipo_db = space

         AND mod_db  = space.

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

   SELECT codsgp

       APPENDING TABLE p_enquadramento

       FROM /pws/zycet321

       WHERE tipodoc = wa_zycet002-auart

         AND tipoemb = v_tipo_emb

         AND tipo_db = space

         AND mod_db  = space

         AND codsgp  <> space.

* << Fim da inclusão

 ENDFORM.                    " busca_enquadramento

 

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

Modificações efetuadas em REPS /PWS/LZYCEGF6TOP

...

 

DATA: END OF itab_zycet092_aux.

 

DATA: itab_j1bnfdoc LIKE j_1bnfdoc OCCURS 0 WITH HEADER LINE.

 

DATA: BEGIN OF itab_auxiliar OCCURS 0,

        nrseqre  LIKE /pws/zycet092-nrseqre,

        ncm      LIKE /pws/zycet092-ncm,

        naladi   LIKE /pws/zycet092-naladi,

        vrkme    LIKE /pws/zycet092-vrkme,

        matnr    LIKE /pws/zycet092-matnr,

        dsmerc   LIKE /pws/zycet092-dsmerc,

        observ   LIKE /pws/zycet092-observ,

        waerk    LIKE /pws/zycet092-waerk,

        waers    LIKE /pws/zycet092-waers,

        mercosul LIKE /pws/zycet092-mercosul,

        gewei    LIKE /pws/zycet092-gewei,

        nrato    LIKE /pws/zycet092-nrato,

        tipo     LIKE /pws/zycet092-tipo,

* >> Início da inclusão

        status   TYPE /pws/zycet092-status,

* << Fim da inclusão

      END OF itab_auxiliar.

 

DATA: v_limite LIKE /pws/zycet090-itmagrup.

 

DATA :  BEGIN OF  itab_zycet118 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycet118.

DATA:   END OF itab_zycet118.

 

...

 

DATA: BEGIN OF itab_zycet119a OCCURS 10.

        INCLUDE STRUCTURE /pws/zycet119.

DATA:     tipo    LIKE /pws/zycit244-tipo,

      END   OF itab_zycet119a.

 

DATA: itab_zycet002a LIKE /pws/zycet002 OCCURS  5 WITH HEADER LINE,

      itab_zycet066a LIKE /pws/zycet066 OCCURS  5 WITH HEADER LINE,

      itab_zycet078a LIKE /pws/zycet078 OCCURS  5 WITH HEADER LINE,

      itab_zycet092a LIKE /pws/zycet092 OCCURS  5 WITH HEADER LINE,

      itab_zycet116a LIKE /pws/zycet116 OCCURS  5 WITH HEADER LINE,

      itab_zycet118a LIKE /pws/zycet118 OCCURS  5 WITH HEADER LINE,

      itab_zycit244  LIKE /pws/zycit244 OCCURS  5 WITH HEADER LINE.

* >> Início da exclusão

DATA: wa_zycit282 LIKE itab_zycit282a.

* << Fim da exclusão

* >> Início da inclusão

DATA: wa_zycet116 TYPE /pws/zycet116,

      wa_zycit282 LIKE itab_zycit282a.

* << Fim da inclusão

DATA:   v_dsmerc     LIKE /pws/zycet118-dsmerc,

        v_index      LIKE sy-tabix,

 

...

 

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

Modificações efetuadas em FUNC /PWS/ZYCE_ENQFAB_RE

 

...

 

  MOVE: itab_zycet002[] TO itab_zycet002a[],

        itab_zycet118[] TO itab_zycet118a[],

        itab_zycet078[] TO itab_zycet078a[],

        itab_zycet116[] TO itab_zycet116a[],

        itab_zycet066[] TO itab_zycet066a[],

        itab_zycet092[] TO itab_zycet092a[],

        itab_zycet119[] TO itab_zycet119a[].

 

  REFRESH: itab_zycet092a.

  MOVE:  itab_zycet092_aux TO itab_zycet092a.

  APPEND itab_zycet092a.

 

  EXPORT: itab_zycet002a[] TO MEMORY ID 'T002',

          itab_zycet118a[] TO MEMORY ID 'T118',

          itab_zycet078a[] TO MEMORY ID 'T078',

          itab_zycet092a[] TO MEMORY ID 'T092',

* >> Início da exclusão

          itab_zycet116a[] TO MEMORY ID 'T116',

* << Fim da exclusão

* >> Início da inclusão

          wa_zycet116      TO MEMORY ID 'T116',

* << Fim da inclusão

          itab_zycet066a[] TO MEMORY ID 'T066',

          itab_zycet119a[] TO MEMORY ID 'T119',

          itab_zycit282a[] TO MEMORY ID 'T282',

          itab_zycit244[]  TO MEMORY ID 'T244'.

...

 

  PERFORM seleciona_dados USING tipo.

* >> Início da inclusão

  IF NOT itab_zycet116a[] IS INITIAL.

     READ TABLE itab_zycet116a INDEX 1.

     MOVE-CORRESPONDING itab_zycet116a TO wa_zycet116.

  ENDIF.

* << Fim da inclusão

  CASE tipo.

 

    WHEN 'ENQ'.

      IF agrupado = 'S'.

        PERFORM busca_enq_agru.

      ELSE.

        PERFORM busca_enquadra.

      ENDIF.

    WHEN 'FAB'.

      IF agrupado = 'S'.

        PERFORM fabri_agrup.

      ELSE.

        PERFORM fabricante.

      ENDIF.

  ENDCASE.

 

   IMPORT: itab_zycet119a[] FROM MEMORY ID 'T119',

           itab_zycet066a[] FROM MEMORY ID 'T066',

           itab_zycet078a[] FROM MEMORY ID 'T078',

* >> Início da exclusão

           itab_zycet116a[] FROM MEMORY ID 'T116'.

* << Fim da exclusão

* >> Início da inclusão

           wa_zycet116      FROM MEMORY ID 'T116'.

 

  MOVE-CORRESPONDING wa_zycet116 TO itab_zycet116a.

  MODIFY itab_zycet116a INDEX 1.

* << Fim da inclusão

   REFRESH itab_zycet119.

   LOOP AT itab_zycet119a.

     MOVE-CORRESPONDING itab_zycet119a TO itab_zycet119.

     APPEND itab_zycet119.

   ENDLOOP.

 

   PERFORM ajusta_fkimg TABLES itab_zycet119a.

 

   FREE itab_zycet116.

 

   MOVE: itab_zycet078a[] TO itab_zycet078[],

 

...

 

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

Modificações efetuadas em REPS /PWS/MZYCE105F01

 

...

 

FORM atua_fat.

  DATA: itab_066 LIKE /pws/zycet066 OCCURS 1 WITH HEADER LINE,

        itab_119 LIKE /pws/zycet119 OCCURS 1 WITH HEADER LINE,

* >> Início da inclusão: FORM ATUA_FAT.

        v_tipo   LIKE /pws/zycit244-tipo,

* << Fim da inclusão

        v_index  LIKE sy-tabix.

 

 

  CASE /pws/zycee116-agrupado.

    WHEN text-010.

      LOOP AT itab_zycet092.

        IF itab_zycet092-status EQ 'M' OR

           itab_zycet092-modi   EQ 'X'.

 

...

 

         READ TABLE itab_zyglt100 WITH KEY zexit = 'REX005'.

         IF sy-subrc EQ 0.

           IF NOT itab_zyglt100-programa   IS INITIAL AND

            NOT itab_zyglt100-formulario IS INITIAL.

             PERFORM (itab_zyglt100-formulario)

               IN PROGRAM (itab_zyglt100-programa)

               TABLES itab_zycet066

                      itab_zycet118

               CHANGING /pws/zycee066.

           ENDIF.

         ENDIF.

         IF itab_zycet118-status NE 'M'.

           MOVE 'S' TO itab_zycet118-status.

         ENDIF.

         MODIFY itab_zycet118 INDEX v_index.

         CLEAR: itab_066, itab_119.

         REFRESH: itab_066, itab_119.

       ENDLOOP.

   ENDCASE.

* >> Início da inclusão: FORM ATUA_FAT.

  IF NOT itab_zycet119[] IS INITIAL.

    LOOP AT itab_zycet119.

      CLEAR v_tipo.

      v_index = sy-tabix.

 

      SELECT SINGLE tipo FROM /pws/zycit244 INTO v_tipo

               WHERE nratoc = itab_zycet119-nrato.

      IF sy-subrc IS INITIAL.

        IF v_tipo EQ text-085.

          READ TABLE itab_119 WITH KEY nrato = itab_zycet119-nrato.

          IF sy-subrc IS INITIAL.

            DELETE itab_zycet119 INDEX v_index.

          ELSE.

            MOVE-CORRESPONDING itab_zycet119 TO itab_119.

            APPEND itab_119.

          ENDIF.

        ENDIF.

      ENDIF.

    ENDLOOP.

  ENDIF.

 

  CLEAR itab_119.

  REFRESH itab_119.

* << Fim da inclusão

   IF NOT itab_zycet066[] IS INITIAL.

     READ TABLE itab_zycet145 INDEX 1.

     IF sy-subrc EQ 0.

       LOOP AT itab_zycet066.

         /pws/zycee066 = itab_zycet066.

         IF ( itab_zycet066-optcom NE itab_zycet145-calccom ) AND

            ( NOT itab_zycet066-optcom IS INITIAL ).

           MOVE itab_zycet145-calccom TO itab_zycet066-optcom.

           MOVE itab_zycet145-calccom TO /pws/zycee066-optcom.

           MODIFY itab_zycet066.

 

...