Upload
samson
View
15
Download
0
Embed Size (px)
DESCRIPTION
Vorbereitung: -Aus der Steuerdatei elemente.dat werden die Definitionen der Elementtypen eingelesen und im Hash %elementtypen gespeichert. -Die in der Steuerdatei [ projekt] .unify aufgelisteten Elementnummern der vereinten Elemente werden eingelesen. - PowerPoint PPT Presentation
Citation preview
OBJEKT_EINFÜGEN (etyp, Koordinaten, Parameter/Deskriptoren+Werte, Master-Enum-Liste)
ELEMENT_NEU(neue Deskr)
Vorbereitung:
-Aus der Steuerdatei elemente.dat werden die Definitionen der Elementtypen eingelesen und imHash %elementtypen gespeichert.
-Die in der Steuerdatei [projekt].unify aufgelisteten Elementnummern der vereinten Elemente werden eingelesen.
-Die alte SQD-Datei wird eingelesen und in eine interne Datenstruktur( %daten-Hash) übersetzt.
Der %daten-Hash repräsentiert während der Rückübersetzung den vollständigen und aktuellen Datenbestand im Auslesebereich. D.h. alle Änderungen werden in dieser Datenstruktur vorgenommen; die ausgegebene SQD-Datei wird, abgesehen vom Dateikopf, ausschliesslich aus dieser Datenstruktur aufgebaut. Zum Zweck der Zeitersparnis werden allerdings nur die geänderten Elemente in die Ausgabe-SQD-Datei aufgenommen. Die Elementnummern der betreffenden Elemente werden in vier Listen vermerkt:
@ins Liste der einzufügenden Elemente,
@del Liste der zu löschenden Elemente,
@alt Liste der zu ändernden Elemente,
@mad Liste der Master-Elemente, die aufgrund einer geänderten Detailverkettung neu eingelesen werden müssen.
ELEMENT_NEU(Standarddeskr.)
Detailsnotwendig
T
F
ELEMENT_NEU (etyp, Koordinaten, Parameter/Deskriptoren+Werte, Master-Enum-Liste)
-Hinzufügen zu @ins-Liste,
-Hinzufügen zu %daten-Hash,
-Hinzufügen jedes Masters aus Masterliste(im %daten-Hash) zu @mad-Liste
ELEMENT_ÄNDERN(neue Deskr.)
Gleicher ETYPan der Stelle
T
F
neuen Elementhat Standarddeskr.
T
F
ELEMENT_ÄNDERN (enum,Deskr.+Werte )
-vorhandenes Element erhält neue Deskriptorwerte (im %daten-Hash),
-enum wird zur @alt-Liste hinzugefügt
OBJEKT_LÖSCHEN (enum)
Master vorhanden
F
T
Details vorhanden
-Hinzufügen des Elements zur @del-Liste
-im %daten-Hash wird:
-in jedem Detailelement der Eintrag in der Masterliste
gelöscht,
-in jedem Masterelement der Eintrag in der Detailliste
gelöscht.
T
F
Detail vereint
T
F
Weitere Mastervorhanden
T
F
ELEMENT_ÄNDERN(standarddeskr.)
OBJEKT_ÄNDERN(enum, Koordinaten, Parameter/Deskriptoren+Werte)
Master vorhanden
T
F
Koordinatengeändert
T
F
ELEMENT_ÄNDERN(neue Deskr)
ELEMENT_EINFÜGEN(neue enum,Standartwerte)
Jedes Masterelement der alten Masterliste löscht die alte ENUM und ergänzt die neue ENUM in der Detailliste.
Hinzufügen jedes Masterelements zur @mad-Liste
ELEMENT_ÄNDERN(neue Deskr.)
Detailsvorhanden
T
FDetail von
Änderungenbetroffen
T
F
Detail vereint
T
F
ELEMENT_EINFÜGEN(Standardeskr.)
Hinzufügen des Elements zur @mad-Liste
-ENUM wird aus Masterliste des Details gelöscht
-Detail-ENUM wird aus Detailliste des Elements gelöscht
OBJEKT_LÖSCHEN(enum)