Undo-Ereignis und Undo per Escape im Griff

Wenn Sie ein Abonnement des Magazins 'Access im Unternehmen' besitzen, können Sie sich anmelden und den kompletten Artikel lesen.
Anderenfalls können Sie das Abonnement hier im Shop erwerben.

Undo-Ereignis und Undo per Escape im Griff

Wenn Sie auf das Rückgängigmachen von Änderungen an den Daten eines Formulars reagieren wollen, haben Sie mehrere Möglichkeiten. Sie können die beiden Undo-Ereignisse des Formulars selbst und des aktiven Steuerelements nutzen (zumindest theoretisch). Oder Sie verwenden die Tastatur-Ereignisse, um die zum Rückgängigmachen von Änderungen bevorzugt verwendete Escape-Taste abzufangen. Wir stellen die beiden Techniken vor und erklären Vor- und Nachteile.

Warum Undo abfangen?

Als Erstes stellt sich die Frage, warum man Undo-Ereignisse überhaupt abfangen sollte. Ein gängiger Anwendungsfall ist, den Benutzer vor dem Verwerfen umfangreicher Änderungen an den Daten eines Datensatzes in einem Formular zu fragen, ob er die Änderungen wirklich verwerfen will.

Einen anderen Anwendungsfall schauen wir uns im Beitrag Datensatzänderungen auf einen Blick an (www.access-im-unternehmen.de/1085). Hier wollen wir zu einem Textfeld, dessen Inhalt der Benutzer geändert hat, ein weiteres Textfeld einblenden, das den ursprünglichen Inhalt des Textfeldes anzeigt.

Wenn der Benutzer beispielsweise die Escape-Taste verwendet, um die Änderungen rückgängig zu machen, sollen die Textfelder, welche die Version vor der Änderung anzeigen, natürlich auch wieder ausgeblendet werden.

Undo-Ereignisse

Access kennt zwei Undo-Ereignisse. Eines kann für das aktuelle Formular implementiert werden, das andere für beliebige Steuerelemente, welche an Felder der Datenherkunft gebunden werden können.

Wir wollen das Formular aus der Lösung zum oben genannten Beitrag als Beispielformular nutzen. Es verwendet eine Tabelle namens tblKunden als Datenherkunft und zeigt alle Felder dieser Tabelle im Detailbereich an (s. Bild 1).

Formular in der Entwurfsansicht

Bild 1: Formular in der Entwurfsansicht

Undo per Escape

Die Escape-Taste ist das erste Mittel, wenn es darum geht, die Änderungen in einem Formular rückgängig zu machen. Dabei gibt es verschiedene Stufen.

Wenn wir einen Datensatz in der Formularansicht des Formulars anzeigen und dann den Wert eines Feldes dieses Datensatzes ändern, zeigt der Datensatzmarkierer einen Stift als Symbol für den Zustand »In Bearbeitung« an (s. Bild 2). Wenn Sie nun Änderungen an weiteren Feldern vornehmen, ändert der Datensatzmarkierer sein Aussehen nicht mehr. Intern jedoch gibt es bezüglich der Betätigung der Escape-Taste zwei Stufen der Bearbeitung:

Datensatz in Bearbeitung

Bild 2: Datensatz in Bearbeitung

  • Wenn nur ein einziges Feld geändert wurde und der Benutzer betätigt die Escape-Schaltfläche, wird nicht nur die Änderung im aktuellen Feld rückgängig gemacht, sondern auch der komplette Datensatz wird wieder als »nicht bearbeitet« gekennzeichnet.
  • Wurden hingegen in mehr als einem Feld Änderungen durchgeführt, sorgt das erste Betätigen der Escape-Taste dafür, dass die Änderung im aktuellen Feld rückgängig gemacht wird, das zweite Betätigen macht dann alle Änderungen im aktuellen Datensatz wieder rückgängig.

Dies war die Leseprobe dieses Artikels.
Melden Sie sich an, um auf den vollständigen Artikel zuzugreifen.

Bitte geben Sie die Zeichenfolge in das nachfolgende Textfeld ein

Die mit einem * markierten Felder sind Pflichtfelder.

Neues aus unseren Magazinen
Listenfeld: Reihenfolge mehrerer Einträge...

Wir haben bereits in mehreren Beiträgen beschrieben, wie Sie die individuelle Reihenfolge von Elementen einer Tabelle über den Inhalt eines Feldes etwa namens »ReihenfolgeID« einstellen können –... [mehr]

Diagramme mit gefilterten Daten

In Ausgabe 2/2019 haben wir in zwei Artikeln die modernen Diagramme von Access vorgestellt. Im vorliegenen Beitrag zeigen wir Ihnen, wie Sie diese abhängig von den in einem Formular angezeigten... [mehr]

Benutzerverwaltung mit verschlüsselten...

Wenn Sie in einer Access-Anwendung Benutzer verwalten wollen, die sich per Benutzername und Kennwort an die Anwendung anmelden, sollten Sie sehr sensibel mit den in der Anwendung gespeicherten... [mehr]

HTML-Tabellen mit fester Kopfzeile

In den vorherigen Ausgaben von Access im Unternehmen und in der aktuellen Ausgabe arbeiten wir in einigen Beiträgen mit dem Webbrowser-Steuerelement und stellen Daten, die wir mit den Bordmitteln... [mehr]

Flexible HTML-Tabellen mit fester Kopfzeile

Im Beitrag »HTML-Tabellen mit fester Kopfzeile« haben wir gezeigt, wie Sie Daten aus einer bestimmten Abfrage in einem Webbrowser-Steuerelement so anzeigen, dass die Spaltenköpfe oben fixiert... [mehr]

Berechtigungen per HTML verwalten

Im Beitrag »Benutzerverwaltung mit verschlüsselten Kennwörtern« stellen wir eine Lösung vor, in der wir die Berechtigungen von Benutzergruppen an Datenbankobjekten definieren. Dort benötigen wir... [mehr]

Benutzer und Berechtigungen ermitteln

In den Beiträgen »Benutzerverwaltung mit verschlüsselten Kennwörtern« und »Berechtigungen per HTML verwalten« haben wir die Voraussetzungen für eine Benutzerverwaltung geschaffen. Im vorliegenden... [mehr]

Zugriffsrechte mit Datenmakros

Es gibt verschiedene Möglichkeiten, auf Basis des aktuell angemeldeten Benutzers sicherzustellen, dass dieser nur die für ihn vorgesehenen Aktionen mit Daten durchführen darf – beispielsweise durch... [mehr]

Kennwörter generieren

Für den einen oder anderen Zweck möchten Sie vielleicht Kennwörter generieren oder in einer Benutzeroberfläche die Möglichkeit zum Generieren von Kennwörtern anbieten. Wenn Sie etwa Benutzer zu... [mehr]

Neuer Datensatz von Frontend zu Backend

Für manche Themen gibt es keine kurze, prägnante Überschrift. In diesem Fall wollen wir zeigen, wie Sie einen neuen Datensatz anlegen, der in einer temporären Tabelle im Frontend gespeichert wird,... [mehr]