Sincronizzazione dati

La piattaforma Nios4 è stata pensata per esssere utilizzata anche quando non è possibile essere collegati a internet. Il sistema infatti crea sempre una copia in locale di tutti i dati del database e solo quando il collegamento a internet è disponibile sincronizzare i dati modificati con il server centrale. I dati poi saranno disponibili agli altri dispositivi sempre nella loro fase di sincronizzazione.

Nozioni di base

La sincronizzazione dei dati viene gestita attraverso due specifici campi presenti all'interno di tutte le tabelle del database. Questi campi sono GGUID e TID.

Il primo campo GGUID serve come identificativo univoco globale del record. Normalmente è un valore alfanumerico di 32 caratteri generato automaticamente dai dispositivi ma può essere un qualsiasi valore di testo. L'importante e che questo valore non sia ripetuto più di una volta in tutto il database. Quindi anche due tabelle pur avendo i dati separati non potranno avere due record identificati con lo stesso GGUID.

Il campo TID è un valore numerico che identifica l'ultima modifica eseguita (o la sua data di creazione) del record. Viene scritta nel formato YYYYMMDDhhmmss quindi ad esempio la data compresa di ora 5 novembre 2023 16:11 diventa 20231105161100. Utilizzando questo valore il server in fase di sincronizzazione deciderà se il record risulta più aggiornato di quello evenutalmente presente nel cloud, e quindi verrà distribuito agli altri dispositivi, oppure se dovrà essere sostituito avendo un marker temporale antecedente a quello del server.

Gestione manuale della sincronizzazione sulle versioni Windows

Tutte le versione dei programmi di Nios4 gestiscono in modo automatico tutte le operazioni di sincronizzazione. E' possibile comunque attraverso la versione Windows e quindi agendo direttamente sul database in locale (Microsoft Access o SQL Server) simulare le operazioni da eseguire per forzare il sistema a sincronizzare uno specifico record. Questa metodologia viene utilizzata normalmente quando si vuole inserire dei dati da un altro gestionale direttamente nel database di Nios4 o dal programma demone, per poi inviarli al cloud e di conseguenza agli altri dispositivi collegati.

Le operazioni da eseguire sono due:

La prima è quella di modificare il valore del campo TID presente sul record interessato. Si ricorda che occorre rispettare la formattazione riportata precedentemente e che occorre applicare il fuso orario UTC (+0 ore)

La seconda operazione sarà di inserire all'interno della tabella lo_syncbox un nuovo valore che riporterà il nome della tabella,il gguid del record e il tipo di operazione da eseguire, in questo caso sempre il valore 0.

Eseguita la sincronizzazione manualmente attraverso il programma, o automaticamente attraverso gli altri programmi (Daemon, Trigger) la tabella verrà svuotata automaticamente.