CE PLUS - Nota 002501

Módulo: DRAWBACK

Funcionalidade: Vinculação de Importação

Data/Hora da Publicação: 23/11/2006 00:00:00

Data/Hora Última Alteração: 17/02/2011 14:34:09

Descrição da Nota: AJUSTE NO TRATAMENTO DE INSUMOS ALTERNATIVOS.

Sintoma

Foi realizado uma alteração no parametro de insumos alternativos, o que gerou a necessidade de

realizar ajustes na vinculação dos pedidos de compra.

 

 

Solução

Foi realizado uma alteração no parametro de insumos alternativo, o que gerou a necessidade de

realizar ajustes na vinculação dos pedidos de compra.

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

AJUSTE PARA TRATAMENTO DO PARAMETRO DE CONTROLE DE ATO COMUM POR NCM

Informações Complementares

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

Nota Número 02501 Data: 23/11/2006 Hora: 16:26:31

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

 

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

Nota Número              : 02501

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00025

Agrupamento              : 00140

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

Referência às notas relacionadas:

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

 

01286  - 00001 - 6.0    - 00023  - AJUSTE PARA TRATAMENTO DO PARAMETRO DE CONTROLE DE ATO COMUM POR

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

AJUSTE NO TRATAMENTO DE INSUMOS ALTERNATIVOS.

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

Palavras Chave:

VINCULAÇÃO - PEDIDO - COMPRA - ATO - CONCESSÓRIO

/PWS/SAPMZYCI068

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

Objetos da nota:

REPS /PWS/MZYCI068F01

REPS /PWS/MZYCI068TOP

 

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

Modificações efetuadas em REPS /PWS/MZYCI068F01

 

...

           itab_ekko,

           itab_eket,

           itab_lfa1,

           itab_zycit100,

           itab_zycit079,

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

           itab_zycit433,

* << Fim da inclusão

           itab_zycit078.

  SELECT SINGLE * FROM /pws/zycit321.

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

  SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433

        WHERE dtde  <= sy-datum

          AND dtate >= sy-datum.

* << Fim da inclusão

  PERFORM selec_atos.

  IF NOT itab_atos[] IS INITIAL.

    SELECT * FROM ekpo INTO TABLE itab_ekpo

        WHERE ebeln IN s_ebeln

          AND werks IN s_werks

...

 

...

    ENDIF.

  ELSE.

  ENDIF.

ENDFORM.

FORM monta_376_apr.

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

  IF NOT itab_ekpo[] IS INITIAL.

    CLEAR: itab_zycit433. REFRESH itab_zycit433.

    SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433

        FOR ALL ENTRIES IN itab_atos

        WHERE matnr EQ itab_atos-matnr.

  ENDIF.

* << Fim da exclusão

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

  DATA: v_grupo TYPE /pws/zycit433-grupo,

        v_flag  TYPE c                  .

* << Fim da inclusão

  LOOP AT itab_ekpo.

    READ TABLE itab_zycit376 WITH KEY

                            ebeln = itab_ekpo-ebeln

                            ebelp = itab_ekpo-ebelp.

    IF sy-subrc EQ 0.

...

 

...

      ELSE.

        READ TABLE itab_atos WITH KEY j_1bnbm = itab_ekpo-j_1bnbm.

      ENDIF.

      IF sy-subrc NE 0.

        READ TABLE itab_zycit433 WITH KEY

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

                                        matnr_alt = itab_ekpo-matnr.

        IF sy-subrc NE 0.

* << Fim da exclusão

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

                                        matnr = itab_ekpo-matnr.

        CLEAR: v_flag.

        IF sy-subrc EQ 0.

          v_grupo = itab_zycit433-grupo  .

          LOOP AT itab_zycit433 WHERE grupo = v_grupo.

            READ TABLE itab_atos WITH KEY matnr = itab_zycit433-matnr.

            IF sy-subrc EQ 0.

              v_flag = 'X'.

              EXIT.

            ENDIF.

          ENDLOOP.

        ENDIF.

        IF v_flag NE 'X'.

* << Fim da inclusão

          CONTINUE.

        ENDIF.

      ENDIF.

    ENDIF.

    READ TABLE itab_zycit100 WITH KEY

...

 

...

    itab_atos-nrseqd     = itab_zycit245-nrseqd    .

    itab_atos-nritem     = itab_zycit245-nritem    .

    itab_atos-nratoc     = itab_zycit244-nratoc    .

    itab_atos-matnr      = itab_zycit245-codcomp   .

    itab_atos-j_1bnbm    = itab_zycit245-j_1bnbm   .

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

    itab_atos-grupo      = itab_zycit245-grupo     .

* << Fim da inclusão

    itab_atos-tipo       = itab_zycit244-tipo      .

    itab_atos-modalidade = itab_zycit244-modalidade.

    itab_atos-data       = itab_zycit244-dtatoc    .

    itab_atos-vlfob = itab_zycit245-netpr_t - itab_zycit245-vlvinc.

    itab_atos-qtd_tot =

...

 

...

ENDFORM.

FORM move_atos.

  DATA: BEGIN OF itab_mat_t OCCURS 0.

  DATA: matnr LIKE mara-matnr.

  DATA: END OF itab_mat_t.

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

  DATA: v_grupo TYPE /pws/zycit433-grupo.

* << Fim da inclusão

  itab_atos_t[] = itab_atos[].

  IF /pws/zycit321-apr_imp IS INITIAL.

    IF /pws/zycit321-c_comum IS INITIAL.

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

      REFRESH itab_zycit433a.

* << Fim da inclusão

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

      CLEAR: itab_zycit433. REFRESH itab_zycit433.

      SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433

          WHERE matnr_alt EQ itab_zycit376_t-matnr.

* << Fim da exclusão

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

      itab_zycit433a[] = itab_zycit433[].

      CLEAR: v_grupo, itab_zycit433.

      READ TABLE itab_zycit433 WITH KEY matnr = itab_zycit376_t-matnr.

      v_grupo = itab_zycit433-grupo.

* << Fim da inclusão

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

      itab_zycit433-matnr_alt = itab_zycit376_t-matnr.

      itab_zycit433-matnr = itab_zycit376_t-matnr.

      APPEND itab_zycit433.

* << Fim da exclusão

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

      DELETE itab_zycit433a WHERE grupo NE v_grupo.

      IF /pws/zycit321-it_ge IS INITIAL.

* << Fim da inclusão

      LOOP AT itab_atos_t.

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

        READ TABLE itab_zycit433 WITH KEY

* << Fim da exclusão

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

          READ TABLE itab_zycit433a WITH KEY

* << Fim da inclusão

                                      matnr = itab_atos_t-matnr.

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

        IF sy-subrc NE 0.

* << Fim da exclusão

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

          IF sy-subrc NE 0 AND

             itab_atos_t-matnr NE itab_zycit376_t-matnr.

* << Fim da inclusão

          DELETE itab_atos_t WHERE matnr EQ itab_atos_t-matnr.

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

          ENDIF.

        ENDLOOP.

      ELSE.

        DELETE itab_atos_t WHERE modalidade EQ 'I'

                             AND grupo NE v_grupo.

        LOOP AT itab_atos_t WHERE modalidade EQ 'S'.

          READ TABLE itab_zycit433a WITH KEY

                                        matnr = itab_atos_t-matnr.

          IF sy-subrc NE 0 AND

             itab_atos_t-matnr NE itab_zycit376_t-matnr.

            DELETE itab_atos_t WHERE matnr EQ itab_atos_t-matnr

                                 AND modalidade EQ 'S'.

* << Fim da inclusão

        ENDIF.

      ENDLOOP.

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

      ENDIF.

* << Fim da inclusão

    ELSE.

      DELETE itab_atos_t WHERE j_1bnbm NE itab_zycit376_t-j_1bnbm.

    ENDIF.

  ENDIF.

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI068TOP

 

...

DATA: BEGIN OF itab_atos OCCURS 0 .

DATA: nrseqd     LIKE /pws/zycit244-nrseqd,

      nritem     LIKE /pws/zycit245-nritem,

      nratoc     LIKE /pws/zycit244-nratoc ,

      matnr      LIKE /pws/zycit245-codcomp ,

* >> Início da inclusão:

      grupo      LIKE /pws/zycit245-grupo ,

* << Fim da inclusão

      j_1bnbm    LIKE /pws/zycit245-j_1bnbm ,

      data       LIKE /pws/zycit244-dtatoc,

      modalidade LIKE /pws/zycit244-modalidade,

      tipo       LIKE /pws/zycit244-tipo,

      qtd_tot    LIKE /pws/zycit245-qtd_tot,

...

 

...

      itab_zycit245 LIKE /pws/zycit245 OCCURS 0 WITH HEADER LINE,

      itab_zycit100 LIKE /pws/zycit100 OCCURS 0 WITH HEADER LINE,

      itab_zycit079 LIKE /pws/zycit079 OCCURS 0 WITH HEADER LINE,

      itab_zycit078 LIKE /pws/zycit078 OCCURS 0 WITH HEADER LINE,

      itab_zycit433 LIKE /pws/zycit433 OCCURS 0 WITH HEADER LINE,

* >> Início da inclusão:

      itab_zycit433a LIKE /pws/zycit433 OCCURS 0 WITH HEADER LINE,

* << Fim da inclusão

      itab_atos_t   LIKE itab_atos OCCURS 0 WITH HEADER LINE.

DATA: v_marc                                                    ,

      ok_code         LIKE sy-ucomm                             ,

      v_qtd_tot       LIKE /pws/zycit245-qtd_tot                ,

      v_icon          LIKE icon-id                              ,

...