Ver Mensaje Individual
  #1  
Viejo 15/08/09, 04:14:47
marva300 marva300 is offline
Junior Member
 
Fecha de Ingreso: jun 2009
Mensajes: 6
demora al cargar datos

Hola a todos estoy empezando en la programacion Abap y tengo un problema me han pedido optimizar el siguiente reporte puesto que en QAS y PRD demora demasiado en mostrarse el problema esta en un select que se le hace a MSEG para obtener los movimientos.


FORM busca_fechas_mkpf USING e_salida TYPE t_salida
CHANGING s_salida TYPE t_salida.

DATA: wl_fecha1 TYPE mkpf-budat.
DATA: wl_fecha2 TYPE mkpf-budat.
DATA: wl_flag TYPE c.

CLEAR: it_reg. REFRESH: it_reg.

SELECT * INTO CORRESPONDING FIELDS OF TABLE it_reg FROM mseg
WHERE mjahr = e_salida-mjahr
AND werks EQ e_salida-werks
AND lgort EQ e_salida-lgort
AND charg EQ e_salida-charg
AND matnr EQ e_salida-matnr
AND bwart EQ e_salida-bwart.

CLEAR: wl_fecha1, wl_fecha1, wl_flag.

LOOP AT it_reg INTO w_reg.
SELECT SINGLE budat INTO wl_fecha1 FROM mkpf WHERE mblnr EQ w_reg-mblnr.
w_reg-budat = wl_fecha1.
MODIFY it_reg FROM w_reg.
IF wl_fecha2 IS INITIAL.
wl_fecha2 = wl_fecha1.
ELSE.
IF wl_fecha2 NE wl_fecha1.
wl_flag = 'X'.
EXIT.
ENDIF.
ENDIF.

ENDLOOP.

IF wl_flag EQ 'X'.
s_salida-e_fecha = 'X'.
ENDIF.


ENDFORM.



este perform esta dentro de este loop

LOOP AT it_salida INTO w_salida.
PERFORM busca_fechas_mkpf USING w_salida CHANGING w_salida.
MODIFY it_salida FROM w_salida.
ENDLOOP.

en QAS It_salida me da casi 500 registros y cuando se hace el select a la mseg se obtiene de 10 a 20 registros y es alli cuando demora mas o menos 20 segundos osea tardaria 500 registros x 20 segundos es demasiado tiempo de ejecucion que recomiendan hacer para optimizar ese select


gracias de antemano
Responder Con Cita