Módulo C.P.2017 (y IV): Reloj Analógico.

Buen camino a todos. Con esta entrada, damos por finalizado el primer bloque de la serie, que contiene actualmente, tres entradas mas la inicial, que nos sirvió de introducción. Este primer bloque nos ha llevado a construir un componente muy sencillo, que representa un reloj analógico y que bien podríamos usar de forma independiente, o... Seguir leyendo →

Otras mandangas…

 Dicen diversos diccionarios acreditados que una mandanga, en sentido familiar, es algo así como una excusa, como en "no me vengas con mandangas y ponte a trabajar...". También puede ser un cuento, chisme o tontería, como "¡oye! ¡siempre sales con mandangas!. Incluso, alguna vez la escuché en un sentido figurado, de persona con ganas de pleito y barullo, como en "¡Mira... Seguir leyendo →

Simplifica tu código Delphi…

Simplifica tu código, piensa en clases, abstrae y racionaliza, usa el sentido común, etc... son algunos de los lemas que hemos podido compartir durante muchos de los artículos anteriores, casi desde siempre, con mas o menos acierto. Valga la redundancia, casi diría que en realidad, es una preocupación cuasi universal que nos corroe, a medida que avanzamos y aprendemos y nos formamos. También de alguna forma, exteriorizamos esos pensamientos en muchos de los post que acabamos publicando. Nuestro punto de parada hoy, es nuevamente el blog de Stefaan Lessage, y la parada es para compartir cuatro artículos que ha escrito durante el mes de marzo y que pienso que forman parte de esa idea general que siempre hemos intentado plasmar: pensar en clases y abstraer. Pienso que la lectura de las cuatro entradas de Stefaan es muy aconsejable y si bien, puede resultarnos mas o menos incomodo que esté escrita en otro idioma (ese punto ya depende de cada uno), existe el suficiente código para que pueda entenderse el trasfondo y la enseñanza que aporta. Sobretodo, os la aconsejo si os estáis iniciando en el entorno y buscais patrones de razonamiento que os sirvan de referencia en vuestros desarrollos.

Shifting TFields in TDataSets Bound to TDBGrids…

Esta vez, he seleccionado uno de los artículos del blog de Cary Jensen que me ha parecido especialmente interesante para compartirlo con vosotros. En el artículo, Cary Jensen comparte con sus lectores, un posible bug ocasionado por el comportamiento de los campos persistentes del DataSet (luego se verá en el articulo, comentado y reflexionado por el, que no es tanto un error de código). De cualquier forma, sí me ha parecido interesante pues es algo que debería tenerse en cuenta.

Release Notes: Delphi and C++Builder 2010 Updates 4, 5 (Database Pack), and Boost Library

Han llegado los primeros comentarios de la disponibilidad de los últimos updates para Delphi 2010, C++ Builder 2010 y Rad Studio. Yo lo he podido leer por el comentario de Andreano Lanusse desde el grupo Twibes Hispano y tal y como nos dice, podeis acceder facilmente al mismo tan solo con la opción de chequear actualizaciones (Check for Updates) existente en el item creado por el entorno en el menu de inicio.

Consumir un web service (DelphiAccess)

En uno de los comentarios de una entrada anterior, compartía con Eliseo Gonzalez, que me había parecido muy interesante uno de los tutoriales de Delphi Access. Como muchos sabeis Eliseo forma parte de esta comunidad. Iba a decir nacida en Mexico, pero actualmente, la verdad es que poco importa que nazca en un pais o en otro, cuando abren sus puertas a una pluralidad de programadores que excede de ese ámbito nacional. En la barra lateral de enlaces podéis encontrar el blog de Eliseo, (La Turbo señal). Pero no venía esta entrada a cuento del blog, que os anticipo que tiene puntos que os serán de utilidad, sino del foro que mantienen dentro del dominio de DelphiAccess.

¿Ya se puede ver la página? :-)

A las personas confiadas, habitualmente le suceden problemas propios de esa ingenuidad. 🙂 El caso es que hoy he tenido un pequeño problema con el blog porque alguien se ha entretenido en inyectar codigo malicioso en uno de los scripts que inician la carga. Por lo que he tenido que dedicar un rato a ver cual era el problema y tras contactar con el proveedor del alojamiento, se ha solucionado en un plis plas. En ese sentido, siempre he valorado como muy bueno el soporte de Dinahosting y tras varios años alojando la pagina en sus servidores no me han dado un solo motivo para pensar en elegir otro. Todo lo contrario.

El futuro de Delphi parece más claro que nunca (Stefaan Lesage)

El futuro de Delphi parece más claro que nunca Stefaan Lesage 23/06/2009 Traducción de su artículo en http://www.devia.be/news/article/the-future-of-delphi-looks-brighter-than-ever-before/ Hace unas semanas, fui invitado a un encuentro cordial en Bruselas, con David Intersimone, más conocido como David I.  en la comunidad de Delphi. David nos iba a contar algo acerca del mapa de proyecto para Delphi.... Seguir leyendo →

Lo mas destacado… :-)

Suelo reservar la tarde del domingo, un rato al menos, para hacer un repaso mental de lo que me ha parecido mas interesante a nivel de enlaces durante toda la semana. Quizás, antes -hablo de bastantes meses atrás- dedicaba mas tiempo a buscar paginas nuevas, o entradas nuevas, si fuera el caso de que fueran conocidas y ya las hubiera incluido en mis enlaces, pero ahora, desde que empecé a incorporar los breves mensajes de Twitter (o Twibes) la situación cambió, y en lugar de mi busqueda tradicional, me he concentrado en seleccionar los comentarios que tuvieran mas interés. El domingo anterior ya lo hice. Y si os dais cuenta, de no hacerlo así, muchos de esos comentarios pueden llegar a perderse ya que quedaran sepultados por los nuevos mensajes y por desgracia, algo como "voy a pasear al perro" en respuesta de "que es lo que estas haciendo" o "voy a trabajar duramente", será inevitablemente el ejecutor de que no acaben siendo visibles y se oculten por los siglos de los siglos.

Experimentos, reflexiones y otros artefactos (y V)

He preferido que esta quinta entrega cerrara el título "Experimentos, reflexiones y otros artefactos", y despedir estos mini artículos o mini serie, si es que se pueden llamar así, con un ejemplo un tanto más avanzado, pero en la linea de los anteriores. Así que me habeis tenido aperreado toda la semana dandole vueltas a la cabeza sobre cómo iba a finalizar estas entradas. 🙂 No. No creais que es sencillo elegir el experimento ya que debe cumplir a priori algunas condiciones en cuanto a la extensión, a su complejidad, al uso de componentes que puedan ser compatibles en varias versiones y casi siempre en cuanto a que sea verdaderamente didáctico. Por lo que no vale cualquier idea que te venga a la cabeza sino que tienes que pelearte con ella y ver si realmente te vale. Y os confieso cuando uno llega a casa tras la jornada diaria quedan pocas ganas de pelearse con nada (os pasará tambien a vosotros casi con seguridad).

Nuevo Twibe delphiespanol: ¿Te unes?

Dichosa ñ, como se le tira de menos. 🙂 Hoy podemos compartir una noticia bastante positiva. Si existía una tribu para los programadores de delphi de habla inglesa, ¿por qué no también para los programadores hispanos? Así que cuando he visto el mensaje de Andreano Lanusse donde comentaba que ya se habia abierto esta comunidad en twibes, he pensado que no habia tiempo que perder para apuntarse, y de la misma forma que me habia suscrito en http://www.twibes.com/group/delphi, tambien lo he hecho en http://www.twibes.com/group/delphiespanol, con mas razón todavía.

Experimentos, reflexiones y otros artefactos (I)

Vamos a iniciar una pequeña serie especialmente dedicada a los programadores que se inician en Delphi y me perdonareis que no tenga la menor idea de cuantos capitulos contiene ni de cuanto tiempo se pueda extender. ¿Uno, dos? ¿quizás tres? ¿veintiuno?. Realmente os confieso que no lo se.

Por curiosidad (y Parte III)

Tanto la propiedad Data como Delta se definen como OleVariants, y se organizan internamente como un array de bytes, y es esta característica la que va a dotar de flexibilidad a las dos estructuras, que soportaran por un lado los datos, el contenido real, en el caso de la propiedad Data, y un registro de actualizaciones que representa a la propiedad Delta. Dicho registro, logicamente es de solo lectura, dado que es la unica forma de garantizar que es tan solo manipulable por el propio dataset. Tambien es por esa razón, ya que no nos es permitido modificarlo, es por la que existen metodos que nos permiten limpiar esa cache de datos que contiene los registros de cambios.

Por curiosidad (Parte II)

Seguimos el experimento, intentado satisfacer nuestra curiosidad. 🙂 Vamos a hacer lo siguiente: * En el modulo de datos eliminamos los dos componentes TClientDataSet que contienen los detalles. Es decir, cdsComposicion y cdsComponentes desaparecen. Tambien eliminamos todos los campos persistentes del dataset maestro cdsArticulos Logicamente, una vez hecho esto, los dos componentes TDataSource ligados a los mismos (a cdsComposicion y a cdsComponentes) ahora han perdido las referencias a los dataset y apuntan a nil.

Por curiosidad (Parte I)

Por curiosidad, ya que hablamos de AdoExpres y Datasnap, vamos a perder unos minutos en un par de comentarios que me parecen interesantes y que me hicieron reflexionar varios días de la semana que ha acabado. Como muchos de los comentarios que hemos compartido, han surgido a raiz del trabajo diario. En este caso, concretamente al modificar la ficha de Clientes ya que se consideraba la implementación de un proceso que recalculara las comisiones, que era uno de los detalles de la misma. Aquella pestalla mostraba las comisiones generadas por las compras de dicho cliente y era otro mas de los detalles de la ficha. Veamos... el proceso iba a disparar un procedimiento en la base de datos cuya misión era recalcular las comisiones que se mostraban en la rejilla y, en principio, no iba a retornar un conjunto de datos sino unicamente el exito en la finalización o el codigo del error de existir éste. Esto era problematico en el sentido de que, dado que nuestro conjunto de datos se ubica en la cache local y el procedimiento es disparado en nuestro servidor, los valores visualizados por el usuario podian en determinados casos diferir de los reales tras la ejecución del proceso, y podríamos necesitar invalidar el contenido de aquel dataset para mostrar los nuevos datos.

Blog de WordPress.com.

Subir ↑