#1
|
|||
|
|||
Optimizar Consulta e inner join
Hola, soy un novato en la programación abap, recien estoy empezando me pidieron en el trabajo optimizar esta consulta, les agradecere infinitamente sus respuestas.
SELECT coep~belnr coep~buzei coep~vrgng cobk~budat coep~objnr coep~wkgbtr coep~mbgbtr coep~matnr cobk~refbn cobk~aworg coep~meinb cobk~awtyp coep~perio coep~gjahr coep~wrttp coep~kstar coep~parob coep~uspob coep~beknz coep~werks coep~wogbtr coep~owaer coep~megbtr 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'. |
#2
|
|||
|
|||
hola, yo lo que haria primero es un select a la COBK, ya que es la cabecera PERO mira a ver si puedes entrar con las claves KOKRS (Sociedad CO) y BELNR (Número de documento) lo guardas en una tabla it_cobk.
Luego haces otro select a la COEP con un for all entries a la tabla it_cobk, ya entrarias con 2 campos claves KOKRS (Sociedad CO) y BELNR (Número de documento) mas 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'. Ordena los campos que quieres recuperar igual q las tabla COBK y COEP y las condiciones tmb es bueno que las ordenes, con el INTO CORRESPONDING no tendras problemas, Por otro lado, prueba tmb si va mas rapido con el select * saludos Espero haberte ayudado, saludos Manuel H. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|