Almacén de objetos en v7

Los que venimos de velneo v6, sabemos lo que es el almacén de objetos y la metamorfosis al vuelo. Y nuestra pregunta es ¿Cómo puedo tener un almacén de objetos en v7?.

Precedentes

En v6, solía venir con la instalación de la herramienta un pequeño almacén de objetos. En esencia eran pequeños mapas (proyectos). Existían dos tipos:

  1. Programas sencillos con una funcionalidad, que por un lado te servían de ejemplo a los no iniciados, y por otro podías incorporarlos a tus desarrollos.
  2. Objetos visuales de una tabla tipo (VMAESTRO). Eran mapas (proyectos) que tenías todos los objetos visuales de una tabla, con un estilo concreto.

Mas tarde salieron las plantillas empresariales (vBase, vGestion,….). Este código abierto además de ayudar a aprender la programación en Velneo, a un nivel más avanzado que los programas que venían de serie con la herramienta, permitía partir de un código elaborado para crear aplicaciones.

Con estas aparecieron los complementos (vMail, vODBC,….). Código reutilzable en diversas soluciones.

Una vez que ya caminabas solo, y eras capaz de hacer tus propias aplicaciones. Por un lado utilizabas los complementos que te pudiesen interesar, y muchos eran interesantes, para incluirlos en tus aplicaciones. Pero sobre todo utilizabas el almacén de objetos para el desarrollo rápido de aplicaciones, aprovechando la metamorfosis al vuelo. Quien mas quien menos tenía sus módulos en el almacén, de lo cuales tiraba para crear nuevas tablas o nuevos objetos de tablas existentes.

La actualidad

En la v7 existen las Open Apps . Estas permiten cubrir por un lado el aprendizaje, y por otro (gracias a la herencia) la disposición de complementos reutilizables, con la gran diferencia de que el código está siempre separado; por lo que puedes veneficiarte de nuevas versiones sin tener que tocar nada de tu código, con solo actualizar el complemento lo tendrás operativo en todas las soluciones que lo use. Esto es una gran ventaja de la v7.

Estas Open Apps es el equivalente a el código abierto existente en la v6, mejorando notablemente su aprovechamiento. Pero el almacén de objetos y su metamorfosis, era algo diferencial, para el desarrollo rápido de soluciones y es algo que no disponemos. Y ninguna Open Apps lo puede sustituir. Tampoco se puede sustituir con los asistentes, puesto que con un asistente siempre partes de una estructura de objetos cerrada, y no puedes crear todos lo objetos de una tabla, con el diseño y funcionalidad que cada uno quiera, en un paso como hacíamos con el almacén de objetos.

Por lo que si tenemos que crear 10 tablas iguales, por ejemplo con solo dos campos (CODIGO, NOMBRE), con todos sus objetos, formularios, rejillas, búsquedas, localizadores, menús, informes…., algo que con la v6 eran 2 minutos, ahora debemos repetir la creación de cada objeto 10 veces :(.

Hasta ahora los comentarios escuchados desde Velneo, dan la sensación de que las Open Apps, y los asistentes sustituyen perfectamente al almacén de objetos….. y pienso que no es así. Tiene que existir una forma de reutilizar código de una u otra manera , y no tiene nada que ver con la herencia, que está muy bien pero para lo que es.

¿Como podemos simular un almacén de objetos?

Bueno, de momento tenemos que buscarnos la vida, pues ni siquiera tenemos la posibilidad de copiar múltiples objetos entre soluciones. Así que voy a exponer mi «solución».

lo primero que hice con la v7, fue crearme mi mantenimiento VMAESTRO, que como saben los que vienen de v6, no es mas que una pequeña solución (mapa de v6, con parte izquierda y derecha), que contenga todos los objetos visuales necesarios para el mantenimiento de una tabla. Ver: almacén de objetos, Maestro código numérico

Esta solución la guardé como «Almacén de objetos». Ahora empiezo a desarrollar una aplicación y a cada nueva tabla que necesito, quiero crearle todos sus objetos, y empiezo a «discurrir» como hacerlo.

Creo mi propia solución NachoDev con su proyecto de datos y su proyecto de aplicación. Abro la solución del almacén de objetos, y hago que esta herede la nueva solución.

Me aseguro que el proyecto de datos MAESTRO.DAT del almacén de objetos «conozca» el mio de datos, y que el proyecto de aplicación MAESTRO.APP del almacén conozca el mio.

Voy al proyecto de datos MAESTRO.DAT y muevo la tabla al proyecto NACHODEV.DAT ( con la opción del menú objetos «mover de proyecto»), a continuación voy al proyecto MAESTRO.APP, y muevo todos sus objetos al proyecto NACHODEV.APP. Para esta última operación puede servirte con solo mover el objeto menú., pues este moverá todos los dependientes.

Salgo del Developer, guardando los proyectos de la solución NachoDev, pero sin guardar los proyectos del almacén de objetos.

Vuelvo a entrar en mi proyecto, y ahora como no tenemos metamorfosis al vuelo, toca renombrar todos los objetos.

Y así con cada tabla nueva, hasta que tengamos un almacén de objetos con la metamorfosis al vuelo, mejor que el que teniamos en la v6 ( o al menos igual), y esperemos que sea pronto.

3 comentarios en “Almacén de objetos en v7

  1. Gul dijo:

    La metamorfosis al vuelo conjuntamente con el Almacén de Objetos de la v6 es la característica menos divulgada, menos ponderada y menos citada por los usuarios y por parte de Velneo cuando se habla de las bondades de la plataforma, copiar y pegar no es suficiente. Me parece un gran error.

    Gracias Nacho por dejarlo tan claro.

Deja un comentario