Seguimiento de los cambios en la base de datos

En este blog, estamos encantados de presentar un poderoso método que revolucionará la forma de gestionar y realizar un seguimiento de los cambios en su datastore. Presentaremos el concepto de «stamp», un marcador especializado diseñado para racionalizar el seguimiento de las modificaciones de datos, y le mostraremos cómo adaptar estos marcadores a sus necesidades específicas.

 

Seguimiento de cambios en los datos

Qué es un stamp

Antes de entrar en detalles, aclaremos qué entendemos por «stamp» en este contexto. Esencialmente, un «stamp» sirve como marcador utilizado para rastrear la modificación de una entidad de datos, permitiéndole mantener un registro exhaustivo de los cambios realizados en sus datos.

Seguimiento de cambios en los datos

ACTIVAR EL SEGUIMIENTO DE CAMBIOS DE DATOS

Puede iniciar el seguimiento de cambios en los datos mediante un proceso sencillo. Para empezar, haga clic derecho en la tabla o tablas que desee supervisar en la ventana de estructura. A continuación, seleccione la opción «Activar el seguimiento de cambios de datos«.

Nota: esta simple acción pone en marcha la creación de dos componentes indispensables: un campo «__GlobalStamp» y una tabla «__DeletedRecords«. Estos elementos constituyen la base de un seguimiento y de una gestión precisos y eficaces de las modificaciones de datos en su almacén de datos.

ObtenER la modificación de datos

La función .getGlobalStamp() es una herramienta clave que permite a los usuarios recuperar los marcadores de modificación global actuales asociados a su data store. Estos marcadores actúan como indicadores del estado de modificación de sus datos, ofreciendo información muy valiosa sobre los cambios y actualizaciones dentro de su dataset.

Ejemplo de obtención de cambios en los datos desde ayer

//1. First we store the current global stamp for a future usage 
StoreTodayStamp(ds.getGlobalStamp())
//2. Then the next day, we read the stamp that we stored the day before.
var $yesterdayStamp : Integer
$yesterdayStamp := ReadStoredStamp()

//3. Get the list of modified entities in our 'product' table 
//since the stamp stored the previous day.
var $modifiedProd : cs.productSelection
$modifiedProd:=ds.product.query("__GlobalStamp >= :1"; $yesterdayStamp)

En este ejemplo, StoreTodayStamp y ReadStoredStamp son métodos proyecto que deberá crear para almacenar y recuperar un marcador de referencia.

Obtener información de registro eliminado desde ayer ejemplo

//4. Get info about deleted entities since the stamp stored the previous day.

var $deletedProdInfo : cs.__DeletedRecordsSelection 
$deletedProdInfo:=ds.__DeletedRecords.query("__Stamp >= :1"; $yesterdayStamp)

En un mundo en el que la gestión precisa de los datos es crucial, esta funcionalidad lo pone al volante. Ofrece una visión clara de los cambios de sus datos, lo que le permite controlarlos eficazmente, al igual que en el How Do I. Además, permite una sincronización precisa de los datos, perfecta para tareas como las actualizaciones incrementales. También es una forma más moderna de abordar la sincronización de datos que la replicación vía SQL. Esta función es la clave para un control eficaz de los datos, ya que facilita la gestión, la supervisión y el seguimiento de los cambios en su almacén de datos. Bienvenido a un enfoque más inteligente de la gestión de datos, con ventajas que van desde la supervisión hasta las copias de seguridad y la sincronización incremental.

 

David Azancot
• Propietario de Producto 4D for iOS - David Azancot se unió al equipo de Producto 4D como Propietario de Producto en 2017. Está a cargo de escribir las historias de usuario y traducirlas en especificaciones funcionales. Su papel también incluye asegurarse de que las implementaciones de funcionalidades satisfagan las necesidades de los clientes. David se graduó con un MBA en Mercadeo, Internet y Movilidad en el Instituto Leonard De Vinci y comenzó su carrera en 2011 con una empresa móvil de nueva creación, posteriormente adquirida por Madvertise (un grupo de mercadeo móvil). Apasionado de las interfaces móviles, fue la elección natural para desarrollar formatos de anuncios móviles interactivos para el grupo en 2015. Paralelamente, David desarrolla sus propias aplicaciones para iOS y Android desde 2012.