rejilla


([N1] pinpez) #1

he estado repasando el entorno de objetos ARBOL, REJILLA, REJILLA AVANZADA, CASILLEROS. LISTVIEW, etc…etc…

pero nada de encontrar la forma que me permita ver una rejilla dentro de otra, es decir, p.e.:

-un listado de facturas con sus respectivas columnas y un desplegable que al seleccionar la factura se vean las respectivas lineas de facturas.
(en microsoft acces esta opción es hoja secundaria de datos)

tampoco quiero dos subformularios diferentas como p.e. con el objeto MULTIVISTA,

la idea es el objeto tipo ARBOL, pero seleccionando las columnas, etc… pero son reducidas las opciones.
Una alternativa, puede ser ir por código javascript y calentarte los cascos o también, usar QML.
Pero, me interesa el visionado nativo en Velneo utilizando rejillas (un simple mdb de Access lo permite)

en Velneo, o se pasan o no llegan.

¿Hay alguna forma de visionar rejillas dentro de rejillas seleccionando un indice entre ambas?

Gracias por cualquier comentario o por facilitar código javascript por API.


([N1] aztecmexico) #2

Creo, porque nunca la he probado, que la rejilla avanzada puede hacer eso que deseas o algo similar.

Como te comento nunca la he utilizado por lo cual no te podría asegurar a ciencia cierta, lo malo que los comentarios respecto a su funcionamiento no son del todo halagadores, pero igual y en principio te puede servir.

Ya nos contarás.

Saludos.

Martin.


([N2] Mgalvezh) #3

Estudia el multivista.


([N1] pinpez) #4

gracias a ambos por contestar, no me sirven estos objetos tanto rejilla avanzada como multivista.

No permiten visualizar facturas y lineas de estas facturas. La idea es visualizar, como ya comenté, varias filas de facturas y sus lineas.
Pero estos objetos nativos de velneo no lo permiten, porque un arbol solo muestra un campo y lo mismo ocurre si se utiliza una rejilla avanzada, en la agrupación solo se muestra una columna. En el caso de multivista, solo permite visionar lineas de una factura concreta en forma de formularios separados.


([N2] AyudaVelneo) #5

Hola Pinpez:

El objeto rejilla no permite realizar lo que pretendes (y creo que nunca lo permitirá), por lo tanto deberás conseguir lo que pretendes según el paradignma de Velneo (esto es lo que se llama “cambiar el chip”).

Para conseguir lo que pretendes, los compañeros te han aconsejado un par de objetos (que no te sirven).

Yo te propongo otro: sincronizar en un formulario dos rejillas (una para la cabecera de facturas y otra para las líneas) de tal forma que al moverte por la lista de facturas (que previamente has podido filtrar según unas condiciones de búsqueda), irán apareciendo en la segunda rejilla las líneas de la factura seleccionada.

Te dejo el enlace a un post que escribí hace tiempo sobre esta cuestión.

Un saludo


([N3] pacosatu) #6

Hola.

Además disponemos del control Tree Widget que podemos incorporar al formulario y programarlo con el API de Velneo.

La clase del API VTreeWidget determina la estructura jerárquica del árbol, en este caso facturas -> líneas.
La clase VItemRegisterPattern gestiona la edición de los registros de facturas y líneas de la misma forma que lo hacemos en una rejilla.

Saludos
Paco Satué


([N1] pinpez) #7

gracias de nuevo.

Así es, tocará meterse en el núcleo y programar.


([N1] pinpez) #8

Continuando con el tema de la REJILLA,
¿ puede alguien decirme que hago mal ?

tengo una rejilla con 3 campos y tres filas, p.e.:

fila1: campo1 | campo2 | campo3
fila2: campo1 | campo2 | campo3
fila3: campo1 | campo2 | campo3

la rejilla la tengo en modo editable y cada uno de los campos también.
quiero mostrar un simple mensaje con la palabra “ok” (en modo popup) que indique cuando hago click en una celda.

aqui el problema…
creo el respectivo manejador de eventos y sus conexiones,

CASO A) en conexión señal “GANA FOCO” --> muestra correctamente el mensaje “ok”
CASO B) en conexión señal “Ratón: botón pulsado” --> NO RESPONDE !

¿Por qué?
yo quiero que muestre un mensaje cuando se hace click en la celda, no cuando gana en foco.

(estoy últimamente un tanto trabado con ciertas propiedades nativas de vDevelop, en cuanto te sales un poco de lo que es vERP no encuentro ciertas funcionalidades nativas y hay que recurrir a lenguajes auxiliares incrementando tiempo y formación, pensaba que sería “coser y cantar”)


([N1] vgegeo) #9

¿Has probado la señal Item: simple click?


([N1] vgegeo) #10

Vaya, no me deja editar y se me ha colado el enlace:

En la ayuda de conexion de evento tienes una explicacion de las señales, y de la mitad en adelante de esa pagina, tienes un listado de qué señales están disponibles para cada tipo de objeto.

Saludos


([N1] pinpez) #11

si, correcto. Eso está claro, gracias.

-el item es para la fila entera seleccionada (no me vale)

como comenté es una rejilla que está en modo “editable” y sus respectivos campos, también.
Por tanto, yo lo que quiero es que dispare cuando hago click en una celda. Funciona con la señal “Gana foco” pero no con ninguna de…
*Ratón: botón doble-click
*Ratón: botón pulsado
*Ratón: movimiento

rectifico, he probado a hacer una prueba. El resultado que obtengo es el siguiente:
-rejilla editable con sus respectivos campos también.
-MEVENTO [manejador de evento con una sola instruccion: “Mensaje()”]
-conexion de la señal:
– control: columna1 (una columna cualquiera)
– señal: Ratón: botón pulsado
– manejador: MEVENTO

  1. hago “UN” clic en la celda --> se selecciona toda la fila (no tenia foco activado)
  2. hago “OTRO” clic en la misma celda --> la celda se habilita para edición
  3. hago “EL TERCER” clic en la misma celda --> se lanza un mensaje.

¿ESTO ES NORMAL?