Tracciare le modifiche dei dati nel database

Tradotto automaticamente da Deepl

In questo post del blog, siamo entusiasti di presentare un metodo potente che rivoluzionerà il modo in cui gestite e tracciate le modifiche all’interno del vostro archivio di dati. Vi sveleremo il concetto di “timbro”, un marcatore specializzato progettato per semplificare il monitoraggio delle modifiche ai dati, e vi mostreremo come adattare questi timbri alle vostre esigenze specifiche.

Tracciamento delle modifiche ai dati

Cos’è un timbro

Prima di entrare nei dettagli, chiariamo cosa si intende per “timbro” in questo contesto. In sostanza, un “timbro” serve come marcatore per tracciare le modifiche alle entità dei dati, consentendo di mantenere un registro completo delle modifiche apportate ai dati.

Tracciamento delle modifiche ai dati

ATTIVARE IL TRACCIAMENTO DELLE MODIFICHE AI DATI

È possibile avviare il tracciamento delle modifiche ai dati attraverso una procedura semplice. Si inizia facendo clic con il pulsante destro del mouse sulla tabella o sulle tabelle che si desidera monitorare all’interno della finestra della struttura. Da qui, selezionare la voce di menu “Abilita il monitoraggio delle modifiche ai dati”.

Nota: questa semplice azione mette in moto la creazione di due componenti indispensabili: un campo “__GlobalStamp” e una tabella “__DeletedRecords”. Questi elementi costituiscono la base per un tracciamento e una gestione precisi ed efficaci delle modifiche dei dati all’interno dell’archivio dati.

Ottenere la modifica dei dati

La funzione .getGlobalStamp() è uno strumento fondamentale che consente agli utenti di recuperare i timbri di modifica globale correntemente associati al proprio archivio dati. Questi timbri fungono da indicatori dello stato di modifica dei dati, fornendo preziose informazioni sulle modifiche e gli aggiornamenti all’interno del dataset.

Esempio di modifica dei dati da ieri

//1. First we store the current global stamp for a futur 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)

In questo esempio, StoreTodayStamp e ReadStoredStamp sono metodi di progetto da creare per memorizzare e recuperare un timbro di riferimento.

Ottenere INFO SUL REGISTRO CANCELLATO DALLA GIORNATA DI IERI Esempio

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

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

In un mondo in cui la gestione precisa dei dati è fondamentale, questa funzione vi mette al posto di guida. Fornisce una visione chiara dei cambiamenti dei dati, consentendo di monitorarli efficacemente, proprio come nell’HDI. Inoltre, consente una sincronizzazione accurata dei dati, perfetta per attività come gli aggiornamenti incrementali. È anche un modo più moderno di gestire la sincronizzazione dei dati rispetto alla replica via SQL. Questa funzione è la chiave per un controllo efficiente dei dati, che facilita la gestione, il monitoraggio e la tracciabilità delle modifiche nell’archivio dati. Benvenuti in un approccio più intelligente alla gestione dei dati, con vantaggi che vanno dal monitoraggio al backup e alla sincronizzazione incrementale.

David Azancot
- Product Owner di 4D per iOS -David Azancot è entrato a far parte del team 4D Product come Product Owner nel 2017. Si occupa di scrivere le storie degli utenti e di tradurle in specifiche funzionali. Il suo ruolo comprende anche la garanzia che le implementazioni delle funzionalità soddisfino le esigenze dei clienti.David si è laureato con un MBA in Marketing, Internet e Mobilità presso l'Istituto Leonard De Vinci e ha iniziato la sua carriera nel 2011 con una start-up mobile, successivamente acquisita da Madvertise (un gruppo di marketing mobile). Appassionato di interfacce mobili, nel 2015 è stato la scelta naturale per sviluppare formati pubblicitari interattivi per dispositivi mobili per il gruppo. Parallelamente, dal 2012 David sviluppa le proprie applicazioni per iOS e Android.