Power Builder - Filtros multiples

 
Vista:

Filtros multiples

Publicado por werner (4 intervenciones) el 04/09/2009 22:03:31
Saludos amigos foristas:
mi consulta es la siguiente.

Quiero hacer una consulta filtrando mi dw ( tiene cargado todos los registros de mi tabla)por varios criterios o campos.
Ejemplo:

DEPARTAMENTO, PROVINCIA, DISTRITO, SERVICIO, AUTORIZACION.

Si elijo el departamento, me deben salir las provincias del departamento elejido, si elijo la provinica me debe salir los distritos de la provinica elejida.

Luego tengo que elegir el SERVICIO que es un DropDownDw (FM,OM,TV-VHF,TV-UHF), luego la autorización que tambien es un DropDownListBox (Si, No).

He conseguido filtrar los departamentos, provincias y distritos de la siguiente manera:

ITEMCHANGE

datawindowchild dwc
string ls_null

setnull(ls_null)

if not row>0 then return

accepttext( )

choose case this.getcolumnname()
case 'id_depa'
setitem(row,'id_prov',ls_null)
setitem(row,'id_dist',ls_null)

getchild('id_prov',dwc)
dwc.settransobject(sqlca)
dwc.retrieve(data)

getchild('id_dist',dwc)
dwc.settransobject(sqlca)
dwc.reset()

case 'id_prov'
setitem(row,'id_dist',ls_null)

getchild('id_dist',dwc)
dwc.settransobject(sqlca)
dwc.retrieve(getitemstring(row,'id_depa'),data)
end choose

RETRIEEVENT

datawindowchild dwc

if not rowcount >0 then return //Retornamos en caso q no haya filas

//primero filtramos los departamentos
getchild('id_depa',dwc)
dwc.settransobject(sqlca)
dwc.retrieve()

//segundo filtramos las provincias
getchild('id_prov',dwc)
dwc.settransobject(sqlca)
dwc.retrieve(getitemstring(getrow(),'id_depa'))

//Por último filtramos los distritos
getchild('id_dist',dwc)
dwc.settransobject(sqlca)
dwc.retrieve(getitemstring(getrow(),'id_depa'),getitemstring(getrow(),'id_prov'))

Mi problema es como hago para que se filtren simultaneamente todos los criterios mencionados y donde es que tengo que programar .
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Filtros multiples

Publicado por Jancarlo (890 intervenciones) el 05/09/2009 00:19:42
Disculpa pero no logro entender bien la idea. Primero mencionas que tienes un DW el cual filtras usando 5 parámetros (Departamento, Provincia, Distrito, Servicio y Autorización), sin embargo en el ejemplo que colocas no parace que estes filtrando tu DW sino los DDDW de ese DW... aclaranos la duda para poder ayudarte.

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Filtros multiples

Publicado por werner (4 intervenciones) el 07/09/2009 19:56:30
Jancarlo, tienes razón.

Voy a formular la pregunta de otra manera.

Lo que deseo es hacer mi consulta filtrando datos de un Datawindow por DEPARTAMENTO, PROVINCIA,DISTRITO, SERVICIO, Y AUTORIZACIÓN. todas a la vez o DEPARTAMENTO, PROVINICA, DISTRITO Y SERVICIO solamente.

El departamento, provincia, distrito debo utilizar el DDDW y Servicio y autorización lo debo hacer mediante un DDLB.

Ejemplo:

codigo DEPARTAMENTO PROVINCIA DISTRITO SERVICIO FREC. AUTORI.
0567 Junin Huancayo Chilca FM 98.5 SI
0897 Junin Huancayo Chilca FM 104.5 SI

Ahora, si doy enter en el registro de la fila con código 0657 , me deben salir todos los datos de ese registro.

Espero me haya expresado de la mejor forma.

Gracias de antemano.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar