vai al contenuto principale

Versioning

Livebase supporta nativamente una funzionalità di versioning, che consente di tenere traccia delle modifiche agli oggetti persistiti nel database. A seconda delle proprie esigenze, l'utente è libero di definire autonomamente quali elementi dell'engine versionare.

Abilitare il versioning #

Fai click destro su una classe per aprire il suo Class menu e seleziona l’opzione Edit versioning policy... dal menu a tendina. Dal Versioning policy editor, spunta la casella Enable versioning on this class.

Sulla canvas, la classe apparirà contrassegnata dall’icona e da questo momento in poi i dati presenti al suo interno saranno soggetti a versioning.

Abilitare il versioning

Classe con versioning abilitato

Una classe su cui è stato abilitato il versioning

Il versioning policy editor #

Il pannello Versioning policy editor consente di abilitare il versionamento a livello di singola classe, e mostra tutti gli elementi presenti all’interno di essa. Gli elementi di modellazione versionati (come gli attributi nativi, gli attributi di piattaforma e relazioni) sono evidenziati in grassetto. Anche gli attributi derivati sottoposti a versioning sono scritti in grassetto, ma vengono in realtà ricalcolati sulla base del valore storico degli altri attributi.

Versioning policy editor

Il Versioning policy editor

Gli elementi dell’engine che non sono evidenziati in grassetto appartengono a un’altra classe, legata alla classe versionata da una relazione. Il Versioning policy editor suggerisce automaticamente l’azione da eseguire sull’engine per fare in modo che il versioning possa essere abilitato anche per questi elementi: poiché la struttura delle tabelle dipende dalla molteplicità delle relazioni, nei casi in cui la foreign key si trova in un’altra classe, è necessario abilitare il versioning anche su quest’ultima.

Cliccando il nome della classe accanto al messaggio Could be versioned by enabling versioning on opposite class è possibile accedere direttamente al Versioning policy editor della classe che occorre versionare in modo da poter tener traccia nel database di tutte le modifiche effettuate su quel dato.

Le associazioni molti a molti non possono essere versionate; accanto agli attributi che dipendono da questo tipo di relazione l’editor mostra il messaggio Versioning not supported for this role.

Una volta abilitato il versioning, è possibile accedere al Versioning policy editor semplicemente facendo doppio click sull’icona.