PDA

Ver la Versión Completa : crear indices


budista1
09/11/10, 09:02:57
Hola,

para el programa estandard SAPDBKDF. Hay un select :

select (BSIK_FIELDS) from BSAK
into corresponding fields of
for all entries in K_LIFNR
where LIFNR eq K_LIFNR-LOW
and BUKRS in KD_BUKRS
AND GJAHR IN KD_GJAHR
AND AUGDT BETWEEN '0001010
AND '9999123
and BUDAT in KD_BUDAT
and BUDAT le KD_STIDA
and AUGDT gt KD_STIDA
and ZUONR in KD_ZUONR
and UMSKZ in KD_UMSKZ
and SHKZG in KD_SHKZG
and BSCHL in KD_BSCHL
and (BSIK_WHERE).

Tengo que modificar el grupo de indices o crear uno nuevo.
¿Alguien puede indicarme los pasos?

Hay un grupo de indices que es asi:

MANDT Mandant
LIFNR Número de compte del proveïdor o creditor
BUKRS Societat
AUGDT Data de la compensació
AUGBL Número del document de compensació
GJAHR Exercici
BELNR Número d'un document de comptabilitat
BUZEI Número d'assentament dins del document comptable

¿Podría modificar éste?

GRACIAS DE ANTEMANO

VLozano
09/11/10, 12:10:37
Si no recuerdo mal, una vez entras en el primer "IN" del WHERE, el índice ya no sirve para nada. Si tienes un índice cuyo primer campo (LIFNR) está en primera posición, yo no creo que tengas un beneficio en rendimiento creando otro índice.

Pero igual me equivoco...

Uy, además estás hablando de una tabla estándar y de un programa estándar... ¿estás totalmente seguro de que quieres tocar eso?

-------------------------------

Por cortesía, una vez señalado el hecho (y las razones) por las que NO deberías hacer ese cambio, te doy información sobre cómo crear un índice para una tabla en SAP:

- SE11
- informar nombre de tabla y pulsar modificar (F6)*
- botón índices

Y a partir de ahí, debería ir todo cuesta abajo.

* en este punto, cuando intentes modificar una tabla estándar, el sistema te pedirá una clave de confirmación que te tiene que proporcionar SAP. No sé cómo anda el tema de garantías, pero cualquier modificación del estándar cambia las condiciones para ese objeto, creo...

budista1
09/11/10, 13:27:39
Muchas gracias Vlozano,

es un tema aún por confirmar, pero me extraña a mi también que puede añadir nuevos indices en una base de datos sin que me pida una clave.
Tengo las mismas dudas que tú.
Por donde puedo hacer una prueba de rendimiento del programa ( a parte de la se30)
Veo que el programa es una base de datos lógica


Saludos!!

VLozano
10/11/10, 06:39:00
Ejecuta el programa desde la SE38, mediante la opción de menú correspondiente:
Program -> Execute -> Runtime analysis