You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

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 Export und dem aktuellen Datenbereich eine Information (Variable, Feldinhalt) nicht zur Verfügung steht. 

DB-Info-Formel in den Export einfügen

Wechseln Sie zunächst in den Bereich aus dem der Export erfolgen soll:

  1. Über das Menüband - Schaltfläche: SCHNITTSTELLEN wählen Sie den Export in diesem Bereich
  2. Legen Sie einen neuen Export an oder bearbeiten Sie einen bestehenden Export
  3. Wählen Sie die Schaltfläche: GESTALTEN


Zu den Feldern die für den Export genutzt werden können gehört auch ein Formelfeld, welches Sie in den Export einfügen können. Über das Feld "Vorgabewert" definieren Sie die Formel.

Speichern & schließen Sie im Anschluss alle Angaben.

Tipp:

Ein praktisches Beispiel für die Nutzung einer Formel innerhalb von Exporten finden Sie auf nachfolgender Seite:

Aufbau einer DBInfo-Formel für den Export

Diese Erklärung beschreibt die DBInfo-Formel für einen Export:

$DBInfo(Name der Datentabelle,Schlüsselwert[e],Zielfeldname)

Allgemeiner Aufbau: Eine DBInfo-Formel setzt sich allgemein aus 3 Teilen zusammen. Diese sind durch ein Komma "," getrennt. 


  1. Name der Datentabelle:
    • Dies ist der Name der Datenbank, auf welche Sie zugreifen möchten. In der erstellten Feldliste ist diese daran zu erkennen, dass die Bezeichnung "Dataset:" davor steht. 
    • 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. Am Ende der Beschreibung jeder Datenbank in der Feldliste sind die Indizes (Schlüsselwert[e]) aufgelistet. Die Felder, die als Schlüssel benötigt werden, stehen unter dem Indexnamen. Der erste Index ist normalerweise der Index der verwendet werden muss um auf die Datentabelle zu zugreifen. Falls der erste Index "ID" ist, dann wird in der Regel der zweite Index genutzt. In den meisten Fällen besteht ein Index aus nur einem Feld. Falls mehrere Felder vorhanden sind, werden die verschiedenen Schlüsselwerte mit einem Komma getrennt. 
    • Beispiel:
      • In der Feldliste steht folgendes: 
        • 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. Den genauen Namen entnehmen Sie den Feldern, die unter der Datentabelle in der Feldliste aufgeführt sind. 
    • 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.


Tipp:

  • 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

Hier wurden DBInfo-Formeln innerhalb des Exports erklärt.
Es gibt aber auch DBInfo-Formeln beim Druckdesigner 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