Verwendung und Schreibweise von Feldnamen

Die Bezeichnung der Felder bildet die Grundlage für die Druckausgabe der Feldinhalte. Dabei können unterschiedliche Schreibweisen verwendet werden.  

MuseumPlus erlaubt im Listengenerator für die Druckausgabe eines bestimmten Feldes neben der Angabe des im jeweiligen Formular verwendeten Feldnamen auch noch zwei alternative Schreibweisen. Mit deren Hilfe können Feldinhalte innerhalb einer Listendefinition zum Beispiel durch VisualBasic-Befehle verarbeitet werden. Diese alternativen Schreibweise möchte ich hier kurz vorstellen und mit einigen Beispielen untermalen.

Alternative Schreibweise 1: <Feldname>

Bei dieser Schreibweise wird der im jeweiligen Modul sichtbare Feldinhalt ausgegeben. Wenn ich also zum Beispiel in einer im Modul Sammlung verwendbare Berichtsdefinition das Feld Titel (Original) für die Ausgabe verwenden will, kann ich das tun, in dem ich im Listengenerator in der Tabelle der Felddefinitionen in der Spalte Feld oder Ausdruck als Eintrag verwende:

=<Titel (Original)>

Wichtig ist dabei die Angabe des Gleichheitszeichens am Beginn der Eingabe. Damit wird dem Listengenerator mitgeteilt, dass ein "Ausdruck" und kein "normaler" Feldname folgt.

Alternative Schreibweise 2: [generischer Feldname]

Bei dieser Schreibweise wird der sogenannte generische Feldname eines Datenfelds verwendet. Es handelt sich dabei um den Feldnamen, den das Feld innerhalb der eigentlichen Datenbank - also der Tabelle, welcher das Feld zugeordnet ist - trägt. Dieser Feldname kann in MuseumPlus durch eine einfache Tastenkombination ermittelt werden. Stellt man die Einfügemarke (den Cursor) in das Datenfeld, dessen generischen Feldnamen man ermitteln möchte, und drückt anschließend die Tastenkombination STRG-<I>, wird ein Dialogfenster mit Feldinformationen angezeigt, darunter auch der generische Feldname.

Dieser Feldname kann dabei - wie bereits bei der Schreibweise 1 beschrieben - in einer Berichtsdefinition in der Spalte Feld oder Ausdruck als Eintrag verwendet werden:

=[ObjTitelOriginalS] 

Die folgende Listendefinition gibt also drei Mal exakt das gleiche Feld aus - in diesem Beispiel das Feld Titel (Original) aus dem Modul Sammlung:

Ich würde im übrigen die Verwendung der Schreibweise 2 (generische Feldnamen) empfehlen. Wenn nämlich irgendwann nach der Erstellung der Berichtsdefinition einer der verwendeten Feldnamen verändert wird, führt das dazu, dass der Bericht unter Umständen nicht mehr funktioniert, da die Feldnamen bei Verwendung der Schreibweise <Feldname> von MuseumPlus nicht automatisch aktualisiert werden. Der generische Feldname hingegen wird durch die Umbenennung nicht beeinflusst, die Berichtsdefinition funktioniert also ohne Einschränkung weiter.

Mehr über generische Feldnamen in MuseumPlus

Übrigens: Der generische Feldname verrät auch noch mehr über das Feld. Jede generische Feldbezeichnung in MuseumPlus beginnt mit einem drei Buchstaben langen Kürzel für die Tabelle, in welcher das Feld enthalten ist. Im gezeigten Beispiel steht Obj für die Datentabelle ObjDaten. Diese Information kann zum Beispiel beim direkten Zugriff auf die Datenbank mittels der Funktion DLOOKUP hilfreich sein. Eine ausführlichere Beschreibung der Struktur der MuseumPlus-Datenbank und ihrer Tabellen befindet sich in den hier aufgelisteten Artikeln.

Außerdem verrät der jeweils letzte (bzw. in einem Fall die letzten beiden) Buchstabe(n) des generischen Feldnamens den Feldtyp. Folgende Feldtypen können dabei vorkommen:

  • S: Textfeld mit maximal 255 Zeichen Länge
  • M: Textfeld mit großer Feldlänge (abhängig vom Datenbankserver, meist 32 KByte)
  • F: Feld für Fließkommazahlen (z.B. 3.142 oder 14.95)
  • I: Feld für Ganzzahlen (z.B. 1, 42, 1499 oder -10000)
  • D: Feld für Datumsangaben (nur gültige und vollständige Datumsangaben)
  • Id: Feld für Schlüssel (Ganzzahlen, die Datensatznummern darstellen)

Die Information über den Feldtyp kann interessant sein, wenn man Inhalte eines Feldes weiterverarbeiten oder manipulieren möchte. So können beispielsweise Datumsfelder mit Hilfe der FORMAT-Funktion in andere Datumsformate umgewandelt werden oder mit Zahlenfeldern arithmetische Operationen durchgeführt werden.

Kombination von Feldern in der Ausgabe

Eine schöne Möglichkeit des Listengenerators in MuseumPlus besteht darin, Felder für die Ausgabe zusammenzufügen. Wenn ich beispielsweise die Felder Titel (Original) und Datierung für die Ausgabe miteinander kombinieren möchte, erfolgt dies durch folgenden Eintrag:

=<Titel (Original)> & ", " & <DatierungS>

Alternativ kann natürlich auch die zweite Schreibweise verwendet werden:

=[ObjTitelOriginalS] & ", " & [ObjDatierungS] 

Mehr Informationen über die Kombination von Feldern in der Druckausgabe finden sich in folgenden Artikeln: