Class AnalyzeReportOfTransactions
Tool zum Abholen und Auswerten von Kontoauszügen, gleichzeitig Beispielprogramm für die Verwendung von HBCI4Java. Dieses Tool sollte nicht out-of-the-box benutzt werden, da erst einige Anpassungen im Quelltext vorgenommen werden müssen. Es dient eher als Vorlage, wie HBCI4Java im konkreten Anwendungsfall eingesetzt werden kann.
Die Methode main(String[])
zeigt die Verwendung mit einem einzelnen Haupt-
Thread. die Methode main_multithreaded(String[])
skizziert die Implementierung
für Anwendungen mit mehreren Threads.
Im Quelltext müssen folgende Stellen angepasst werden:
Beim Aufruf der Methode
HBCIUtils.init()
wird der Name eines Property-Files angegeben, in welchem alle benötigten Kernel-Parameter aufgelistet sind. Diese Datei muss erst erzeugt (Kopieren und Anpassen vonhbci.props.template
) und der Dateiname beim Aufruf angepasst werden.Zum Festlegen des abzufragenden Kontos wird zurzeit automatisch das erste Konto benutzt, auf welches über HBCI zugegriffen werden kann. Ist diese Information nicht verfügbar (einige Banken senden keine Informationen über die verfügbaren Konten), oder soll eine andere Kontoverbindung benutzt werden, so sind entsprechende Änderungen bei der Initialisierung der Variablen
myaccount
vorzunehmen.Soll der Kontoauszug nur ab einem bestimmten Zeitpunkt (und nicht alle verfügbaren Daten) abgeholt werden, so ist beim Erzeugen des entsprechenden Auftrages das Startdatum einzustellen (im Quelltext zur Zeit auskommentiert).
Außerdem ist im Quelltext Code zur eigentlichen Auswertung der Auszüge zu implementieren. In dieser Vorlage wird nur nach einer fest codierten Rechnungsnummer im Verwendungszweck gesucht. Der entsprechende Abschnitt im Quelltext ist den eigenen Bedürfnissen anzupassen.
Anschließend kann der Quelltext compiliert und mit
java -cp ... org.kapott.hbci.tools.AnalyzeReportOfTransactionsgestartet werden.
Der Quellcode dieser Klasse zeigt die prinzipielle Benutzung von HBCI4Java. Wurde der HBCI-Zugang, der mit diesem Programm benutzt werden soll, noch nie verwendet, so werden alle benötigten Schritte zur Initialisierung der Zugangsdaten und Sicherheitsmedien automatisch von HBCI4Java durchgeführt. Es ist nicht nötigt, für die Initialisierung von "frischen" Sicherheitsmedien speziellen Code in die HBCI-Anwendung einzubauen -- die entsprechenden Aktionen werden automatisch und völlig transparent von HBCI4Java durchgeführt. Das hat den Vorteil, dass jede beliebige Anwendung, die HBCI4Java als HBCI-Bibliothek benutzt, gleichzeitig zum Initialisieren von HBCI-Sicherheitsmedien benutzt werden kann, ohne dass dafür spezieller Programmcode nötig wäre. Außerdem wird dadurch sichergestellt, dass nur initialisierte und funktionierende HBCI-Sicherheitsmedien benutzt werden (weil HBCI4Java beim Laden eines Sicherheitsmediums automatisch entsprechende Überprüfungen vornimmt).
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static void
analyzeReportOfTransactions
(HBCIPassport hbciPassport, HBCIHandler hbciHandle) static void
static void
main_multithreaded
(String[] args)