Velneo V7:: El segundo cambio de Chip (II)

Después de haber programado un rato más extenso y continuando con los conceptos que una vez más nos llevan a cambiar de chip con Velneo v7:

Menú contextual (Alta, edición y localización de Maestro): La técnica a utilizar con V6 era crear tres botones que lanzaran esas acciones, darles la opción incluir menú y posicionar su orden de tabulación posterior al control edit en donde los queríamos incluir, en V7 tienes que construir tres acciones con origen ficha de la tabla en la que estás trabajando, con las acciónes alta, modificación, edición, localización ó la  que nos interese. Posteriormente hay que crear un objeto menú e incluirle las acciones que hemos creado, ya en el Form creamos un botón que llame a un menú y le asignamos el menú que hemos creado. Es un poco más largo pero mucho más versátil, me imagino que en algún punto crearán un asistente para hacer este proceso más rápido.

Formulario para Búsquedas, otra cosa : Los formularios para búsquedas a mi particularmente me parecieron un poco truculentos de decifrar al principio pero una vez se utilizan tienen  bastante sentido (Una vez más se consciente Los Objetos tienen entrada y Salida), Lo que más cambia es traspaso de las variables, en v6 simplemente creábamos un form le señalábamos que era especial para búsquedas le poníamos los controles que afectaban las variables globales que utilizábamos en las búsquedas y listo, en v7 lo que hacemos es crear primero el form, lo asociamos a la tabla donde realizaremos la búsqueda y ponemos los controles edit sobre los campos que le pasaremos a la búsqueda, es decir, lo creamos como si fuera un formulario normal en donde editaremos ciertos campos, pero estos campos en lugar de ser editados serán pasados a la búsqueda en la que incluyamos el form.

Ya en la búsqueda asignamos el form que utilizará y comenzamos a añadirle las partes, para utilizar los valores introducidos por el usuario vamos a la propiedad limite inicial o entre limites, según sea el caso, y nos aparecerán los campos que hemos indicado en el formulario o podemos disponer de las variables globales que hemos creado,procedemo a realizar la asignación con lo que obtendremos una salida de lista que podremos conectar con el objeto que nos interese a través de una acción.

Layouts, piénsalos como un flujo: Quizá uno de las características nuevas en la edición de formularios que mas trabajo dan es la edición de layouts, los layouts son áreas que se crean para que controles fluyan en cierta dirección y cambien su tamaño dentro de ellas, esta es la clave para entenderlas “Son Areas” y Los controles “Fluyen dentro de ellas”, así:

Este form de ejemplo tiene tres controles sin ningún tipo de layout, funcionará pero seguro queremos darle al usuario la libertad de redimensionarlo:

Si le indicamos al formulario que se comporte como un layout vertical, los controles dentro de el fluirán de forma vertical uno detrás del otros según su posición en el eje “Y” y serán tan anchos como el Layout que los contiene.

Lo mismo aplica si aplicamos un layout horizontal, los controles serán ordenados de izquierda a derecha según su posición en el eje x y serán tan altos como el layout que los contiene, eso si la propiedad alto esta puesta a proporcional, como es el caso del botón cancelar:

Pero en ninguno de los dos casos es lo que buscamos, lo que realmente queremos es que el edit sea tan ancho como el control y que los controles ”Aceptar” y “Cancelar”, queden debajo de él uno al lado del otro. Para ello utilizamos una anidación de layouts, es decir, un layout dentro de otro, así ingresamos un layout que agrupara los botones y se encargara de distribuirlos de izquierda a derecha  convirtiéndose en solo objeto agrupador:

Que paso?: Como puedes ver hay dos layouts en interacción, el propio formulario y el  layout horizontal que introducimos para agrupar los botones, los Layouts se ejecutan de adentro hacia afuera, por lo que en primera instancia el layout horizontal toma los botones y los pone uno al lado del otro combirtiendose en un “objeto” después el layout vertical del propio formulario pone al control edit  y el control layout uno debajo del otro haciéndolos tan anchos como sea posible dándonos la distribución que buscábamos,  en layouts todavía falta mucha tela por cortar (espaciadores, alineamientos, márgenes, layouts Grid, etc) pero una vez entiendes que los layouts son Areas en las que los objetos fluyen el resto es bastante simple.

Procesos para ejecutarse con VDataClient: Una de las grandes ventajas del nuevo Vserver es que literalmente puede ser utilizado como un motor de datos, y el VDataClient es el componente encargado poner a nuestra disposición nuestro modelo de datos sin nisiquiera haber creado un objeto visual, si señores, por fin podremos probar nuestro modelo de datos antes de crear los objetos visuales, para esto se deben crear procesos directamente en la caja de datos de nuestra aplicación, los cuales serán accesibles directamente desde el Vdataclient en la instancia de datos que estemos utilizando.

Dile Adios al evento Oninit-map-Server: en la nueva arquitectura de V7 todos o casi todos los objetos tienen eventos, los cuales son accesibles a través de una señal de evento, particularmente voy a referirme al proceso de inicio de una aplicación en la cual acostumbramos a organizar ciertos parámetros, en V6 solo debemos crear un proceso común sin origen y los nombramos como “Onnit-Map-Server” y se ejecutará al inicio.

El equivalente en V7 es crear un evento que será disparado desde una conexión de evento inicializa del marco AutoExcec que contiene el menú principal de nuestra aplicación.

Bueno, hasta aqui voy con mi segundo cambio de chip, espero que les sea útil.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s