Formulare [basics]: m:n-Beziehung mit Listenfeldern

Im Artikel haben wir uns bereits angesehen, wie man die Daten einer m:n-Beziehung mit Haupt- und Unterformular verwalten kann. Wir wollen nun eine Alternative dazu betrachten, bei der wir die Daten der beiden per m:n-Beziehung verknüpften Tabellen mithilfe zweier Listenfelder anzeigen und verwalten wollen. In diesem Fall schauen wir uns die Daten der Tabellen tblBuecher und tblKategorien an, die über die Tabelle tblBuecherKategorien miteinander verknüpft sind. Wir wollen dazu in einem Formular jeweils einen Buchdatensatz anzeigen in zwei Listenfeldern jeweils die dem Buch zugeordneten Kategorien und die nicht zugeordneten Kategorien. Als Sahnehäubchen fügen wir noch einige VBA-Funktionen hinzu, mit denen wir einem Buch neue Kategorien zuweisen oder diese entfernen können.

Weiterlesen

Tab-Ansicht oder überlappende Fenster

Access bietet langem verschiedene Darstellungsarten für Formulare und für Datenbankobjekte allgemein an. Standardmäßig erscheinen diese Objekte nach dem Öffnen im sogenannten Registerkartenformat. Das mag für den einen oder anderen Einsatz praktisch sein, für andere jedoch nicht. Zum Glück kann man die Anzeige in den Optionen von Access einstellen, sodass sich für jeden Anwendungsfall die passende Konfiguration festlegen lässt. In diesem Artikel zeigen wir, welche verschiedenen Ansichten es gibt und wie wir diese mit den Access-Optionen einstellen können.

Weiterlesen

Formulare [basics]: m:n-Beziehung mit Unterformular

Tabellen in einer m:n-Beziehung sind Tabellen, die über eine Verknüpfungstabelle miteinander verknüpft sind, sodass jeder Datensatz der ersten Tabelle mit jedem Datensatz der zweiten Tabelle verknüpft werden kann. Die Verknüpfungstabelle realisiert das mit je einem Fremdschlüsselfeld zum Verknüpfen dieser beiden Tabellen. Wollen wir dies in Formularen darstellen, sodass der Benutzer komfortabel mit den Daten in dieser Beziehungsart arbeiten kann, können wir die Daten in einem Hauptformular mit einem Unterformular darstellen. Auch unter den m:n-Beziehungen gibt es verschiedene Variationen. Wir bilden in diesem Artikel die Variante ab, bei der die m:n-Verknüpfungstabelle neben den eigentlichen Verknüpfungsdaten noch weitere Informationen aufnimmt, die sich auf die jeweilige Kombination der Datensätze der beiden Tabellen beziehen.

Weiterlesen

Navigationsbereich und -optionen optimal nutzen

Der Navigationsbereich ist neben dem Ribbon die Schaltzentrale für die Entwicklung und manchmal auch für die Verwendung einer Access-Datenbank. Während der Entwicklung öffnen wir darüber die Elemente unserer Anwendung in den verschiedenen Ansichten. Wenn wir die Anwendung an einen Benutzer weitergeben, können wir entscheiden, ob wir dem Benutzer den Zugriff über den Navigationsbereich erlauben wollen oder ob wir die Befehle zum Aufrufen der verschiedenen Funktionen der Anwendungen ins Ribbon verlegen wollen. Im ersteren Fall können wir den Navigationsbereich durchaus noch so anpassen, dass der Benutzer nicht durch Hunderte von Objekten navigieren muss, sondern diese übersichtlich präsentiert bekommt. Losgelöst davon zeigen wir in diesem Artikel aber auch die übrigen Funktionen des Navigationsbereichs und schauen uns auch die dafür verfügbaren Optionen an.

Weiterlesen

Formulare [basics]: Bearbeitungsmodus einstellen

Wenn wir ein Access-Formular einfach per Doppelklick oder einen Befehl wie DoCmd.OpenForm öffnen, können wir damit in der Regel alle möglichen Datenoperationen durchführen: Neue Datensätze anlegen und vorhandene Datensätze bearbeiten und löschen. Es kann jedoch auch einmal vorkommen, dass der Benutzer die Daten nur betrachten können soll. Oder er soll ein Formular nur zum Anlegen, nur zum Bearbeiten oder sogar nur zum Löschen nutzen können. Vielleicht benötigen wir auch eine Kombination dieser Aktionen. Für all diese Einsatzzwecke können wir das Formular mit entsprechenden Einstellungen versehen. Welche Eigenschaften dies sind und wie wir sie einstellen, zeigen wir in diesem Artikel.

Weiterlesen

Formulare [basics]: Probleme mit Form und Subform

Nutzen wir ein Haupt- und ein Unterformular zur Darstellung von Daten aus 1:n- oder m:n-Beziehungen, kann es zu unerwarteten Problem kommen: Plötzlich verschwinden Datensätze aus dem Unterformular oder es tauchen später Datensätze in der Tabelle mit dem an der Beziehung beteiligten Fremdschlüsselfeld auf, die keinen Wert in diesem Feld haben. In beiden Fällen kann es sein, dass eine unbewusste Fehlbedienung des Gespanns aus Haupt- und Unterformular verantwortlich ist. In diesem Artikel schauen wir uns zunächst einmal an, wie wir diese Probleme reproduzieren können und schauen uns dann einen praktischen Lösungsansätze an.

Weiterlesen

Formulare [basics]: 1:n-Beziehungen mit Kombifeld

Die einfachste Abbildung von 1:n-Beziehungen in Formularen ist die, bei der wir die Daten der Mastertabelle als Datensatzquelle verwenden und die Daten der verknüpften Detailtabelle nur über ein Kombinationsfeld verfügbar machen, das dem Fremdschlüsselfeld der Beziehung entspricht. Damit können wir zunächst einmal nicht die Daten aus der Detailtabelle bearbeiten, was aber auch in den meisten Fällen gar nicht notwendig ist. Und sollte dies doch einmal erforderlich sein, gibt es genügend Möglichkeiten, den verknüpften Datensatz dennoch zu bearbeiten. In diesem Artikel schauen wir uns jedoch erst einmal an, wie einfach es ist, eine 1:n-Beziehung in einem Formular abzubilden, wenn man die richtige Vorarbeit geleistet hat. Und wir zeigen auch, welche Schritte notwendig sind, wenn das nicht geschehen ist.

Weiterlesen

Formulare [basics]: Benannte oder integrierte Abfrage

Wenn wir ein Formular mit Daten füllen wollen, gibt es drei Möglichkeiten: Wir weisen direkt eine komplette Tabelle als Datensatzquelle hinzu, legen eine bereits zuvor angelegte Abfrage aus dem Navigationsbereich fest oder wir nutzen den in den Formularentwurf integrierten Abfrageentwurf, um die benötigte Abfrage zu definieren. In diesem Artikel schauen wir uns einmal an, wie sich die letztgenannten beiden Möglichkeiten unterscheiden und welche Variante wir bevorzugen sollten – und welche fortgeschritteneren Optionen es noch gibt.

Weiterlesen

Formulare [basics]: Aktivierreihenfolge nutzen

In Access-Formularen gibt es für Steuerelemente eine bestimmte Aktivierreihenfolge. Wenn wir Steuerelemente hinzufügen, wird die Aktivierreihenfolge so eingestellt, dass die Steuerelemente in der Reihenfolge durchlaufen werden, in der man sie hinzugefügt hat. Manchmal ist diese Reihenfolge aber nicht mehr optimal, beispielsweise weil wir mittendrin ein neues Steuerelemente hinzugefügt oder die Position von Steuerelementen nachträglich verändert haben. In diesem Artikel stellen wir die Eigenschaften vor, die mit der Aktivierreihenfolge zusammenhängen und zeigen, welche Wege es zum Optimieren der Aktivierreihenfolge für Steuerelemente in Formularen gibt.

Weiterlesen