MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 26/08/13, 14:00:10
brujop brujop is offline
Junior Member
 
Fecha de Ingreso: nov 2012
Mensajes: 29
Demora en Consulta

Buen dia, amigos de mundosap tengo una consulta que demora mas de tres minutos en ejecutarse, es la siguiente:

SELECT cobk~budat coep~objnr coep~wkgbtr coep~mbgbtr coep~meinb
coep~kstar coep~parob
INTO CORRESPONDING FIELDS OF TABLE ti_cobk_coep3
FROM coep
INNER JOIN cobk ON coep~mandt = cobk~mandt AND coep~kokrs = cobk~kokrs AND coep~belnr = cobk~belnr
WHERE cobk~budat IN so_budat AND
coep~kokrs EQ 'GAND' AND
coep~wrttp EQ '04' AND
coep~lednr EQ '00' AND
coep~objnr IN r_objnr AND
coep~vrgng NE 'KOAO'.

Espero me puedan ayudar a optimizarla, me han dicho que se puede utilizar funciones en vez de los select, o tambien con vistas, si tuvieran algun ejemplo me caeria perfecto.

Muchas Gracias.
Responder Con Cita
  #2  
Viejo 26/08/13, 18:31:11
Mauricio Hidalgo Mauricio Hidalgo is offline
Senior Member
 
Fecha de Ingreso: may 2006
Localización: Santiago, Chile
Mensajes: 481
Estimado partir la consulta por la fecha de contabilizacion en la tabla COBK pésimo porque esa tabla no esta indexada por ese campo según mi instalacion de SAP. Básate en los indices secundarios que tiene disponible en la tabla COEP. Pareciera que el mas cercano según tus parametros de consulta es el índice COEP~1 eso si te faltaria poner el ejercicio como parámetro de consulta, el orden sería:

where coep~lednr EQ '00' AND
coep~objnr IN r_objnr AND
coep~gjahr IN r_gjahr (añade este parámetro)
coep~wrttp EQ '04'.

Hasta aquí para que el opmizador use el indice que te indico

y luego desde tu tabla interna borras según los otros parámetros que tienes

delete ti_cobk_coep3 where budat not in so_budat.
delete ti_cobk_coep3 where kokrs <> 'GAND'.
delete ti_cobk_coep3 where vrgng = 'KOAO'.


Espero te ayude
Responder Con Cita
  #3  
Viejo 27/08/13, 15:59:11
brujop brujop is offline
Junior Member
 
Fecha de Ingreso: nov 2012
Mensajes: 29
Mauricio gracias por responder, te comento que tengo como parametros de ingreso:

La fecha de contabilizacion
Centro
Planificador de necesidades

Si ya tengo la fecha es necesario colocar el Ejercicio.

Coloque lo que indicaste pero la performance no mejoro.
Si tuvieras alguna otra ayuda te lo agradeceria.
Responder Con Cita
  #4  
Viejo 27/08/13, 20:51:14
Anthony Martinez Anthony Martinez is offline
Member
 
Fecha de Ingreso: nov 2012
Mensajes: 30
Lo que deberias hacer primero es de alguna forma crear una estrctura que tenga los mismos campos y en el mismo orden de los campos que recoges en tu select (cobk~budat coep~objnr coep~wkgbtr coep~mbgbtr coep~meinb
coep~kstar coep~parob) y hacer into table sin corresponding, segundo seria bueno que en tu pantalla de seleccion puedas agregarle coo parametro la sociedad CO que deseas consultar, porque hay que tener en cuenta que la tabla COEP es una tabla de gran dimension y sino le filtras con sus campos llave correspondientes podrias estar traendo una gran cantidad de informacion y es por ello la demora.

Responder Con Cita
  #5  
Viejo 12/09/13, 21:04:40
jdelgado86 jdelgado86 is offline
Junior Member
 
Fecha de Ingreso: nov 2012
Mensajes: 24
Cool

Crea un indice en la tabla y despues en el select pones algo asi

SELECT
bukrs
belnr
gjahr
budat
monat
blart
INTO TABLE it_bkpf
FROM
bkpf
WHERE
bukrs = p_bukrs AND
gjahr = p_gjahr AND
monat = p_monat
%_HINTS DB6 '<IXSCAN TABLE=''BKPF'' INDEX=''"BKPF~BUT"'' />' .

cambiarias la tabla bkpf y remplazarias BUT por el indice tuyo, segun se con esto obligas a que la busqueda utilice dicho indice, Suerte!!
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 19:10:02.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web