Re: [gx-l] Buscar en tablas

algo así te puede servir: 

For each  // Busca en TRN Examenes
     where Sol_Fecha >= &FechaIni and Sol_Fecha <= &FechaFin
     Where Id_Lab = &Laboratorio_a_buscar
                       ........
                        .......
                      &Pendientes += 1
                      &Recibidas += 1
                       ........
Endfor


El 2 de septiembre de 2010 18:25, Claudio Saldaña <claudio.saldana@gmail.com> escribió:
Estimados
 
Una consulta
 
Tengo varios DataView de una BD cuyas tablas principales tienen la siguiente estructura:
 
Solicitudes
Sol_ID             PK
Sol_Fecha
 
Muestras
CodMuestra     PK
Sol_ID             FK
DetalleMuestra
FechaMuestra
         
Examenes
Id_Examen       PK
CodMuestra      FK
Examen_Cod    FK
DetalleExamen
FechaExamen
 
MT_Examen
Examen_Cod    PK
Examen_nombre
Id_Lab              FK
 
MT_Laboratorio
Id_Lab             PK
Nombre_Lab
Entre otras tablas
 
Son cientos de miles de registros entre estas tablas y estoy realizando una busqueda con el for each (en las TRN que me generó el DV) de la siguiente forma...
 
for each  // busca en TRN Solicitudes
    where Sol_Fecha >= &FechaIni and Sol_Fecha <= &FechaFin
    &Sol_ID = Sol_ID
 
    for each  // Busca en TRN Muestras
         where Sol_ID = &Sol_ID
         defined by CodMuestra
         &CodMuestra = CodMuestra
     
            for each  // Busca en TRN Examenes
                where CodMuestra = &CodMuestra
                Defined by Id_Examen
                &Examen_Cod = Examen_Cod
 
                for each  // Busca en TRN MT_Examen
                     where Examen_Cod = &Examen_cod and Id_Lab = &Laboratorio_a_buscar
                     Defined by Examen_Cod
                       ........
                        .......
                      &Pendientes += 1
                      &Recibidas += 1
                       ........
                 endfor
            endfor
     endfor
endfor 
 
Con esto quiero obtener los examenes que pertenecen a un Laboratorio X dado un rango de fechas e ir cargando cada Laboratorio en una Grilla junto a las variables que cuentan registros:
 
Grilla:
Laboratorio     Muestras Recibidas        Muestras Pendientes
Lab. 1                          23                               80
Lab. 2                          50                                29
Lab. 3                           20                                45  
 
Al ejecutar esto sólo en el mes de agosto me da "tiempo de espera agotado". Existe otra forma de realizar busquedas más directas sin tener que entrar a tantos ciclos y ciclos....
Espero se entienda y gracias de antemano
 

Claudio Saldaña Yáñez

--
Has recibido este mensaje porque estás suscrito al grupo "GeneXus" de Grupos de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a genexus@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a genexus+unsubscribe@googlegroups.com
Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/genexus?hl=es.

0 Response to "Re: [gx-l] Buscar en tablas"

Publicar un comentario