Un día con los mayores (1)

De estas últimas semanas, la mayor parte del tiempo se me ha ido en dos puntos que tienen relación con la serie que vamos a compartir.  ¡Es verdad!: El tiempo se  escapa de nuestras manos. La expresión es fugaz como el tiempo hace justicia y con razón, porque no podemos hacer nada por retenerlo. Nos queda simplemente el consuelo de que haya servido para algo, que tenga un buen fin. Algo es algo… 🙂

Una parte de ese tiempo, pues lo he pasado desmontando literalmente el ejercicio 13 de la serie C de AdoExpress, perteneciente a los cursos que dirige Ian Marteens desde sus servicios profesionales. Desmontar significa eso… 🙂 Desmontar… Dejar estrictamente lo que realmente vamos a necesitar para entender como se relacionan las unidades que forman parte del framework. Así que he tenido que empezar a plantearme que cosas eran necesarias y cuales prescindibles… 😦   ¿Y sabeis una cosa?  Es muy dificil elegir porque cuando empiezas a recorrer las lineas de código te da pena quitar una tras otra ya que todo forma parte de un ejemplo muy básico pero tambien muy didactico, del que se van descubriendo detalles capítulo a capítulo, acompañado de la ácida pluma del escritor. Muchos de nosotros hemos aprendido multitud de conocimientos que nadie te enseña. Es una de las cosas que hacen de Marteens, una persona querida (valorada) por muchos programadores de esta comunidad.

Ya… ahora esta en el mundo de Net. Bien… ¿Y…?

Alguna vez he recibido correos de otros compañeros comentando que hasta Marteens había abandonado la barcaza y que tarde o temprano se hundiría (Delphi), motivo por el cual parece que desaparezca de un plumazo su contribución y nada mas lejos de la realidad. Al menos yo pienso así. Porque en una comunidad en la que hasta hace nada, encontrar un buen libro de programación era mas dificil que subirse a un taxi en un día de lluvia… 🙂   han quedado varias “Caras ocultas” que han ayudado a muchos programadores a entender el mundo de las bases de datos. Y sobretodo a exigirse intentar hacer las cosas bien. Sin olvidar que una de ellas se hizo disponible para todo el mundo (“La cara oculta de Delphi 4”), cosa que le honra.

Pero volvamos al tema de los recortes…

Todo lo que hacía referencia a la normalizacion de las cadenas, es decir, un entramado de funciones y tablas que permitían búsquedas en las que podiamos escapar de las “odiosas” tildes :-), fue una de las primeras cosas a las que le tuve que meter la tijera. Lo siento. 😦 Luego vino el drag&drop, que permitía dentro de una ventana arrastrar un registro de otra tabla relacionada. La interfaz creada para heredar la impresión desde un formulario base de la rejilla de busqueda general de registros. Y tambien la ventana modal de selección de busquedas… Son cosas que aunque importantes, complementan el curso. Y algunos detalles mas… No. Yo creo que se entiende que la intención de estas entradas no es reproducir el ejercicio en si, sino simplemente compartir algunos puntos que a mi me han parecido importantes de el y que pienso puedan ayudar a compañeros que no han tenido la oportunidad de conocerlo.

¿Y por qué no desde la parte remota?

Pues no creais que no me lo planteé porque el capítulo D del curso aborda con claridad toda la parte que hace referencia a los servidores remotos y a la creación de aplicaciones multi-capa, que realmente es el objetivo final… pero realmente, eso es algo que  puede ser abordado en otro momento y puede necesitar otro enfoque, no solo por ser mas complejo, que lo es, sino habida cuenta de que DataSnap cambió con la llegada de Delphi 2010. Además, os comento que el framework es funcional 100% y yo mismo (no hace falta que me lo cuente nadie) he trabajado con una aplicación que actualmente se basa en el, (con los cambios que se hicieron necesarios por necesidad de la logica de la aplicación), y nunca se hizo necesaria esa capa adicional. Queda disponible, en el sentido de que incluso de haber sido necesaria,  el framework permite la separación de las capas con relativa facilidad, por lo que tampoco fue una cosa que nos haya llegado a obsesionar (hago refencia a mi compañero en el trabajo, Manuel, al que alguna vez cité en entradas anteriores).

Y respecto al ejemplo que nos ocupa, pensé en cambiar las tablas del ejercicio pero despues de quitarlas, me dije a mi mismo…

-Pues vaya tontería si las tablas que puedas crear van a ser muy similares…  🙂

Así que de su ejemplo, convertí el cliente en un beneficiario (un usuario de un centro de personas mayores) y añadí algunas entidades relacionadas con esta. Actividades, suscripciones, centros, dejando la tabla de direcciones y paises intacta y tambien algunos de los tipos definidos.

Aquí teneis un diagrama en el que se muestran las relaciones:

DiagramaCentroMayores

Este era el segundo punto, al que hacia referencia en las primeras lineas de la entrada. Parte de mi tiempo, en las ultimas semanas se fue en este diagrama y en intentar que recogiera algo mas. Y ese algo mas, lógicamente no era el diagrama en si, sino la sana ocurrencia de que pudiéramos crearlo con otra de las herramientas de Embarcadero, DBArtisan, y de paso, pudiera ser mejor conocida por la comunidad. Así que me llevó su tiempo experimentar con ella, (acostumbrado como estaba a usar SQL Manager for SQLServer de EMS o el Administrador Corporativo de SQLServer), incluso caducó la trial y tuve que solicitar que incrementasen unos días la licencia para que me diera tiempo a grabar el vídeo. Os prometo que fue una odisea.

A mi no me disgustó para nada la herramienta de Embarcadero, similar en la funcionalidad a las que podais encontrar en el mercado. Necesité unos días para acostumbrarme a ella pero una vez en ese trabajo, encontré algunos puntos muy buenos que valoré positivamente. Uno de ellos, era por ejemplo que podría permitirme trabajar con varias bbdd, sin necesitar diversas utilildades. Ahora SQLServer. En un futuro casi con seguridad Firebird e Interbase. La cosa pinta bien, que dicen muchos compañeros. No soy el único que piensa que Embarcadero está aportando algo mas, o al menos puede hacerlo, merced a sus herramientas de gestión de datos.

¡Dios mio!… que mal que se me da esto de grabar. 🙂 Odio los videos 🙂

En estos dos (que casualmente tuve que partirlos para subirlos a youtube tras varias horas de intentos nulos) se ve como se crean un par de tablas con DBArtisan y os presento el ejemplo. No obstante, os he dejado los dos scripts ya generados para crear la base de datos e introducir un par de registros.

Parte 1

Parte 2

Aquí podéis descargar el script sql:

objetos.txt
datos.txt

Esta es una imagen de la aplicación, que todavía está sin finalizar ya que la voy cogiendo por las noches, a ratitos, a base de cafés y de pasar sueño… 🙂  Todavía quedan bastantes detalles. De hecho, incluso falta por implementar en el script sql algun trigger, que he dejado por falta de tiempo, para las siguientes entradas.

undiaconlosmayores

Lo dejamos aquí. La idea es que el primer fin de semana de Octubre pueda tener preparada la segunda parte, en la que abordariamos uno de los módulos del framework. Intentaremos compaginar algo de video con las entradas, con la idea de que sea lo mas didáctivo y práctico posible, que a fin de cuentas es lo que todos esperamos. Ese es el enfoque de la serie, a modo de taller práctico y poco mas.

Me resta solo, al igual que hice al final del video, dar las gracias a Ian y pedirle que disculpe los errores que puedan resultar de estas entradas, ya que por encima de la buena voluntad de querer hacerlo bien, está mis propias limitaciones.

Seguimos en quince días.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Blog de WordPress.com.

Subir ↑

Recetas y consejos nutricionales

Indicadas para personas con diabetes, recomendadas para todos.

¡Buen camino!

ANÉCDOTAS Y REFLEXIONES SOBRE UN VIAJE A SANTIAGO…

http://lfgonzalez.visiblogs.com/

Algunas reflexiones y comentarios sobre Delphi

It's All About Code!

A blog about Delphi and related technologies

The Podcast at Delphi.org

The Podcast about the Delphi programming language, tools, news and community.

Blog de Carlos G

Algunas reflexiones y comentarios sobre Delphi

The Road to Delphi

Delphi - Free Pascal - Oxygene

La web de Seoane

Algunas reflexiones y comentarios sobre Delphi

El blog de cadetill

Cosas de programación....... y de la vida

Delphi-losophy

A Lover of Delphi Wisdom

Delphi en Movimiento

Algunas reflexiones y comentarios sobre Delphi

marcocantu.blog

Algunas reflexiones y comentarios sobre Delphi

/*Prog*/ Delphi-Neftalí /*finProg*/

Blog sobre programación de Neftalí -Germán Estévez-

Press F9

Algunas reflexiones y comentarios sobre Delphi

El blog de jachguate

Un blog sobre tecnología y la vida en general

A %d blogueros les gusta esto: