Generando una app a partir de otra


([N1] imesis.prodigy) #1

Hola mundo.

No hallo la manera de generar (clonar) una aplicación para obtener otra con otro nombre pero con la misma estructura.

He tratado creando una nueva y heredando de la existente, pero la nueva sólo hace referencia a ella y comienzo en blanco.

Intenté creando otra instancia de la aplicación existente, pero no me crea la solución para instalarla.

Agradezco cualquier ayuda que puedan brindarme.

Saludos.

Pablo


([N1] aztecmexico) #2

Buenas tardes,

La única forma de hacer lo que quieres es:

Crea una nueva solución con el nombre distinto. Dicha solución debe tener exactamente la misma estructura de cajas (datos y aplicaciones) que la que deseas clonar.

Puedes cambiar tambien los nombres de las nuevas cajas de datos y aplicaciones, pero respetando la estructura de la que vas a clonar.

Abre la solución a clonar, como eres N2, te sugiero que la nueva solución la hagas en tu vServer local y la que vas a clonar la abras de tu vServer en el cloud de Velneo, o al reves, como tú quieras. lo importante aqui es que abras dos veces el vDevelop, uno conectado a local y el segundo al cloud. Puedes hacerlo todo en uno mismo, con un solo vDevelop, pero es un poco más engorroso andar cambiando de solución.

Una vez que tienes los dos vDevelop con las dos soluciones lo importante es que comiences a copiar todos los objetos de cada caja del mas abajo en pantalla, caja por caja y siguiendo un orden ascendente, ojo, primero copia todas las cajas de datos y posteriormente las de aplicaciones.

No te preocupes por la resolución de objetos, conforme vayas copiando el vDevelop hace casi todo, es una maravilla.

 

Cuando termines de copiar simplemente da una revisada a cada caja con el inspector de errores, por si quedó algún objeto sin resolución, si es asi eso lo corrijes manualmente.

Quiza suena un tanto complicado, pero es más sencillo de lo que parece.

 

Espero te sirva, quizas haya otra forma, pero yo la desconozco, o por ahi habia algo de importar componentes, cuestión de revisar. Reitero, yo es la que utilizo y me funciona bien, y en 10 minutos puedes clonar una solución a otra con otro nombre.

 

Ojo, si haces esto partiendo de una solución base puede que batalles en el futuro con actualizaciones de la open app original, mismas que no podrás aplicar a la solución clonada.

En fín, todo tiene sus ventajas y desventajas, cuestión de conocer la plataforma y decidirse por qué es lo que uno desea.

 

Saludos.

 

Martin Ibarra.

P.D. Tienes mi número de celular, no? dame una llamadita y te apoyo con gusto. mi nick antes era aztecmexico.


([N1] Pepeto) #3

La respuesta de @Martin Ibarra es totalmente correcta, y ha respondido exactamente a lo que preguntabas, pero …

La verdadera cuestión, es:

¿Realmente necesitas tener 2 soluciones que hagan lo mismo? quizá porque se trata de 2 clientes que van a tener personalizaciones.

¿Tan especial es el problema que no lo resuelve la herencia? porque tener 2 soluciones, implica tener 2 mantenimientos, corregir los mismos errores 2 veces, y la primera copia esta bien, pero luego te obliga a evolucionar 2 aplicaciones por separado. Vamos, duplicar todo el trabajo.

¡Ahora, creo que llega el momento de reflexionar!

Aunque quizá me meto donde no me llaman, entonces, ¡disculpad!.

un saludo

José Luis


([N1] Giuseppe::Komenco) #4

Pepeto, pero existe una casuística, que comparto, en la que quieres dejar la versión llamemosla 1, para comenzar una version 2, basándose en ella, sin modificar la primera. De esta manera se podría trabajar en una versión 2, y seguir corrigiendo errores o añadidos a la versión 1, sin que entren en clonficto.


([N1] wikan) #5

Ahi estoy contigo @Giuseppe, producción y desarrollo por decirlo de una manera. Me fastidia bastante cuando empiezo una nueva funcionalidad y salta un bug de la versión en producción y tienes que ocultar o dar marcha atrás para solucionarlo


([N1] imesis.prodigy) #6

Hola.

Gracias a todos por responder.

@Martin. Por mi poca experiencia en V7 pensé que debía haber otra manera mejor de hacerlo que “a pincel”. Tal vez como en v6x, que bastaba con copiar el .map, renombrarlo y a trabajar. Pero creo que va a ser inevitable lo que comentas.

@Pepeto. Estoy totalmente de acuerdo con lo que comentas. Sin embargo, hay ocasiones en que debo partir de un desarrollo básico pero generar “n” versiones según el giro de los clientes. Por ejemplo una aplicación para una empresa automotriz y otra para una muebleria bien pudieran utilizar la vBase para la gestión de entidades. Pero habrá ciertos datos de la automotriz que no sean necesarios registrar en una muebleria y viceversa. Lo ideal seria que pudiera agregar nuevos campos a la tabla ENTIDADES de la automotriz y que al hacer un cambio en la vBase me los dejara intactos; pero el mantenimiento aún así se complicaría. He tratado de “optimizar” el desarrollo creando tablas para datos complementarios, además de formularios en pestañas que se activen según la empresa, y cuando los giros empresariales son variados, a largo plazo lo que me ahorré al contar con una sola aplicación básica resulta difícil de mantener. Así que tarde o temprano termino obteniendo “n” versiones de mi aplicación. Algo como lo que comentas, @Guiuseppe, y lidiando con lo que dices, @wikan.

O tal vez sea que necesito un mejor diseño.

Saludos.

 


([N1] Giuseppe::Komenco) #7

Tengo que entendido que en la siguiente versión sale algo llamado “tablas de extensión”, que si no me equivoco sirve para algo parecido, no estoy un puesto.

Tambien, puedes tener cajas de datos a niveles superiores para el mercado vertical ( automotriz, etc…) , y que estas tablas tengan como maestras las tablas necesarias de la caja inferior, para la ampliación de datos, y los formularios condicionarlos, o si cambian mucho, poner también cajas de aplicación a nivel superior, y con puntos de inserción y herencia inversa incrustar los componentes faltantes.

Espero haberme explicado mejor.


([N4] velavisual) #8

 

Las ‘tablas de extensión’ nacerán para hacernos la vida un poco más fácil.

Hasta ahora (en mis soluciones) cuando necesito personalizar campos para verticales partiendo de una base en común, simplemente creo una tabla personalizada a tal efecto, pero con un enlace al ID correspondiente de la tabla superior. Y todo perfecto, sólo es ir creando tantas tablas a personalizar que se necesiten en las instancias correspondientes.

Welcome to Velneo v7.12

 

 


([N1] abel) #9

Imesis, mirate este video con detenimiento

http://www.youtube.com/watch?v=TJJytBLc-Og&list=PL-bVpgNOlmip9lfzxpdW2sDeigRkarNgk&index=4