a seguito del post<span><b class="highlight"> "storicizzazione</b><b> dell</b>e modifiche in postgres/postgis"<br><br>ho fatto alcune prove con il plugin di Qgis "Postgis Manager"<br>per vedere se riuscivo a storicizzare le modifiche in una tabella del db<br>
<br>devo dire che il plugin soddisfa pienamente l'esigenza!!<br>inoltre fa anche moltre altre cose... per esempio è possibile aggiungere un trigger per il calcolo automatico dell'area dell'oggetto ad ogni modifica geometrica!<br>
<br>tornando alla funzione di storicizzazione...<br>si attiva dal menu DATA -> TABLE VERSIONING<br>selezioni schema e tabella <br>e poi<br>nella tabella vengono create 3 colonne:<br>- id_hist (che sostituirà la gid) <br>
- time_start<br>- time_end<br><br>viene inoltre creata </span><span>una vista con la versione corrente della tabella</span><span><br><br>ho avuto qualche problemino all'inizio durante le prove di modifica del layer:<br>
la prima modifica fatta su ogni riga del DB <br>non </span><span>valorizzava il campo time_end della riga da invalidare (old</span>)<br>e così ci si trovava con due record validi uguali...<br><br>ci ho messo un po' a capire che dipendeva dal fatto che la colonna time_start era vuota!<br>
così ho risolto in questo modo:<br>- ho disabilitato il trigger dell'update <br>- ho valorizzato la colonna time_start <br>- ho riattivato il trigger<br><br>con questo plugin, senza avere conoscenze di programmazione di postgres<br>
si può organizzare un buon sistema di storicizzazione di dati geografici<br><br>una possibile miglioria del plugin:<br>per tenere traccia di chi fa le modifiche<br>sarebbe da aggiungere 2 colonne: utente_start e utente_end<br>
<br>ciao!<br><br>emanuele masiero<br>padova<br>