CE PLUS - Nota 009167

Módulo: DRAWBACK

Funcionalidade: Parâmetros

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

Data/Hora Última Alteração: 17/02/2011 15:41:25

Descrição da Nota: DESENVOLVIMENTO DA LISTA TÉCNICA COMPLEMENTAR.

Sintoma

Desenvolvimento da lista técnica complementar.

 

 

Solução

Desenvolvimento da lista técnica complementar.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

ESTA QUEBRANDO ITEM GENÉRICO NA CRIAÇÃO DO ATO CONCESSÓRIO DE ISENÇÃO

UTILIZAÇÃO DOS INSUMOS DA TABELA /PWS/ZYCIT322

Informações Complementares

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

Nota Número 09167 Data: 08/10/2009 Hora: 15:07:33

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

 

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

Nota Número              : 09167

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00001

Agrupamento              : 00001

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

Referência às notas relacionadas:

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

 

07576  - 00001 - 7.0    - 00007  - UTILIZAÇÃO DOS INSUMOS DA TABELA /PWS/ZYCIT322

09014  - 00002 - 7.0    - 00010  - ESTA QUEBRANDO ITEM GENÉRICO NA CRIAÇÃO DO ATO CONCESSÓRIO DE ISE

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

DESENVOLVIMENTO DA LISTA TÉCNICA COMPLEMENTAR.

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

Palavras Chave:

DESENVOLVIMENTO - LISTA - TÉCNICA - COMPLEMENTAR

/PWS/SAPMZYCI083

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

Objetos da nota:

REPS /PWS/MZYCI040F02

REPS /PWS/MZYCI083F01

REPS /PWS/MZYCI083I01

REPS /PWS/MZYCI083O01

REPS /PWS/MZYCI083TOP

REPS /PWS/SAPMZYCI083

REPS /PWS/ZYCIR106

REPT /PWS/SAPMZYCI083

SHI3 /PWS/ZYCID

TABL /PWS/ZYCIE502

TABL /PWS/ZYCIT502

TRAN /PWS/ZYCI083

 

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

Modificações efetuadas em REPS /PWS/MZYCI040F02

 

...

  IF v_tcode2 EQ '/PWS/ZYCI040_A'.

    DELETE FROM /pws/zycit427 WHERE nrseqd = /pws/zycie244-nrseqd.

    DELETE FROM /pws/zycit245 WHERE nrseqd = /pws/zycie244-nrseqd.

    DELETE FROM /pws/zycit246 WHERE nrseqd = /pws/zycie244-nrseqd.

    DELETE FROM /pws/zycit247 WHERE nrseqd = /pws/zycie244-nrseqd.

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

    DELETE FROM /pws/zycit248 WHERE nrseqd = /pws/zycie244-nrseqd.

* << Fim da exclusão

    DELETE FROM /pws/zycit243 WHERE nrseqd = /pws/zycie244-nrseqd.

    DELETE FROM /pws/zycit277 WHERE nrseqd = /pws/zycie244-nrseqd.

    DELETE FROM /pws/zycit457 WHERE nrseqd = /pws/zycie244-nrseqd.

    DELETE FROM /pws/zycit470

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

    DELETE FROM /pws/zycit250 WHERE nrseqd = /pws/zycie244-nrseqd.

    COMMIT WORK.

...

 

...

  MODIFY /pws/zycit244 FROM /pws/zycie244.

  MODIFY /pws/zycit427 FROM TABLE itab_zycit427.

  MODIFY /pws/zycit245 FROM TABLE itab_zycit245.

  MODIFY /pws/zycit246 FROM TABLE itab_zycit246_final.

  MODIFY /pws/zycit247 FROM TABLE itab_zycit247.

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

  MODIFY /pws/zycit248 FROM TABLE itab_zycit248_final.

* << Fim da exclusão

  MODIFY /pws/zycit243 FROM TABLE itab_centros2.

  MODIFY /pws/zycit457 FROM TABLE itab_zycit457.

  MODIFY /pws/zycit470 FROM TABLE itab_zycit470_s.

  MODIFY /pws/zycit250 FROM TABLE itab_zycit250.

  IF NOT itab_zycit279_ap[] IS INITIAL.

...

 

...

                              CHANGING itab_zycit245-um_ncm

                                       itab_zycit245-werks

                                       itab_zycit245-qtd_ncm.

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

        CLEAR itab_zycit433.

        READ TABLE itab_zycit433 WITH KEY

                grupo = itab_zycit260_a-grupo.

        IF sy-subrc NE 0.

          SELECT SINGLE * FROM /pws/zycit433

            INTO itab_zycit433

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

            WHERE grupo EQ itab_zycit260_a-grupo.

* << Fim da exclusão

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

            WHERE grupo EQ itab_zycit260_a-grupo.       "#EC CI_NOFIRST

* << Fim da inclusão

          APPEND itab_zycit433.

        ENDIF.

        itab_zycit245-j_1bnbm = itab_zycit433-j_1bnbm.

        CLEAR: itab_zycit245-codcomp.

      ENDIF.

      MOVE: itab_zycit245-ntgewt  TO v_arred              ,

            v_arred               TO itab_zycit245-ntgewt ,

            itab_zycit245-qtd_tot TO v_arred              ,

            v_arred               TO itab_zycit245-qtd_tot,

            itab_zycit245-qtd_ncm TO v_arred              ,

...

 

 

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

Modificações efetuadas em REPS /PWS/SAPMZYCI083

*Desenvolvimento do programa /PWS/SAPMZYCI083

 

*Caracteristicas

 

Titulo: Lista técnica complementar

Idioma original: PT

 

*Atributos:

 

Categoria: Pool de Módulo

Cl. Desenvolvimento: /PWS/ZYCI

Aritmética em ponto fixo.

 

*Código fonte

 

*&---------------------------------------------------------------------*

*& Pool móds.        /PWS/SAPMZYCI083                                  *

*&                                                                     *

*&---------------------------------------------------------------------*

*&                                                                     *

*&                                                                     *

*&---------------------------------------------------------------------*

 

 

INCLUDE /PWS/MZYCI083TOP                        .                      "

 

 INCLUDE /PWS/MZYCI083O01                        .

 INCLUDE /PWS/MZYCI083I01                        .

 INCLUDE /PWS/MZYCI083F01                        .

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI083F01

 

* >> Início da inclusão:

FORM save.

  IF itab_zycit502[] NE itab_zycit502s[].

    IF NOT itab_zycit502d[] IS INITIAL.

      DELETE /pws/zycit502 FROM TABLE itab_zycit502d.

    ENDIF.

    MODIFY /pws/zycit502 FROM TABLE itab_zycit502.

  ENDIF.

  REFRESH: itab_zycit502s, itab_zycit502d.

  itab_zycit502s[] = itab_zycit502[].

  MESSAGE i015 WITH text-003.

ENDFORM.

FORM new_nritem.

  CLEAR: itab_zycit502e.

  LOOP AT itab_zycit502e.

  ENDLOOP.

  ADD 1 TO itab_zycit502e-nritem.

  /pws/zycie502-nritem = itab_zycit502e-nritem.

ENDFORM.

FORM eliminar.

  IF v_tela EQ '0102'.

    READ TABLE itab_zycit502e WITH KEY mark = 'X'.

    IF sy-subrc NE 0.

      MESSAGE i015 WITH text-001.

      EXIT.

    ENDIF.

    itab_zycit502d = itab_zycit502e.

    APPEND itab_zycit502d.

    DELETE itab_zycit502e WHERE mark EQ 'X'.

    DELETE itab_zycit502 WHERE matnr  EQ itab_zycit502e-matnr

                           AND werks  EQ itab_zycit502e-werks

                           AND nritem EQ itab_zycit502e-nritem.

  ELSE.

    READ TABLE itab_cab WITH KEY mark = 'X'.

    IF sy-subrc NE 0.

      MESSAGE i015 WITH text-001.

      EXIT.

    ENDIF.

    LOOP AT itab_zycit502 WHERE matnr EQ itab_cab-matnr

                            AND werks EQ itab_cab-werks.

      itab_zycit502d = itab_zycit502.

      APPEND itab_zycit502d.

      DELETE itab_zycit502.

    ENDLOOP.

    DELETE itab_cab WHERE matnr EQ itab_cab-matnr

                      AND werks EQ itab_cab-werks.

  ENDIF.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI083I01

 

* >> Início da inclusão:

MODULE user_command_0100 INPUT.

  CASE v_okcode.

    WHEN 'SAVE'.

      PERFORM save.

    WHEN 'DELETE'.

      PERFORM eliminar.

    WHEN 'FS_PRODUTO'.

      v_tela = '0101'.

      ts_lista-activetab = v_okcode.

    WHEN 'FS_INSUMO'.

      READ TABLE itab_cab WITH KEY mark = 'X'.

      IF sy-subrc EQ 0.

        ts_lista-activetab = v_okcode.

        v_tela = '0102'.

        REFRESH itab_zycit502e.

        LOOP AT itab_zycit502 WHERE matnr EQ itab_cab-matnr

                                AND werks EQ itab_cab-werks.

          itab_zycit502e = itab_zycit502.

          SELECT SINGLE maktx FROM makt

              INTO itab_zycit502e-maktx

            WHERE matnr EQ itab_zycit502e-insumo

              AND spras EQ sy-langu.

          APPEND itab_zycit502e.

        ENDLOOP.

      ELSE.

        MESSAGE i015 WITH text-001.

      ENDIF.

    WHEN OTHERS.

  ENDCASE.

ENDMODULE.

MODULE modif_t101 INPUT.

  CHECK NOT /pws/zycie502-matnr IS INITIAL.

  CLEAR itab_cab.

  IF v_mark EQ 'X'.

    MODIFY itab_cab TRANSPORTING mark WHERE mark EQ 'X'.

  ENDIF.

  READ TABLE itab_cab INDEX tc_cab-current_line.

  IF sy-subrc EQ 0.

    IF itab_cab-qtd_cab NE /pws/zycie502-qtd_cab OR

       itab_cab-meinsc NE /pws/zycie502-meinsc.

      itab_zycit502 = /pws/zycie502.

      MODIFY itab_zycit502 TRANSPORTING qtd_cab meinsc

          WHERE matnr EQ itab_cab-matnr

            AND werks EQ itab_cab-werks.

      itab_cab-qtd_cab = /pws/zycie502-qtd_cab.

      itab_cab-meinsc = /pws/zycie502-meinsc.

    ENDIF.

    itab_cab-mark = v_mark.

    MODIFY itab_cab INDEX tc_cab-current_line.

  ELSE.

    READ TABLE itab_cab WITH KEY

                  matnr = /pws/zycie502-matnr

                  werks = /pws/zycie502-werks.

    IF sy-subrc EQ 0.

      MESSAGE i015 WITH text-002.

      EXIT.

    ENDIF.

    itab_cab = /pws/zycie502.

    SELECT SINGLE maktx FROM makt

        INTO itab_cab-maktx

      WHERE matnr EQ itab_cab-matnr

        AND spras EQ sy-langu.

    itab_cab-mark = v_mark.

    APPEND itab_cab.

  ENDIF.

ENDMODULE.

MODULE user_command_0100_exit INPUT.

  CASE v_okcode.

    WHEN 'BACK'.

      IF v_tela EQ '0102'.

        v_tela = '0101'.

        ts_lista-activetab = 'FS_PRODUTO'.

        LEAVE SCREEN.

      ELSE.

        LEAVE PROGRAM.

      ENDIF.

    WHEN 'EXIT'.

      LEAVE PROGRAM.

  ENDCASE.

ENDMODULE.

MODULE preenche_102 INPUT.

  CLEAR: itab_zycit502e.

  IF v_mark EQ 'X'.

    MODIFY itab_zycit502e TRANSPORTING mark

            WHERE mark EQ 'X'.

  ENDIF.

  READ TABLE itab_zycit502e INDEX tc_item-current_line.

  IF sy-subrc EQ 0.

    itab_zycit502e-qtd   = /pws/zycie502-qtd.

    itab_zycit502e-meins = /pws/zycie502-meins.

    itab_zycit502e-datuv = /pws/zycie502-datuv.

    itab_zycit502e-datub = /pws/zycie502-datub.

    itab_zycit502e-mark  = v_mark.

    MODIFY itab_zycit502e INDEX tc_item-current_line.

    MODIFY itab_zycit502 FROM /pws/zycie502

          TRANSPORTING qtd meins datuv datub

          WHERE matnr  EQ itab_zycit502e-matnr

            AND werks  EQ itab_zycit502e-werks

            AND nritem EQ itab_zycit502e-nritem.

  ELSE.

    READ TABLE itab_zycit502e WITH KEY

            insumo = /pws/zycie502-insumo.

    IF sy-subrc EQ 0.

      MESSAGE i015 WITH text-004 .

      EXIT.

    ENDIF.

    PERFORM new_nritem.

    itab_zycit502e         = /pws/zycie502.

    itab_zycit502e-matnr   = itab_cab-matnr.

    itab_zycit502e-werks   = itab_cab-werks.

    itab_zycit502e-qtd_cab = itab_cab-qtd_cab.

    itab_zycit502e-meinsc  = itab_cab-meinsc.

    SELECT SINGLE maktx FROM makt

        INTO itab_zycit502e-maktx

      WHERE matnr EQ itab_zycit502e-insumo

        AND spras EQ sy-langu.

    APPEND itab_zycit502e.

    APPEND itab_zycit502e TO itab_zycit502.

  ENDIF.

ENDMODULE.

.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI083O01

 

* >> Início da inclusão:

MODULE preenc_t101 OUTPUT.

  /pws/zycie502 = itab_cab.

  v_mark = itab_cab-mark.

  IF /pws/zycie502-matnr NE space.

    LOOP AT SCREEN.

      IF screen-group1 EQ 'CL'.

        screen-input = 0.

        MODIFY SCREEN.

      ENDIF.

    ENDLOOP.

  ENDIF.

ENDMODULE.

MODULE status_0100 OUTPUT.

  SET PF-STATUS 'ST0100'.

  SET TITLEBAR 'TL0100'.

  IF v_init IS INITIAL.

    v_init = 'X'.

    SELECT * FROM /pws/zycit502

        INTO TABLE itab_zycit502s

        WHERE matnr NE space.

    SORT itab_zycit502s BY matnr werks nritem.

    itab_zycit502[] = itab_zycit502s[].

    CLEAR itab_cab.

    LOOP AT itab_zycit502.

      IF itab_cab-matnr NE itab_zycit502-matnr OR

         itab_cab-werks NE itab_zycit502-werks.

        itab_cab = itab_zycit502.

        SELECT SINGLE maktx FROM makt

            INTO itab_cab-maktx

          WHERE matnr EQ itab_zycit502-matnr

            AND spras EQ sy-langu.

        APPEND itab_cab.

      ENDIF.

    ENDLOOP.

  ENDIF.

ENDMODULE.

MODULE status_0200 OUTPUT.

  DESCRIBE TABLE itab_zycit502e LINES tc_item-lines.

  ADD 10 TO tc_item-lines.

ENDMODULE.

MODULE preenche_tl102 OUTPUT.

  /pws/zycie502 = itab_zycit502e.

  v_mark = itab_zycit502e-mark.

  IF /pws/zycie502-nritem NE space.

    LOOP AT SCREEN.

      IF screen-name EQ '/PWS/ZYCIE502-INSUMO'.

        screen-input = '0'.

        modify screen.

      ENDIF.

    ENDLOOP.

  ENDIF.

ENDMODULE.

MODULE status_0101 OUTPUT.

  DESCRIBE TABLE itab_cab LINES tc_cab-lines.

  ADD 10 TO tc_cab-lines.

ENDMODULE.

.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI083TOP

 

* >> Início da inclusão:

PROGRAM  /pws/sapmzyci083    MESSAGE-ID /pws/zycim         .

TABLES: /pws/zycie502.

CONTROLS: tc_cab   TYPE TABLEVIEW USING SCREEN '0101',

          tc_item  TYPE TABLEVIEW USING SCREEN '0102',

          ts_lista TYPE TABSTRIP.                           "#EC NEEDED

DATA BEGIN OF itab_cab OCCURS 0 .

        INCLUDE STRUCTURE /pws/zycit502.

DATA: maktx TYPE makt-maktx,

      mark TYPE c.

DATA END OF itab_cab.

DATA: itab_zycit502  TYPE /pws/zycit502 OCCURS 0 WITH HEADER LINE,

      itab_zycit502e LIKE itab_cab      OCCURS 0 WITH HEADER LINE,

      itab_zycit502d TYPE /pws/zycit502 OCCURS 0 WITH HEADER LINE,

      itab_zycit502s TYPE /pws/zycit502 OCCURS 0 WITH HEADER LINE.

DATA: v_okcode TYPE sy-ucomm,

      v_init,

      v_tela(4) TYPE c VALUE '0101',

      v_mark.

* << Fim da inclusão

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCI083                        0100

 

 

****************************************************************

*   THIS FILE IS GENERATED BY THE SCREEN PAINTER.              *

*   NEVER CHANGE IT MANUALLY, PLEASE !                         *

****************************************************************

%_DYNPRO

/PWS/SAPMZYCI083

0100

46C

             40

%_HEADER

/PWS/SAPMZYCI083                        0100 0100     27129192 35  0  0 28130  0G P

20090930155729

%_DESCRIPTION

CI - Produto final

%_FIELDS

TS_LISTA

1290800000000  1  2J101  1  1    27I                           27129

FS_PRODUTO

CHAR  70000003000  1  1I101  1  1     0P                            0  0102SS1

Produto

FS_PRODUTO

FS_INSUMO

CHAR  60000003000  1  2I101  1  1     0P                            0  0103SS1

Insumo

FS_INSUMO

SS1

12700C0003000  3  3I101  0  0    24B                            3  3104

V_OKCODE

CHAR 208010000000255  1O  0  0  0     0                             0  0

____________________

%_FLOWLOGIC

 

PROCESS BEFORE OUTPUT.

 

  MODULE status_0100.

 

  CALL SUBSCREEN ss1 INCLUDING sy-repid v_tela.

 

PROCESS AFTER INPUT.

  CALL SUBSCREEN ss1.

 

  MODULE: user_command_0100,

          user_command_0100_exit AT EXIT-COMMAND.

%_PARAMS

 

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCI083                        0101

 

 

****************************************************************

*   THIS FILE IS GENERATED BY THE SCREEN PAINTER.              *

*   NEVER CHANGE IT MANUALLY, PLEASE !                         *

****************************************************************

%_DYNPRO

/PWS/SAPMZYCI083

0101

46C

             40

%_HEADER

/PWS/SAPMZYCI083                        0101I0101     27 92192 35  0  0 28130  0G P

20091008102627

%_DESCRIPTION

CI - Produto final

%_FIELDS

TC_CAB

92F5F8000000  1  2E101  1  1    27T                            0  0

/PWS/ZYCIE502-MATNR

2CHAR 153000003080  1  1T101  1  1    18                             0  0

Material_______

ITAB_CAB-MAKTX

0CHAR  90000003080  1  2T101  1  1    40                             0  0

Descrição

/PWS/ZYCIE502-WERKS

2CHAR 153000003080  1  3T101  1  1     5                             0  0

Centro_________

/PWS/ZYCIE502-QTD_CAB

0CHAR 113000003080  1  4T101  1  1    38                             0  0

Quantidade_

/PWS/ZYCIE502-MEINSC

2CHAR 153000003080  1  5T101  1  1     3                             0  0

UM_base________

V_MARK

CCHAR  18000800020  1  0T101  1  1     1C                            0  0102

_

/PWS/ZYCIE502-MATNR

CCHAR 18A000A04000  1  1T101  1  1    18  MAT                 MATN1 18  0

CL          ?_________________

X

ITAB_CAB-MAKTX

CCHAR 408000803000  1  2T101  1  1    40                             0  0

________________________________________

/PWS/ZYCIE502-WERKS

CCHAR  4A000A04000  1  3T101  1  1     5  WRK                        4  0

CL          ?___

X

/PWS/ZYCIE502-QTD_CAB

PQUAN 18A020B04000  1  4T101  1  1    18                            13  3   /PWS/ZYCIE502-MEINSC

?.___.___.___,___V

/PWS/ZYCIE502-MEINSC

CUNIT  3A000A44008  1  5T101  1  1     3                      CUNIT  3  0

?__

X

 

CHAR 208010000000255  1O  0  0  0     0                             0  0

____________________

%_FLOWLOGIC

 

PROCESS BEFORE OUTPUT.

 MODULE STATUS_0101.

 

  LOOP AT itab_cab WITH CONTROL tc_cab

                                    CURSOR tc_cab-current_line.

    MODULE preenc_t101.

  ENDLOOP.

 

PROCESS AFTER INPUT.

  LOOP AT itab_cab.

    MODULE modif_t101.

  ENDLOOP.

 

* MODULE USER_COMMAND_0100.

%_PARAMS

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCI083                        0102

 

****************************************************************

*   THIS FILE IS GENERATED BY THE SCREEN PAINTER.              *

*   NEVER CHANGE IT MANUALLY, PLEASE !                         *

****************************************************************

%_DYNPRO

/PWS/SAPMZYCI083

0102

46C

             40

%_HEADER

/PWS/SAPMZYCI083                        0102I0102     28120192 35  0  0 28123  0G P

20091008091347

%_DESCRIPTION

CI - Insumo

%_FIELDS

/PWS/ZYCIE502-MATNR

2CHAR 153000003000  1  2   0  0  0     0                             0  0

Material_______

X

ITAB_CAB-MATNR

CCHAR 188000803000  1 19   0  0  0     0                             0  0

__________________

ITAB_CAB-MAKTX

CCHAR 408000803100  1 39   0  0  0     0                             0  0

________________________________________

/PWS/ZYCIE502-QTD_CAB

0CHAR 153000003000  2  2   0  0  0     0                             0  0

Quantidade_base

X

ITAB_CAB-QTD_CAB

PQUAN 188020803000  2 19   0  0  0     0                             0  0   ITAB_CAB-MEINSC

__________________

ITAB_CAB-MEINSC

CCHAR  38000803000  2 38   0  0  0     0                             0  0

___

TC_ITEM

120F5F8000000  4  2E101  1  1    25T                            0  0

/PWS/ZYCIE502-NRITEM

0CHAR  43000003080  1  1T101  1  1     5                             0  0

Item

/PWS/ZYCIE502-INSUMO

2CHAR 153000003080  1  2T101  1  1    18                             0  0

Material_______

ITAB_ZYCIT502E-MAKTX

0CHAR  90000003080  1  3T101  1  1    40                             0  0

Descrição

/PWS/ZYCIE502-QTD

0CHAR 103000003080  1  4T101  1  1    38                             0  0

Quantidade

/PWS/ZYCIE502-MEINS

2CHAR 153000003080  1  5T101  1  1     3                             0  0

UM_base________

/PWS/ZYCIE502-DATUV

2CHAR 123000003080  1  6T101  1  1    10                             0  0

Válido_desde

/PWS/ZYCIE502-DATUB

2CHAR  43000003080  1  7T101  1  1    10                             0  0

até_

V_MARK

CCHAR  18000800020  1  0T101  1  1     1C                            0  0102

_

/PWS/ZYCIE502-NRITEM

NNUMC  5A000807000  1  1T101  1  1     50                            5  0

_____

/PWS/ZYCIE502-INSUMO

CCHAR 18A000A04000  1  2T101  1  1    18  MAT                 MATN1 18  0

?_________________

X

ITAB_ZYCIT502E-MAKTX

CCHAR 408000803000  1  3T101  1  1    40                             0  0

________________________________________

/PWS/ZYCIE502-QTD

PQUAN 18A020B04000  1  4T101  1  1    18                            13  3   /PWS/ZYCIE502-MEINS

?.___.___.___,___V

/PWS/ZYCIE502-MEINS

CUNIT  3A000A44008  1  5T101  1  1     3                      CUNIT  3  0

?__

X

/PWS/ZYCIE502-DATUV

DDATS 10A000A04008  1  6T101  1  1    10                             8  0

?_________

X

/PWS/ZYCIE502-DATUB

DDATS 10A000A04008  1  7T101  1  1    10                             8  0

?_________

X

 

CHAR 208010000000255  1O  0  0  0     0                             0  0

____________________

%_FLOWLOGIC

 

PROCESS BEFORE OUTPUT.

 

  MODULE status_0200.

 

  LOOP AT itab_zycit502e WITH CONTROL tc_item

                                    CURSOR tc_item-current_line.

 

    MODULE preenche_tl102.

  ENDLOOP.

 

PROCESS AFTER INPUT.

  LOOP AT itab_zycit502e.

    CHAIN.

      FIELD : /PWS/ZYCIE502-INSUMO,

              /PWS/ZYCIE502-QTD,

              /PWS/ZYCIE502-MEINS,

              /PWS/ZYCIE502-DATUV,

              /PWS/ZYCIE502-DATUB,

              v_mark

          MODULE preenche_102 ON CHAIN-REQUEST.

    ENDCHAIN.

  ENDLOOP.

 

* MODULE USER_COMMAND_0200.

%_PARAMS

 

 

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

Modificações efetuadas em REPS /PWS/ZYCIR106

 

...

DATA: BEGIN OF i_mara OCCURS 0,

        matnr LIKE mara-matnr,

        mtart LIKE mara-mtart,

* >> Início da inclusão:

        meins TYPE mara-meins,

* << Fim da inclusão

      END OF i_mara.

...

 

...

START-OF-SELECTION.

  SELECT SINGLE * FROM /pws/zycit321 INTO wa_zycit321.

  IF sy-subrc NE 0.

    FREE MEMORY ID idmemory2.

  ELSE.

    IMPORT it_materiais FROM MEMORY ID idmemory1.

    IF sy-subrc EQ 0.

    SELECT * FROM /pws/zycit322 INTO TABLE itab_zycit322."#EC CI_NOWHERE

* >> Início da exclusão:

      SELECT matnr mtart INTO TABLE i_mara FROM mara

* << Fim da exclusão

* >> Início da inclusão:

      SELECT matnr mtart meins INTO TABLE i_mara FROM mara

* << Fim da inclusão

             FOR ALL ENTRIES IN it_materiais

             WHERE matnr EQ it_materiais-matnr.

      so_data = dtval = sy-datum.

      LOOP AT i_mara.

        READ TABLE it_materiais WITH KEY matnr = i_mara-matnr.

        SELECT SINGLE * FROM t001w

          WHERE werks EQ it_materiais-werks.

        wa_zycit321-capid1 = wa_zycit321-capid2 =

                    it_materiais-capid.

        wa_zycit321-stlan1 = wa_zycit321-stlan2 =

...

 

...

        v_stlal = it_materiais-stlal.

        v_centro = p_centro = it_materiais-werks.

        PERFORM f_lista_tecnica USING i_mara-matnr

                                      v_centro

                                      i_mara-mtart

                                      dtval

                                      tipo

                                      unidade

                                      pnivel.

      ENDLOOP.

* >> Início da inclusão:

      PERFORM lista_complem.

* << Fim da inclusão

      EXPORT i_final TO MEMORY ID idmemory2.

      FREE MEMORY ID idmemory1.

    ELSE.

      FREE MEMORY ID idmemory2.

    ENDIF.

  ENDIF.

FORM f_lista_tecnica USING v_item v_centro v_mtart

                           v_dtval v_tipo v_meins v_prim_nivel.

...

 

...

* >> Início da inclusão:

FORM lista_complem.

  DATA: itab_zycit502 TYPE /pws/zycit502 OCCURS 0 WITH HEADER LINE.

  SELECT * FROM /pws/zycit502 INTO TABLE itab_zycit502

      FOR ALL ENTRIES IN it_materiais

      WHERE matnr EQ it_materiais-matnr

        AND werks EQ it_materiais-werks

        AND datuv LE sy-datlo

        AND datub GE sy-datlo.

  LOOP AT it_materiais.

    CLEAR: i_final.

    SELECT SINGLE a~steuc INTO i_final-ncm

      FROM ( marc AS a INNER JOIN t001w AS b ON        "#EC CI_BUFFJOIN

        a~werks EQ b~werks )

               WHERE a~matnr EQ it_materiais-matnr

                 AND a~steuc NE space

                 AND b~land1 EQ t001w-land1.

    READ TABLE i_mara WITH KEY matnr = it_materiais-matnr.

    READ TABLE itab_zycit502 WITH KEY matnr = it_materiais-matnr

                                      werks = it_materiais-werks.

    PERFORM converte_unidades USING itab_zycit502-matnr

                                    itab_zycit502-meinsc

                                    i_mara-meins

                           CHANGING itab_zycit502-qtd_cab.

    itab_zycit502-meinsc = i_mara-meins.

    MODIFY itab_zycit502 TRANSPORTING meinsc qtd_cab

                    WHERE matnr EQ it_materiais-matnr

                      AND werks EQ it_materiais-werks.

    LOOP AT itab_zycit502 WHERE matnr EQ it_materiais-matnr

                            AND werks EQ it_materiais-werks.

      i_final-qtunit = itab_zycit502-qtd / itab_zycit502-qtd_cab.

      i_final-meins   = itab_zycit502-meins.

      i_final-insumo  = itab_zycit502-insumo.

      i_final-produto = itab_zycit502-matnr.

      i_final-centro  = itab_zycit502-werks.

      PERFORM carrega_umncm_real USING i_final-insumo

                              CHANGING i_final-meins

                                       i_final-qtunit.

      IF NOT i_final-qtunit IS INITIAL.

        COLLECT i_final.

      ENDIF.

    ENDLOOP.

  ENDLOOP.

  SORT i_final BY produto insumo.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCI083

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 004

 

Texto: (17 caracteres)

"Input registered!"

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 003

 

Texto: (28 caracteres)

"Register successfully saved."

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 002

 

Texto: (33 caracteres)

"Material/plant already registred!"

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 001

 

Texto: (20 caracteres)

"Select a valid line."

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 001

 

Texto: (24 caracteres)

"Marcar uma linha válida."

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 002

 

Texto: (31 caracteres)

"Material/centro já cadastrados!"

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 003

 

Texto: (31 caracteres)

"Registros gravados com sucesso."

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 004

 

Texto: (21 caracteres)

"Insumo já cadastrado!"

 

Comprimento máximo: 50

 

 

 

*Título

     Code título          Título

 

     TL0100               Lista Técnica Complementar

 

 

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

Modificações efetuadas em Status GUI    ST0100

 

* Teclas de função

 

Tecla F Tecla de função     Categoria  Código de função     Texto

 

00      ENTER                          ENTER                Enter

03      F3                  E          BACK                 Voltar

11      Ctrl-S                         SAVE                 Gravar

12      F12                 E          EXIT                 Cancelar

14      Shift-F2                       DELETE               Eliminar

15      Shift-F3            E          EXIT                 Encerrar

 

 

*Barra de botões

 

Code Item Tecla de função   Código de função   Nome de ícone

 

0001 01   Shift-F2          DELETE             ICON_DELETE

 

 

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

Modificações efetuadas em SHI3 /PWS/ZYCID

 

Incluir transação /pws/zyci083 na pasta parametros do menu /pws/zycid.

 

Texto descritivo: Listá Técnica Complementar

 

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

Modificações efetuadas em TABL /PWS/ZYCIE502

Criar tabela

 

*Características gerais:

 

Nome da tabela     /PWS/ZYCIE502

Descrição breve    CI - lista técnica complementar

Ctg.tabela         Estrutura

 

 

*Campos

 

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

 

     .INCLUDE   /PWS/ZYCIT502

 

 

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

Modificações efetuadas em TABL /PWS/ZYCIT502

Criar tabela.

 

 

*Características gerais:

 

Nome da tabela     /PWS/ZYCIT502

Descrição breve    CI - lista técnica complementar

Ctg.tabela         Tabela transparente

Arm.bff.permitido

AtualTab.permitida X

Classe de entrega  A

 

 

*Campos

 

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

 

     MANDT      X   MANDT                   CLNT     3

     MATNR      X   MATNR                   CHAR    18

     WERKS      X   WERKS_D                 CHAR     4

     NRITEM     X   NUMC5                   NUMC     5

     INSUMO         MATNR                   CHAR    18

     QTD_CAB        KMPMG                   QUAN    13

     MEINSC         MEINS      T006         UNIT     3

     QTD            KMPMG                   QUAN    13

     MEINS          MEINS      T006         UNIT     3

     DATUV          DATUV                   DATS     8

     DATUB          DATUB                   DATS     8

 

 

*Chave externa:

 

Nome de campo      MEINS

Tabela verificação T006

 

     Tabela chave externa Cpo.chave externa Tab.verif. Nome de campo

 

     /PWS/ZYCIT502        MANDT             T006       MANDT

     /PWS/ZYCIT502        MEINS             T006       MSEHI

 

 

 

Nome de campo      MEINSC

Tabela verificação T006

 

     Tabela chave externa Cpo.chave externa Tab.verif. Nome de campo

 

     /PWS/ZYCIT502        MANDT             T006       MANDT

     /PWS/ZYCIT502        MEINSC            T006       MSEHI

 

 

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

Modificações efetuadas em TRAN /PWS/ZYCI083

 

Criar transação /PWS/ZYCI083.

 

 

Tipo:                Programa e tela (transação de diálogo)

Código de transação: /PWS/ZYCI083

Cl.desenvolvimento:  /PWS/ZYCI

Texto da transação:  Lista técnica complementar

Programa:            /PWS/SAPMZYCI083

Nº tela:             100