El laboratorio del profesor vBacterio

En el laboratorio del profesor vBacterio nos pasamos el día haciendo experimentos con el vDevelop, mezclando código Velneo, JS y las ideas más disparatadas.

Así nos va, un día nos sale un exportador CSV y otro un crecepelo especial para bigote.

Laboratorio vBacterio(http://factoriadelcomic.blogspot.com.es/2015/12/apostamos-por-la-innovacion.html)

 

Disclaimer

Los códigos de esta sección no tienen garantía alguna, al igual que los experimentos del profesor Bacterio pueden tener resultados sorprendentes, catastróficos o ambos a la vez.

Esperamos que lo paséis bien con ellos.

La entrada El laboratorio del profesor vBacterio aparece primero en AyudaVelneo.

¿Es difícil utilizar PaaSOS para mis desarrollos?

La semana pasada contactó conmigo un viejo amigo que quería conocer mas en profundidad el Proyecto PaaSOS. Organicé una reunión con Jorge Hontoria y antes de llegar a los postres mi amigo nos preguntó: “Realmente, ¿es difícil utilizar PaaSOS para mis desarrollos?”

Jorge y yo discrepamos… ¿quieres saber cuales fueron nuestras opiniones?

utilizar PaaSOS

 

Yo argumentaba que utilizar PaaSOS, para alguien que se está iniciando en el desarrollo con Velneo, es demasiado complejo mientras que Jorge opinaba que no es tan difícil de utilizar.

Te voy a contar los argumentos de cada uno.

Conociendo la plataforma PaaSOS

De entrada, PaaSOS asusta.

Si descargas toda la plataforma PaaSOS y ves su estructura, lo cierras y no lo vuelves a abrir.

utilizar PaaSOS

¡Que no cunda el pánico!

Yo lo he abierto unas cuantas veces… y aquí sigo.

También es verdad que hay que diferenciar 3 partes bien diferenciadas

  • Plataforma completa: el árbol que te he enseñado anteriormente es de la versión 1.6… creo que la versión 1.7 trae mas novedades.
  • PaaSOS CORE: verdadero corazón de la plataforma. Este módulo da la funcionalidad común a toda la plataforma y simplemente por heredarlo en tus desarrollos, también la tendrás a tu disposición.PaaSOS Core
  • Módulos de PaaSOS: módulos con funcionalidades específicas. Generalmente están formados por un proyecto de datos y uno de aplicación y suelen funcionar de manera autónoma  (heredando PaaSOS CORE).
    • Cartera de cobros y pagos
    • GTD.
    • Rutas.
    • Redes sociales.
    • etc.

PaaSOS EAC

Mi opinión: Utilizar PaaSOS para mis desarrollos es COMPLICADO

Siendo sincero yo, en este caso, parto con alguna desventaja.

Llevo involucrado en el proyecto casi desde el principio, por lo que me ha tocado desarrollar o modificar alguna de las partes complejas de la plataforma.

Al realizar mi afirmación, yo no diferenciaba entre “utilizar PaaSOS” y “modificar PaaSOS” puesto que he tenido que realizar las dos operaciones.

Una de las mayores dificultades a las que se enfrenta un desarrollador al intentar comprender el CORE de PaaSOS es que se hace un uso intensivo tanto de constantes como de funciones (se puede dar el caso de que desde un manejador se llame a un proceso que ejecute una función… que llame a otra función (en este ejemplo se recalculan los calendarios al realizar una repetición de una actividad).

 

Función PaaSOS

Una de las dificultades añadidas por lo menos para mi) es que TODA la plataforma esta en la lengua de “chespir”, es decir, en Inglés (menos mal que los textos explicativos están en castellano).

Si eres como yo que toda la vida he estudiado francés… pues todavía es mas complicado.

El sistema de conexiones es complejo… pero a la vez muy potente. Permite conectar unos registros con otros sin necesidad de enlaces entre las tablas.

La opinión de Jorge: Utilizar PaaSOS para mis desarrollos es SENCILLO

Jorge argumentaba, y con razón, que hay que diferenciar “utilizar PaaSOS para mis desarrollos” de “modificar el CORE de PaaSOS para mis desarrollos”.

Como te he comentado anteriormente, simplemente por el hecho de heredar “PaaSOS CORE“, podrás:

  • Etiquetar y categorizar cualquier registro.
  • Actividades con repetición de las mismas.
  • Posibilidad de adjuntar ficheros.
  • Realizar anotaciones.
  • Calendario de serie.
  • E-mails.
  • etc.

Es cierto que el código está “mimado” hasta la última coma. Cualquier proceso o función se detalla exhaustivamente (como has podido ver anteriormente).

Otra de las ventajas que señalaba Jorge es que la estructura de cualquiera de los proyectos es la misma:

Módulo PaaSOS

Otra de las ventajas que le veía Jorge es el potente sistema de plantillas disponible según el módulo que tengas que desarrollar:

  • Maestro.
  • Maestro arbolado.
  • Maestro con plural.
  • Maestro con sistema de conexiones.
  • Maestro sin sistema de conexiones.
  • etc.

En este punto le tengo que dar la razón.

Después de un tiempo sin trabajar con PaaSOS, desarrollé un par de módulos para la plataforma, PaaSOS GTD y PaaSOS EAC (cobros y pagos) y no me costó demasiado gracias a estas plantillas.

Cobros y pagos

 

Conclusiones finales

Es cierto que PaaSOS es complejo… muy complejo pero a la vez es potente… muy potente.

Yo te animaría a utilizar PaaSOS para tus desarrollos en Velneo.

Te animaría a “conocer” PaaSOS CORE y a desarrollar tu primera aplicación con PaaSOS.

 

¿Has utilizado PaaSOS en tus desarrollos Velneo? ¿Te ha parecido complejo de utilizar? ¿Te ha parecido sencillo?

Déjame un comentario mas abajo y comenzamos el debate.

La entrada ¿Es difícil utilizar PaaSOS para mis desarrollos? aparece primero en AyudaVelneo.

Las 3 únicas formas de ampliar las funcionalidades de Velneo vErp

Hay una pregunta recurrente en los clientes que contratan tanto el “Bono de 10 horas de desarrollo” como el “Servicio de desarrollo online“:

“¿Cuál es la mejor forma de ampliar las funcionalidades de Velneo vErp para mis desarrollos?”

Las 3 únicas formas de ampliar las funcionalidades de Velneo vErp

 

Además de responder a esta pregunta, surgen otras cuestiones no menos importantes:

  • Si modifico directamente la plantilla, ¿qué pasa cuando Velneo saque una nueva versión?
  • Si heredo la plantilla, ¿cómo integro mis desarrollos?
  • Si parto de una versión de vErp y la modifico según mis necesidades, cuando Velneo saque alguna funcionalidad interesante en posteriores versiones, ¿podré adaptarla a mi vErp?

Vamos a intentar responder a todas estas cuestiones viendo los pros y los contras de cada una de las formas.

Opción 1: Ampliar las funcionalidades de velneo vErp modificando directamente la plantilla

La solución “aparentemente” mas fácil… pero con matices.

Todos los objetos que creemos para añadir las funcionalidades de velneo vErp (o modificarlas), irán en los mismos proyecto de la plantilla.

Si trabajamos con este método, tendremos que tener algún mecanismo para que cuando Velneo lance una nueva versión, podamos añadir las nuevas funcionalidades incluidas sin borrar toda nuestra personalización.

Lo que se hace normalmente es crear una una carpeta (tanto en el proyecto de datos como en el proyecto de aplicación) llamada, por ejemplo, “Personalización”.

Cada objeto que modifiquemos (ya sea del proyecto de datos o del proyecto de aplicación), tendremos que moverlo a esta carpeta “Personalización” ¡sin cambiarle el identificador al objeto!.

Cada objeto nuevo tendremos que moverlo también dentro de esta carpeta.

¿Cómo actuar cuando Velneo lance una nueva versión de vErp?

Tendremos que realizar los siguientes pasos cada vez que Velneo lance una actualización de la plantilla:

  • Abrir 2 vDevelop:
    • En uno tendremos nuestro vErp modificado.
    • En el otro tendremos la nueva versión de vErp.
  • Eliminaremos de la nueva versión todos los objetos que tengamos en nuestra carpeta “Personalización” (tanto en el proyecto de datos como en el de aplicación)
  • Copiaremos nuestra carpeta “Personalización” a la nueva versión de Velneo vErp.
  • Creamos un .vin con la nueva versión y la instalaremos en nuestro servidor de producción.

Sencillo… si tenemos cuidado.

Ventajas

Solución + cómoda técnicamente.

Evitamos el uso de herencia (con otras soluciones) y herencia inversa. + sencillo para los desarrolladores que os estáis iniciando en la plataforma.

Podemos modificar a nuestro antojo los triggers y las actualizaciones de las tablas.

Inconvenientes

Exige un mantenimiento cada vez que salga una nueva versión.

Mayor riesgo de cometer errores. Sobre todo en borrado de objetos

Opción 2: Ampliar las funcionalidades de velneo vErp heredando la plantilla

Solución algo mas compleja que la anterior.

Tendremos que crear una nueva solución que “herede” de Velneo vErp.

En esta nueva solución crearemos todos los objetos necesarios para ampliar las funcionalidades de Velneo vErp.

Ampliar las funcionalidades de velneo vErp heredando la plantilla

Si queremos modificar alguno de los objetos del proyecto de aplicación incluidos en Velneo vErp, tendremos que “subirlo” a nuestra solución (en este caso al proyecto vCrm_app 1.0):

Personalización de vErp

Como podéis ver, he creado una carpeta llamada “Personalización de vErp” en la que voy “subiendo” los objetos que quiero modificar de la plantilla vErp.

Si hay que ampliar la funcionalidad de las tablas de vErp, tendremos que crear “Tablas de extensión” en nuestro nuevo proyecto de datos.

¿Cómo actuar cuando Velneo lance una nueva versión de vErp?

Al no haber tocado ningún objeto de la plantilla Velneo vErp, simplemente instalamos el nuevo .vin y a funcionar.

Ventajas

Solución + sencilla de mantener.

Menor riesgo de cometer errores.

Inconvenientes

Mayor dominio de la plataforma al usar herencia inversa.

No podemos modificar ni ampliar las funcionalidades de los trigger y actualizaciones de las tablas incluidas en Velneo vErp puesto que Velneo no permite herencia inversa en tablas.

Opción 3: Ampliar las funcionalidades de velneo vErp partiendo de una versión de la plantilla

Partimos de una versión de la plantilla vErp y a partir de ahí nos olvidamos de dicha plantilla.

Con esta opción ya podemos jugar con diversas variantes.

A mi personalmente la opción que mas me gusta es tener un “Core” o “Núcleo” común para todos mis desarrollos y a partir de ahí, utilizar de nuevo la “Opción 2” pero con mi “Core” para las distintas personalizaciones sectoriales o de distintos clientes.

Con esta opción modifico y amplío las funcionalidades de mi “Core” sin depender de otras empresas.

¿Cómo actuar cuando Velneo lance una nueva versión de vErp?

Cuando Velneo lance una nueva versión de la plantilla, tendremos que integrar manualmente las funcionalidades que nos sean útiles o necesarias que vengan incluidas en vErp.

Ventajas

Solución completamente adaptada a nuestras necesidades.

No dependemos de Velneo para la corrección de errores o ampliación de nuevas funcionalidades.

Inconvenientes

Perdemos la integración con el ecosistema de aplicaciones de velneo vErp.

Integración manual de nuevas funcionalidades incluidas en la plantilla.

 

¿Con cuál de las 3 formas de ampliar las funcionalidades de vErp te quedas? 

Déjame un comentario mas abajo y comenzamos el debate.

La entrada Las 3 únicas formas de ampliar las funcionalidades de Velneo vErp aparece primero en AyudaVelneo.

Proyectos en Velneo: ¿Cómo estructurarlos?

Cuando comenzamos a desarrollar con la plataforma, una de las primeras cuestiones a resolver es la de cómo estructurar los proyectos en Velneo. Pues como diría un buen gallego: “depende”.

En el post “¿Cuántos proyectos debe tener mi solución?” vimos que lo mas recomendable, es tener un solo proyecto de datos y un solo proyecto de aplicación.

En el post de hoy vamos a ver las ventajas y los inconvenientes de distintas formas de estructurar los proyectos en Velneo.

Estructurar los proyectos en Velneo

 

Tipos de estructura de proyectos en Velneo

Para saber la estructura que tienen que tener los proyectos, y por consiguiente nuestras soluciones, tendremos que responder a una serie de preguntas. Entre ellas podemos destacar las siguientes:

  • ¿Mi aplicación va a ser heredada por otras soluciones?
  • ¿Quiero facilitarle la vida a otros desarrolladores?
  • ¿Cómo voy a distribuir mi solución? ¿Como un todo?, ¿Por módulos?
  • ¿Quiero que mi solución sea la base de otras soluciones?
  • ¿Quiero tener distintas instancias por módulo. o una instancia para todos los módulos?

En función de lo que contestemos, tendremos que estructurar nuestros proyectos.

Proyectos “Monolíticos”

Son aquellas soluciones que tienen un proyecto de datos y un proyecto de aplicación. Un ejemplo de esta estructura de proyectos en Velneo es mi aplicación GTDenlanube.

Proyectos en velneo: Estructura monolítica

Estructura monolítica

Ideal cuando empezamos a desarrollar con Velneo V7. Evitamos complejidad.

Nos despreocupamos de crear tablas de extensión y herencia inversa.

Facilitan la herencia a otros desarrolladores.

No se puede trocear.

Dificulta el desarrollo colaborativo.

No es escalable al estar todos los módulos en el mismo proyecto.

Todo el peso está en la misma solución, con altos consumos de memoria a medida que añadimos funcionalidades. Si tuviesemos un ERP + CRM + TPV + CONTABILIDAD, tendríamos en una solo instancia todos los objetos... ahora imaginad mas módulos: cartera, producción, etc etc.

 

Proyectos “Verticales”

Son aquellas soluciones que tienen un proyecto de datos y varios de aplicación. Un ejemplo muy claro lo tenemos el vErp

Proyectos en Velneo: Verticales

Ya tenemos dos proyectos de aplicación perfectamente diferenciados: vTPV y vERP. Por lo tanto podemos instanciar por separado... aunque los datos siguen estando en la misma instancia.

Facilitan a los desarrolladores las personalizaciones sencillas

Los datos siguen estando en el mismo proyecto.

No es escalable

Proyectos “Horizontales”

Son aquellas soluciones que tienen varias soluciones independientes relacionadas por un proyecto que las hereda. Un ejemplo muy claro lo tenemos en los módulos de la plataforma PaaSOS de Tipesoft. Los módulos de PaaSOS tienen un único proyecto de datos y uno de aplicación…. heredando de un núcleo común (veremos este montaje “mixto” a continuación).

Proyectos en Velneo: Horizontales

Módulos completamente independientes.

Perfectamente escalables.

Peso de las soluciones repartido evitando consumos de memoria desmedidos.

Facilita la extensión de nuestras soluciones.

Facilita el desarrollo colaborativo.

Complejidad en la visibilidad de los datos. Unos módulos no tienen "conocimiento" de los datos de su solución hermana.

Imposible la herencia entre soluciones "hermanas". Si es posible mediante la API de Velneo.

Si queremos utilizar varias soluciones, tendremos que "empaquetarlas" en distintos packs.

Proyectos “Mixtos”

Son aquellas soluciones, generalmente de tipo Monolítico que heredan otras soluciones (del tipo que sean). Son aquellas soluciones que creamos para no tocar o ampliar la solución base y poder beneficiarnos de futuras actualizaciones de dicha solución: soluciones que creamos heredando vERP, soluciones que creamos heredando el núcleo de PaaSOS

Proyectos en velneo: Mixtos

Facilitan la instalación de nuevas versiones de nuestra solución base.

Perfectamente escalables.

Facilitan la extensión de la solución.

Facilitan el desarrollo colaborativo.

Complejidad en la herencia de soluciones.

No están recomendados para usuarios que comienzan con la plataforma. Necesitan conocimiento de estructuras avanzadas en Velneo V7.

 

¿Ves alguna ventaja o inconveniente mas en la forma de estructurar nuestros proyectos en Velneo?

Coméntame tu experiencia mas abajo.

La entrada Proyectos en Velneo: ¿Cómo estructurarlos? aparece primero en AyudaVelneo.

¿Es viable y sobre todo rentable el desarrollo colaborativo en Velneo V7?

¿Qué es el desarrollo colaborativo? Pues según la Wikipedia el desarrollo colaborativo “es un modelo de desarrollo de software cuyas bases son la disponibilidad pública del código y la comunicación vía Internet“. Yo diría además que en el desarrollo colaborativo, todas las partes implicadas obtienen...

La entrada ¿Es viable y sobre todo rentable el desarrollo colaborativo en Velneo V7? aparece primero en AyudaVelneo.

¿Te has planteado descargar PaaSOS? La versión 1.5 ya está aquí

Tipesoft acaba de lanzar la versión 1.5 de su plataforma PaaSOS y yo quería que Jorge Hontoria (su responsable) nos contase “en primicia” las novedades que incorpora que son muchas…. y sobre todo de futuro. Como siempre que se lo he solicitado, Jorge no puso ningún problema a la hora de estar unos minutos con nosotros. ¿Te estás planteando descargar PaaSOS? Ahora mismo Tipesoft está liberando progresivamente la RC1 de la plataforma a todos los desarrolladores activos de su plataforma y a todos los desarrolladores que solicitaron la Beta 1 o Beta 2. Posteriormente será remitida a los que lo soliciten mediante el formulario que aparece en esta página. Aquí te dejo el video con las novedades de la versión 1.5 de PaaSOS Medios de comunicarte con Jorge Hontoria Web de Tipesoft Skype: jorge.hontoria.jimenez La entrevista minuto a minuto Presentación de Jorge Hontoria y PaaSOS: A partir de minuto 00:30 Punto y seguido con la versión 1.5: A partir del minuto 01:40 Escritorios digitales: A partir del minuto 04:00 Interfaz suavizado… CSS: A partir del minuto 13:00 TPV Qml: A partir del minuto 16:30 Simplificando la configuración: A partir del minuto 21:00 MQ.. colas de mensajes [...]

El artículo ¿Te has planteado descargar PaaSOS? La versión 1.5 ya está aquí fue publicado en Ayudavelneo por Francisco José Vila Martín

Presentación en sociedad de PaaSOS Mobile

Tipesoft está liberando en estos días las betas de la versión 1.5 de la plataforma PaaSOS con importantes novedades, entre ellas los primeros módulos de PaaSOS Mobile. Para conocer en profundidad esas novedades vamos a realizar un hangout (que hace mucho que no hago ninguno) el próximo martes 26 de agosto a las 16 horas. Contenido del hangout Durante la hora de duración del hangout (seguramente será algo mas) Jorge Hontoria nos presentará las novedades de la versión 1.5 de PaaSOS. Entre ellas destacan: Nuevas plantillas CSS Nuevo módulo TPV QML Importador de datos para toda la plataforma Cirrus 1.2 integrado dentro de la plataforma Servicio de subida de ficheros Primeros módulos de PaaSOS Mobile Características de las aplicaciones móviles Veremos una demo en Android También una demo en iOS y por supuesto una demo en dispositivos basados en Windows Además al final del hangout habrá alguna sorpresa adicional… No lo olvides… el martes 26 de agosto a las 16 horas PaaSOS Mobile te espera.

El artículo Presentación en sociedad de PaaSOS Mobile fue publicado en Ayudavelneo por Francisco José Vila Martín

Open Apps de Velneo V7 ¿Explotamos todo su potencial?

Llevo tiempo dándole vueltas, intentando responder a dos cuestiones sobre las Open Apps de Velneo V7: ¿son útiles para la comunidad de desarrolladores? En caso de serlo ¿sabemos explotar todo su potencial? Si sigues leyendo sabrás a las conclusiones que he llegado. Primero vamos con un poco de teoría ¿Qué son las Open Apps de Velneo V7? Según la definición en la web de Velneo “Se define como Velneo Open Apps al conjunto de recursos de programación catalogados para ser usados con la plataforma de desarrollo de aplicaciones empresariales Velneo V7.” Ademas tienen que cumplir con los siguientes requisitos: Las Velneo Open Apps son FLOSS y tienen los siguientes sistemas de licenciamiento. Están publicadas en la Web en un catálogo para su visión, descarga y uso por parte de otros programadores. Ha sido validado por Velneo previa inclusión en el catálogo. Tenéis toda la información sobre las open apps aquí Objetivo de las open apps: Compartir conocimiento Hasta aquí todo perfecto. Las open apps son recursos de programación (componentes, tutores, ejemplos, plantillas empresariales, etc..) que todos compartimos (tanto Velneo como la comunidad de desarrolladores)… y aquí es donde empiezan los auténticos problemas. Los desarrolladores [...]

El artículo Open Apps de Velneo V7 ¿Explotamos todo su potencial? fue publicado en Ayudavelneo por Francisco José Vila Martín

Mis comienzos desarrollando aplicaciones empresariales con Velneo V7

La verdad es que mis comienzos desarrollando aplicaciones empresariales con Velneo V7 fueron bastante caóticos. En este post te cuento como fue el camino que recorrí hasta montar este blog Llevaba trabajando desde 1.999 con el predecesor de V7 (primero llamado Velázquez Visual y posteriormente Velneo 6x) en las empresas mas punteras que desarrollaban por aquel entonces en Velneo. La verdad es que me consideraba un “experto” desarrollador de la plataforma por lo que pensé que el cambio a V7 sería sencillo… ¡craso error! Empecé con la primera versión que salió y seguí la secuencia lógica que seguramente habréis realizado muchos de vosotros, es decir como buen desarrollador realicé un maravilloso bucle: 1.- Me descargué la versión e intenté con la ayuda del manual ponerme a desarrollar… total venía de 6x y tenía que ser sencillo. 2.- Como el paso 1 falló estrepitosamente, decidí realizar un curso presencial de una semana en la sede de Velneo… ¡ahora si que iba a conseguir programar en V7 igual que en 6x! 3.- Pues tampoco. 4.- A los tres primeros pasos se sumó que por aquel entonces, Velneo V7 lo que se dice estable, estable no es que estuviese mucho. 5.- Desesperación total [...]

El artículo Mis comienzos desarrollando aplicaciones empresariales con Velneo V7 fue publicado en Ayudavelneo por Francisco José Vila Martín