Módulo: DRAWBACK
Funcionalidade: Ato Concessório
Data/Hora da Publicação: 03/12/2007 00:00:00
Data/Hora Última Alteração: 01/03/2010 17:53:50
Descrição da Nota: PERFORMANCE VINCULAÇÃO DE COMPOSIÇÃO AO ATO CONCESSÓRIO
Sintoma
Dump por time out na vinculaçao da composição ao ato concessório.
Solução
Ajuste para melhoria da performance e inclusão de função de relogio para eliminar o dump por time
out.
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 05370 Data: 03/12/2007 Hora: 16:39:08
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 05370
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00003
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
Texto Rápido:
PERFORMANCE VINCULAÇÃO DE COMPOSIÇÃO AO ATO CONCESSÓRIO
----------------------------------------------------------------------------------------------------
Palavras Chave:
PERFORMANCE - VINCULAÇÃO - COMPOSIÇÃO - ATO - CONCESSÓRIO
/PWS/SAPMZYCI040
----------------------------------------------------------------------------------------------------
Objetos da nota:
DYNP /PWS/SAPMZYCI040 0203
REPS /PWS/MZYCI040F02
REPT /PWS/SAPMZYCI040
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCI040 0203
*Layout:
Eliminar colina /PWS/ZYCIE245-QTD_ITEN.
*Codigo Fonte:
chain.
field: /pws/zycie245-codcomp ,
/pws/zycie245-maktx ,
/pws/zycie245-meins ,
* >> Início da exclusão:
/pws/zycie245-qtd_iten,
* << Fim da inclusão
/pws/zycie245-qtd_tot ,
/pws/zycie245-qtd_ncm ,
/pws/zycie245-gewei ,
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI040F02
...
ENDIF.
MOVE-CORRESPONDING itab_det_remat_final TO itab_det_remat.
APPEND itab_det_remat.
ENDLOOP.
pressed_tab_7a = ok_code2.
dynpronr7a = '0219'.
ENDFORM.
FORM busca_dados_composicao.
DATA: vfobtmp LIKE /pws/zycie259-vlfob ,
vbrgtmp LIKE /pws/zycie259-brgew ,
* >> Início da inclusão: FORM BUSCA_DADOS_COMPOSICAO
v_pct TYPE p,
v_lines TYPE i,
v_count TYPE i,
v_fixo TYPE i VALUE '0',
v_mess(100) TYPE c,
* << Fim da inclusão
vntgtmp LIKE /pws/zycie259-ntgew ,
vcomtmp LIKE /pws/zycie259-vlcomis,
v_nritem_exp LIKE /pws/zycit247-nritem.
IF itab_zycit245[] IS INITIAL.
* >> Início da exclusão: FORM BUSCA_DADOS_COMPOSICAO
SELECT * FROM /pws/zycit261 INTO TABLE itab_zycit261
* << Fim da exclusão
* >> Início da inclusão: FORM BUSCA_DADOS_COMPOSICAO
SELECT * FROM /pws/zycit260 INTO TABLE itab_zycit260
* << Fim da inclusão
WHERE nrseqd EQ /pws/zycie244-nrcompos.
* >> Início da exclusão: FORM BUSCA_DADOS_COMPOSICAO
IF NOT itab_zycit261[] IS INITIAL.
SELECT * FROM /pws/zycit260 INTO TABLE itab_zycit260
FOR ALL ENTRIES IN itab_zycit261
WHERE nrseqd EQ itab_zycit261-nrseqd
AND nrseqre EQ itab_zycit261-nrseqre
AND nrseq EQ itab_zycit261-nrseq
AND codmat EQ itab_zycit261-codmat
AND vbeln_va EQ itab_zycit261-vbeln_va
AND vbeln_vf EQ itab_zycit261-vbeln_vf
AND posnr EQ itab_zycit261-posnr.
* << Fim da exclusão
* >> Início da inclusão: FORM BUSCA_DADOS_COMPOSICAO
DESCRIBE TABLE itab_zycit260 LINES v_lines.
CLEAR: v_count.
* << Fim da inclusão
LOOP AT itab_zycit260.
* >> Início da exclusão: FORM BUSCA_DADOS_COMPOSICAO
IF /pws/zycit321-it_ge EQ 'X'.
READ TABLE itab_zycit261 WITH KEY
nrseqd = itab_zycit260-nrseqd
nrseqre = itab_zycit260-nrseqre
nrseq = itab_zycit260-nrseq
codmat = itab_zycit260-codmat
vbeln_va = itab_zycit260-vbeln_va
vbeln_vf = itab_zycit260-vbeln_vf
posnr = itab_zycit260-posnr
grupo = itab_zycit260-grupo.
* << Fim da exclusão
* >> Início da inclusão: FORM BUSCA_DADOS_COMPOSICAO
ADD 1 TO v_count.
IF v_count EQ 100.
v_pct = ( sy-tabix / v_lines ) * 100.
WRITE v_pct TO v_mess LEFT-JUSTIFIED NO-GAP.
* << Fim da inclusão
* >> Início da exclusão: FORM BUSCA_DADOS_COMPOSICAO
ELSE.
READ TABLE itab_zycit261 WITH KEY
nrseqd = itab_zycit260-nrseqd
nrseqre = itab_zycit260-nrseqre
nrseq = itab_zycit260-nrseq
codmat = itab_zycit260-codmat
vbeln_va = itab_zycit260-vbeln_va
vbeln_vf = itab_zycit260-vbeln_vf
posnr = itab_zycit260-posnr
codcomp = itab_zycit260-codcomp.
* << Fim da exclusão
* >> Início da inclusão: FORM BUSCA_DADOS_COMPOSICAO
CONCATENATE text-324 '.' v_mess '%'
INTO v_mess SEPARATED BY space.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_fixo
text = v_mess.
CLEAR: v_count.
* << Fim da inclusão
ENDIF.
CLEAR itab_zycit245.
MOVE itab_zycit260-waers TO itab_zycit245-waers.
LOOP AT itab_zycit260 INTO /pws/zycie260
WHERE waers NE itab_zycit245-waers.
itab_zycit245-waers = wa_zycbt007-waersa.
EXIT.
ENDLOOP.
IF itab_zycit245-waers = wa_zycbt007-waersa.
MOVE: itab_zycit260-vlfob TO itab_zycit245-netpr_t .
ELSE.
MOVE: itab_zycit260-vlfob_t TO itab_zycit245-netpr_t .
ENDIF.
MOVE: /pws/zycie244-nrseqd TO itab_zycit245-nrseqd ,
itab_zycit260-codcomp TO itab_zycit245-codcomp ,
itab_zycit260-j_1bnbm TO itab_zycit245-j_1bnbm ,
itab_zycit260-grupo TO itab_zycit245-grupo ,
/pws/zycie244-werks TO itab_zycit245-werks ,
'1' TO itab_zycit245-proced ,
* >> Início da exclusão: FORM BUSCA_DADOS_COMPOSICAO
itab_zycit261-qtd_iten TO itab_zycit245-qtd_iten ,
* << Fim da exclusão
itab_zycit260-qtd_vinc TO itab_zycit245-qtd_tot ,
itab_zycit260-qtd_vinc TO itab_zycit245-sdocomp_i ,
itab_zycit260-vlfrete_t TO itab_zycit245-vl_frete_t,
itab_zycit260-vlseg_t TO itab_zycit245-vl_seg_t .
vbrgtmp = vbrgtmp + itab_zycit260-brgew.
vntgtmp = vntgtmp + itab_zycit260-ntgew.
itab_zycit245-qtd_ncm = itab_zycit245-qtd_tot.
itab_zycit245-um_ncm = itab_zycit260-meins.
PERFORM converte_um_ncm USING itab_zycit260-codcomp
CHANGING itab_zycit245-um_ncm
...
...
itab_zycit260-desc_g TO itab_zycit245-desc_g.
PERFORM select_max_item_number2 CHANGING v_nritem.
itab_zycit245-nritem = v_nritem.
MODIFY itab_zycit245.
itab_zycit245_aux[] = itab_zycit245[].
ENDIF.
ENDLOOP.
PERFORM apura_totais_0203.
IF /pws/zycie244-tipo EQ 'G'.
PERFORM acumula_item_lista_tecnica_tg2.
* >> Início da exclusão: FORM BUSCA_DADOS_COMPOSICAO
ENDIF.
* << Fim da exclusão
ENDIF.
ENDIF.
CLEAR: vfobtmp, vbrgtmp, vntgtmp, vcomtmp.
IF itab_zycit247[] IS INITIAL.
SELECT * FROM /pws/zycit259 INTO TABLE itab_zycit259
WHERE nrseqd EQ /pws/zycie244-nrcompos.
IF sy-subrc EQ 0.
* >> Início da inclusão: FORM BUSCA_DADOS_COMPOSICAO
DESCRIBE TABLE itab_zycit259 LINES v_lines.
CLEAR: v_count.
* << Fim da inclusão
LOOP AT itab_zycit259.
* >> Início da inclusão: FORM BUSCA_DADOS_COMPOSICAO
ADD 1 TO v_count.
IF v_count EQ 100.
v_pct = ( sy-tabix / v_lines ) * 100.
WRITE v_pct TO v_mess LEFT-JUSTIFIED NO-GAP.
CONCATENATE text-325 '.' v_mess '%'
INTO v_mess SEPARATED BY space.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
percentage = v_fixo
text = v_mess.
CLEAR: v_count.
ENDIF.
* << Fim da inclusão
MOVE: /pws/zycie244-nrseqd TO itab_zycit247-nrseqd ,
itab_zycit259-codmat TO itab_zycit247-codmat ,
itab_zycit259-werks TO itab_zycit247-werks ,
itab_zycit259-qtd_iten TO itab_zycit247-qtd_iten,
itab_zycit259-vlfob TO itab_zycit247-netpr_t,
itab_zycit259-vlcomis TO itab_zycit247-vl_comis_t,
itab_zycit259-vlfre TO itab_zycit247-vl_frete_t,
itab_zycit259-qtd_iten TO itab_zycit247-sdomat_e.
COLLECT itab_zycit247.
ENDLOOP.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI040
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 323
Texto: (36 caracteres)
"Numero do Ato Concessório invalido !"
Comprimento máximo: 36
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 324
Texto: (28 caracteres)
"Montando dados de Importação"
Comprimento máximo: 44
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 325
Texto: (28 caracteres)
"Montando dados de Exportação"
Comprimento máximo: 44