Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Embarque
Data/Hora da Publicação: 16/08/2006 00:00:00
Data/Hora Última Alteração: 20/06/2011 13:09:21
Descrição da Nota: PERFORMANCE DA TRANSAÇÃO /PWS/ZYCI001_A ESTÁ CONSUMINDO MUITA MEMÓRIA.
Sintoma
Após análise, verificado que a performance da transação de modificar o embarque está consumindo
muita memória.Deixando lento.
Solução
analisar e alterar várias seleções de tabelas no programa de embarque.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 01940 Data: 16/08/2006 Hora: 10:10:40
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 01940
Categoria : Melhoria
Prioridade : Alta
Versão PW.CE : 6.0
Pacote : 00024
Agrupamento : 00127
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
00731 - 00001 - 6.0 - 00022 - PREENCHER O FABRICANTE DE ACORDO COM O INFORMADO NO PEDIDO DE COM
00774 - 00002 - 6.0 - 00022 - ENTREPOSTO ADUANEIRO
01417 - 00003 - 6.0 - 00023 - AGREGAR OS CUSTOS EFETIVOS DA ADMISSÃO NA NACIONALIZAÇÃO DA MERCA
----------------------------------------------------------------------------------------------------
PERFORMANCE DA TRANSAÇÃO /PWS/ZYCI001_A ESTÁ CONSUMINDO MUITA MEMÓRIA.
----------------------------------------------------------------------------------------------------
Palavras Chave:
PERFORMANCE - MEMÓRIA - EMBARQUE - /PWS/ZYCI001
CONSUMO DE MEMÓRIA
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI001F01
REPS /PWS/MZYCI001F02
REPS /PWS/MZYCI001F03
REPS /PWS/MZYCI001I01
REPS /PWS/MZYCI001O01
REPS /PWS/MZYCI001TOP
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001F01
...
EXIT.
ELSE.
CLEAR /pws/zycit013.
MOVE-CORRESPONDING itab_zycit003 TO /pws/zycit013.
MODIFY /pws/zycit013.
* >> Início da inclusão: FORM GRAVA_TABELAS
ENDIF.
ENDLOOP.
* << Fim da inclusão
MODIFY /pws/zycit003 FROM TABLE itab_zycit003.
* >> Início da exclusão: FORM GRAVA_TABELAS
ENDIF.
ENDLOOP.
* << Fim da exclusão
IF NOT v_sair IS INITIAL.
EXIT.
ENDIF.
LOOP AT itab_zycit003_aux2.
CLEAR itab_zycit003.
...
...
IF sy-subrc = 0.
SELECT SINGLE * FROM /pws/zycit093 INTO /pws/zycit093
WHERE nrseqce = /pws/zycit094-nrseqce.
IF sy-subrc = 0.
/pws/zycit093-meiotransp = /pws/zycie001-meioemba.
* >> Início da inclusão: FORM GRAVA_TABELAS
IF /pws/zycit000 IS INITIAL.
* << Fim da inclusão
SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie001-bukrs.
SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.
* >> Início da inclusão: FORM GRAVA_TABELAS
ENDIF.
* << Fim da inclusão
IF /pws/zycit000-flagbl IS INITIAL.
/pws/zycit093-paemb = /pws/zycit001-paorigem.
/pws/zycit093-padest = /pws/zycit001-padest.
/pws/zycit093-paispae = /pws/zycit001-paispao.
ENDIF.
MODIFY /pws/zycit093.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM GRAVA_TABELAS
IF NOT /pws/zycie356 IS INITIAL.
* << Fim da inclusão
MODIFY /pws/zycit356 FROM /pws/zycie356.
* >> Início da inclusão: FORM GRAVA_TABELAS
ENDIF.
* << Fim da inclusão
IF /pws/zycie001-regime EQ '14' OR /pws/zycie001-regime EQ '16'.
...
...
ENDIF.
ENDFORM.
FORM verifica_itens.
DATA:
v_existe_bl ,
* >> Início da exclusão: FORM VERIFICA_ITENS
v_ebelp LIKE konv-kposn,
itab_zycit100_per LIKE /pws/zycit100 OCCURS 0 WITH HEADER LINE.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_ITENS
v_ebelp LIKE konv-kposn.
* << Fim da inclusão
IF ( sy-tcode = '/PWS/ZYCI001_E' OR
sy-tcode = '/PWS/ZYCI001_A' ) AND
( okcode = 'P-' OR okcode = 'P--' OR
okcode = 'P+' OR okcode = 'P++' ).
ELSEIF okcode EQ 'PED' OR okcode EQ 'ENTE' OR okcode EQ 'SAVE' OR
...
...
OTHERS = 1.
READ TABLE itab_komk_aux WITH KEY knumv = itab_komk-knumv.
itab_komv-ebeln = itab_komk_aux-ebeln.
MODIFY itab_komv TRANSPORTING ebeln
WHERE knumv = itab_komk-knumv.
* >> Início da exclusão: FORM VERIFICA_ITENS
ENDLOOP.
IF NOT itab_komv[] IS INITIAL.
SELECT * FROM konp INTO TABLE itab_komp
FOR ALL ENTRIES IN itab_komv WHERE
knumh = itab_komv-knumh AND
kopos = itab_komv-kopos.
IF sy-subrc EQ 0.
SORT itab_komp BY knumh kopos loevm_ko.
LOOP AT itab_komv.
v_index = sy-tabix.
READ TABLE itab_komp WITH KEY knumh = itab_komv-knumh
kopos = itab_komv-kopos.
IF sy-subrc EQ 0.
IF itab_komp-loevm_ko EQ 'X'.
ENDIF.
ENDIF.
* << Fim da exclusão
ENDLOOP.
* >> Início da exclusão: FORM VERIFICA_ITENS
ENDIF.
ENDIF.
* << Fim da exclusão
SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie001-bukrs.
SELECT SINGLE * FROM /pws/zycit031
WHERE inco1 = /pws/zycie001-inco1
AND land1 EQ t001-land1.
SELECT * FROM /pws/zycit030
...
...
ENDIF.
PERFORM: aplicacao.
PERFORM verifica_taxa.
MODIFY itab_zycit003.
ENDLOOP.
* >> Início da inclusão: FORM VERIFICA_ITENS
IF /pws/zycit094 IS INITIAL.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit094
WHERE nrseq = /pws/zycie001-nrseq.
* >> Início da exclusão: FORM VERIFICA_ITENS
IF sy-subrc = 0.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_ITENS
ENDIF.
IF NOT /pws/zycit094 IS INITIAL.
IF /pws/zycit093 IS INITIAL.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit093
WHERE nrseqce = /pws/zycit094-nrseqce.
* >> Início da exclusão: FORM VERIFICA_ITENS
IF sy-subrc = 0.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_ITENS
ENDIF.
IF NOT /pws/zycit093 IS INITIAL.
* << Fim da inclusão
CLEAR v_tot_ntgew.
LOOP AT itab_zycit003.
v_tot_ntgew = v_tot_ntgew + itab_zycit003-ntgew.
ENDLOOP.
IF v_tot_ntgew > /pws/zycit093-brgew.
...
...
/pws/zycie001-waers = /pws/zycbt007-waersa.
IF /pws/zycbt007-waersa IS INITIAL.
MESSAGE e015 WITH text-213.
ENDIF.
ENDIF.
* >> Início da exclusão: FORM VERIFICA_ITENS
IF NOT itab_zycit003[] IS INITIAL.
SELECT *
FROM /pws/zycit100
INTO TABLE itab_zycit100_per
FOR ALL ENTRIES IN itab_zycit003
WHERE nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp.
ENDIF.
* << Fim da exclusão
LOOP AT itab_zycit003.
v_tabix = sy-tabix.
IF v_waers_diferente = 'X'.
PERFORM busca_taxa_dia USING itab_zycit003-waers
CHANGING v_taxa .
...
...
/pws/zycie001-netpr = /pws/zycie001-netpr + v_netpr.
IF /pws/zycie001-netpr < 0.
CLEAR /pws/zycie001-netpr.
MESSAGE e061 WITH text-235 text-236.
ENDIF.
* >> Início da inclusão: FORM VERIFICA_ITENS
IF itab_zycit003-tpnf IS INITIAL.
* << Fim da inclusão
SELECT SINGLE j_1bmatuse INTO ekpo-j_1bmatuse
FROM ekpo
WHERE ebeln EQ itab_zycit003-ebeln
AND ebelp EQ itab_zycit003-ebelp.
SELECT SINGLE tpnf tpnf_ld tpnf_db tpnf_icms INTO
CORRESPONDING FIELDS OF /pws/zycit012
FROM /pws/zycit012
WHERE j_1bmatuse EQ ekpo-j_1bmatuse.
* >> Início da exclusão: FORM VERIFICA_ITENS
READ TABLE itab_zycit100_per WITH KEY nrseq = itab_zycit003-nrseq
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
IF itab_zycit003-tpnf IS INITIAL.
* << Fim da exclusão
READ TABLE itab_zycit100 WITH KEY nrseq = itab_zycit003-nrseq
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
IF sy-subrc EQ 0.
IF NOT itab_zycit003-nrseqd IS INITIAL
...
...
ENDIF.
PERFORM recuperando_itens.
ELSE.
MESSAGE i015 WITH text-026.
ENDIF.
* >> Início da inclusão: FORM CALL_DI
REFRESH itab_zycit100.
CLEAR: /pws/zycit085.
* << Fim da inclusão
ENDFORM.
FORM call_fatura.
DATA v_nrseq_pgfat LIKE /pws/zycie006-nrseq_pgfat.
DATA: v_flag_loop,
e_status.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001F02
...
i_nrseq = /pws/zycie001-nrseq.
SET PARAMETER ID '/PWS/ZYCIP001' FIELD i_nrseq.
SUBMIT /pws/zycir012 AND RETURN.
ENDFORM.
FORM call_bt.
* >> Início da exclusão: FORM CALL_BT
SELECT SINGLE nrseqdi FROM /pws/zycit100
INTO v_nrseqdi
WHERE nrseq = /pws/zycie001-nrseq.
* << Fim da exclusão
* >> Início da inclusão: FORM CALL_BT
READ TABLE itab_zycit100 INDEX 1.
v_nrseqdi = itab_zycit100-nrseqdi.
IF /pws/zycit085 IS INITIAL.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit085
WHERE nrseqdi = v_nrseqdi.
* >> Início da inclusão: FORM CALL_BT
ENDIF.
* << Fim da inclusão
IF sy-subrc = 0.
IF sy-tcode EQ '/PWS/ZYCI001_C'.
SET PARAMETER ID '/PWS/ZYCIP085' FIELD /pws/zycit085-nrseqdi.
SET PARAMETER ID '/PWS/ZYGLP089' FIELD /pws/zycit085-identify.
PERFORM valida_trans USING '/PWS/ZYCI017_C' 'skip'.
...
...
IF sy-subrc = 0.
IF NOT txt_item[] IS INITIAL.
READ TABLE txt_item INDEX 1.
itab_zycit003-descr = txt_item-tdline(40).
ENDIF.
* >> Início da exclusão: FORM LOAD_PTTEXT
ELSE.
* << Fim da exclusão
* >> Início da inclusão: FORM LOAD_PTTEXT
ELSEIF itab_zycit003-descr IS INITIAL.
* << Fim da inclusão
SELECT SINGLE * FROM ekpo INTO wa_ekpo
WHERE ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp.
MOVE wa_ekpo-txz01 TO itab_zycit003-descr.
ENDIF.
...
...
IF /pws/zycie001-tpdecl IS INITIAL.
EXIT.
ENDIF.
SELECT SINGLE * FROM /pws/zycit094 WHERE nrseq = /pws/zycie001-nrseq.
IF sy-subrc EQ 0.
* >> Início da inclusão: FORM CALL_DI_MULT
IF /pws/zycit085 IS INITIAL.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit085
WHERE nrbl = /pws/zycit094-nrseqce.
* >> Início da inclusão: FORM CALL_DI_MULT
ENDIF.
* << Fim da inclusão
IF sy-subrc EQ 0.
v_nrseqdi = /pws/zycit085-nrseqdi.
SET PARAMETER ID '/PWS/ZYCIP085' FIELD v_nrseqdi.
EXPORT v_nrseqdi TO MEMORY ID rimc1.
IF /pws/zycie001-tpdecl = 'DSI'.
...
...
v_dtsaidaarm LIKE /pws/zycie055-dtsaidaarm,
v_dtdef LIKE /pws/zycie078-dtdef,
v_nrseqli LIKE /pws/zycie078-nrseqli.
itab_zycit003-dtremessa = itab_zycit003_aux-dtremessa.
itab_zycit003-dtprovent = itab_zycit003-dtremessa.
* >> Início da inclusão: FORM VERIF_DTPROVENTREGA
.
* << Fim da inclusão
IF NOT itab_zycit390[] IS INITIAL.
IF NOT itab_zycit003-dtalocprod IS INITIAL.
LOOP AT itab_zycit390 WHERE evento1 = '02' AND
evento2 = '03' AND
emb = /pws/zycie001-meioemba AND
...
...
ENDIF.
ENDIF.
ENDIF.
ENDIF.
IF NOT itab_zycit390[] IS INITIAL.
* >> Início da exclusão: FORM VERIF_DTPROVENTREGA
SELECT SINGLE nrseqce FROM /pws/zycit094
INTO v_nrseqce
WHERE nrseq = /pws/zycie001-nrseq.
IF NOT v_nrseqce IS INITIAL.
SELECT SINGLE dt_carga FROM /pws/zycit093
INTO v_dtcarga
WHERE nrseqce = v_nrseqce.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIF_DTPROVENTREGA
v_nrseqce = /pws/zycit094-nrseqce.
v_dtcarga = /pws/zycit093-dt_carga.
* << Fim da inclusão
IF NOT v_dtcarga IS INITIAL.
LOOP AT itab_zycit390
WHERE evento1 = '08' AND
evento2 = '03' AND
emb = /pws/zycie001-meioemba AND
...
...
v_dtverif = itab_zycit003-dtprovent - itab_zycit390-periodo.
ENDLOOP.
IF v_dtverif <> v_dtcarga.
itab_zycit003-dtprovent = v_dtcarga +
itab_zycit390-periodo.
* >> Início da exclusão: FORM VERIF_DTPROVENTREGA
ENDIF.
* << Fim da exclusão
ENDIF.
ENDIF.
ELSE.
IF NOT itab_zycit390[] IS INITIAL.
SELECT SINGLE nrseqce FROM /pws/zycit094
...
...
ENDIF.
ENDIF.
ENDIF.
ENDIF.
IF NOT itab_zycit390[] IS INITIAL.
* >> Início da exclusão: FORM VERIF_DTPROVENTREGA
SELECT SINGLE nrseqdi FROM /pws/zycit100
INTO v_nrseqdi1
WHERE nrseq = /pws/zycie001-nrseq.
IF NOT v_nrseqdi1 IS INITIAL.
SELECT SINGLE dtreg FROM /pws/zycit085
INTO v_dtreg
WHERE nrseqdi = v_nrseqdi1.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIF_DTPROVENTREGA
v_dtreg = /pws/zycit085-dtreg.
* << Fim da inclusão
IF NOT v_dtreg IS INITIAL.
LOOP AT itab_zycit390
WHERE evento1 = '09' AND
evento2 = '03' AND
emb = /pws/zycie001-meioemba AND
...
...
IF v_dtverif <> v_dtreg.
itab_zycit003-dtprovent = v_dtreg +
itab_zycit390-periodo.
ENDIF.
ENDIF.
* >> Início da exclusão: FORM VERIF_DTPROVENTREGA
ENDIF.
* << Fim da exclusão
ELSE.
IF NOT itab_zycit390[] IS INITIAL.
SELECT SINGLE nrseqdi FROM /pws/zycit100
INTO v_nrseqdi1
WHERE nrseq = /pws/zycie001-nrseq.
...
...
ENDIF.
ENDIF.
ENDIF.
ENDIF.
IF NOT itab_zycit390[] IS INITIAL.
* >> Início da exclusão: FORM VERIF_DTPROVENTREGA
SELECT SINGLE nrseqdi FROM /pws/zycit100
INTO v_nrseqdi1
WHERE nrseq = /pws/zycie001-nrseq.
IF NOT v_nrseqdi1 IS INITIAL.
SELECT SINGLE dataci FROM /pws/zycit085
INTO v_dataci
WHERE nrseqdi = v_nrseqdi1.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIF_DTPROVENTREGA
v_dataci = /pws/zycit085-dataci.
* << Fim da inclusão
IF NOT v_dataci IS INITIAL.
LOOP AT itab_zycit390
WHERE evento1 = '10' AND
evento2 = '03' AND
emb = /pws/zycie001-meioemba AND
...
...
v_dtverif = itab_zycit003-dtprovent - itab_zycit390-periodo.
ENDLOOP.
IF v_dtverif <> v_dataci.
itab_zycit003-dtprovent = v_dataci +
itab_zycit390-periodo.
* >> Início da exclusão: FORM VERIF_DTPROVENTREGA
ENDIF.
* << Fim da exclusão
ENDIF.
ENDIF.
ELSE.
IF NOT itab_zycit390[] IS INITIAL.
SELECT SINGLE nrseqdi FROM /pws/zycit100
...
...
ENDIF.
ENDIF.
ENDIF.
ENDIF.
IF NOT itab_zycit390[] IS INITIAL.
* >> Início da exclusão: FORM VERIF_DTPROVENTREGA
SELECT SINGLE nrseqce FROM /pws/zycit094
INTO v_nrseqce
WHERE nrseq = /pws/zycie001-nrseq.
IF NOT v_nrseqce IS INITIAL.
SELECT SINGLE dtsaidaarm FROM /pws/zycit055
INTO v_dtsaidaarm
WHERE nrseq = v_nrseqce.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIF_DTPROVENTREGA
v_dtsaidaarm = /pws/zycit055-dtsaidaarm.
* << Fim da inclusão
IF NOT v_dtsaidaarm IS INITIAL.
LOOP AT itab_zycit390
WHERE evento1 = '12' AND
evento2 = '03' AND
emb = /pws/zycie001-meioemba AND
...
...
IF v_dtverif <> v_dtsaidaarm.
itab_zycit003-dtprovent = v_dtsaidaarm +
itab_zycit390-periodo.
ENDIF.
ENDIF.
* >> Início da exclusão: FORM VERIF_DTPROVENTREGA
ENDIF.
* << Fim da exclusão
ELSE.
IF NOT itab_zycit390[] IS INITIAL.
SELECT SINGLE nrseqce FROM /pws/zycit094
INTO v_nrseqce
WHERE nrseq = /pws/zycie001-nrseq.
...
...
ENDIF.
ENDIF.
ENDIF.
ENDIF.
IF NOT itab_zycit390[] IS INITIAL.
* >> Início da exclusão: FORM VERIF_DTPROVENTREGA
SELECT SINGLE nrseqli FROM /pws/zycit079
INTO v_nrseqli
WHERE nrseq = /pws/zycie001-nrseq.
IF NOT v_nrseqli IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIF_DTPROVENTREGA
IF NOT itab_zycit003-nrseqli IS INITIAL.
* << Fim da inclusão
SELECT SINGLE dtdef FROM /pws/zycit078
INTO v_dtdef
* >> Início da exclusão: FORM VERIF_DTPROVENTREGA
WHERE nrseqli = v_nrseqli.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIF_DTPROVENTREGA
WHERE nrseqli = itab_zycit003-nrseqli.
* << Fim da inclusão
IF NOT v_dtdef IS INITIAL.
LOOP AT itab_zycit390
WHERE evento1 = '13' AND
evento2 = '03' AND
emb = /pws/zycie001-meioemba AND
...
...
FROM j_1bbranch
INTO (v_descrimp)
WHERE bukrs = /pws/zycie001-bukrs
AND branch = /pws/zycie001-j_1bbranch.
CLEAR: itab_zycbt031, v_modemb.
* >> Início da exclusão: FORM LOAD_DATA
IF NOT itab_zycit003[] IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: FORM LOAD_DATA
IF NOT itab_zycit003[] IS INITIAL AND
itab_zycbt031[] IS INITIAL.
* << Fim da inclusão
SELECT * FROM /pws/zycbt031 INTO TABLE itab_zycbt031
FOR ALL ENTRIES IN itab_zycit003
WHERE nrcorresp = itab_zycit003-nrseq_pgfat
AND statusp NE 'E'.
IF sy-subrc = 0.
...
...
tipo.
SORT itab_zycit125 BY tipo lifnr.
ENDFORM.
FORM seleciona_nf.
SELECT * FROM /pws/zycit042 INTO TABLE itab_zycit042_d
* >> Início da exclusão: FORM SELECIONA_NF
FOR ALL ENTRIES IN itab_zycit003
WHERE nrseq EQ itab_zycit003-nrseq
AND ebeln EQ itab_zycit003-ebeln
AND ebelp EQ itab_zycit003-ebelp.
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONA_NF
WHERE nrseq EQ /pws/zycie001-nrseq.
* << Fim da inclusão
IF sy-subrc EQ 0 .
LOOP AT itab_zycit042_d.
READ TABLE itab_zycit003 WITH KEY nrseq = itab_zycit042_d-nrseq
ebeln = itab_zycit042_d-ebeln
ebelp = itab_zycit042_d-ebelp.
...
...
ELSE.
CLEAR v_nf.
ENDIF.
ENDFORM.
FORM seleciona_bl.
* >> Início da inclusão: FORM SELECIONA_BL
IF itab_zycit094[] IS INITIAL.
* << Fim da inclusão
SELECT * FROM /pws/zycit094 INTO TABLE itab_zycit094
FOR ALL ENTRIES IN itab_zycit003
WHERE nrseq EQ itab_zycit003-nrseq.
* >> Início da inclusão: FORM SELECIONA_BL
ENDIF.
* << Fim da inclusão
ENDFORM.
FORM seleciona_di.
* >> Início da inclusão: FORM SELECIONA_DI
IF NOT itab_zycit100[] IS INITIAL.
EXIT.
ENDIF.
* << Fim da inclusão
SELECT * FROM /pws/zycit100 INTO TABLE itab_zycit100
* >> Início da exclusão: FORM SELECIONA_DI
FOR ALL ENTRIES IN itab_zycit003
WHERE nrseq EQ itab_zycit003-nrseq.
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONA_DI
WHERE nrseq EQ /pws/zycie001-nrseq.
* << Fim da inclusão
IF sy-subrc EQ 0.
v_di = 'S'.
ELSE.
CLEAR v_di.
ENDIF.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001F03
...
ENDLOOP.
ENDIF.
ENDFORM.
FORM carrega_fabric.
IF NOT itab_zycit003[] IS INITIAL.
* >> Início da inclusão: FORM CARREGA_FABRIC
LOOP AT itab_zycit003.
READ TABLE itab_fabric WITH KEY
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
IF sy-subrc NE 0.
* << Fim da inclusão
SELECT ebeln ebelp mfrnr FROM ekpo
INTO TABLE itab_fabric
FOR ALL ENTRIES IN itab_zycit003
WHERE ebeln EQ itab_zycit003-ebeln
AND ebelp EQ itab_zycit003-ebelp.
* >> Início da inclusão: FORM CARREGA_FABRIC
EXIT.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM CARREGA_FABRIC
ENDLOOP.
ENDIF.
* << Fim da inclusão
ENDFORM.
FORM call_da.
EXPORT /pws/zycie001-nrseq TO MEMORY ID rimc7.
LOOP AT itab_zycit003.
v_qtd_iten = itab_zycit003-qtd_iten.
...
...
screen-input = '0'.
ENDIF.
MODIFY SCREEN.
ENDIF.
IF screen-name = '/PWS/ZYCIE001-MEIOEMBA'.
* >> Início da inclusão: FORM TRATA_SCREEN_0101
IF NOT /pws/zycie001-nrseq IS INITIAL.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit094
WHERE nrseq = /pws/zycie001-nrseq.
IF sy-subrc = 0 AND NOT /pws/zycie001-nrseq IS INITIAL.
screen-input = 0.
MODIFY SCREEN.
ELSE.
screen-input = 1.
MODIFY SCREEN.
ENDIF.
* >> Início da inclusão: FORM TRATA_SCREEN_0101
ENDIF.
* << Fim da inclusão
IF /pws/zycie001-regime EQ '14' .
screen-input = 0.
MODIFY SCREEN.
ENDIF.
ENDIF.
...
...
ENDIF.
ELSE.
IF screen-name EQ '/PWS/ZYCIE001-PAORIGEM' OR
screen-name EQ '/PWS/ZYCIE001-PAISPAO' OR
screen-name EQ '/PWS/ZYCIE001-PADEST'.
* >> Início da inclusão: FORM TRATA_SCREEN_0101
IF NOT /pws/zycie001-nrseq IS INITIAL.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit094
WHERE nrseq = /pws/zycie001-nrseq.
IF sy-subrc NE 0.
IF v_status_s = 1.
screen-input = 1.
...
...
screen-input = 0.
ENDIF.
MODIFY SCREEN.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM TRATA_SCREEN_0101
ENDIF.
* << Fim da inclusão
ENDIF.
IF screen-name = '/PWS/ZYCIE001-EMBARCA'.
IF v_status_s = '1'.
* >> Início da inclusão: FORM TRATA_SCREEN_0101
IF NOT /pws/zycie001-nrseq IS INITIAL.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit094
WHERE nrseq = /pws/zycie001-nrseq.
IF sy-subrc NE 0 OR /pws/zycie001-nrseq IS INITIAL.
screen-input = 1.
MODIFY SCREEN.
* >> Início da inclusão: FORM TRATA_SCREEN_0101
ENDIF.
* << Fim da inclusão
ENDIF.
ENDIF.
ENDIF.
IF screen-name = '/PWS/ZYCIE001-DT_ENT_DE' OR
screen-name = '/PWS/ZYCIE001-DT_ENT_ATE'.
...
...
itab_zycit443-qtd_da ) * /pws/zycie003-qtd_iten.
ENDFORM.
FORM carrega_instrucao.
REFRESH itab_zycit003_aux.
MOVE itab_zycit003[] TO itab_zycit003_aux[].
* >> Início da inclusão: FORM CARREGA_INSTRUCAO
IF v_canal IS INITIAL.
* << Fim da inclusão
* >> Início da exclusão: FORM CARREGA_INSTRUCAO
SELECT SINGLE nrseqdi
FROM /pws/zycit100
INTO v_nrseqdi
WHERE nrseq = /pws/zycie001-nrseq.
* << Fim da exclusão
* >> Início da inclusão: FORM CARREGA_INSTRUCAO
IF v_nrseqdi IS INITIAL.
READ TABLE itab_zycit100 INDEX 1.
v_nrseqdi = itab_zycit100-nrseqdi.
ENDIF.
* << Fim da inclusão
IF NOT v_nrseqdi IS INITIAL.
* >> Início da exclusão: FORM CARREGA_INSTRUCAO
SELECT SINGLE canal
FROM /pws/zycit085
INTO v_canal
WHERE nrseqdi = v_nrseqdi.
* << Fim da exclusão
* >> Início da inclusão: FORM CARREGA_INSTRUCAO
IF /pws/zycit085 IS INITIAL.
SELECT SINGLE * FROM /pws/zycit085 WHERE nrseqdi = v_nrseqdi.
ENDIF.
v_canal = /pws/zycit085-canal.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM CARREGA_INSTRUCAO
ENDIF.
IF v_cotne IS INITIAL AND
NOT /pws/zycie001-paispao IS INITIAL.
* << Fim da inclusão
SELECT SINGLE /pws/cotne
FROM t005
INTO v_cotne
WHERE land1 = /pws/zycie001-paispao.
* >> Início da inclusão: FORM CARREGA_INSTRUCAO
ENDIF.
IF itab_zycit390[] IS INITIAL.
* << Fim da inclusão
SELECT * FROM /pws/zycit390
INTO TABLE itab_zycit390.
* >> Início da inclusão: FORM CARREGA_INSTRUCAO
ENDIF.
IF NOT /pws/zycie001-nrseq IS INITIAL.
IF /pws/zycit094 IS INITIAL.
SELECT SINGLE * FROM /pws/zycit094
WHERE nrseq = /pws/zycie001-nrseq.
ENDIF.
ENDIF.
IF NOT /pws/zycit094-nrseqce IS INITIAL.
IF /pws/zycit055 IS INITIAL.
SELECT SINGLE * FROM /pws/zycit055
WHERE nrseq = /pws/zycit094-nrseqce.
ENDIF.
SELECT SINGLE * FROM /pws/zycit093
WHERE nrseqce = /pws/zycit094-nrseqce.
ENDIF.
READ TABLE itab_zycit100 INDEX 1.
IF /pws/zycit085 IS INITIAL AND sy-subrc EQ 0.
SELECT SINGLE * FROM /pws/zycit085
WHERE nrseqdi = itab_zycit100-nrseqdi.
ENDIF.
* << Fim da inclusão
LOOP AT itab_zycit003.
* >> Início da inclusão: FORM CARREGA_INSTRUCAO
IF itab_zycit003-dtremessa IS INITIAL.
* << Fim da inclusão
SELECT SINGLE eindt
FROM eket
INTO itab_zycit003_aux-dtremessa
WHERE ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp.
* >> Início da inclusão: FORM CARREGA_INSTRUCAO
ENDIF.
* << Fim da inclusão
PERFORM verif_dtproventrega.
MODIFY itab_zycit003.
CLEAR itab_zycit003.
ENDLOOP.
ENDFORM.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001I01
...
CLEAR okcode.
ENDIF.
ENDCASE.
ENDMODULE.
MODULE authority_empresa INPUT.
* >> Início da exclusão: MODULE AUTHORITY_EMPRESA
IF sy-tcode EQ '/PWS/ZYCI001_C'
AND NOT /pws/zycie442-bukrs IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: MODULE AUTHORITY_EMPRESA
IF sy-tcode EQ '/PWS/ZYCI001_C'.
* << Fim da inclusão
AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS'
DUMMY
ID 'ACTVT' FIELD '01'.
IF sy-subrc NE 0.
AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001O01
...
ELSEIF sy-tcode EQ '/PWS/ZYCI001_E'.
SET TITLEBAR '0100B'.
ENDIF.
ENDMODULE.
MODULE set_screen OUTPUT.
* >> Início da inclusão: MODULE SET_SCREEN
IF /pws/zycit000 IS INITIAL.
* << Fim da inclusão
SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie001-bukrs.
* >> Início da exclusão: MODULE SET_SCREEN
SELECT SINGLE *
FROM /pws/zycit000
WHERE land1 EQ t001-land1.
* << Fim da exclusão
* >> Início da inclusão: MODULE SET_SCREEN
SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.
ENDIF.
* << Fim da inclusão
CASE sy-dynnr.
WHEN '0100' OR '0101'.
PERFORM trata_screen_0101.
WHEN '0102'.
PERFORM trata_screen_0102.
...
...
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
CLEAR: v_qtditen.
* >> Início da inclusão: MODULE LOAD_ZYCIT374
IF NOT itab_zycit374[] IS INITIAL AND
itab_zycit396_aux1[] IS INITIAL.
SELECT * FROM /pws/zycit396 INTO TABLE itab_zycit396_aux1
FOR ALL ENTRIES IN itab_zycit374
WHERE nrseq = itab_zycit374-nrseq AND
ebelp = itab_zycit374-ebelp AND
ebeln = itab_zycit374-ebeln.
ENDIF.
* << Fim da inclusão
LOOP AT itab_zycit374.
v_idx374 = sy-tabix.
* >> Início da exclusão: MODULE LOAD_ZYCIT374
SELECT * FROM /pws/zycit396 INTO TABLE itab_zycit396_aux1
* << Fim da exclusão
* >> Início da inclusão: MODULE LOAD_ZYCIT374
LOOP AT itab_zycit396_aux1
* << Fim da inclusão
WHERE nrseq = itab_zycit374-nrseq AND
ebelp = itab_zycit374-ebelp AND
ebeln = itab_zycit374-ebeln.
* >> Início da exclusão: MODULE LOAD_ZYCIT374
LOOP AT itab_zycit396_aux1.
* << Fim da exclusão
v_qtditen = v_qtditen + itab_zycit396_aux1-qtd_baixa.
ENDLOOP.
itab_zycit374-qtd_baixa = v_qtditen.
MODIFY itab_zycit374 INDEX v_idx374.
CLEAR:itab_zycit396_aux1, v_qtditen.
* >> Início da exclusão: MODULE LOAD_ZYCIT374
REFRESH: itab_zycit396_aux1.
* << Fim da exclusão
ENDLOOP.
ENDMODULE.
MODULE move_dados OUTPUT.
READ TABLE itab_zycit374 WITH KEY mark = 'X'.
IF sy-subrc = 0.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001TOP
...
indx,
/pws/zycie133a,
/pws/zycit041 ,
/pws/zycit042 ,
/pws/zycie042 ,
* >> Início da inclusão:
/pws/zycit055 ,
* << Fim da inclusão
/pws/zycit079 ,
/pws/zycie079 ,
/pws/zycit078 ,
/pws/zycie078 ,
/pws/zycit080 ,
...