Optionen und andere Daten updatesicher speichern

Wenn mehrere Benutzer über Frontend-Anwendungen an verschiedenen Arbeitsplätzen auf die Daten einer Backend-Datenbank zugreifen, ist das kein Problem. In vielen Anwendungen ist es dabei sinnvoll, die Möglichkeit zum Speichern von Optionen je Benutzer vorzusehen. Oft legt man dabei eine Tabelle namens “tblOptionen” im Frontend an. Das ist aber nur sinnvoll, wenn auch immer der gleiche Benutzer am gleichen Frontend arbeitet – anderenfalls würde er ja die Optionen eines anderen Benutzers vorgesetzt bekommen. Oder Sie führen ein Update des Frontends durch – auch dann wären die Optionen des Benutzers nicht mehr vorhanden. Welche Alternativen dazu gibt es Sie könnten zum Beispiel die Optionen in einer Tabelle im Backend speichern und diese beim Anmelden des Benutzers auslesen und in eine lokale Optionentabelle übertragen. Oder Sie fügen dem Frontend ein lokales Backend hinzu, das nur die Daten enthält, die beim Update des Frontends nicht überschrieben werden sollen. Wie das gelingt, zeigen wir im vorliegenden Artikel.

Weiterlesen

Datensätze nach Zahl ausgeben

Sie kennen das sicher vom Drucken-Dialog, wo Sie einzelne Zahlen oder Zahlenbereiche angeben können, um die betroffenen Seiten zu drucken – also beispielsweise 1-2, 3-5 und so weiter. Eine solche Möglichkeit wollen wir auch für das Filtern von Datensätzen in der Datenblattansicht schaffen. Der Benutzer soll also eine oder mehrere Seitenzahlen oder Bereiche von Seiten in ein Textfeld eingeben können, nach denen dann gefiltert wird.

Weiterlesen

HTML-Code optimieren per VBA

Im Beitrag “Von Access nach Wordpress” haben wir Routinen entwickelt, mit denen wir den Inhalt eines Textfeldes in SQL-Anweisungen exportiert und damit eine Wordpress-Webseite gefüllt haben. Der Weg dorthin war nicht so einfach, wie es in diesem Beitrag beschrieben wurde. In der Tag lag der HTML-Code mit den Artikeln so vor, dass er in einem anderen Content Management System, hier Typo3, optimal angezeigt wurde. Wenn wir diesen HTML-Code in das Wordpress-System importiert haben, sah das optisch allerdings nicht so ansprechend aus. Wir mussten also noch einige Änderungen am HTML-Code vornehmen. Für Handarbeit war das bei rund 1.000 Artikel zu viel, also war die Programmierung entsprechender Konvertierungsroutinen angezeigt. Wie das grundlegend funktioniert, zeigen wir im vorliegenden Beitrag.

Weiterlesen

Ticketsystem, Teil VI

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. Wie dies gelingt und wie Sie etwa nach Tickets filtern können oder per Ticketsystem erstellte E-Mails in Outlook einzusehen, zeigen wir in dieser letzten Folge der Beitragsreihe.

Weiterlesen

Backendkopie zum Bearbeiten holen

Ein Kunde hatte die Anforderung, das dass Backend grundsätzlich auf dem Server liegen sollte und der Benutzer vom Frontend auf seinem Rechner per Netzwerk vom Homeoffice darauf zugreift. Wegen nicht stabiler Internetverbindung soll das Backend aber während der Bearbeitung besser auf den lokalen Rechner kopiert werden und nach dem Schließen der Anwendung wieder zurück auf den Server. Wie man dies realisieren kann und was dabei zu beachten ist, zeigen wir in diesem Beitrag.

Weiterlesen

Von Access nach WordPress

Wordpress ist das gängigste System für die Erstellung und Pflege von Blog. Mittlerweile gibt es so viele Erweiterungen, dass ein Blog nur noch eine von vielen Möglichkeiten ist, eine Webseite über die Wordpress-Plattform zu bauen. Da für Access im Unternehmen der Umzug auf ein ein moderneres System anstand, haben wir uns für Wordpress entschieden. Es bietet gleichzeitig viele Möglichkeiten und ist dennoch recht einfach zu bedienen. Das gilt allerdings auch nur, wenn Sie keine besonderen Anforderungen haben – was in unserem Fall anders aussieht: Immerhin vollen mehr als 1.000 Beiträge samt Bildern und Downloads übertragen werden. Und es darf auch nicht jeder alle Beiträge vollständig betrachten, sondern nur über eine Benutzerverwaltung erfasste Abonnenten. Wie wir das realisiert haben, zeigen wir in diesem Beitrag.

Weiterlesen

Flexible Adressen

Das Thema Adressverwaltung kann man auf viele verschiedene Arten lösen. In vielen Fällen reicht eine einfache Tabelle, die eine Adresse speichert. Reden wir über Adressen in einer Kundenverwaltung, kann es auch vorkommen, dass der Kunde unterschiedliche Adressen für Lieferungen und Rechnungen angeben möchte. Solche Daten speichert man entweder in einer einzigen Tabelle je Kunde oder man trägt die Liefer- und Rechnungsadresse in eigene Tabellen ein, die man dann per 1:1-Beziehung mit dem Kundendatensatz verknüpft. Wir gehen noch einen Schritt weiter und wollen mit der hier vorgestellten Lösung die Möglichkeit bieten, nicht nur zwei, sondern beliebig viele Adressen je Kunde anzulegen – die dann flexibel als Rechnung- oder Lieferadresse festgelegt werden können.

Weiterlesen

Verweise per VBA verwalten

Wenn Sie den Umfang der Objekte, Methoden, Eigenschaften und Ereignisse unter VBA erweitern wollen, geht kein Weg am Verweise-Dialog des VBA-Editors zum Hinzufügen neuer Verweise vorbei. Hier legen Sie fest, welche Bibliotheken neben den eingebauten Bibliotheken noch ihre Elemente für die Programmierung im aktuellen VBA-Projekt bereitstellen sollen. In diesem Beitrag werfen wir einen kurzen Blick auf den Verweise-Dialog, aber vor allem schauen wir uns an, wie Sie per VBA auf die enthaltenen Einträge zugreifen und diese verwalten.

Weiterlesen

Datenhistorie-Trigger schnell anlegen

Im Beitrag “Datenhistorie per Trigger” haben wir gezeigt, welche Anweisungen nötig sind, um eine Archivtabelle anzulegen und der Originaltabelle einen Trigger hinzuzufügen, der beim Ändern oder Löschen eines Datensatzes die vorherige Version in einer Archivtabelle speichert. Im vorliegenden Beitrag wollen wir eine VBA-Prozedur entwickeln, mit der Sie zu einer Tabelle mit einem einfachen Aufruf die Archivtabelle und den Trigger in einem Rutsch anlegen können. Damit sichern Sie Ihre Daten bei Änderungen auch für mehrere Tabellen ganz schnell ab.

Weiterlesen

Datenhistorie per Trigger

Wer seine Access-Tabellen von einem Access-Backend in ein SQL Server-Backend übertragen hat, dürfte zunächst keinen Unterschied beim Zugriff auf die Daten bemerken. Spannend wird es, wenn Sie unter Access jedoch die sogenannten Datenmakros verwendet haben, um automatisch auf Änderungen in den Daten zu reagieren und beispielsweise Kopien geänderter oder gelöschter Datensätze in einer Archivtabelle angelegt haben. Beim Migrieren nach SQL Server werden zwar auch die Archivtabellen erstellt, aber die Datenmakros bleiben außen vor. Damit keine Daten verloren gehen, zeigen wir in diesem Beitrag, wie Sie die Tabellen mit Triggern ausstatten, um die gewünschten Daten zu archivieren.

Weiterlesen