feb 9

Semana de cambios

Posted in aplicaciones, MySQL, PHP

Esta semana es importante, marca un antes y un después.

Es una semana de cambios, de finalización de unos proyectos y de inicio de otros nuevos, o más bien, de evolución de esos mismos proyectos, en los que pasamos de la fase de desarrollo y pruebas, a la fase de producción y ejecución.

  • http://bolanos.openforever.es , tras varios meses de desarrollo y pruebas, por fin abre sus puertas. Si deseas saber mas sobre este proyecto, solo tienes que visitarlo.
  • http://bolanos.openforever.es/blog , que comienza su andadura para dar un servicio adicional a “OpenForever.es” y a todos los comercios que han apostado por esta forma de hacer negocio.
  • Gestión en V7 , también finaliza un periodo de desarrollo y en esta semana pasamos a instalar la primera aplicación V7 en cliente final, después de superar con nota las primeras pruebas realizadas. Se trata de una pequeña gestión monopuesto para una explotación agricola. Es demasiado pronto para decir si será o no un caso de éxito en V7, pero es una puerta que había que cruzar, y que no admite marcha atrás. Si todo va bién y el cliente resulta satisfecho, este será el primero de muchos en los que V7 será el principal protagonista de esta pelicula, que esperamos tenga un final feliz, aunque el final deseamos tarde mucho en llegar.
  • http://ascsl.net , nueva web para ofrecer los productos desarrollados al cliente final, y destinada principalmente a ofrecer nuestros servicios y productos.

Edito:

Habia olvidado uno más, que también se inicia ahora para dar servicios web a terceros,

  • http://hrbolanos.openforever.eu , pretende ser un escaparate y dar servicios web a un importante fabricante de mobiliario de baño y a todos sus clientes y “partners”.

Hay más, pero sereis informados a medida que vayamos finalizando los mismos, 😉

Create PDF    Enviar artculo en formato PDF   
comments: 4 »
ene 19

Acceso a bases de datos externas existentes

Posted in foro, ideas, MySQL

En este hilo del foro, se comentan algunas cosas interesantes, y me gustaria aclarar y dar mi punto de vista

Crear aplicaciones sobre una base de datos existente

Velneo, en su modelo de “Base de Datos Real”, algo que la diferencia de las bases de datos relacionales como MySQL, PostgreSQL, SQLite, Oracle, MS-SQL, tiene muchas ventajas y algunos inconvenientes.

No voy a centrarme en esta ocasión en verificar cual de estas bases de datos obtiene mejores rendimientos, ya que no es el tema que se debate en esta ocasión.

El tema en cuestión, es que cada uno debe valorar las ventajas que les reporta una base de datos y los inconvenientes, y despues, agitarlo todo en una cocktelera, y tomar una decisión al respecto.

Desde que conoci Velazquez Visual, ahora Velneo, una de las cosas que mas me ha gustado, y de las que uno menos suele valorar con el paso del tiempo (quizá por la costumbre), ha sido la refactorización, y la facilidad con que podia realizar cualquier cambio en la estructura de la base de datos, sin tener que preocuparme de nada en absoluto.

Cuando llegue a Velazquez Visual (alla por el 97/98), venia precisamente de SQL (Multibase – Transtools), y aunque la base de datos funcionaba estupendamente en SQL, la empresa dejó de mantener las actualizaciones periodicas que realizaban (semestralmente). Durante casi 3 años estuve, probando otras herramientas, y por fin, en una revista especializada, vi el anuncio de Velazquez Visual, y decidi pedir una demo.

Desde que la instale, me sorprendio la facilidad con que se realizaban las actualizaciones en los datos, y la cantidad de tiempo que me ahorraba en mis actualizaciones a los clientes. Desde entonces, han ido apareciendo muchas novedades, algunas muy interesantes y llega un momento en que incluso podria haber olvidado toda la comodidad que habia ganado.

Cuando Velazquez Visual parecia que iba a desaparecer, volvi a buscar otras herramientas, y de nuevo el mismo problema, despues de evaluar varias herramientas, decidi que no queria perder la comodidad que habia tenido todos estos años.

La presentación de la V7 fue una luz en el camino, y decidi que habia que seguir esa luz.

Si bien es verdad que me he quejado mucho, siempre lo he echo para que Velneo respondiera, con la unica intención de mejorar la herramienta. Y parece que ese cambio se está produciendo, quizá mas lento de lo que todos deseariamos, pero veo como las cosas cambian, para mejor, y eso me gusta.

Volviendo a lo que nos pedia “Cjribera” en el foro, es cierto que todo el esfuerdo de Velneo esta pensado en su propia base de datos, y aunque el acceso a bases de datos externas, es posible, siempre se echa algo en falta.

Para estos casos, yo he decidido que hay que protestar y pedir y aportar ideas y/o soluciones, porque si no pido lo que necesito, si no me quejo por lo que no me gusta, ¿como van a saber en Velneo mis problemas?

Ahora despues de analizar estas peticiones, estoy pensando que me parecen muy interesantes, pero he querido llegar un poco mas alla, y he pensado, ¿como podriamos tener acceso a otras bases de datos? o dicho ¿como podriamos tener objetos de V7 asignados a tablas de bases de datos externas?

Y he tenido un pequeño “flash”, y he visto una posible solución al problema para poder usar bases de datos externas manteniendo lo bueno de Velneo, la refactorización.

Primero pense, asociar cada uno de los objetos a una “tabla SQL“, formularios, rejillas, busquedas, tubos, procesos, es complicado, cada vez que se produzca un cambio en la base de datos externa, los objetos dejarian de estar enlazados y se producirian cantidad de errores.

Entonces, como solucioarlo …   ¡¡ thinking !!

… y unos minutos despues, una idea,

Podriamos crear “Tablas lógicas“, con estructura similar a las tablas de la base de datos SQL (basicamente copias de las tablas), y asi podriamos asociar los objetos a estas tablas lógicas, manteniendo toda la operatividad que tenemos ahora.

Esta idea, permitiria mantener la refactorizacion entre los objetos de Velneo y las “tablas lógicas”. Cierto es , que si se produce un cambio en la estructura de datos de SQL, deberiamos corregirlo tambien en la “tabla lógica” para que los objetos se adaptasen correctamente, pero en cualquier caso, solo habria que corregir la estructura de campos de la tabla, evitandonos realizar correcciones en todos los objetos.

Luego segui soñando, y por soñar, que no quede…

Ya que tenemos esta “tabla lógica“, porque no tener toda la funcionalidad completa, ¿que quiero decir con esto?,

Pues que, ya puestos, y con las tablas sincronizadas, entre SQL y Velneo, realizar un alta en la “tabla lógica“, o una modificación o una baja, porque no mantener actualizada la tabla SQL, diretamente, ¿no es eso lo que hace ODBC?

Pero en este caso, realizando altas, modificaciones, bajas, o búsquedas directamente con sentencias de Velneo sobre las “tablas lógicas“.

Luego de soñar todo, viene un pajarito y me dice ¿porque te complicas tanto la vida?, todo esto puede ser mas sencillo aún. ¿Como?, y el pajarito me respondio:

A la definición de tablas actual, bastaria con añadir una propiedad “Conector”, que nos permitiera indicar a que base de datos vamos a realizar la conexión: Velneo V7 (interna), a MySQL, a PostgreSQL, a Oracle, y porque no a tablas de V6 con Aplicaciones de V7, etc.

Y de paso, una propiedad más , para establecer los datos de conexión a la base de datos. Y sobre todo, poder cambiar estos datos de conexion en ejecución para poder tener varias instalaciones con la misma estructura de base de datos.

Y ahora me direis, “los pajaritos no hablan”, pero como esto era un sueño, y en los sueños todo es posible. Además, este es mi sueño y yo decido quién habla y quién no, 😀 😀 😀

Luego me despierto y pienso que ha sido un sueño bonito, y que si lo cuento, es posible que se haga realidad. 😉

Aqui podeis votar la idea:

Desarrollar directamente sobre bases de datos existentes

P.D.:

Y porque el nombre de “Tabla lógica“, pues sencillamente, porque su funcionamiento seria similar al de las “Impresoras lógicas“, y de esta forma, todos los objetos de V7 quedan asignados a un origen, y ya solo nos queda asociar la tabla lógica a la tabla SQL, de la misma forma que asociamos una impresora lógica a una impresora real instalada en el sistema.

PDF    Enviar artculo en formato PDF   
comments: 12 »