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.
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