Herencia en formularios


([N4] rodolformg) #1

Hola, a todos.

Recién comienzo con V7 y me gustaría saber si hay alguna manera de tener herencia en formularios, mi intención es tener un diseño de formulario "maestro" ya que el 90% de los formularios que utilizo en la aplicación son iguales en diseño, luego entonces se me ocurre la idea de tener un formulario en el que ubique una barra de botones, una rejilla, una imagen, un control objeto (Para ver algo del detalle de cada registro) y botones de acción de tal forma que para crear mis formularios le pueda indicar que se herede de ese formulario y pueda tener ya preparado mucho del nuevo formulario.

De ya, gracias por la ayuda.

Saludos,

Rodolfo


([N1] Pepeto) #2

Claro que puedes tener un formulario maestro, de echo muchos usamos ese tipo de practicas.
Pero no como lo planteas.

Puedes crear una tabla y un formulario para esa tabla, con todos los objetos que indicas, en un proyecto, luego cada vez que necesites ese formulario, solo tendras que heredar el proyecto en tu solucion, y copiar el formulario, o toda una carpeta de objetos y llevarla al proyecto principal, al mismo tiempo que cambias el origen de los objetos. y lo tendras casi todo echo.

Un saludo
Jose Luis
http://www.ascsl.com


([N4] velavisual) #3

@Rodolfo
.
Tal como indica José Luis (@Pepeto) es la forma de hacerlo
.
.
También puedes mirar el tutor de almacén de objetos:
.
http://velneo.es/tutor-de-almacen-de-objetos/
.
saludos
Antonio Vela
http://www.velavisual.com


([N4] rodolformg) #4

Hola,

Jose Luis, Antonio.

Muchas gracias por el consejo, veo sin embargo que está técnica es útil sólo al momento de crear los formularios basados en el "maestro", sin embargo me interesa tener la posibilidad de modificar ese formulario "maestro" y que las modificaciones realizadas sean impactadas en los formularios que deriven de este. En resumen, busco que las modificaciones que haya necesidad de realizar en los formularios (Después de creados) resulten más sencillas buscando hacerlas sólo en el formulario "maestro".

Por supuesto, no descarto la posibilidad de que sea yo quién no ha entendido bien y lo que comento sea posible.

De ya, gracias.

Rodolfo


([N4] mperez) #5

A ese respecto lo que puedes utilizar so los puntos de insercion y la herencia inversa, no se si te refieres a eso. Conlo que podrías hacer un cuerpo del formulario conun pestañador Pesatañador y lo que contiene cada una de las pestañas 8Contactos, Apuntes, Facturas, Compras, etc variase en función de soluciones que heredan la solucion base y que contiene el formulario general.


([N1] Emanuel) #6

Me parece que los que plantéa Rodolfo no es posible en Velneo. hasta donde yo se, es decir si no entiendo mal Rodolfo quisiera una herencia al estilo de la POO. Sería algo así como definir una clase formulario y que se pueda crear objetos formularios o crear relaciones con otras clases mediante herencia. Velneo en realidad trabaja con objetos que se pueden reutilizar mediante la copia "inteligente" como se hace en modo almacen de objetos o mediante la "visibilidad" de objetos entre diferentes proyectos a lo que se le da el nombre en V7 de herencia entre proyectos.

En definitiva no se podría tener una plantilla o clase base por ejemplo un formularios maestro y poder crear diferentes formularios en base a el. Luego como todos "heredan" del formulario maestros al hacer modificaciones en el mismo en forma automática impactarán en sus formularios derivados.

Saludos y espero sus comentarios para ver si ando muy errado.
Emanuel Toro.






([N4] mperez) #7

Se puede y no se puede, a nivel de subformularios incrustados en otros si se puede con la herencia y los puntos de inserción.

Evidentemente no es la solucion para hacer formularios de distintas tablas con una base comun o lo veo una complicacion.

Pero si un formulario de Entidades definido por ejemplo en la base y que cambie su aspecto si tenemos en la solucion a su vez la posibilidad de tener Contabilidad / Erp / Cmr u otros modulos, cambiando el formulario base en funcion de lo que el cliente tiene instalado.


([N4] rodolformg) #8

Hola,

Emanuel y Miguel.

Me refiero justamente a lo que comenta Emanuel. Estoy intentando crear en V7 una aplicación muy particular que, si bien no es complicada a nivel de datos, hace uso de muchos formularios. Tengo una predilección (Léase obsesión) por las interfases de usuario homogeneas, así que el aspecto visual de los formularios es el mismo. Dicho lo anterior, me he encontrado con los primeros formularios creados y he tenido necesidad de incorporar una banda de color (Preferencia de mi cliente) y, atendiendo a la premisa del esfuerzo mínimo, he buscado una forma de modificar sólo en un sitio para que los formularios se vean afectados, es ahí de donde surge esta inquietud.

Evidentemente existe la posibilidad de irse a mano modificando uno a uno, pero quiero saber mis opciones para planear mi estrategia de desarrollo para este y los futuros aplicativos.

La idea de Miguel de los puntos de inserción no me parece que sea lo mismo (Al menos hasta donde he podido entender) ya que
eso solucionaría el que un mismo formulario aparezca con aspecto similar (Incluido en un separador de formularios) en diferentes Formularios ya que es el mismo, pero lo que busco es lo que ha planteado Emanuel.

Por último, en algún sitio (Ofrezco disculpa anticipada por no recordar el nombre o sitio) leí algo referente a una técnica por la que se puede "simular" algo parecido a la POO con V7, si puede alguien guiarme para dar con esa información se lo agradeceré, en su momento no presté mucha atención, pero ahora podría ser la solución que busco.

Nuevamente, muchas gracias por sus comentarios.

Saludos,

Rodolfo


([N1] Emanuel) #9

Me imagino que la solución podría venir de la mano del uso de hojas de estilo CSS en Velneo. Lo cual no pobré todavía en V7 pero me imagino que se podrán hacer cosas similares a lo que se hace en programación WEB.
No se me ocurre otra cosa...por ahora.

Saludos.
Emanuel Toro.

PD: el CSS es solo para el aspecto visual de los controles, dudo que modifique alguna otra cosa.


([N1] bmaimo) #10

Lo que propone Rodolfo me parece muy interesante, y a mi también me gustaria poder contar con esa utilidad.
Por ahora uso lo que se comenta de copiar formulario, pero no es exactamente la funcionalidad que deseo.

Si se propone como idea, contad con mis votos.


(Tolgrim) #11

Rodolfo, algo parecido a la POO en v7 es lo que proponen aquí Utilizando un modelo de emulación de clases, imagino que te referías a esta información, si no espero que te sirva igualmente.


([N1] Emanuel) #12

Según mi criterio no se puede "simular" POO real en V7. No le veo la utilidad a tratar de simular o crear seudoconceptos de POO en V7 como se plantea en el "link" al que se hace referencia.
Pienso que en V7 cuando se habla de "herencia" solo se habla de la relación de herencia que se puede establecer entre los proyectos de las diferentes soluciones, ya que veo en ésto mucho de POO.
En cuanto al manejo de objetos disponibles en V7 no veo en ningún lugar el concepto de clase para uso por el usuario programador. En definitiva no podemos crear o extender la clasificación de los objetos manejados por el sistema. Pero si veo los conceptos de mensajes entre objetos mediante el uso de eventos y conexión de eventos, o el establecer relaciones entre objetos mediante acciones u otras formas, etc. Con ésto quiero decir que algunos de los conceptos o ideas de la POO estaría manejando el V7 pero no todos por eso no sería POO.

En fin...es solo mi parecer con respecto al tema.

Saludos.