|
||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Projekte VersionHier werden die Versionen eines Projektes gezeigt. Jedes mal wenn man ein Projekt versioniert erscheint hier ein neuer Eintrag mit dem Stand. Einträge können aus dieser Liste nicht gelöscht werden. Mit dem Status der Freigabe wird gezeigt welcher Stand gefertigt werden darf. Status:
Auch kann der Projektstand mit einem Bauteil verknüpft werden, damit man ein Lagerplatz zuweisen kann. Wie ein Projekt versioniert oder wieder für Änderungen freigegeben wird ist unter "Projekt" beschrieben.
Funktionsweise der Versionierung innerhalb von EleLa: Hier ist beschrieben wie die Datensätze innerhalb der Datenbank organisiert sind, um eine Version der Projekte und Positionen abbilden zu können. Tabelle "Projekt": In Projekt gibt es 2 Spalten die für die Versionierung wichtig sind:
Wenn nun eine Version erzeugt wird, so erzeugt EleLa einen Datensatz
in der Tabelle "ProjektVersion". Zugleich wird die ID von ProjektVersion
in der Tabelle Projekt.ProjektVersion_ID gespeichert. Da hier nun eine
Zahl drin steht bedeutet dies dass der Stand vom Projekt eingefrohren
ist. Tabelle "ProjektPos": Die Spalte "Projekt_ID" zeigt immer auf das Original Projekt
mit der "ID" vom Projekt, niemals auf die Kopie der Version
vom Projekt. Jede ältere Version einer Position zeigt in der Spalte
"ID_ID_Version" auf die Original/Aktuelle Version. In der Spalte
"ProjektVersion_ID" steht die ID zur Tabelle ProjektVersion.
Wenn in "ProjektVersion_ID" NULL steht, so ist diese Position
eine aktuelle Änderung und noch nicht versioniert. Wenn in "ProjektVersion_ID"
eine Zahl drin steht, so ist diese Position mit einer Version verknüpft.
Wenn nun die Position geändert wird, so wird zu erst diese Datenzeile
kopiert, in der Kopie wird die Originale "ID" von der Position
eingetragen und dann im Original Datensatz "ProjektVersion_ID"
auf NULL gesetzt. Somit ist der versionierte Stand gespeichert und die
neue Änderung verfügbar. Ein ProjektPos Datensatz wird erst
dann kopiert wenn der Datensatz tatsächlich geändert wird. |
||||||||||||||||||||||||||||||||
|