Secciones

Artículos para tus primeros pasos

Si estás empezando a introducirte en el mundo de Groovy y Grails, no te pierdas nuestros artículos básicos: 

Entrevistas con los expertos
 

Los protagonistas te cuentan de qué van los proyectos más importantes del mundo Groovy:


Un proyecto de:
ImaginaWorks
Campus Escuela de Groovy

Grails

Cómo realizar consultas en distintas tablas??

yag13 - sábado 03/04/2010

Seguro que este tipo de trabajo esta publicado en elgun libro o algo asi por el estilo, pero la verdad es que no he podido encontrar la manera.

tengo las siguientes tablas:

 Usuario

afiliado

direccion_administrativa

comite_sindical

lpcs

La relacion entre estas es la siguiente, cada usuario, tiene un afiliado, cada afiliado tiene una direccion administrativa, y cada direccion administrativa, tiene varios afiliados, cada comite sindical tiene varias direcciones administrativas y una direccion administrativa tiene solo un comite sindical. La tabla lpcs contiene afiliados con otros datos.

la cuestion es que un usuario logueado, que representa un afiliado solo pueda ver los datos de los afiliados, que pertenecen a su mismo comite sindical, en la tabla lpcs.

lo que intentaba haceres un filtro para la controladora ControllerLPCSdonde a partir de la ariable sesion obtener el id del usuario, luego con ese id obtener el id de la direccion administrativa y con el id de la direccion administrativa, obtener el del comite sindical.

En una consulta SQL seria algo asi como un Join entre estas tablas y quedandome al final con el id del comite sindical y luego mostrar solo los afiliado de las direcciones administrativas que pertenecen a ese comite sindical.

Porfa... AYUDA..

 

Re: Cómo realizar consultas en distintas tablas??

Leandro Roura - jueves 13/05/2010

En esencia deberias utilizar hql

supongo que tengas en los dominios alguna forma de relacionarte con las demas clases

Si tienes un objeto, por ejemplo

class Usuario {

Libreta libreta

}

class Libreta{

static belongsTo = Tema

}

class  Tema {

String tema

static hasMany = [libretas: Libreta]
}

 

y quisieras los usuarios que tengan libretas de Fisica seria:

"from Usuario where Usuario.libreta.id=Libreta.id and Tema.id=Libreta.Tema.id and Tema,tema='Fisica'"

ve a ver si con eso resuelves

Saludos

ah, si tienes forma de generar un reporte en pdf de la BAse de datos avisame

Responder al hilo | Volver al foro "Grails" | Volver a los foros