Ticketsystem, Teil V

In den vorherigen Teilen dieser Beitragsreihe haben wir den Aufbau einiger Funktionen eines Ticketsystems beschrieben. Es fehlt noch der letzte Feinschliff: Wir wollen die erneuten Antworten von Kunden auf unsere als Antwort versendeten E-Mails automatisch in die Ticketverwaltung aufnehmen. Bevor wir das im nächsten Teil erledigen können, haben wir noch einige Feinheiten ergänzt und werfen außerdem noch einmal einen zusammenfassenden Blick über die bisher programmierten Funktionen und die Inbetriebnahme der Ticketverwaltung inklusive der Einrichtung in Outlook. Außerdem fügen wir noch einen Dialog zur Verwaltung der Optionen der Lösung hinzu.

Weiterlesen

Von Version zu Version

Neulich wollte ich meine Shopsoftware aktualisieren. Allerdings ging dies nicht mit den vom Hersteller dafür bereitgestellten Plug-In – zumindest nicht mit allen Daten, die ich von der alten in die neue Version überführen wollte. Also musste ich manuell ermitteln, welche Daten der alten Version benötigt werden, damit die neue Version läuft. Damit erhielt ich recht schnell eine lauffähige Version des neuen Systems. Allerdings kam mir dann etwas dazwischen, wodurch zum alten, noch aktiven System wieder neue Kunden und Bestellungen hinzukamen – die Arbeit war also umsonst. Um das Übertragen der Daten beim nächsten Mal einfacher zu gestalten, wollte ich nun das alte und das neue Datenmodell nun automatisch analysieren und die SQL-Befehle erstellen lassen, um diese danach ebenfalls automatisch ausführen zu können. Wie das gelingt, zeigt der vorliegende Beitrag.

Weiterlesen

Kopier- und Löschreihenfolge in MySQL

Im Beitrag „Kopier- und Löschreihenfolge für Tabellen“ (www.access-im-unternehmen.de/926) haben wir ermittelt, wie wir die richtige Reihenfolge für das Löschen von Tabellen und das Kopieren von Tabelleninhalten von einer Datenbank in die nächste ermitteln. Wenn Sie die Reihenfolge nicht beachten, kann es nämlich sein, dass Datensätze wegen Fremdschlüsselverletzungen nicht gelöscht und auch nicht kopiert werden können. Im vorliegenden Beitrag zeigen wir, wie Sie die vorgestellte Lösung für das Löschen und Kopieren von Tabellen in MySQL-Datenbanken nutzen können.

Weiterlesen

Kombinationsfeld mit Extraeinträgen

Normalerweise enthalten Kombinationsfelder nur die Einträge einer Tabelle oder Abfrage als Datensatzherkunft. Manchmal wollen Sie dem Benutzer aber mit dem Kombinationsfeld noch mehr Funktionen bieten. Zum Beispiel wollen Sie vielleicht den Text anzeigen, damit der Benutzer sieht, dass hier eine Auswahl vorzunehmen ist oder Sie möchten dem Benutzer mit einem Eintrag wie die Möglichkeit geben, direkt über die Auswahl dieses Eintrags ein Detailformular zur Eingabe eines neuen Datensatzes zu öffnen. Dieser Beitrag zeigt, wie das funktioniert und welche Herausforderungen es gibt, wenn das Kombinationsfeld sonst noch keine Daten anzeigt.

Weiterlesen

Rückgängig in Memofeldern

Seit Access 2007 bietet Access für Memofelder die Möglichkeit, die verschiedenen Versionen zu speichern. Wie aber können wir solche Änderungen wieder rückgängig machen, ohne dass der Benutzer die eingebauten Funktionen dafür nutzen muss oder gar ein extra Formular, dass die bisher gespeicherten Versionen anzeigt Sondern einfach etwa mit zwei Schaltflächen, mit denen er zwischen den vorhandenen History-Einträgen hin- und herblättern kann Wie das gelingt, zeigen wir in diesem Beitrag.

Weiterlesen

Die UNION Abfrage

Auswahlabfragen liefern normalerweise immer die Daten aus einer einzigen Tabelle oder aus mehreren miteinander verknüpften Tabellen. In letzterem Fall soll die Abfrage immer die Kombination der Daten von verknüpften Tabellen liefern. Gelegentlich sollen die Daten von zwei oder mehr Tabellen in einer Abfrage aber auf andere Art zusammengestellt werden – nämlich so, dass die Datensätze dieser Tabellen jeweils als einzelne Datensätze erscheinen. So lassen sich dann beispielsweise Daten wie die Namen und Geburtsdaten von Personal und Kunden in einer Abfrage zusammenstellen und können als Geburtstagsliste dienen. Wie Sie UNION-Abfragen formulieren und was dabei zu beachten ist, zeigt dieser Beitrag.

Weiterlesen

Datenmakros verwalten

Datenmakros dienen dazu, Aktionen automatisch beim Ändern der Daten einer Tabelle auszulösen – nämlich beim Anlegen, Bearbeiten oder Löschen eines Datensatzes. Diese legt man in der Regel über die Benutzeroberfläche an. Leider kann man damit immer nur sehen, welche Datenmakros für die aktuelle im Entwurf oder in der Datenblattansicht angezeigte Tabelle zur Verfügung stehen. Dieser Beitrag zeigt, wie Sie sich einen besseren Überblick über die vorhandenen Datenmakros verschaffen, diese anzeigen und bearbeiten und sogar neue Datenmakros anlegen können – und das auch noch parametrisiert für gleichartige Datenmakros für mehrere Tabellen gleichzeitig.

Weiterlesen

AutoComplete schnell zu Textfeld hinzufügen

Im Beitrag „AutoComplete in Textfeldern“ in der vorherigen Ausgabe von Access im Unternehmen haben wir eine Lösung vorgestellt, mit der Sie Textfelder um eine AutoComplete-Funktion erweitern können. Dort haben wir uns die grundlegenden Techniken angesehen, im vorliegenden Beitrag kümmern wir uns darum, dieses Tool in eine Form zu bringen, die wir einfach und schnell einem Textfeld hinzufügen können. Und das, ohne den Code für jedes Textfeld erneut in die Klassenmodule der Formulare kopieren zu müssen.

Weiterlesen

Datenblattfunktionen einschränken

Die Datenblattansicht von Access bietet eine ganze Reihe von Funktionen wie das Sortieren nach den verschiedenen Feldern, das Filtern nach beliebigen Kriterien, das Anordnen von Spalten oder auch das Ein- und Ausblenden einzelner Felder. Manchmal möchten Sie aber vielleicht gar nicht, dass der Benutzer etwas am Design des Datenblatts ändert. Das ist etwa der Fall bei der Lösung aus dem Beitrag Datenblatt: Reihenfolge mehrerer Einträge ändern, wo die Datensätze immer nach einem Feld zur Festlegung der Reihenfolge angezeigt werden sollen. Der vorliegende Beitrag zeigt, wie Sie Möglichkeiten für den Benutzer einschränken.

Weiterlesen

Autocomplete in Textfeldern

Autocomplete kennen Sie vermutlich von Kombinationsfeldern. Hier können Sie einen oder mehrere Buchstaben eingeben und das Kombinationsfeld zeigt gleich den nächsten Eintrag der Datensatzherkunft an, der mit diesen Anfangsbuchstaben beginnt. Dieses Verhalten wollen wir auch gern für Textfelder programmieren. Dazu starten wir mit einer etwas einfacheren Variante, die Sie vielleicht vom VBA-Editor kennen: Wenn Sie dort beginnen, einen Objekt- oder Variablennamen zu schreiben, können Sie mit der Tastenkombination Strg + Leertaste dafür sorgen, dass IntelliSense aktiviert wird und passende Einträge anzeigt. Wir wollen dafür sorgen, dass an dieser Stelle einfach der erste passende Eintrag erscheint – wenn wir eine Liste der verfügbaren Einträge wollten, könnten wir ja direkt ein Kombinationsfeld verwenden.

Weiterlesen