SOG-Helpcenter Logo SOG Business - Software

Metadaten (p500)


Mit den SOG ERP (VACOS) #Metadaten (p500 - Metatabellenpflege (metasu)) ist es möglich eigenständige Datenbanktabellen anzulegen.

Das kann z.B. verwendet werden, um benutzerdefinierte Informationen zu einem SOG ERP (VACOS)-Datensatz zu hinterlegen, die in den SOG ERP (VACOS)-Datenstrukturen nicht vorgesehen sind.

Diese Metadaten können über das PropertyGrid oder eigenständige Datenfelder innerhalb der Active Skin Masken angezeigt und gepflegt werden. Um diese Funktionen nutzen zu können, muss eine Metatabelle erstellt und für diese Tabelle einzelne Metatabellenfelder definiert werden. Vor der Einführung von Metadaten sollte Rücksprache mit Ihrem Projektleiter gehalten werden, um zu klären, ob die gewünschten Daten nicht bereits Bestandteil der vorhandenen SOG ERP (VACOS)-Tabellen sind. Für die Nutzung von Metadaten benötigen Sie die Lizenz meta.

 

Notwendige Rechte

 

Für die Bearbeitung von Metadatenstrukturen ist das SOG ERP Recht "metaedit" notwendig.

Außerdem werden entsprechende Rechte zum Speichern von Dateien im SOG ERP-Verzeichnis und zum Verändern der entsprechenden Datenbank oder Datenbanktabelle benötigt.

Die Funktion steht also normalerweise nur Administratoren zur Verfügung.

Anlegen von Metatabellen


Der Aufbau der einzelnen Metatabellen wird XML Dateien im Verzeichnis ${PROJ}\meta gespeichert. Zum Ändern von Metadatenstrukturen benötigt der aktuelle Benutzer Schreibrechte in diesem Verzeichnis. Dies ist normalerweise nur Admininstratoren gestattet.

Aus diesen hinterlegten Informationen zur Struktur einer Metatabelle wird die eigentliche Metatabelle in der Datenbank erzeugt, auf die dann auch per SQL zugegriffen werden kann.

Zum Erzeugen oder Aktualisieren von Strukturen in der Datenbank benötigt der aktuelle Benutzer entsprechende Rechte auf der Datenbank. Dies ist normalerweise nur Administratoren möglich.

Um eine neue Metatabelle anzulegen, gehen Sie folgendermaßen vor:

  1. Rufen Sie die Metatabellenpflege auf. Hier gelangen Sie über die Funktion Tabelle hinzufügen in die Neuanlage des Metatabellenkopfes. Sie bekommen hier außerdem eine Übersicht über die bereits vorhandenen Metatabellen. Unter Umständen ist es hier zweckmäßiger eine bereits vorhandene Metatabelle um weitere Metatabellenfelder zu erweitern, anstatt eine neue Metatabelle anzulegen.

  2. In der Bearbeitungsmaske zur Tabelle können jetzt die unten stehenden Angaben gemacht werden.

  3. Nach der Anlage des Metatabellenkopfes gelangen Sie zurück in die Metatabellensuche. Hier können Sie die gerade angelegte Metatabelle nun auswählen und über die Kontextfunktion Anzeigen oder per Doppelklick in die Metatabellenverwaltung wechseln, wo die einzelnen Metatabellenfelder definiert werden.

Tabellenname

Geben Sie hier den Namen der Tabelle an. Dem hier vergebenen Tabellennamen wird in der Datenbank der Prefix "meta_" vorangestellt, um zu verhindern, dass Namenskollisionen mit bereits vorhandenen oder zukünftigen SOG ERP (VACOS)-Datenbanktabellen entstehen.

 

Firmenabhängigkeit

Über dieses Kennzeichen wird gesteuert, ob die Metadatensätze dieser Metatabelle firmenabhängig gespeichert werden. Wenn dieses Kennzeichen nicht gesetzt wird, werden Metadatensätze immer mit Firma "00" gespeichert.

Beschreibung

Hier können Sie eine Beschreibung zur Tabelle hinterlegen.

Tabellenstruktur an nachfolgendes System übertragen

Gilt für Projekte im Hause SOG: Ist der Schalter gesetzt, wird die Tabelle an Kundensysteme übertragen und dort als nicht änderbare Metatabelle importiert. Auf Kundensystemen hat der Schalter keine Bedeutung.

Eindeutige Relation zu

Geben Sie hier eine Tabelle an, zu der die Metatabelle eine eindeutige Relation erhalten soll. (z.B. Kundenstamm). Das Relationsmodell wird dann automatisch dahingehend erweitert, dass überall wo "Kundenstamm" verwendet werden kann, auch die Metatabelle zur Verfügung steht.

Anzeigename der Relation

Hier kann ein benutzerfreundlicher Anzeigename für die Relation eingetragen werden.

Bearbeitungsfunktion

Definieren Sie hier bei Bedarf eine Funktionsnummer um eine automatische Bearbeitungsfunktion bereit zu stellen. Die Bearbeitungsfunktion wird eingerichtet. Die Masken der Funktion müssen aber noch konfiguriert werden. Der Funktionsname bildet sich aus dem Buchstaben "m" gefolgt von einer. Die Bearbeitungsfunktion kann einen Wert zwischen 1 und 999 enthalten. Wird die Funktion eingetragen, muss der Schalter "Tabellenstruktur an nachfolgendes System übertragen" gesetzt werden.

Anlegen und Bearbeiten von Metatabellenfeldern


Die Anlage und Bearbeitung von Metatabellenfeldern erfolgt über die Metatabellenverwaltung.

Um Metatabellenfelder zu einer Metatabelle anzulegen oder zu bearbeiten gehen Sie folgendermaßen vor:

  1. Legen Sie über die Funktion Neues Feld ein neues Feld an oder wählen Sie ein bereits vorhandenes Feld aus und laden Sie es über die Funktion Feld bearbeiten oder per Doppelklick in die Bearbeitungsmaske.

  2. In der Bearbeitungsmaske können nun folgende Angaben gemacht werden:

  3. Speichern Sie das aktuell bearbeitete Feld über die Funktion fertig.

Feldname

Geben Sie hier den Namen des Metatabellenfeldes an. Achten Sie hier darauf, dass keine Feldnamen verwendet werden, die als SQL-Schlüsselwörter interpretiert werden könnten.

Titel

Geben Sie hier den Titel des Feldes an. Dieser Titel wird bei der Anzeige der einzelnen Felder im PropertyGrid verwendet. Wird kein Titel eingetragen, wird der Feldname als Titel verwendet.

Key-Einzelfeld

Falls als Key-1 für die einzelnen Datensätze der Metatabelle ein zusammengesetzter Schlüssel verwendet werden soll, kann hier ein Feld als Einzelfeld des Key-1 definiert werden. Dazu ist hier die Angabe der Position des Feldes im Key anzugeben. Damit wird bei der Anlage der Metatabelle dieses zusätzliche Feld mit angelegt und automatisch mit dem entsprechenden Teil des Key-1 gefüllt und ist als Einzelfeld auch per SQL abfragbar. Wenn Sie mit Key-Einzelfeldern arbeiten wird der Schlüssel des Metadatensatzes aus den Teilbegriffen zusammengesetzt.

Beispiel:

Um einen zusammengesetzten Schlüssel aus Personensatzart und Personenkonto zu verwenden, werden folgende Felder angelegt:

  • Feld "sa" mit Key-Einzelfeld "1"

  • Feld "konto" mit Key-Einzelfeld "2"

Feldindex

Wenn dieses Kennzeichen gesetzt wird, wird bei der Neuerstellung der Datenbanktabelle ein Index für dieses Feld eingerichtet.
Achtung: Diese Funktion sollte nicht mehr verwendet werden. Verwenden Sie stattdessen die Datenbankmodell-Konfigurationsdateien.

Datentyp

Wählen Sie hier den Datentyp des Feldes aus. Zur Auswahl stehen hier die Typen:

  • alphanumerisch

  • numerisch

  • Datum

  • Uhrzeit6 => Format HHMMSS

  • Zeitpunkt => Format JJJJMMTTHHMMSS

  • Bool (Ja/Nein Wert)

     

  • Urzeit (4) => Format HHMM
     

  • FlowDoc - (Ehemals Html) Ermöglicht die Eingabe von formatiertem Text.

  • Identity - Legt das Feld als Identity Spalte der Tabelle fest. Dieses wird automatisch von der Datenbank mit einem eindeutigen Wert gefüllt.
     

  • TextBlob - Ermöglicht die Speicherung von beliebig langen, auch mehrzeiligen, Zeichenfolgen

Länge

Geben Sie hier die Länge des Feldes (ohne Nachkommastellen) an.

Vorzeichen

Dieses Kennzeichen gibt an, ob numerische Werte mit oder ohne Vorzeichen gespeichert werden sollen. Wenn dieses Kennzeichen nicht gesetzt wird, können nur positive Werte gespeichert werden.
Angabe nur bei Datentyp "numerisch" notwendig,

Nachkommastellen

Geben Sie hier die Anzahl der möglichen Nachkommastellen für einen Wert an.
Angabe nur bei Datentyp "numerisch" notwendig.

Tausender Punkte

Über dieses Kennzeichen wird gesteuert, ob numerischen Werte in Tausenderblöcken angezeigt werden.
Angabe nur bei Datentyp "numerisch" notwendig.

Zwangsfeld

Über dieses Kennzeichen wird gesteuert, ob das Feld bei der Pflege des Metadatensatzes mit einem Wert eingetragen werden muss.
Wird das Kennzeichen "Zwangsfeld" für ein Key-Einzelfeld gesetzt, so kann dieser Begriff vom Benutzer verändert werden. Ansonsten ist der Schlüssel nach erstmaliger Einrichtung schreibgeschützt.

Ist Satzart

Leg fest, dass das Datenfeld eine Satzart definiert. Satzarten können vor dem Anlegen von Datensätzen automatisch vom Benutzer abgefragt werden.
Satzarten-Felder müssen alphanumerisch sein und eine Auswahlliste haben. Bei der Bearbeitung in einem PropertyGrid können für die Satzarten unterschiedliche Ansichten von Datenfeldern konfiguriert werden.

Kategorie/Gruppe

Hier kann ein Kategorie/Gruppenname für das Feld angegeben werden. Felder mit gleichem Gruppenname können im PropertyGrid gruppiert angezeigt werden.

Hilfepunkt

Hier kann ein abweichender Hilfepunkt angegeben werden. Wenn kein Hilfepunkt angegeben wird, wird der Hilfepunkt entweder aus dem Namen des Metadatenfeldes oder einer eventuell hinterlegten Objektklasse ermittelt.

Auswahlliste

Hier kann für das Feld eine SOG ERP (VACOS)-Auswahlliste hinterlegt werden. Diese Auswahlliste wird dann bei der Pflege der Metadatensätze zur Auswahl des Wertes verwendet.
Die Auswahl oder Neuanlage einer Auswahlliste erfolgt über den Auswahlbutton zum Maskenfeld. Hier wird die Auswahlistenauswahl aufgerufen, die zusätzlich die Möglichkeit bietet, eine neue Auswahlliste zu erstellen. Der Dateiname einer neuen Auswahlliste, die aus der Metatabellenverwaltung heraus erstellt wird, wird dabei standardmäßig mit dem Präfix "meta_" versehen.

Beispiel:

Um als Auswahlliste die Personensatzarten verwenden zu können, kann hier als Auswahlliste "m_ekvk.awl" hinterlegt werden.

Wert prüfen

Nur Werte die in der Auswahllisten enthalten sind, können eingegeben werden.

Externe Funktion

Hier kann eine Externe Funktion wie "Telefon" oder "Email" eingetragen werden. Das Dateneld wird dann automatisch mit einem entsprechenden Button zur Auslösung der verknüpften Funktion ausgestattet.

Standardfunktion

Möglichkeit zur Einstellung einer Standardfunktion für die Feldverarbeitung.

Siehe unten unter "Standardfunktionen".

 

Parameter

Bei Verwendung der "Standardfunktion" kann die Festelgung von Parametern notwendig sein. Siehe unten unter "Standardfunktionen".

Script

Möglichkeit zur Hinterlegung einer Script-Funktion zur Aktivierung von besonderen Eingabeverhalten.

Leserecht

Hier kann ein SOG ERP (VACOS)-Recht hinterlegt werden, das steuert, ob ein Sachbearbeiter dieses Feld im PropertyGrid angezeigt bekommt.

Schreibrecht

Hier kann ein SOG ERP (VACOS)-Recht hinterlegt werden, das steuert, ob ein Sachbearbeiter dieses Feld bei der Pflege der Metadatensätze über den PropertyGrid verändern kann.

RSA Keyfile

Geben Sie hier den Namen einer RSA-Schüsseldatei an, mit der die Daten des Datenfeldes in der Datenbank verschlüsselt werden sollen. Die Daten können nur gelesen werden, wenn der aktuelle Benutzer Zugriffsrechte auf den privaten Anteil des RSA-Schlüsselpaares hat. Nur alphanumerische Datenfelder, die nicht Bestandteil des Feldschlüssels (Key_1) sind, können verschlüsselt werden.

Quellfeld

Stellt den Bezug zu einem anderen Datenfeld (aus dem gleichen Datensatz) her. Das andere Datenfeld sollte vom Typ "FlowDoc" sein.

Fester Datenwert

Legt einen festen Datenwert für das Datenfeld, sowie ein Verfahren zur Ermittlung dieses Datenwertes bei Einfüge- und Aktualisierungsoperationen fest.
FlowDocHtml: Umsetzung des Inhaltes des Quellfeldes in HTML. Die HTML Darstellung verwendet Formatierungen um möglichst eine 1:1 Darstellung des Textes in HTML zu erreichen.

FlowDocSimpleHtml: Einfaches Html. Dieses Html ist geeignet, um es z.B. in einer WebSite (Shop) darzustellen.

  Enthält ein Paragraph nur einen fett geschriebenen Text in einer der drei folgenden Schriftgrößen, wird er in ein "H1/H2/H3" Html Tag umgesetzt:

  Schriftgröße 20 => H1
  Schriftgröße 14 => H2
  Schriftgröße 11 => H3
FlowDocText: Umsetzung des Inhaltes des Quellfeldes in einfachen Text. Legen Sie zusätzlich "Länge" fest, wenn die Umsetzung auf eine andere Anzahl von Spalten als "80" basieren soll.
FlowDocSearchIndex: Umsetzung des Inhaltes des Quellfeldes in eine Liste von Worten, welche für das optimierte Durchsuchen genutzt werden kann.

Formatvorlage

Kann bei FlowDoc Datenfeldern verwendet werden, um die gewünscht Formatvorlage einzustellen.

Rechtschreibprüfung

Geben Sie hier eine Sprache, oder einen Verweis auf ein Datenfeld an, dass eine Sprache enthält, mit der eine Rechtschreibprüfung durchgeführt werden soll.

Alle Änderungen am Aufbau der Metatabelle werden sofort gespeichert. Allerdings wird Ihre Änderung nicht sofort auf der Datenbank ausgeführt. Erst durch Aufrufen der Funktion Änderungen übernehmen werden Ihre Änderungen an das Datenbanksystem übergeben.

Vorbelegung


Nach Eingabe einer Basistabelle und eines Basisdatenfeldes, kann durch Auslösen der Funktion "Vorbelegen" eine Vorbelegung des Datentyps, der Länge, der Auswahlliste und des Hilfepunktes aus dem angegebenen Basisdatenfeld erfolgen. Die vorbelegten Informationen können anschließend beliebig verändert werden.

 

Eine ValuePairs-Auswahlliste wird nicht als Vorbelegung eingestellt.

 

 Erzeugung der Metatabelle in der Datenbank


Nach der Anlage neuer Metatabellenfelder wird es notwendig, dass die Metatabelle in der Datenbank neu aufgebaut wird. Auch die Bearbeitung einzelner Metatabellenfelder kann dazu führen, dass eine Neuaufbau der Metatabelle notwendig wird. Dazu gehören Änderungen an folgenden Eigenschaften des Feldes:

  • Datentyp

  • Länge

  • Vorzeichen

  • Nachkommastellen

Neben den definierten Metatabellenfeldern werden für jede Metatabelle noch folgende zusätzliche Felder angelegt, die automatisch gepflegt werden:

 

key_1

Key-1
Format: varchar(202)
Key-1

firma

Firmennummer
Format: smallint
Maximalwert: 99
Teilfeld von key_1
Der Firmenbezug des Metadatensatzes. Wenn im Kopf der Metatabelle das Kennzeichen Firmenabhängigkeit nicht gesetzt ist, wird hier "00" eingetragen.

hhupd

Letzte Aktualisierung
Format: char(14)
Letzte Aktualisierung des Datensatzes.

Soweit möglich, wir bei einer Änderung der Tabellenstruktur versucht, die vorhandenen Daten beizubehalten. Naturgemäß kann dies scheitern, falls sie z. B. ein alphanumerisches Feld in ein numerisches wandeln, aber keine konvertierbaren Daten in den Datensätzen in diesem Feld vorliegen.Sie sollten in einem sochen Fall mittels einer manuell zu erstellenden SQL-Anweisung die alten Dateninhalte vor der Konvertierung numerisch normieren.
Bei alphanumerischen Feldern ist eine Konvertierung möglich. Allerdings werden hier unter Umständen bei einer Verringerung der Feldlänge mögliche Texte abgeschnitten.

Der Neuaufbau der Metatabellen wird über das Programm SOGSql vorgenommen. Dadurch kann vorher kontrolliert werden, welche SQL-Kommandos ablaufen und an diesem Punkt bei Bedarf noch einmal manuell eingegriffen werden.

 

Erzeugen eines SelectionType Attributes für ein Datenfeld

Die folgenden SelectionType Attribute werden erzeugt:

 

Bei Awl sachbea.awl: sachbearbeiter

Bei Awl land.awl: land

Bei Awl urland.awl: urland

 

Bei Hilfepunkt global.auftr: f092

Bei Hilfepunkt global.lfnr: f095

Bei Hilfepunkt global.sendnr: f096

Bei Hilfepunkt global.projekt: f053

Bei Hilfepunkt f010.konto: f010,f010lief

Bei Hilfepunkt f030.art: f030

 

Weitere wichtige Informationen

Werden Metadaten mit bestimmten Standard-Tabellen 1:1 verlinkt, so ist es möglich die Metadatenfelder

dieser Metatabelle direkt in die Stamm- und Verarbeitungsmasken zu integrieren. Dies muss für jede Maske

aber gesondert programmiert werden und wurde bisher für folgende Masken/Daten realisiert:

 

p841 - Artikel (art) Hauptmaske (f030),
p842 - Kunden und Anschriften (kans) Hauptmaske (f010),
p843 - Lieferanten und Anschriften (lans) Hauptmaske (f010),
p102 - Auftragsbearbeitung (aufbea) Kopfmaske (f092),
p102 - Auftragsbearbeitung (aufbea) Positionsmaske (f090),
p202 - Bestellbearbeitung (bebea) Kopfmaske (f092),
p202 - Bestellbearbeitung (bebea) Positionsmaske (f090)

p382 - Versandsteuerung (versstrg)

p210 - Eingangsbelege (belek)

Partieverwaltung

 

Weitere Masken können auf Anforderung realisiert werden. Ansonsten ist die Verwaltung der Metadaten nur

über eigene Datencontainer in der Maske oder den Detailbereich (GRID) möglich.

 

Standardfunktionen

 

Folgende Standardfunktionen stehen zur Verfügung:

  • Kontoanwahl
    Das Datenfeld erlaubt die Eingabe einer Kontonummer mit Sondereingabefunktionalität des SOG ERP Kontoanwahl Controls.
    Es muss Numerisch mit einer Länge von 8 Stellen definiert sein.
    Also Parameter muss eine Satzart (1-Verkauf oder 2-Einkauf) festgelegt werden oder ein Datenfeld aus dem eigenen Datensatz in dem die Satzart definiert werden muss (Numerisch, einstellig)

  • Artikelnummer
    Das Datenfeld erlaubt die Anwahl eines Artikels und speichert die Artikelnummer.

  • Satzart und Artikel
    Das Datenfeld erlaubt die Anwahl eines Artikels und speichert die Artikelnummer und die Artikelsatzart. Zur Speicherung der Artikelsatzart muss ein zweites numerisches Datenfeld im gleichen Datensatz angegebenen werden, dass in einer Länge von 1 angelegt ist.

  • AnsprechpartnerName
    Erlaubt die Auswahl eines Ansprechpartners und speichert seinen Namen. Es muss Alphanumerisch und mit mindestes 72 Stellen Länge definiert werden. Als Parameter muss eine Satzart (1-Einkauf/2-Verkauf) eine Kontonummer eine Untersatzart (1-Stammadresse, 2-Einmalrechnungsanschrift, 3-Einmalversandanschrift) und eine Anschriftennummer (0 für das Hauptkonto) festgelegt werden. Für die Parameter können feste Werte oder Verweise auf Datenfelder im eigenen Datensatz festgelegt werden.

  • AnsprechpartnerNummer
    Wie AnsprechpartnerName, es wird jedoch die Nummer des Ansprechpartners gespeichert. Nicht sein Name. Das Datenfeld muss Numerisch 8 Stellig definiert werden.

  • Dokumentennummer
    Erlaubt die Anwahl eines Dokumentes (nur wenn dieses in der ERP Datenbank liegt). Das Datenfeld muss Numerisch 12 Stellig definiert werden.

  • Datei öffnen
    Das Datenfeld wird mit einem Auswahlknopf zur Auswahl einer Datei aus dem Dateisystem ausgestattet.

  • Datei speichern
    Wie Datei öffnen. Es wird jedoch der Speichern unter Dialog verwendet.

  • Verzeichnis auswählen.
    Wie Datei öffnen. Es wird jedoch der Dialog zur Auswahl eines Verzeichnisses verwendet.

  • Nur Großbuchstaben.
    Die Eingabe wird in Großbuchstaben gewandelt.

 

Siehe auch