Filtros


([N1] dfactory) #1

Buenas tardes.
Estoy comenzando con Velneo.

Vengo sobre todo de Java.

Para iniciarme y hacer algunas pruebas y aprender, estoy intentando hacer con Velneo una pequeña aplicacion que tengo hecha con Java y MySQL.

La parte de los datos sin problema.
La parte de aplicacion si me esta costando algo mas. El tema de marcos/formularios/rejillas/etc.

Tengo dos cuestiones.
La primera: En java, hago una ventana, a la cual le meto dos paneles, uno con una tabla y el otro con el contenido que desee. En Velneo en un formulario puedes poner lo que quieras, pero una rejilla rellena "todo" a excepcion de por ejemplo la toolbar. He intado meter una rejilla en un formulario (quiza con la vista de datos), pero no lo he conseguido.

Segunda cuestion y principal motivo del post: Filtros. Tengo un rejilla en la cual muestro una serie de registros. Queria filtrar los registros con diversos criterios posibles. Despues de pelearme con busquedas y lupas(esta es la buena en teoria, pero siempre abre una pestaña nueva) y leer los foros, creo un evento, el cual ejecuta la accion de filtrar, y funciona como esperaba. Sin embargo, y aqui viene el problema, si ahora quiero filtrar por otro campo, el filtro se aplica a la rejilla resultante del filtro anterior y no a la rejilla original. He intentado "restaurar" la rejilla original con un evento, usando las acciones Cargar Lista y Busqueda, asi como algunas otras, pero nada resulta; no tengo forma de recuperar la rejilla original si abrir una nueva rejilla en una nueva pestaña.

Muchas gracias de ante mano.

Un Saludo.


([N4] jordimas) #2

Hola,
Yo me he estado peleando con los filtros estos días y más o menos he llegado a una solución.
Hay que usar cestas, en el formulario uso una vista de datos alimentada por un proceso que carga la cesta.
Luego tengo una zona de filtros, con una serie de criterios que se guardan en variables locales de formulario, y con un evento del formulario actualizo los registros de la cesta según los criterios.

Se echa de menos que el proceso que alimenta la rejilla del formulario no pueda leer las locales de dicho formulario!! Esto ahorraría usar cestas.

Adjunto imágenes ejemplo.

PS: Probé las lupas hace un tiempo y llegué a la conclusión que en V7 sirven más bien para poco.

[attachment=21965,1715] [attachment=21965,1716]


([N1] Pepeto) #3

Bienvenido a Velneo V7,

1. Para poner una rejilla en un formulario, es correcto, necesitas una vista de datos, pero necesitas mas cosas:
- Un proceso con orgen ficha (en la misma tabla del formulario) y destino lista (la tabla de la rejilla)
- La rejilla en cuestion
- En las propiedades de la vista de datos, debes indicar el proceso como primer Objeto a ejecturar y ña Rejilla como segundo objeto.
- Asi, cada vez que se abre el formulario, se ejecuta el proceso y se muestra la lista en la rejilla.

2. La verdad es que no suel hacer mucho uso de los filtros, no son recomendables si trabajas como demasiados registros. Te recomendaria que te centraras en las busquedas, aunque al principio pueden resultar algo mas complicadas, muy efectivas y puedes condicionar multiples indices con diferentes criterios. Ademas, siempre que se ejecuta la busqueda, se ejecuta sobre los nuevos valores de las variables que condicionan los indices.
Los filtros son, para lo que son, para trabajar con pocos registros y en casos muy concretos, no para abusar de ellos continuamente, porque son lentos y prescindibles.

un saludo
José Luis
http://www.ascsl.com


([N1] dfactory) #4

Muchas gracias a los dos, a jordimas para resolver el caso concreto que me aborda y a Pepeto por especificar como hacer la rejilla en el formulario y ofrecerme sus consejos.