Nacho versus v7

Mis experiencias con Velneo v7

Posts etiquetados ‘bases de datos’

vBase. Entidades y categorías

Publicado por Nacho en 7 julio 2010

Vamos a ver como  crear clientes, proveedores con la vBase actual.

La tabla de entidades es genérica, y cuando queremos explotarla desde otra aplicación, como pueda ser la contabilidad o gestión, para usos concretos como definir un cliente o un proveedor, se debe usar la tabla categorías y la que las relaciona ENT_CAT.

Lo primero que tenemos que hacer es crear las categorías de uso reservado que necesitemos, la forma escogida es creando una constante que la defina. Ejemplos:

~CLT_CAT@vConta.dat con el valor CLT para definir clientes

~ENT_AGT@Gestión Maestros.dat  con el valor AGT para definir agentes comerciales

A continuación creamos un proceso que ejecutemos al inicar la aplicación para dar de alta las categorías en la tabla CAT

- Ejemplo de proceso

Suponemos que en nuestra aplicación vamos a definir comerciales, para ello definiremos una constante ENT_AGT, con el valor AGT, y creamos un registro en la tabla de categorías tal que así:

Es importante crearla como de uso reservado (USO_RSV = 1 ), para que el usuario no pueda borrarla. Ahora el usuario podrá definir cualquier entidad como comercial, con solo añadir esta categoría a las de la entidad ( tabla ENT_CAT).

Leer el resto de esta entrada »

Publicado en análisis, bases de datos, Velneo | Etiquetado: , , , | 2 Comentarios »

vBase. Estructura

Publicado por Nacho en 4 junio 2010

Comenzamos nuestra serie de artículos sobre la vBase, explicando la organización de datos definitiva. Esquema de la solución:

Leer el resto de esta entrada »

Publicado en Analizando con v7, análisis, bases de datos, Velneo | Etiquetado: , , , | Deja un Comentario »

vBase definitiva

Publicado por Nacho en 4 junio 2010

Con la salida de la versión 7.4 de v7, se publica lo que será la vBase estable. En esta vBase es fruto de la colaboración de Velneo con varias empresas, que empezó con una semana intensa de trabajo.

A esas jornadas, cada uno fue con su propia idea de vBase, y juntos llegamos a esta solución, de la cual estamos muy satisfechos.

Nuestro objetivo principal, incluso antes de ser elegidos para esta colaboración, era diseñar una vBase lo suficientemente abstracta, como para que pueda ser usada con aplicaciones totalmente opuestas (ejemplos: gestión clásica, académias, clubs deportivos,…..). Para ello habíamos empezado a contactar con otras empresas para consensuar ideas. Al ser elegidos para diseñar la vBase oficial, lógicamente, nos volcamos en el proyecto junto con el resto de equipo.

Ya en la v6 nosotros (Guida21), habíamos decidido basar nuestros desarrollos de las plantillas principales de Velneo (vBase, vConta) creciendo en funcionalidades, pero la experiencia de desarrollar aplicaciones para múltiples sectores, nos hacía encontrarnos una y otra vez, con la imposibilidad de tener una tabla de entidades común. Con esta vBase hemos conseguido que esto no nos vuelva a suceder. Hemos sido lo más ambiciosos en los planteamientos que el tiempo y los recursos nos han permitido.

La vBase que se ha publicado será totalmente estable a nivel de datos, es decir ya no desaparecerán campos ni tablas. La vConta se ha diseñado integrandola totalmente con esta, y es el mejor ejemplo de como operar con las entidades desde otras aplicaciones.

Voy a escribir algunos artículos que expliquen aspectos claves de esta vBase. Si quereis que escriba sobre algún apartado concreto me lo podeis indicar.

un saludo.

Publicado en Analizando con v7, Velneo | Etiquetado: , , , , | Deja un Comentario »

Jornadas análisis vConta

Publicado por Nacho en 12 marzo 2010

Hoy termina la semana de trabajo con Velneo, en la que estamos trabajando intensamente junto a Víctor García (Guida 21), Héctor Santoveña (HSM Software) y Jorge Velasco (The Seed Software Company), analizando y normalizando las futuras Open Apps de vBase y vConta.
La semana nos ha pasado muy rápidamente, personalmente ha sido una experiencia muy gratificante.
Nos va a dar mucha pena que finalice.
A lo largo de la semana hemos tenido momentos de acalorado debate que siempre han terminado con un resultado enriquecedor para todos. El poder contrastar la visión con el resto del equipo, el hecho que el objetivo común siempre ha sido claro por todos, hacer una vBase y vConta los más ambiciosa posible, la gran experiencia que cada uno aporta (propia y la de la lucha diaria con sus clientes) a conseguido que todos aprendamos y estoy seguro que lo que salga de aquí será una base muy sólida para la comunidad.

Os dejo un enlace al resumen de ayer, suscribo todos los comentarios de Jesus Arboleya, y esperamos repetir la experiencia. Aunque sabemos que este proyecto solo acaba de empezar.
Resumen del cuarto día de trabajo

Bueno os dejo que me voy a la última jornada, solo reiterar que está siendo un placer participar en esta experiencia.

Publicado en Analizando con v7, análisis, bases de datos, Velneo | Etiquetado: , , , | 2 Comentarios »

Hojas de estilo v7 (gdCSS)

Publicado por Nacho en 4 enero 2010

Dentro de la v7 podemos utilizar hojas de estilo CSS, para configurar el aspecto de nuestras aplicaciones. Al igual que en la web 2.0 se separa el contenido y el diseño, estando este último en los ficheros .CSS. Entonces lo ideal es que nuestros desarrollos en v7 utilicen esta técnica, de forma que unos nos dediquemos al diseño de los datos y otros al de la estética.

Dado que yo soy de los que diseñan como organizar datos y no soy bueno en definir la estética, he decidido crear una aplicación que permita a los diseñadores experimentar como afectan los distintos estilos a los objetos de una aplicación en v7. De esta forma los diseñadores podrán ir creando trozos de código CSS reutilizable, viendo su resultado y configurando distintas hojas de estilo a utilizar por los usuarios, a modo de plantillas.

Para esto he creado un proyecto de datos, con la siguiente estructura:

Leer el resto de esta entrada »

Publicado en Analizando con v7, bases de datos, Velneo | Etiquetado: , , , | 5 Comentarios »

Recursos: Función fPregunta

Publicado por Nacho en 28 agosto 2009

Los que venimos de v6, echamos en falta un función “fPregunta”, que presentaba un cuadro de diálogo standard con un mensaje que le pasabas como parámetro y los botones SI / NO para que el usuario respondiese, y te devolvía el valor 1 o 0 según fuese la respuesta.
Bien, pues en este artículo vamos a diseñar nuestra propia función para preguntar al usuario con su cuadro de diálogo, aunque le vamos a pasar algún parámetro mas, y con todas las posibilidades de crecimiento.

En la función de la v6, sólo le pasábamos como parámetro el texto de la pregunta. En nuestra función le vamos a pasar tres parámetros:
TEXTO.- Texto de la pregunta
TITULO.- Título del formulario
BOTONES.- Este parámetro, nos permitirá indicarle que botones queremos que contenga el formulario. De momento vamos a programar la función para 2 opciones:

S: Botones SI/No
A: Aceptar/Cancelar

Procedemos:

Leer el resto de esta entrada »

Publicado en Analizando con v7, Velneo | Etiquetado: , , , | 11 Comentarios »

Almacén de objetos. Maestro búsqueda avanzada

Publicado por Nacho en 23 agosto 2009

Vamos a realizar una búsqueda avanzada. Nuestro objetivo es que desde una sola búsqueda podamos buscar por:

  1. Código. Un registro por su código (ID)
  2. Trozos. Todos los registros que contengan en cualquier parte del nombre los trozos de palabra escrita
  3. Palabras. Todos los registros que contengan en cualquier parte del nombre todas o alguna de las palabras escrita
    • Todas
    • Alguna
  4. Alfabético. Todos los registros que empiecen por el texto dado
  5. Fecha de modificación. Todos los registros modificados entre las fechas indicadas.

Para ello lo primero que necesitamos son unas variables para indicar el tipo de búsqueda elegida. Estas variables las crearemos en el proyecto de datos, y nos servirán para las búsquedas en cualquier tabla.

BUS_TROZOS_PAL_ALFA.- Numérica. Nos indicará, si el texto introducido lo usamos para buscar por trozos (valor 0), palabras (valor 1), o alfabético (valor 2)

BUS_PAL_ALGUNA.- Booleana. Nos indicará si tiene el valor 1 que queremos alguna de las palabras y en caso contrario (valor 0) serán todas las palabras.

INTERVALO_FECHAS_MAEST.- Será una variable booleana que nos indicará que queremos acotar por fechas

BUS_FCH_DESDE.- De fecha. Será la fecha desde la que queremos acotar

BUS_FCH_HASTA.- De fecha. Será la fecha hasta la que queremos acotar

Una vez creadas pasaremos a crear el formulario para la búsqueda.

El formulario será un formulario con layout vertical. Vamos a crearlo utilizando un estilo, utilizando los objetos del proyecto de aplicación estilos. Entonces definiremos las siguientes propiedades del formulario:

Dibujo de fondo FORM_BGR

Aspecto del dibujo estirar/encoger

Margen izquierdo 0

Margen derecho 0

Margen superior 0

Margen inferior 0

Dentro del formulario crearemos 4 layout, 2 de tipo horizontal y 2 de tipo grid, que describimos a continuación.
Leer el resto de esta entrada »

Publicado en Analizando con v7, Velneo | Etiquetado: , , | Deja un Comentario »

Almacén de objetos: Maestro código numérico

Publicado por Nacho en 23 agosto 2009

Vamos a describir lo que sería un mantenimiento de una tabla básica, lo que en la v6 se usaría dentro del almacén de objetos.

Tendremos un proyecto de datos y otro de aplicación, con una sola tabla MAESTRO.

Proyecto de datos

Los campos que contendrá esta tabla serán:

todos su índices, salvo CODIGO, están condicionados a que el valor del campo DEL sea 0, salvo el índice BAJA, que lógicamente estará condicionado a que el valor del campo DEL sea 1.

Proyecto de aplicación

El proyecto de aplicación lo empezaremos creando el formulario de mantenimiento. Para ello pulsamos el botón de formulario, y utilizaremos el
asistente de formularios.

Una vez creado el formulario con sus botones por defecto vamos a personalizarlo.
Leer el resto de esta entrada »

Publicado en Analizando con v7, Velneo | Etiquetado: , , | 1 comentario

Proyecto de aplicación Recursos

Publicado por Nacho en 22 agosto 2009

En el proyecto de aplicación Recursos, tendremos objetos como los siguientes:

Dibujos. Dispondremos de los iconos que utilizaremos en las barras de herramientas, en los botones de los formularios (Aceptar, eliminar, cancelar…), y en los menús y sus acciones.

Acciones. Crearemos acciones genéricas de v7, como salir del programa, cerrar ventana, y acciones de listas como filtrar, partir listas, etc… , comandos de ficha, como alta, editar y eliminar (a utilizar en la barra de herramientas de las rejillas). A todas estas acciones les podremos asignar el dibujo que nosotros queramos utilizar, y ya no estaremos sujetos a los que vienen por defecto en la v7, pudiendo cambiarlos cuando queramos para toda la aplicación, de un plumazo.

Menús. En este apartado podremos crear la estructura de menús común a las aplicaciones. Un menú que yo pondría es el menú de contexto de una lista.

Toolbars. Crearemos una o varias barras de herramientas a utilizar en las aplicaciones. Entre ellas tendremos al menos la barra de herramientas genérica que utilizaremos en las rejillas de datos.
De tal forma que en todas las rejillas pondríamos estos recursos como vemos en este ejemplo:

Ahora podremos cambiar las opciones del menú contextual de una lista, así como su barra de herramientas de toda la aplicación, desde un único sitio.
Constantes. Crearemos las constantes genéricas a utilizar en mensajes, como por ejemplo “Proceso cancelado”, “Debe especificar un nombre”,….

Publicado en Analizando con v7, Velneo | Etiquetado: , , , | Deja un Comentario »

Proyecto de datos común. vBase

Publicado por Nacho en 18 agosto 2009

Antecedentes

Vamos a desarrollar lo que será el proyecto de datos del que deberían partir todos nuestros proyectos. Los programadores que ya llevan un tiempo con Velneo, ya conocen sus plantillas, y saben que la primera y de la que parten todas es la
vBase. Así mismo sabrán que en el momento que empezabas a desarrollar o personalizar módulos, acababas modificando esa plantilla, y cuando aparecían nuevas plantillas, cada vez resultaba mas difícil, incluso imposible, integrarlas con tus desarrollos. Por otra parte si tu desarrollo no era una gestión o un entorno con clientes/proveedores, entonces o desarrollabas algo totalmente distinto, o “destrozabas” la vBase para aprovechar lo poco que te podía servir.

Con la v7 podremos encapsular los proyectos, de forma que puedan ser utilizados por otros, sin tener que realizar ninguna integración. Esto nos podría servir para que una empresa que tenga un CRM, lo pueda integrar con otra que tenga una facturación, sin complejos procesos. Claro que para ello tiene que haber una filosofía y un nexo común. Este nexo común, entiendo que debe ser este proyecto de datos “vBase”.

Por otra parte será muy importante que cada módulo que desarrollemos lo pensemos cerrado, en el sentido que su estructura interna no sea afectada por la integración con otros módulos. Tenga, como los objetos de v7, una/s entrada/s y una/s salida/s y el resto sea interno, y cuando exista una nueva versión, si esos puntos de entrada/salida no cambian, con solo sustituir una versión por otra estará todo operativo.

Partiendo de estos precedentes, aquí voy a explicar mi visión de lo que debería ser una vBase, de forma que pueda servir tanto para desarrollar un ERP o para hacer una aplicación para academia, donde en lugar de clientes tiene alumnos, y en lugar de proveedores tiene profesores.

Bien como decía en el artículo anterior, este proyecto de datos deberá contener las tablas que usaremos siempre en nuestras aplicaciones, y en cualquiera de ellas lo habitual es que interactuaremos con personas o empresas, y que necesitemos guardar sus datos personales (nombre, teléfono,…). Por lo tanto este proyecto girará alrededor de una tabla que llamaremos entidades.

Primeras tablas

Partiremos de la Open Apps de Velneo: http://velneo.es/71756/vbase/

Localización. En cualquier aplicación es habitual tener una tabla de provincias y/o países, que no permita ubicar a nuestros contactos. En algunos casos seguro que muchos habremos necesitado crear una tabla de comunidades autónomas, códigos postales o poblaciones.

Por lo tanto se deben crear varias tablas que no permitan, de forma flexible determinar el grado de detalle para definir una ubicación. Aquí no me voy a detener mas, y os remito a la estructura que han montado en Velneo para resolverlo.

Esquema de localización

Esquema de localización

Empresa que usa la aplicación.También es habitual tener una tabla donde guardemos los datos de la empresa o empresas que usan la aplicación. En algunos casos habremos creado solo unas variables de disco para guardar el nombre de la empresa, en otros seguro creamos una tabla con un registro donde guardábamos esos datos, y cuando necesitamos que nuestra aplicación fuera multiempresa, pues hemos usado esta tabla para crear todas las empresas necesarias.

Usuarios. También podemos tener una tabla de usuarios de la aplicación. En este caso podemos usar una tabla exclusiva para guardar su nombre o integrarlos en la tabla de entidades, donde ya podremos tener todos los datos personales habituales, y eso es lo que haremos.

Entidades. Esta es la tabla donde estarán todos nuestros contactos, sean empresas o personas físicas. Lo que yo entiendo es que debería ser una tabla como es la de contactos de cualquier programa de oficina o correo electrónico. Compatible con nuestros contactos de móvil, o de la agenda electrónica.

Profundizando Leer el resto de esta entrada »

Publicado en Analizando con v7, Velneo | Etiquetado: , , , | Deja un Comentario »

 
Seguir

Get every new post delivered to your Inbox.

Únete a otros 29 seguidores