Funktionen

Inhalt dieser Seite:

Online-Prüfungen

Bankverbindungsprüfung

Für eine Beschreibung der URL-Parameter und der Ergebnisfelder sehen Sie bitte auf der Seite über den WDDX-Server nach. Falls Sie das COM-Objekt HanftWddx.KtoPruef unter Windows installiert haben, stehen Ihnen darin folgende Funktionen zur Verfügung:

Obiges ist eine symbolische Schreibweise; in ASP, MS-Access oder Visual Basic etc. sieht der tatsächliche Aufruf ungefähr wie folgt aus:

Dim KtoPruef as Variant
Set KtoPruef = CreateObject("HanftWddx.KtoPruef")
KtoPruef.SetProxy("mein.proxy.de", 3128) ' nur falls benötigt
KtoPruef.TestBlzKto("Ihr Benutzername","Ihr Passwort","Bankleitzahl","Kontonummer")
ErgebnisAlsZahl = KtoPruef.Result
ErgebnisAlsText = KtoPruef.Resulttext
ErgebnisBankName = KtoPruef.BankName

Adreßprüfung

Für eine Beschreibung der URL-Parameter und der Ergebnisfelder sehen Sie bitte auf der Seite über den WDDX-Server nach. Falls Sie das COM-Objekt HanftWddx.Address unter Windows installiert haben, stehen Ihnen darin folgende Funktionen zur Verfügung:

Obiges ist eine symbolische Schreibweise; in ASP, MS-Access oder Visual Basic etc. sieht der tatsächliche Aufruf ungefähr wie folgt aus:

Dim myAddress as Variant
Set myAddress = CreateObject("HanftWddx.Address")
myAddress.SetProxy("mein.proxy.de", 3128) ' nur falls benötigt
myAddress.Check("Ihr Benutzername","Ihr Passwort","Postleitzahl","Ortsname")
ErgebnisAlsZahl = myAddress.Result
ErgebnisAlsText = myAddress.Resulttext
if ErgebnisAlsZahl = 4 then ' Ortsliste übernehmen (Anzahl in .Orte[0])
  i = 1
  while myAddress.Orte[i] <%gt; "" ' noch ein Ort
    ErgebnisOrte[i] = myAddress.Orte[i]
    i = i + 1 
  wend
endif

Lokale Installationen

Die generellen Aufrufmechanismen, Datentypen usw. sind auf der Seite "Technik" beschrieben, so daß hier nur auf die universelle Funktionalität eingegangen wird.

Es gibt folgende Objekte:

Hinweis zur Nomenklatur: Eine procedure wird mit verschiedenen Parametern aufgerufen und gibt kein Ergebnis zurück (es können allerdings einige Parameter nach der Rückkehr einen neuen Wert haben - davon wird hier aber nirgendwo Gebrauch gemacht). Eine function wird ebenfalls mit verschiedenen Parametern aufgerufen, gibt aber ein Funktionsergebnis zurück.

An verschiedenen Stellen ist u.U. ein Fehler "-999" möglich: Dieser gibt an, daß momentan überhaupt keine Datendatei (weder "Demo" noch "vollständig") geladen ist.

Allen Objekten gemeinsam sind die beiden folgenden Funktionen:

Hier nun die speziellen Prozeduren und Funktionen der einzelnen Objekte:

Nach oben

KtoUpdate

Bank.KtoUpdate kümmert sich um den Download und die Verwaltung von Datendateien und Updates. Der Name einer Datendatei ist bankxxyz.wbd (wbd=Windows-Bank-Daten) bzw. bankxxyz.lbd (lbd=Linux-Bank-Daten). (In der Demo-Version, in der nur ein Teil der Banken enthalten ist, ist bank durch demo ersetzt.) Neue Datendateien können vom Update-Server heruntergeladen werden, entweder per Softwareaufruf (s.u.) oder per manuellem Download. Die übertragenen Dateien heißen bankxxyz.wbp (wbp=Windows-Bank-Paket) bzw. bankxxyz.lbp (lbp=Linux-Bank-Paket) und sind zur schnelleren Übertragung gepackt (ca. 170 KB statt ausgepackt ca. 800 KB) und mit einer kryptographischen Signatur versehen, um Übertragungsfehler oder Hacker-Angriffe beim Download zu verhindern.

Die Stellen "xxyz" in den Dateinamen bedeuten:

Die Datendateien und -pakete werden stets ohne Verzeichnisangabe verwendet. Die Verzeichnisse werden unter Windows bzw. unter Linux unterschiedlich festgelegt:

Die einzelnen Prozeduren und Funktionen:

Hinweis: Alle Bank.KtoUpdate-Funktionen können im laufenden Betrieb aufgerufen werden!

Nach oben

KtoPruef

Veraltete Interfaces:

Nach oben

KtoRead

Momentan nur für Windows; für Linux in Kürze!

Das Objekt Bank.KtoRead bietet Ihnen die Möglichkeit, elektronische Kontoausüge im MT940-Format, die Sie von Ihrer Bank abgerufen haben, in eine SQL-Datenbank einzulesen. Unter Windows wird dazu die "ADO"-Technologie genutzt; Sie können alle Datenbanken verwenden, für die es einen ODBC-Treiber gibt; außerdem steht ein spezieller Treiber für den MS-SQL-Server zur Verfügung. Geplant ist außerdem eine Implementierung eines speziellen mySQL-Treibers für Windows und Linux (spätestens bis Ende des Jahres). Unter Windows können Sie jedoch bereits jetzt mySQL-Datenbanken verwenden, wenn Sie den ODBC-Treiber für mySQL installieren und in KTOPRUEF den Typ "ODBC" angeben.

Es muß dazu eine Datenbank mit zwei Tabellen geben, die vorab von Ihnen angelegt werden müssen, und zwar wie folgt:

CREATE TABLE KONTOAUSZUEGE (NR INTEGER NOT NULL,
        BLZ CHAR(8) NOT NULL,
        KONTO VARCHAR(10) NOT NULL,
        AUSZUGNR INTEGER NOT NULL,
        ALTGUTDATUM DATE NOT NULL,
        ALTGUTWAE CHAR(3) NOT NULL,
        ALTGUTBETRAG NUMERIC(15, 2) NOT NULL,
        NEUGUTDATUM DATE NOT NULL,
        NEUGUTWAE CHAR(3) NOT NULL,
        NEUGUTBETRAG NUMERIC(15, 2) NOT NULL,
        USERID INTEGER NOT NULL,
PRIMARY KEY (NR));

CREATE TABLE KONTOUMSAETZE (NR INTEGER NOT NULL,
        AUSZUGNR INTEGER NOT NULL,
        VALUTA DATE NOT NULL,
        BUCHUNG DATE NOT NULL,
        BETRAG NUMERIC(15, 2) NOT NULL,
        ORIWAE CHAR(3),
        ORIBETRAG NUMERIC(15, 2),
        GVC INTEGER NOT NULL,
        BUTEXT VARCHAR(27),
        PN VARCHAR(10),
        BLZ CHAR(8),
        KONTO VARCHAR(10),
        ABSENDER VARCHAR(54),
        VERWEND VARCHAR(378),
        TSE INTEGER,
        USERID INTEGER NOT NULL,
PRIMARY KEY (NR));

Anmerkung: Bei manchen Datenbanken kann für den Betrag auch der Datentyp Money statt Numeric(15,2) verwendet werden bzw. für die Datumsfelder SmallDateTime statt Date. Bitte sehen Sie in der Dokumentation der Datentypen Ihrer Datenbank nach.

Hinweis: Das Feld AuszugNr in der Tabelle KontoUmsaetze ist im Prinzip ein Foreign Key auf das Feld Nr (nicht AuszugNr!) in der Tabelle KontoAuszuege. Den Foreign Key Restraint darf man aber in SQL nicht verwenden, da die Umsätze vor den Auszügen in die Datenbank eingefügt werden). Das Feld AuszugNr in der Tabelle KontoAuszuege ist rein informatorisch (dort wird das von der Bank gelieferte Feld unverändert übernommen).

Neben den allgemeinen beiden Fehlerfunktionen gibt es nur eine einzige spezifische Funktion:

Nach oben

KtoDtaus

Mit dem KtoDtaus-Objekt lassen sich DTAUS-Dateien sowohl erzeugen als auch prüfen.

Die Funktionen im einzelnen:

Nach oben

KtoSwift

Mit diesem Modul können Sie die Swift-Website abfragen. Bitte beachten Sie, daß dies eine relativ unsichere Funktion ist, da der Swift-Server lediglich eine menschen- (und nicht maschinen-) -lesbare Antwortseite erzeugt, die von KTOPRUEF nach bestem Wissen und Gewissen ausgewertet wird - aber falls sich das Format der Website einmal ändern sollte, kann es passieren, daß KTOPRUEF die Antwort nicht mehr auswerten kann. Verwenden Sie diese Abfrage also bitte nicht in kritischen Anwendungen als letzte Entscheidung, ob ein bestimmter BIC gültig ist oder nicht!

Hinweis: Da der Swift-Server grundsätzlich nur nach dem Anfang des eingegebenen Suchbegriffs sucht, kommt es in seltenen Fällen vor, daß KTOPRUEF als Ergebnis "1" liefert, was eigentlich darauf hindeutet, daß der geprüfte BIC gültig ist, aber trotzdem nicht stimmt (z.B. wird für "PBNKDEFF76" das Ergebnis "1" gemeldet, weil es nur einen BIC gibt, der mit "PBNKDEFF76" beginnt, nämlich "PBNKDEFF760" - aber dadurch ist "PBNKDEFF76" natürlich kein gültiger BIC). Wie oben bereits angemerkt, sollte das KTOPRUEF-Ergebnis eines solchen Tests also nicht als die endgültige Weisheit betrachtet werden. Eine ergänzende Funktion, die eine Liste aller gefunden BICs mit dem angegebenen Anfang zurückliefert, ist in Vorbereitung - anhand einer solchen Liste kann man dann die Eindeutigkeit eines bestimmten Suchbegriffs genau bestimmen. Diese Funktion wird in einem der nächsten Updates enthalten sein.

Nach oben

KtoArbeit

Mit diesem Modul können Sie die Anzahl der Arbeitstage in einem bestimmten Monat, Quartal oder Jahr ermitteln.

Nach oben