CE PLUS - Nota 008735

Módulo: DRAWBACK

Funcionalidade: Ato Concessório

Data/Hora da Publicação: 27/07/2009 00:00:00

Data/Hora Última Alteração: 17/02/2011 15:38:32

Descrição da Nota: INCLUI NUMERO DO ITEM NA TABELA /PWS/ZYCIT279

Sintoma

Incluido numero do item na tabela /pws/zycit279 e ajustado os programas do ato concessório,

recebimento e entrada de nota fiscal para tratamento do novo campo.

 

 

Solução

Incluido numero do item na tabela /pws/zycit279 e ajustado os programas do ato concessório,

recebimento e entrada de nota fiscal para tratamento do novo campo.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

VINCULAÇÃO DE ATO CONCESSÓRIO NA LI

DRAWBACK INTERMEDIÁRIO EXPORTAÇÃO EM USD

PERMITIR TRANSFERENCIA DE ITENS APENAS SE POSSUIR SALDO TOTAL.

Informações Complementares

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

Nota Número 08735 Data: 27/07/2009 Hora: 11:27:11

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

 

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

Nota Número              : 08735

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00010

Agrupamento              : 00107

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

Referência às notas relacionadas:

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

 

07616  - 00001 - 7.0    - 00007  - VINCULAÇÃO DE ATO CONCESSÓRIO NA LI

08666  - 00002 - 7.0    - 00010  - DRAWBACK INTERMEDIÁRIO EXPORTAÇÃO EM USD

08721  - 00003 - 7.0    - 00010  - PERMITIR TRANSFERENCIA DE ITENS APENAS SE POSSUIR SALDO TOTAL.

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

INCLUI NUMERO DO ITEM NA TABELA /PWS/ZYCIT279

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

Palavras Chave:

NRITEM - NUMERO - ITEM - ATO - CONCESSÓRIO - TABELA - RECEBIMENTO -

/PWS/ZYCIT279 - /PWS/SAPMZYCI040 - /PWS/SAPMZYCI017 - /PWS/SAPMZYCI052

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

Objetos da nota:

REPS /PWS/MZYCI017F02

REPS /PWS/MZYCI040F02

REPS /PWS/MZYCI052F01

REPS /PWS/ZYCIR279

TABD /PWS/ZYCIT279

TRAN /PWS/ZYCIR279

 

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

Modificações efetuadas em REPS /PWS/MZYCI017F02

 

...

                                     itab_ekpo2-aedat

                            CHANGING itab_zycit376-vlfob .

        ENDIF.

        CLEAR: v_variacfob.

        IF NOT itab_zycit279-menge  IS INITIAL

       AND NOT itab_zycit376-qtd_apro IS INITIAL.

          v_variacfob = itab_zycit279-menge *

           ( ( itab_zycit376-vlfob / itab_zycit376-qtd_apro ) -

             ( itab_zycit279-vltot / itab_zycit279-menge    ) ).

        ENDIF.

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

        itab_zycit279-nritem = itab_zycit245-nritem.

* << Fim da inclusão

        itab_zycit245-vlvinc = itab_zycit245-vlvinc - v_variacfob.

        MODIFY itab_zycit245 TRANSPORTING vlvinc WHERE

                                     nrseqd EQ itab_zycit245-nrseqd AND

                                       nritem EQ itab_zycit245-nritem.

        UPDATE /pws/zycit245 SET vlvinc = itab_zycit245-vlvinc

                             WHERE nrseqd EQ itab_zycit245-nrseqd

                               AND nritem EQ itab_zycit245-nritem.

      ENDIF.

      PERFORM taxa_converte USING    /pws/zycit001-waers

                                     /pws/zycit085-dttax

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI040F02

 

...

  ENDIF.

  FREE itab_zycit279_ap_aux.

  SELECT * FROM /pws/zycit282 INTO TABLE itab_zycit282_ap

      WHERE nrseqd EQ /pws/zycie244-nrseqd.             "#EC CI_NOFIRST

  LOOP AT itab_zycit279_ap.

    IF itab_zycit279_ap-dtdi IS INITIAL.

      MOVE itab_zycit279_ap-dtnf TO itab_data_di-data.

    ELSE.

      MOVE itab_zycit279_ap-dtdi TO itab_data_di-data.

    ENDIF.

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

    IF NOT itab_data_di-data IS INITIAL.

* << Fim da inclusão

    APPEND itab_data_di.

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

    ENDIF.

* << Fim da inclusão

    CLEAR: itab_zycit279_ap-qtd_perda, itab_zycit279_ap-qtd_perda_e.

    LOOP AT itab_zycit282_ap

            WHERE nrseqimp EQ itab_zycit279_ap-nrseq

              AND ebeln    EQ itab_zycit279_ap-ebeln

              AND ebelp    EQ itab_zycit279_ap-ebelp.

      itab_zycit279_ap-qtd_perda = itab_zycit279_ap-qtd_perda +

...

 

...

      MODIFY itab_zycit245_s TRANSPORTING vinculado vlvinc

        WHERE nrseqd = itab_zycit245_s-nrseqd

          AND nritem = itab_zycit245_s-nritem.

      IF sy-subrc NE 0 .

        APPEND itab_zycit245_s.

      ENDIF.

      itab_zycit279_ap_s = itab_zycit279_ap.

      itab_zycit279_ap_s-menge  =

      itab_zycit279_ap_s-slqtde = itab_zycit279_ap-qtd_transf  .

      itab_zycit279_ap_s-nrseqd = itab_zycit279_ap-nrseqd_d    .

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

      itab_zycit279_ap_s-nritem = itab_zycit245_s-nritem.

* << Fim da inclusão

      CLEAR:

          itab_zycit279_ap_s-nrseqd_d,  itab_zycit279_ap_s-perda,

          itab_zycit279_ap_s-qtd_perda, itab_zycit279_ap_s-qtd_transf,

          itab_zycit279_ap_s-transf, itab_zycit279_ap_s-vlpis,

          itab_zycit279_ap_s-multapis, itab_zycit279_ap_s-vmultapis,

          itab_zycit279_ap_s-jurospis, itab_zycit279_ap_s-vjurospis,

          itab_zycit279_ap_s-vlcof, itab_zycit279_ap_s-multacof,

          itab_zycit279_ap_s-vmultacof, itab_zycit279_ap_s-juroscof,

          itab_zycit279_ap_s-vjuroscof, itab_zycit279_ap_s-vafrmm,

          itab_zycit279_ap_s-multaafrmm, itab_zycit279_ap_s-vmultaafrmm,

...

 

...

  ENDIF.

  LOOP AT itab_zycit279_ap.

    MOVE-CORRESPONDING itab_zycit279_ap TO itab_zycit246_final.

    MOVE: itab_zycit279_ap-um_base TO itab_zycit246_final-meins.

    itab_zycit246_final-um_ncm = itab_zycit279_ap-meins.

    itab_zycit246_final-qtd_nacion = itab_zycit279_ap-slqtde -

                                     itab_zycit279_ap-qtd_transf.

    itab_zycit246_final-qtd_ncm = itab_zycit279_ap-menge.

    itab_zycit246_final-qtd_compv = itab_zycit279_ap-menge -

                                    itab_zycit279_ap-slqtde.

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

    IF NOT itab_zycit279_ap-nritem IS INITIAL.

      APPEND itab_zycit246_final.

      CONTINUE.

    ENDIF.

* << Fim da inclusão

    IF /pws/zycie244-tipo EQ 'F' OR

       ( ( /pws/zycie244-tipo EQ 'C' OR

           /pws/zycie244-tipo EQ 'N' ) AND

         /pws/zycit321-c_comum EQ 'X' AND

         /pws/zycie244-modalidade NE 'I' ) OR

         ( /pws/zycie244-modalidade EQ 'I' AND

           /pws/zycit321-it_ge EQ 'X'  ).

      IF /pws/zycie244-modalidade EQ 'S' AND

         /pws/zycie244-tipo NE 'F'.

        IF itab_zycit246_final-nrseqdi IS INITIAL.

...

 

...

            ENDIF.

          ELSE.

            READ TABLE itab_zycit245 WITH KEY

                            codcomp = itab_zycit433-matnr.

          ENDIF.

        ENDIF.

      ENDIF.

      itab_zycit246_final-nritem = itab_zycit245-nritem.

      itab_zycit246_final-codcomp = itab_zycit279_ap-matnr.

    ENDIF.

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

    itab_zycit279_ap-nritem = itab_zycit246_final-nritem.

    MODIFY itab_zycit279_ap.

* << Fim da inclusão

    APPEND itab_zycit246_final.

  ENDLOOP.

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI052F01

 

...

        /pws/zycit279-vltot =  itab_zycit330-vltot.

      ELSE.

        /pws/zycit279-vlfrete = j_1bnflin-netfre.

        /pws/zycit279-vlseg = j_1bnflin-netins.

        /pws/zycit279-vltot =  itab_zycit330-netwr.

      ENDIF.

      MOVE: itab_zycit330-ebeln  TO /pws/zycit279-ebeln  ,

            itab_zycit330-ebelp  TO /pws/zycit279-ebelp  ,

            itab_zycit330-docnum TO /pws/zycit279-docnum ,

            itab_zycit330-nrseqd TO /pws/zycit279-nrseqd ,

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

            itab_zycit330-nritem TO /pws/zycit279-nritem ,

* << Fim da inclusão

            itab_zycit330-menge  TO /pws/zycit279-menge  ,

            itab_zycit330-menge  TO /pws/zycit279-slqtde ,

            itab_zycit330-meins  TO /pws/zycit279-meins  ,

            itab_j_1bnflin-werks TO /pws/zycit279-werks  ,

            itab_zycit330-buzei  TO /pws/zycit279-buzei  ,

            itab_zycit330-lote   TO /pws/zycit279-lote   ,

            itab_zycit330-ncm    TO /pws/zycit279-j_1bnbm,

            itab_zycit330-menge  TO /pws/zycit279-qtd_iten,

            itab_zycit330-gewei  TO /pws/zycit279-gewei  ,

            itab_zycit245-waers  TO /pws/zycit279-waers  ,

...

 

 

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

Modificações efetuadas em REPS /PWS/ZYCIR279

 

* >> Início da inclusão:

REPORT  /pws/zycir279                 .

TABLES: /pws/zycit279,

        /pws/zycit321.

DATA: itab_zycit279 TYPE /pws/zycit279 OCCURS 0 WITH HEADER LINE,

      itab_zycit244 TYPE /pws/zycit244 OCCURS 0 WITH HEADER LINE,

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

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

      v_grupo       TYPE /pws/zycit433-grupo.

SELECT * FROM /pws/zycit244 INTO TABLE itab_zycit244.   "#EC CI_NOWHERE

SELECT * FROM /pws/zycit245 INTO TABLE itab_zycit245.   "#EC CI_NOWHERE

SELECT * FROM /pws/zycit279 INTO TABLE itab_zycit279.   "#EC CI_NOWHERE

SELECT * FROM /pws/zycit433 INTO TABLE itab_zycit433.   "#EC CI_NOWHERE

SELECT SINGLE * FROM /pws/zycit321.                     "#EC CI_NOWHERE

LOOP AT itab_zycit279 WHERE nritem EQ space.

  CLEAR: v_grupo.

  IF itab_zycit244-nrseqd NE itab_zycit279-nrseqd.

    READ TABLE itab_zycit244 WITH KEY nrseqd = itab_zycit279-nrseqd.

  ENDIF.

  IF itab_zycit244-tipo EQ 'G'.

    itab_zycit279-nritem = '90001'.

    MODIFY itab_zycit279 TRANSPORTING nritem

        WHERE nrseqd  EQ itab_zycit279-nrseqd

          AND nrseqdi EQ space.

    itab_zycit279-nritem = '00001'.

    MODIFY itab_zycit279 TRANSPORTING nritem

        WHERE nrseqd  EQ itab_zycit279-nrseqd

          AND nrseqdi NE space.

    CONTINUE.

  ENDIF.

  IF itab_zycit244-tipo EQ 'F' OR

    ( ( itab_zycit244-tipo EQ 'C' OR

        itab_zycit244-tipo EQ 'N' ) AND

      /pws/zycit321-c_comum EQ 'X' AND

      itab_zycit244-modalidade NE 'I' ) OR

    ( itab_zycit244-modalidade EQ 'I' AND

    /pws/zycit321-it_ge EQ 'X'  ).

    IF itab_zycit244-modalidade EQ 'S' AND

       itab_zycit244-tipo NE 'F'.

      IF itab_zycit279-nrseqdi IS INITIAL.

        LOOP AT itab_zycit245

                    WHERE j_1bnbm = itab_zycit279-j_1bnbm

                      AND nrseqd  = itab_zycit279-nrseqd

                      AND nritem  > 90000.                "#EC PORTABLE

          EXIT.

        ENDLOOP.

      ELSE.

        LOOP AT itab_zycit245

                    WHERE j_1bnbm = itab_zycit279-j_1bnbm

                      AND nrseqd  = itab_zycit279-nrseqd

                      AND nritem  < 90000.                "#EC PORTABLE

          EXIT.

        ENDLOOP.

      ENDIF.

    ELSE.

      READ TABLE itab_zycit245 WITH KEY

                      nrseqd  = itab_zycit279-nrseqd

                      j_1bnbm = itab_zycit279-j_1bnbm.

    ENDIF.

    itab_zycit279-nritem = itab_zycit245-nritem.

  ELSE.

    IF /pws/zycit321-it_ge EQ 'X' AND

       itab_zycit244-modalidade EQ 'I'.

      CLEAR:itab_zycit433.

      READ TABLE itab_zycit433 WITH KEY matnr = itab_zycit279-matnr.

      v_grupo = itab_zycit433-grupo.

      IF v_grupo IS INITIAL.

        CONTINUE.

      ENDIF.

      READ TABLE itab_zycit245 WITH KEY

                      nrseqd  = itab_zycit279-nrseqd

                      grupo = itab_zycit433-grupo.

    ELSE.

      IF itab_zycit244-modalidade EQ 'S' AND

         itab_zycit244-tipo NE 'F'.

        IF itab_zycit279-nrseqdi IS INITIAL.

          LOOP AT itab_zycit245

                      WHERE codcomp = itab_zycit279-matnr

                        AND nrseqd  = itab_zycit279-nrseqd

                        AND nritem  > 90000.              "#EC PORTABLE

            EXIT.

          ENDLOOP.

        ELSE.

          LOOP AT itab_zycit245

                      WHERE codcomp = itab_zycit279-matnr

                        AND nrseqd  = itab_zycit279-nrseqd

                        AND nritem  < 90000.              "#EC PORTABLE

            EXIT.

          ENDLOOP.

        ENDIF.

      ELSE.

        READ TABLE itab_zycit245 WITH KEY

                        nrseqd  = itab_zycit279-nrseqd

                        codcomp = itab_zycit279-matnr.

      ENDIF.

      IF sy-subrc NE 0.

        CLEAR:itab_zycit433.

        READ TABLE itab_zycit433 WITH KEY matnr = itab_zycit279-matnr.

        v_grupo = itab_zycit433-grupo.

        IF v_grupo IS INITIAL.

          CONTINUE.

        ENDIF.

        CLEAR: itab_zycit245.

        LOOP AT itab_zycit433 WHERE grupo EQ v_grupo.

          IF itab_zycit244-modalidade EQ 'S' AND

             itab_zycit244-tipo NE 'F'.

            IF itab_zycit279-nrseqdi IS INITIAL.

              LOOP AT itab_zycit245

                          WHERE codcomp = itab_zycit433-matnr

                            AND nrseqd  = itab_zycit279-nrseqd

                            AND nritem  > '90000'.        "#EC PORTABLE

                EXIT.

              ENDLOOP.

            ELSE.

              LOOP AT itab_zycit245

                          WHERE codcomp = itab_zycit433-matnr

                            AND nrseqd  = itab_zycit279-nrseqd

                            AND nritem  < '90000'.        "#EC PORTABLE

                EXIT.

              ENDLOOP.

            ENDIF.

          ELSE.

            READ TABLE itab_zycit245 WITH KEY

                            nrseqd  = itab_zycit279-nrseqd

                            codcomp = itab_zycit433-matnr.

          ENDIF.

          IF itab_zycit245-nritem IS INITIAL.

            EXIT.

          ENDIF.

        ENDLOOP.

      ENDIF.

    ENDIF.

    itab_zycit279-nritem = itab_zycit245-nritem.

  ENDIF.

  IF v_grupo IS INITIAL.

    IF itab_zycit279-nrseqdi IS INITIAL.

      MODIFY itab_zycit279 TRANSPORTING nritem

          WHERE nrseqd  EQ itab_zycit279-nrseqd

            AND nrseqdi EQ space

            AND matnr   EQ itab_zycit279-matnr.

    ELSE.

      MODIFY itab_zycit279 TRANSPORTING nritem

          WHERE nrseqd  EQ itab_zycit279-nrseqd

            AND nrseqdi NE space

            AND matnr   EQ itab_zycit279-matnr.

    ENDIF.

  ELSE.

    LOOP AT itab_zycit433 WHERE grupo EQ v_grupo.

      IF itab_zycit279-nrseqdi IS INITIAL.

        MODIFY itab_zycit279 TRANSPORTING nritem

            WHERE nrseqd  EQ itab_zycit279-nrseqd

              AND nrseqdi EQ space

              AND matnr   EQ itab_zycit433-matnr.

      ELSE.

        MODIFY itab_zycit279 TRANSPORTING nritem

            WHERE nrseqd  EQ itab_zycit279-nrseqd

              AND nrseqdi NE space

              AND matnr   EQ itab_zycit433-matnr.

      ENDIF.

    ENDLOOP.

  ENDIF.

ENDLOOP.

MODIFY /pws/zycit279 FROM TABLE itab_zycit279.

MESSAGE s015(/pws/zycim) WITH text-001.

.

* << Fim da inclusão

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCI040

 

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 001

 

Texto: (11 caracteres)

"Atualizada tabela /pws/zycit279 com sucesso!"

 

Comprimento máximo: 50

 

 

 

 

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

Modificações efetuadas em TABD /PWS/ZYCIT279

 

 

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

...

ATOCONCES        CHAR13                     CHAR    13

WERKS            WERKS_D                    CHAR     4

COB_CAMB         /PWS/ZYCIL841              CHAR     1

* >> Início da inclusão:

NRITEM           CHAR05                     CHAR     5

* << Fim da inclusão

 

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

Modificações efetuadas em TRAN /PWS/ZYCIR279

*Criar transação: /PWS/ZYCIR279

 

*Tipo de transação:     Programa e tela de seleção (transação de report)

*Código de transação:   /PWS/ZYCIR279

*Cl.desenvolvimento:    /PWS/ZYCI

*Texto da transação:    Preenche nritem da tab /pws/zycit

*Programa:              /PWS/ZYCIR279

*Tela de seleção:       1000