Inhalt

Die DBInfo-Formel ist eine Formel mit deren Hilfe direkt auf Datenbankfelder von microtech büro+ zugegriffen werden kann.
In der Regel findet diese Funktion Anwendung, wenn in dem aktuellen Druck- und Datenbereich eine Information (Variable, Feldinhalt) nicht zur Verfügung steht. 

Diese Erklärung beschreibt die DBInfo-Formel für den Druckdesigner:

External$('DBInfo("Name der Datentabelle"|Schlüsselwert[e]|"Zielfeldname")')

Allgemeiner Aufbau: Eine DBInfo-Formel setzt sich allgemein aus 3 Teilen zusammen. Diese sind durch eine Pipe "|" getrennt. 


  1. Name der Datentabelle:

    • Dies ist der Name der Datenbank, auf welche Sie zugreifen möchten.
    • Beispiel:
      • "Artikel" bei der Artikel-Datenbank
      • oder "VorgangArchiv" bei den Archiv-Vorgängen

  2. Schlüsselwert[e]:

    • Mit dem Schlüsselwert geben Sie dem Programm an, auf welchen Datensatz Sie innerhalb der Datenbank zugreifen möchten. Dies ist eine Variable aus der aktuellen Variablen-Liste, in dem Layout in welchem Sie sich befinden. Welche Variablen übergeben werden müssen, hängt von der Datentabelle ab, auf die Sie zugreifen möchten.
    • Beispiel:
      • Eine DBInfo wird nach folgendem Schema ausgewertet: 
        • DataSet (Name der Datentabelle):
          • Artikel - Artikel
        • 1. Index (Zielfeldname): 
          • ID - ID
          • IndexField: ID - ID
        • 2. Index (Zielfeldname): 
          • Nr - Nummer
          • IndexField: ArtNr - Artikelnummer
        • Von der Artikel-Datenbank ist der erste Index "ID", also müssen wir den zweiten Index benutzen. Dessen Name ist "Nr" und der Schlüsselwert ist die "Artikelnummer". 
        • Wenn wir also mit einer DBInfo-Formel auf die Artikel-Datentabelle zugreifen möchten, dann müssen wir die aktuelle Variable für die Artikelnummer als Schlüsselwert übergeben. 

  3. Zielfeldname:

    • Das Feld des Datensatzes, welches man als Ergebnis der DBInfo-Formel bekommen möchte.
    • Beispiel 1:
      • DataSet (Name der Datentabelle): 
        • Artikel - Artikel 
      • Field (Zielfeldname):
        • ArtNr - Artikelnummer (String)
      • oder Field (Zielfeldname):
        • SuchBeg - Suchbegriff (String)
          • Wenn bei einer DBInfo-Formel, die in der Artikel-Datentabelle als Zielfeldname "SuchBeg" nimmt, bekommt man den "Suchbegriff" als Rückgabewert.
      • oder Field (Zielfeldname):
        • Memo - Memo-Information (Info)
          • Wenn bei einer DBInfo-Formel, die in der Artikel-Datentabelle als Zielfeldname "Memo" nimmt, bekommt man das "Memofeld" als Rückgabewert.
    • Beispiel 2: 
      • Es soll eine Mahnung für einen Offenen Posten mit der Vertreternummer aus dem Vorgang ausgegeben werden.
        Bevor Sie die DBInfo-Formel erstellen, müssen Sie prüfen wo der entsprechende Vorgang enthalten ist.
        Steht der Vorgang noch in der Vorgangsübersicht oder wurde er bereits ins Vorgangsarchiv verschoben.
        Dies ist wichtig, da Sie Ihre Formel entsprechend erstellen müssen ("Vorgang" oder "VorgangArchiv").
      • Steht der Vorgang im Archiv, muss auf die Archiv-Vorgänge zugegriffen werden. 
        • Die DBInfo-Formel ist folgendermaßen zu gestalten:
          • DataSet (Name der Datentabelle):
            • VorgangArchiv - Archiv Vorgänge
          • 2. Index (Schlüsselwert):
            • BelegNr - Belegnummer
            • IndexField: BelegNr - Belegnummer
          • Field (Zielfeldname):
            • VtrNr - Vertreternummer (String)
      • Die Datentabelle heißt also "VorgangArchiv" und der Schlüsselwert ist die Belegnummer und der Zielfeldname ist "VtrNr". 
      • Innerhalb der Mahnung gibt es die Variable "Adr.OPo.BelegNr" in der die Belegnummer steht.
        • Die fertige Formel lautet also:
          • External$('DBInfo("VorgangArchiv"|Adr.OPo.BelegNr |"VtrNr")')


Tipp:

Hinweise zu den Bezeichnungen der Datenbankfelder

  • Die Bezeichnung der Datenbanktabellen können Sie unter anderem im Installationsverzeichnis am Datenserver einsehen.
    Im Mandanten-Ordner (z.B. unter "C:\Programme (x86)\microtech\Daten\NT\Mand.1") finden Sie die *.MBD-Dateien.
    Die Namen sind die zu verwendenden Bezeichnungen der Datenbanktabellen (z.B. "Adressen", "AbwArtikelDaten" etc.).
  • Um die korrekten Schreibweisen der Variablen herauszufinden, können Sie innerhalb der Software in den Bereich wechseln, auf den zugegriffen werden soll (z.B. VERKAUF - STAMMDATEN - Register "Adressen").
    Über das Gestalten der Tabellenansicht finden Sie die jeweilige Variable innerhalb des Feldeditors (z.B. "ArtPrGrp" für die Artikelpreisgruppe im Bereich der Adress-Stammdaten).
  • Welche Indices ("Schlüsselwert[e]") es für eine Datenbanktabelle gibt, kann über den DB-Manager in Erfahrung gebracht werden.
    Suchen Sie hierzu im Datenbankmanager nach der jeweiligen Datenbanktabelle.
    Rufen Sie diese auf und überprüfen Sie Im Register: „Sortierungen“ die Systemsortierungen.
    Genau dies sind die verfügbaren Indices. In dieser Übersicht ist auch aufgelistet, aus welchen Feldern diese Indices bestehen.
Bildhinweis zu "verfügbare Indices" einblenden

Öffnen Sie den Datenbank-Manager über: Registerkarte: DATEI - EINSTELLUNGEN - DB-MANAGER. Suchen Sie nach der jeweiligen Datenbanktabelle und öffnen diese über die Schaltfläche: ÄNDERN. Beachten Sie auch die Sicherheitsinformationen zum Thema "Datensicherung", bevor Sie Änderungen vornehmen.

Weitere Informationen zum DB Manager finden Sie auch in unserer Online-Hilfe.


Info

Wichtige Infos zur Nutzung der DBInfo-Formel in weiteren Bereichen der Software

Auf dieser Seite wurden DBInfo-Formeln innerhalb des Druckdesigners erklärt.
Es gibt aber auch DBInfo-Formeln beim Export und bei Filtern (Informationen finden Sie im entsprechenden FAQ).

Der Aufbau ist identisch, nur die Trennzeichen zwischen den einzelnen Positionen des Befehls sind abweichend:

  • Druckdesigner:
    • External$('DBInfo("Name der Datentabelle"|Schlüsselwert[e]|"Zielfeldname")') 
  • Export:
    • $DBInfo(Name der Datentabelle,Schlüsselwert[e],Zielfeldname) 
  • Filter:
    • DBInfo('Name der Datentabelle',Schlüsselwert[e],'Zielfeldname')
  • No labels