Rechnungen mit ZUGFeRD 1.0, Teil 1: .NET

ZUGFeRD ist das Akronym für „Zentraler User Guide des Forums elektronische Rechnung Deutschland“. Außerdem ist es ein elektronisches Rechnungsdatenformat für den Austauschen von Rechnungen und damit ein Lösungsansatz für die Frage, wie man die Daten einer Rechnung auf einfache Weise für die Durchführung der Überweisung des berechneten Betrags verarbeiten kann. Genau genommen nutzt man hier eine Kombination aus einem auf spezielle Weise hergestellten PDF-Dokuments und eines XML-Dokuments, das die in der Rechnung enthaltenen Daten einmal optimiert für das menschliche Auge und einmal optimiert für die Datenverarbeitung enthält. In diesem ersten Teil einer kleinen Beitragsreihe zeigen wir, wie Sie die Open Source-Bibliothek von Konik in einer .NET-Lösung nutzen, um daraus eine DLL für den Zugriff auf Access heraus zu erstellen.

Weiterlesen

Rechnungen mit ZUGFeRD 1.0, Teil 2: Access-DLL

Im ersten Teil der Beitragsreihe haben wir gezeigt, wie Sie eine DLL erzeugen können, mit der Sie von außen übergebene Daten plus eine Rechnung im PDF-Format zu einer ZUGFeRD-konformen Rechnung zusammenführen können. Das heißt, dass die PDF-Rechnung in eine Rechnung des Formats PDF/A-3 umgewandelt wird und ein XML-Dokument mit den Rechnungsdaten im computerlesbaren Format in das PDF-Dokument integriert wird. Der zweite Teil der Beitragsreihe zeigt nun, wie Sie die für das XML-Dokument benötigten Informationen an die DLL übergeben und so die ZUGFeRD-Rechnung erstellen.

Weiterlesen

Objekte im Ribbon verfügbar machen

Manchmal wird die Liste der Tabellen, Abfragen, Formulare und Co. im Navigationsbereich etwas unübersichtlich. Da wünscht sich der eine oder andere, dass die wichtigsten Elemente einer Datenbank schnell zur Verfügung stehen. Eine Möglichkeit, das zu erledigen, ist das Ribbon. Wie Sie die dort anzuzeigenden Elemente auswählen und diese dort hinzufügen, zeigt der vorliegende 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

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

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

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

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

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, bis er fertiggestellt ist. Erst danach soll er in einem Rutsch in die entsprechende Tabelle im Backend kopiert werden. Dadurch wollen wir verhindern, dass die Verbindung unnötig lange offen gehalten wird, was beim Zugriff vieler Benutzer gleichzeitig die Perfomance beeinflussen kann.

Weiterlesen

Mehrere Felder gleichzeitig durchsuchen

Normalerweise legen ein Textfeld an, in das Sie einen Suchbegriff eingeben und die Daten dann in einem oder mehreren Feldern nach diesem Suchbegriff durchsuchen. Oder Sie haben mehrere Suchfelder etwa für Vorname, Nachname et cetera. Dieser Beitrag stellt ein Suchsteuerelement vor, mit dem Sie gezielt nach den Inhalten verschiedener Felder gleichzeitig suchen können. Dabei gibt es mehrere Vorlagen, die vorab festgelegt werden und die der Benutzer dann einstellt, um die Suchbegriffe einzugeben.

Weiterlesen