¡Felicidades Septiembre!

¿Qué tal estais?  🙂 Espero y deseo que bien. Hoy retomamos oficialmente, tras estas semanas de descanso,  la actividad de la página, eso sí, 🙂 ya con las pilas cargadas y llenos de energia. Y digo oficialmente, porque durante los días anteriores sí que había estado publicando comentarios y remarcando algunos enlaces interesantes en Facebook y Twitter (a partir de ahora... Leer más →

Failover Server in DataSnap and Delphi 2010

Recientemente ha editado un pequeño video, Andreano Lanusse, con el título que encabeza la entrada, y en donde se da continuidad a los distintos artículos que ha publicado sobre DataSnap, aunque en este caso no ya referidos a las novedades y primeros pasos, sino al uso de las características o funcionalidades que pueden ser menos conocidas. En este caso concreto, aborda Andreano la parte que afecta a como dar respuesta desde nuestro servicio a los fallos y se puede ver a modo de ejemplo como redireccionar el cliente ante la caída de uno de los servidores).

Más recursos…

El día 7 de Diciembre, os apuntaba en la entrada "Colección de recursos “on line” sobre D2010 (Pawel Glowacki)" la página de Pawel Glowacki, desde la que día antes se compartía con la comunidad una buena colección de recursos. Aunque más modesta, la entrada de Michael Rozlog con fecha6 de Enero del presente año, nos traslada una recopilación de una docena de videos creados por el sobre diversos temas. Los temas figuran al lado de cada url. Esta es la dirección la entrada en su blog: http://blogs.embarcadero.com/michaelrozlog/2010/01/06/37126 y las direcciones que incluye en su interior...

De la mano del Dr. Bob

Bob Swart, o Dr. Bob que es como comunmente le conocemos, dejaba conocer desde la tribu de Delphi, la posibilidad de descargar un nuevo documento en el que el tema central son los datos y DataSnap. Este documento de mas de 50 páginas, unido a la guía de Rad Studio 2010, tambien con un numero similar, puede descargarse libremente, con el único requisito de rellenar un pequeño formulario.

Un día con los mayores (2)

Veamos cual es el siguiente paso... En este segundo capítulo vamos a para dar un paso más en la construcción del framework de Ian, creando la estructura del mismo, un esqueleto vacío en el que todavía no vamos a tener en cuenta ni a concretar nada que haga referencia a la lógica real de los datos sino que todavía nos movemos en un nivel abstracto, con acciones que pertenecen al mundo de las ideas como: Guardar, Descartar, Confirmar, etc.

JSon y el vellocino de oro…

Ahhh Perdon... ¡Que esto no tiene nada que ver con los Argonautas! 🙂 Como estos días va a escucharse y leerse esto de "JSon", que es el acrónimo de (JavaScript Object Notation - Notación de Objetos de JavaScript), vamos a colocar el enlace para que sepamos de que va...

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. En fin... Algo es algo. 🙂

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.

Cero contra quinientos sesenta ( Anexo)

No iba a escribir esta entrada pero me ha pasado algo similar a lo que me ocurrió con los comentarios sobre JediVCL, donde despues de haber acabado el segundo artículo, sentía que quedaban cosas que comentar y redacté un pequeño anexo con el que dejaba lo que me parecía mas importante zanjado. El resto de funciones se pueden ver sobre la marcha. Es más cuestión del día a día, a medida que te van surgiendo las dudas. Con este tema, siento que pasa algo similar. Hemos compartido dos entradas donde comentabamos como se generaban, y en base a que criterios, las sentencias sql que el proveedor (TDataSetProvider) finalmente "ejecuta" (o manda ejecutar). Bueno. Ya visteis que no él, sino que se apoya en una clase que crea a demanda, que se llama TSQLResolver. Concretamente, y para entrar un poco mas en detalle se iniciaba todo desde la función CreateResolver.

Blog de WordPress.com.

Subir ↑