Yo también estoy empezando con el API y su modelo de objetos.
Te pongo un ejemplo que puedes asignar a un botón del menú, de tal forma que puedas filtrar la Rejilla que se está mostrando en ese momento.
var tipoVista = 0
var vistaActual = null
// Comprobamos que haya una Vista activa y que sea una Rejilla
if (theMainWindow.currentView())
{
tipoVista = theMainWindow.currentView().type() ;
// Si no es una Vista genérica podemos obtener el objeto VRoot y acceder a la Vista de datos
if (tipoVista > 0)
{
vistaActual = theMainWindow.currentView().root().dataView() ;
// Si la Vista es una Rejilla podremos usar comandos de Lista
if (tipoVista == VMdiView.TypeGrid)
{
// Comando de Lista: Filtrar -> abre el editor de fórmulas
vistaActual.filter() ;
}
}
}
Por supuesto la función filter() es equivalente a la funcionalidad nativa que tiene Velneo en el menú de Lista o desde las acciones del objeto Acción.
Hola copie vuestro codigo. lo aplique a un evento en un formulario con rejilla cargada, no me da error pero no me muestra nada
¿En donde lo debo aplicar?
M e gustaría contactar con Paco Satué, mi correo benito@lavandeira.jazztel.es
Gracias
El ejemplo funciona para Vistas de tipo Rejilla (tipoVista == VMdiView.TypeGrid), es decir, cuando la Rejilla se muestra directamente como un objeto independiente.
En tu caso, quieres aplicar filter() a una Rejilla dentro de un Formulario. En este caso tienes que “navegar” por el modelo de objetos del formulario y localizar la Referencia de la Vista de Datos que contenga la Rejilla.
Una vez que tienes la Referencia, aplicas setfilter().