MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Como optimizo una consulta con "SELECT SINGLE" (foro/showthread.php?t=1841)

moji87 29/05/13 06:49:32

1 Adjunto(s)
La tabla se activo pero con warrnings,es decir:
Adjunto el log.

moji87 29/05/13 07:40:25

Ver el contendio de la tabla
 
Bueno,parece que utilizando TABLES ZCLIENTES,funciona.
Sintácticamente es correcto el código,ejecuto y demás,pero no veo los registros creados,el contenido de la tabla.¿Cómo hago esto?¿alguna idea?:eek:
Gracias.

moji87 29/05/13 07:44:49

Transacciones SQ01 y SQ02
 
Vale.Estoy probando con sq01 y sq02:
Con SQ01 me dice : Object can be only created in package of namespace /SAPQUERY.¿Cómo cambio a este paquete?
Con SQ02,parece que necesita unirse a otra tabla.
Necestio más ayuda para crear estas consultas con esas transacciones.

Gracias:D

vanesamacri 29/05/13 11:25:14

Pará... ¿de qué estás hablando? Me da la sensación de que estás consultando acerca de múltiples dudas sin seguir ningún tipo de ordenamiento.

Volvamos a la consulta a la tabla ZCLIENTES. Tu consulta original era por qué no activaba el código y ya se encuentra solucionado. ¿Qué es lo que querés hacer ahora? Nunca lo aclaraste.

jvctaz23 29/05/13 15:09:59



Bueno lo que yo te recomiendo es eliminar todos los select single que estén dentro de loops, realizar la consulta con campos clave a las tablas que requieras fuera del loop para posteriormente solo realizar lecturas a tus tablas internas dentro del loop.

Si este fuera tu caso, yo lo aria de esta forma:

types: begin of ty_bsas,
bukrs type bsas-bukrs,
belnr type bsas-belnr,
gjahr type bsas-gjahr,
end of ty_bsas.

data: tg_bsas type table of ty_bsas,
sg_bsas type ty_bsas.

SELECT bukrs belnr gjahr
INTO table tg_bsas
FROM bsas
for all entries in tablai_bkpf
WHERE bukrs EQ tablai_bkpf-bukrs
AND augdt IN r_budat
AND augbl EQ tablai_bkpf-belnr.

if sy-subrc eq 0.
*Se eliminan todos los registros que sean igual a 'ZI'.
delete tg_bsas where blart eq 'ZI'.

* se procede a realizar el loop a tablai_bkpf.
Loop at tablai_bkpf into sg_bkpf.
* Lectura a tabla interna bsas
read table tg_bsas into sg_bsas with key bukrs = sg_bkpf-bukrs
augdt IN r_budat
augbl = sg_bkpf-belnr.
endloop.
endif.


algo así yo haría, espero y me allá dado a entender. Saludos.

moji87 01/06/13 17:25:23

Indexes
 
Pero...¿para que sirve un índice?¿Dónde se utiliza?¿Dónde se crea?¿Cuales se utilizan?

damiko30 18/06/13 12:35:27

Coding
 
Buen día gente!!!
Les comento, tengo un Query que tiene delimitaciones de dos campos, uno es para fechas, en este necesito generar un código ABAP que no me permita cargar un rango de fecha mayor a 30 días. Se puede lograr esto?
Aguardo respuesta. Desde ya muchas gracias.

Jacobo 20/06/17 11:55:40

pasale la tabla bsas a una tabla interna
y luego haces un read a esa tabla interna para coger bukrs,belnr y gjahr

data: i_bsas type bsas occurs 0 with header line.
data: w_bsas type bsas.

SELECT * INTO TABLE I_bsas FROM bsas.

READ TABLE i_bsas INTO w_BSAS
WITH KEY bukrs = bkpf-bukrs
augdt = r_budat
augbl = bkpf-belnr
blart <> 'ZI'
BINARY SEARCH.

en w_bsas estan los campos


Husos Horarios son GMT. La hora en este momento es 11:36:06.

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