DA#-Makro(4): DA#-Makrofunktion(3)-Rückwärts
Werfen wir einen Blick auf die Makro-Reverse-Funktion des DA#.
Dies ist eine Fortsetzung des vorherigen Artikels.
DA#-Makro(3): DA#-Makrofunktion(2) – Attribut abrufen/setzen
2.4. DA# Macro Reverse-Funktion
2.4.1. Gründe für die Erstellung der DA# Macro Reverse-Funktion
Die Umkehrfunktion des Datenmodellierungstools ist eine Funktion, die mithilfe von Reverse-Engineering-Techniken ein ERD-Datenmodell aus der Datenbank erstellt.
Die gebräuchlichste Methode besteht darin, direkt auf die Datenbank zuzugreifen und die umgekehrte Funktion auszuführen. Wenn der direkte Zugriff auf die Datenbank schwierig ist oder es lange dauert, die Berechtigung zu erhalten, stellen Sie der verantwortlichen Person (normalerweise DBA oder IT-Betreiber) mit Zugriffsberechtigung SQL zum Sammeln von Datenmodellinformationen zur Verfügung und exportieren Sie das Ausführungsergebnis als eine Excel-Datei. Durch den Empfang kann die Umkehrfunktion ausgeführt werden.
DA# bietet sowohl die Funktion zum Umkehren aus der Datenbank als auch die Funktion zum Umkehren aus der Excel-Datei. Es weist jedoch die folgenden Einschränkungen auf und erfordert viel manuelle Arbeit, wenn es am Projektstandort verwendet wird.
- Es kann jeweils nur ein Datenmodell verarbeitet werden.
- Bei vielen Datenmodellen (Zehner bis Hunderter) muss die Umkehrfunktion für jedes Modell wiederholt ausgeführt werden.
- Es wird als einzelnes Themenbereichsdiagramm erstellt und alle Entitäten werden zufällig platziert.
- Es ist notwendig, einen Themenbereich zu erstellen und den Themenbereich jeder Entität zu trennen.
- Im Themenbereichsdiagramm ist es notwendig, Entitäten zu verschieben, z. B. Entitäten in Geschäftsbereiche zu gruppieren oder verwandte Entitäten an einer Stelle anzuordnen.
Um die oben genannten Einschränkungen so weit wie möglich zu überwinden und manuelle Arbeit so weit wie möglich zu eliminieren, wurde im DA#-Makrotool eine Umkehrfunktion erstellt. Die folgenden Funktionen stehen zur Verfügung.
- Mehrere Modelle können gleichzeitig umgekehrt werden
- Durch die Angabe des Themenbereichs jeder Tabelle ist es möglich, diese im entsprechenden Themenbereichsdiagramm zu platzieren.
- Bestimmen Sie eine Gruppe von Entitäten innerhalb eines Themenbereichsdiagramms und ordnen Sie sie an einer Stelle für jede Gruppe an –> Kernfunktion
- Benutzerdefiniertes Layout zusätzlich zum von DA# bereitgestellten Layout (in einer zukünftigen Version geplant. Derzeit wird nur das von DA# bereitgestellte Layout unterstützt)
2.4.2. Zusammenfassung zur Verwendung der Umkehrfunktion
- Erstellen Sie eine Excel-Eingabedatei, wählen Sie jede Datei im Blatt „Umkehren“ aus und legen Sie die Optionen für die Ausführung fest.
- Die Eingabe-Excel-Datei wird durch Ausführen einer Abfrage in der Datenbank oder durch Verwendung des verwalteten Tabellendefinitionsdokuments erstellt.
2.4.3. Eingabedatei
- Modellliste: Eine Datei, die eine umgekehrte Zielmodellliste erstellt (erforderlich)
- Legen Sie den DBMSType des Modells fest
- Nur Objekte, deren Modellnamen in der Tabellenliste und die in dieser Datei beschriebenen Modelle übereinstimmen, werden umgekehrt.
- Tabellenliste: Die Datei, die die umgekehrte Zieltabellenliste erstellt hat (erforderlich)
- Spaltenliste: Datei, die die umgekehrte Zielspaltenliste erstellt hat (erforderlich)
- FK-Liste: Eine Datei, die eine Liste von Fremdschlüsseln (FKs) zum Umkehren erstellt (optional)
- Hinweise zum Erstellen jeder Listendatei
- Modell-, Tabellen-, Spalten- und FK-Listen können in eine Datei geschrieben oder in separaten Dateien gespeichert werden.
- Vorlagen für jede Liste sollten mithilfe der angehängten Datei am Ende des DA#-Makroblatts „Reverse“ oder als separat bereitgestellte Datei erstellt werden (muss im vorgeschriebenen Format geschrieben sein).
2.4.4. Reverse-Optionen
- Modus zum Öffnen der Eingabedatei: Wählen Sie aus, in welchem Modus (schreibgeschützt, beschreibbar) die Eingabedatei geöffnet werden soll
- Ob die Eingabedatei nach der Verarbeitung geschlossen werden soll: Ob geschlossen werden soll, nachdem alle Eingabedateien gelesen und in den Speicher geladen wurden (Y: nach dem Lesen schließen, N: offen halten)
- Entity-Anordnungsmethode: Die von DA# bereitgestellte Anordnungsmethode: Menü > Format > Automatische Anordnung. Derzeit gibt es eine von zwei Methoden an: Radial oder HTree.
- Gruppenanordnungsintervall: Horizontales und vertikales Intervall zwischen Entitätsgruppen (Einheit: Pixel) (empfohlener Wert: 300 oder mehr)
- Anzahl der Gruppenspalten in einer Zeile: Die Anzahl der Entitätsgruppen, die im Themenbereichsdiagramm in einer Zeile platziert werden sollen.
- Beispiel: Wenn es insgesamt 10 Entitätsgruppen gibt
- Bei Einstellung der Spaltenanzahl auf 3: Anordnung in 4 Reihen und 3 Spalten (4×3)
- Bei Einstellung der Spaltenanzahl auf 5: Anordnung in 2 Reihen und 5 Spalten (2×5)
- Ob die Reverse DA#-Modellvorlage verwendet werden soll: Unten Ob verwendet werden soll (ein neues Modell erstellen, ohne eine Vorlage zu verwenden, wenn „N“ ausgewählt ist)
- Reverse DA#-Modellvorlagendatei: Reverse DA#-Modellvorlagendatei
- Legen Sie eine Datei fest, in der die Standardeinstellungen des Modells vorab gespeichert werden
- Beispiele für Standardeinstellungen des Modells: Optionen zur Objektnamenansicht (Sekundärnamen anzeigen, Synonyme anzeigen), Seitenskalierung usw.
- Wird nicht verwendet, wenn die obige Verwendungsoption „N“ ist.
- Beispielwert: D:\Project\My\01.ExcelVBA\02.DA# Macro\test reverse file\template model.damx
- Speicherpfad für umgekehrtes DA#-Modell: Pfad zum Speichern der umgekehrten DA#-Modelldatei (*.damx) (der Dateiname wird gemäß dem untenstehenden Format erstellt)
- Modelldateinamenformat: Eine Formatzeichenfolge, die auf Modelldateinamen angewendet wird.
- [Modellname]: Modellname, der in der Modelllistenvorlage angegeben ist
- [DATUM]: Format JJJJMMTT (z. B. 20201228)
- [TIME]: HH24MISS-Format (z. B. 155621)
- Konstante: Firmenname des Kunden, Systemname usw.
- Beispielwert: Encore [Modellname]_[DATUM]_[ZEIT].damx
- Ob ein physisches Modell erstellt werden soll: Ob für jeden Themenbereich ein physisches Modelldiagramm erstellt werden soll
- „Y“: Die Umkehrung nimmt mehr Zeit in Anspruch, erstellt aber ein physisches Modell von Grund auf
- Erstellt kein „N“-Physikmodell (Rückwärtsgang kann schneller abgeschlossen werden)
2.4.5. Vorlagendatei: Modell
- Modellname: Der Name der zu speichernden Modelldatei. Nur das hier angegebene Modell ist umgekehrt.
- Es wird in der Option „Modelldateinamenformat“ verwendet.
- Muss mit dem Modellnamen von Tabelle, Spalte und FK-Vorlage übereinstimmen.
- DBMSType: Gibt den DBMS-Typ an, der dem physischen Modell des Modells zugewiesen werden soll. Verwenden Sie einen der folgenden Werte. (Hinweis: Da der DA# aktualisiert wird, kann dieser Wert hinzugefügt oder entfernt werden.)
- ALTIBASE
- BIGQUERY
- CUBRID
- DB2UDB
- GRÜNE PFLAUME
- HANADB
- BIENENSTOCK
- IMPALA
- INFORMIX
- MARIA
- MySQL
- NETEZZA
- MEERBASIS
- ORAKEL
- POSTGRESQL
- ROTVERSCHIEBUNG
- SQL SERVER
- SYBASEASE
- SYBASEIQ
- TERADATA
- Tibero
- VERTICA
- Andere Werte werden als ORACLE angegeben
- Definition: Eine Beschreibung des Modells
2.4.6. Vorlagendatei: Tabelle
- Modellname: Der Name der zu speichernden Modelldatei. Nur das hier angegebene Modell ist umgekehrt.
- Name des Themenbereichs: Modellieren Sie den Unterthemenbereich, in dem jede Tabelle platziert werden soll
- Entitätsgruppenname: Entitäten mit demselben Gruppennamen werden an derselben Position im Themenbereichsdiagramm platziert.
- Vor der Ausführung von Reverse wird der Geschäftsbereich jeder Tabelle (Bestellung, Zahlung usw.) oder die Art der Tabelle (Objekt (Basis), Detail, Code, Verlauf, temporär, Beziehung usw.) im Voraus analysiert. und der Gruppenname wird im Voraus festgelegt und die Gruppe wird angezeigt. Dies ist nützlich, wenn Sie sie an einem Ort platzieren möchten.
- Machen Sie den Namen der Entitätsgruppe zu einem Textfeld und sammeln und ordnen Sie die Entitäten darunter an. (siehe Bild unten)
- Andere sind die Attributwerte, die dem Entitätsobjekt von DA# wie folgt zugewiesen werden.
- Entitätsname
- Tabellenname
- Synonym
- Hilfsname
- DB-Eigentümer
- Klassifizierung: Eine von Schlüssel, Haupt, Aktion, Keine. Wenn kein Wert angegeben wird, ist der Standardwert „Keine“.
- Eben
- Niveaus: entweder wesentlich oder praktisch. Wenn kein Wert angegeben ist, ist der Standardwert „praktisch“.
- Typ: Einer von „Normal“, „Zusätzlich“, „Drop“, „Extern“ oder „Pseudo“. Wenn kein Wert angegeben ist, ist der Standardwert „Normal“.
- Normalisierung: Eine von geerbt, Ziel oder Nicht-Ziel. Wenn kein Wert angegeben ist, ist der Standardwert „inherit“.
- Lage
- Zyklus des Auftretens
- monatliche Menge
- Aufbewahrungsfrist (Monate)
- Gesamtzahl der Fälle
- Gerechtigkeit
- Datenverarbeitungsformular
- Einzigartigkeit
- Notiz
- Schild
- Hinweis: Zum Zeitpunkt des Verfassens dieses Artikels wird das Festlegen von UDP-Werten nicht unterstützt.
2.4.7. Vorlagendatei: Spalte
- Modellname: Der Name der zu speichernden Modelldatei. Nur das hier angegebene Modell ist umgekehrt.
- Entitätsname: Siehe den Inhalt des Tabellennamens unten. Nicht benötigt.
- Tabellenname: Ein Wert, der verbindet, zu welcher Entität das Attribut gehört. Dies ist ein erforderlicher Wert. Es ist schwierig, die Eindeutigkeit von Entitätsnamen zu gewährleisten, und sie sind häufig leer. Verwenden Sie sie daher nicht als Verbindungswerte. Beim Extrahieren umgekehrter Informationen aus der Datenbank durch Abfrage kann garantiert werden, dass der Tabellenname eindeutig und nicht leer ist, sodass der Tabellenname als Verbindungswert verwendet wird.
- Im Folgenden sind die Attributwerte aufgeführt, die dem Attributobjekt von DA# zugewiesen sind.
- Attributname
- Spaltenname
- Gerechtigkeit
- Hilfsname
- Synonym
- Umgekehrte Tabelle
- Umgekehrte Spalte
- Umgekehrter Typ
- Umgekehrte Länge
- PK: Ob die Eigenschaft PKed ist (Y oder null)
- NotNull: NotNull oder nicht (Y oder null)
- Typ: Einer von Normal, Zusätzlich, Drop, System, Pseudo
- Datentyp
- Länge
- Komma
- Ursprünglich
- Core-Property-Status: (Y oder null)
- Wesentliche Kennung: (Y oder null)
- Sekundäre Kennung: (Y oder null)
- Standardsynchronisierung: (Y oder null)
- Nichtvererbung: (Y oder null)
- Standardisierung
- Ob Informationen geschützt sind: (Y oder null)
- Informationsschutzniveau
- Verschlüsselung: (Y oder null)
- Gerangel
- Hinweis: Zum Zeitpunkt des Verfassens dieses Artikels wird das Festlegen von UDP-Werten nicht unterstützt.
2.4.8. Vorlagendatei: FK
- FK ist keine obligatorische Eingabe, aber wenn die Beziehung zwischen Entitäten im Voraus bekannt ist, ist es sinnvoll, so viel wie möglich zu schreiben und einzugeben.
- Modellname: Der Name der zu speichernden Modelldatei. Nur das hier angegebene Modell ist umgekehrt.
- Name der übergeordneten Entität, Name der untergeordneten Entität
- Er muss genau mit dem in der Tabellenvorlage angegebenen Entitätsnamen übereinstimmen.
- Unter den DA#-APIs gibt es keine API, die einen FK in einem physischen Modell erstellt. Daher wird eine API (Model.LinkRelation) verwendet, die eine Beziehung in einem logischen Modell erstellt.
- Nachfolgend sind die Attributwerte aufgeführt, die dem Beziehungsobjekt von DA# zugewiesen sind.
- Beziehungsname
- Gerechtigkeit
- Beziehungstyp: Normal oder Pseudo. Wenn kein oder keiner der Werte angegeben ist, ist der Standardwert „Normal“.
- Es wird empfohlen, „Normal“ zu kennzeichnen, wenn die Beziehung zwischen zwei Entitäten sicher ist, und „Pseudo“, wenn dies nicht sicher ist, oder um eine Beziehung zum Zweck der Datenmodellanalyse zu erstellen.
- Im Fall von Normal wird der Bezeichner der übergeordneten Entität von der untergeordneten Entität geerbt. Im tatsächlichen Datenmodell kann jedoch die tatsächliche Eigenschaft des Bezeichners ausgeschlossen sein oder der Name kann unterschiedlich sein, was zu Schäden am Datenmodell führen kann.
- Ordinalität (Eltern:Kind): Eine von 1:1, 1:M oder M:M. Wenn kein Wert angegeben wird, ist der Standardwert „1:M“.
- Selektivität (Übergeordnet:Untergeordnet): Geben Sie eine der folgenden Optionen an. Wenn kein Wert angegeben wird, ist der Standardwert „O:M“. (O: Optional, M: Obligatorisch)
- O:M -> Standard
- O:O
- M:O -> Ungeeignet, aber vorhanden
- M:M
- Identifizierung: Eine von Identifizierung oder Nichtidentifizierung. Wenn kein Wert angegeben wird, ist der Standardwert „nicht identifiziert“.
- Identifikation: Die übergeordnete Kennung erbt die untergeordnete Kennung
- Nicht identifizierend: Die übergeordnete Kennung wird als allgemeine Eigenschaft des untergeordneten Elements vererbt
- Relationales Verb der übergeordneten Entität, relationales Verb der untergeordneten Entität: Normalerweise reicht ein Beziehungsname aus. Wenn jedoch eine zusätzliche Erklärung erforderlich ist, wird ein Beziehungsverb angegeben. Das Konzept finden Sie im Bild unten.
![DA# 관계명, 부모 엔터티 관계동사 자식 엔터티 관계동사 예시](https://prodskill.com/wp-content/uploads/2022/09/image-235.png)
Bisher haben wir uns die Reverse-Funktion unter den DA#-Makrofunktionen angesehen. Als nächstes werfen wir einen Blick auf die Vorsichtsmaßnahmen und Referenzpunkte bei der Verwendung des DA#-Makros.
<< Liste verwandter Artikel >>
- DA#-Makro(1): DA#, DA#-API, DA#-Makroübersicht
- DA#-Makro(2): DA#-Makrofunktion(1) – Gemeinsame Funktion, Entity Get/Set
- DA#-Makro(3): DA#-Makrofunktion(2) – Attribut abrufen/setzen
- DA#-Makro(4): DA#-Makrofunktion(3)-Rückwärts
- DA# Macro(5): Nutzungshinweise/Hinweise, Downloads, zukünftig hinzuzufügende Funktionen, Hinweise
- DA#-Makro(6): DA#-Modellierer-API
- Demonstrationsvideo der DA#-Makrofunktion (YouTube)
- DA# Makrobeschreibung Inhaltsverzeichnis, Download