Filtrar DDDW en tiempo de ejecución

Hola experto! Te cuento,
Tengo una ventana de mantenimiento de proyectos con un datawindow grid.
Cada proyecto pertenece a un departamento y tiene asignado un usuario del sistema responsable que ha de pertenecer a ese mismo departamento.
El datawindow grid tiene dos columnas de estilo DropDownDataWindow (el departamento al cual pertenece un proyecto y el responsable del proyecto).
Mi idea es que, a través del evento itemchanged, filtrar el DDDW del responsable del proyecto para que únicamente me mostrara los usuarios de ese mismo departamento. Y parece que funciona, pero solo lo parece, porque si en el proyecto siguiente el departamento es otro, al filtrar del DDDW de los responsables, me anula el valor de la columna responsable de la fila anterior (ya que el departamento por el que ha filtrado es otro distinto y ese usuario ya no aparece); y solo me mantiene los responsables de los proyectos que son del mismo departamento que el que acabo de seleccionar.
¿Puedes echarme una mano? Gracias!

1 Respuesta

Respuesta
1
Proba esto:
Duplica la columna con el dropdown que quieres filtrar pero pone una dw sin filtro.
Coloca este campo encima de la que filtras y hacelo invisible.
Ahora cuando cambias de fila hace visible el filtrado e invisible el que tiene todos.
La idea es que la fila actual muestre el filtrado y las otras la que no tiene filtro.
Esto lo podes hacer con una expresión en la propiedad visible:
Ej: if(getrow() = currentrow(), 1, 0) e invertila para los otros.
Si quedan dudas escribí, sino cerra la pregunta
AldoB
Gracias por la idea. Lo he probado en el datawindow de tipo grid y no he conseguido hacer que vaya pues al ocultar los campos se oculta toda la columna. Pero he entendido la idea, y con cambiar la presentación estará arreglado.
Gracias otra vez por tu estimada ayuda. Hasta la próxima

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas