Category: Datenbankdesign

Access Systemobjekte

By , 16. April 2009

Haben Sie sich auch schon mal gefragt wo Access die ganzen Informationen über die vorhandenen Objekte, also Tabellen, Formulare, Abfragen, Beziehungen, Module etc., speichert? Access legt zu diesem Zweck bereits zum Zeitpunkt, wo eine neue Datenbankdatei erstellt wird, mehrere Systemtabellen an, die aber ausgeblendet sind. Darin werden die verschiedensten Access Internas gespeichert, wie die Systemobjekte, Abfragen, Makros oder Informationen über die referentielle Integrität. Diese Angaben sind nicht dokumentiert und top secret. Microsoft will sich da nicht in die Karten schauen lassen, da dies einiges an verstecktem Know How darstellt. In diesem Bericht kratzen wir auch nur wenig an der Oberfläche.

Um die Systemtabellen sichtbar zu machen, gehen Sie im Menü Extras auf Optionen und dann auf das Registerblatt Allgemein. In der Gruppe Anzeigen können Sie dann die Option „Systemobjekte“ auswählen und mit OK bestätigen.

Unter Access 2007 findet man diese Option wie folgt:
Klick auf Office-Button, dann unter:
Access-Optionen => Aktuelle Datenbank => Bereich Navigation => Navigationsoptionen
Dort die Anzeigeoption „Systemobjekte anzeigen“ markieren und 2x mit OK bestätigen.

Jetzt werden mehrere Systemtabellen angezeigt. Man erkennt diese daran dass alle mit „MSys“ beginnen. Interessant für den Access Entwickler ist z.B. die Tabelle MSysObjects, in der sämtliche Systemobjekte aufgelistet sind.

Eines vorab: Verändert man die Systemtabellen kann man in den meisten Fällen die Datenbank hinterher wegschmeißen, also nicht darin rumspielen und bei geöffneter Systemtabelle niemals auf Aufforderung speichern, sondern immer Abbrechen!

Die Tabelle MSysObjects besitzt folgende Felder:

Feldname Felddatentyp
Connect Memo
Database Memo
DateCreate Datum/Uhrzeit
DateUpdate Datum/Uhrzeit
Flags Zahl
ForeignName Text
Id Zahl
Lv OLE-Objekt
LvExtra OLE-Objekt
LvModule OLE-Objekt
LvProp OLE-Objekt
Name Text
Owner Binär
ParentID Zahl
RmtInfoLong OLE-Objekt
RmtInfoShort Binär
Type Zahl

Read more »

Mehrsprachigkeit die 2.

By , 13. September 2008

Im 2. Teil des Artikels befasse ich mich mit Wertelisten in Kombinationsfeldern und Listenfeldern. Außerdem gibt es bei diesem Thema noch ein paar Fallen, die es zu entschärfern gilt.

Wertelisten sind 1 bis n-Spaltig, wobei man nicht zuviel Spalten verwenden sollte. Der Aufbau einer 2-Spaltigen Werteliste mit Spaltenüberschriften ist wie folgt:
‚Überschrift1′;’Überschrift2′;’Wert1_Spalte1′;’Wert1_Spalte2′;’Wert2_Spalte2‘; usw.

Der Ablauf ist wie folgt. Man erstellt ein Kombinationsfeld bzw. Listenfeld und gibt im Dialog an selbst Werte einzutragen (Werteliste). Dann trägt man die codierten Textnummern in das Eingabefeld ein. In den Eigenschaften betrachtet sieht das z.B. wie folgt aus:


Read more »

Entwickeln mehrsprachiger Anwendungen

By , 12. September 2008

Dieser Beitrag zeigt, wie Sie mehrsprachige Anwendungen realisieren können. Das Thema ist sehr komplex und es gibt mehrere Ansätze zur Realisierung. Ein Königsweg gibt es nicht, ich zeige Ihnen aber ein Weg, den ich für Praktikabel halte.
Zu Beginn muss man sich die Frage stellen, wie weit treibt man die Mehrsprachigkeit.
Man unterscheidet dabei grundsätzlich zwischen der mehrsprachigen Benutzeroberfläche und den mehrsprachigen Inhalte der Tabellen. letzteres ist besonders aufwendig zu realisieren, und nur mit großem Aufwand zu bewältigen. In diesem Beitrag beschränke ich mich nur auf die Benutzeroberfläche.

Die Objekte, die ein Benutzer zu Gesicht bekommt, sind Formulare und Berichte. Dabei muss noch zwischen Sprachanpassung auf Steuerelement-Ebene und auf Code-Ebene unterschieden werden.

Bei Steuerelementen:
Befehlschaltfläche => Eigenschaften Beschriftung sowie SteuerelementTip-Text
Bezeichnungsfeld => Eigenschaften Beschriftung sowie SteuerelementTip-Text
Umschaltfläche => Eigenschaften Beschriftung sowie SteuerelementTip-Text
Registerseite => Eigenschaften Beschriftung sowie SteuerelementTip-Text
Kombinationsfeld => Inhalte von Wertelisten
Listenfeld => Inhalte von Wertelisten

Bei VBA-Code:
Msgbox => Inhalte vom Text und Titel
Fehlermeldungen => individuelle Fehlertexte in Fehlerprotokollierung
Read more »

Der erste Schritt

By , 17. September 2006

Unter Datenbankdesign ist die Abbildung der realen Objekte nach Tabellen sowie die Abbildung der Abhängigkeiten dieser realen Objekte untereinander als Beziehungen.

Der erste Schritt beim Erstellen einer neuen Access-Anwendung ist, dass man sich über die reale Welt die man abbilden möchte im Klaren wird, dass man die funktionalen Zusammenhänge der einzelnen Objekte erfasst, und dass man über die Funktionen die mit oder durch die einzelnen Objekte ausgeführt werden sollen nachdenkt.

Read more »

OfficeFolders theme by Themocracy