Inhaltsverzeichnis

Entwicklungs-Informationen

ToDo's sind ab jetzt hier zu finden

Notizen

Speicherung der Daten

Erste Überlegungen und Entscheidungen für das lokale Speichern der Daten und wie dies am sinnvollsten realisiert werden kann.

Was soll erreicht werden

Überlegungen / Noch Testen

Die vorhandenen Daueraufträge und terminierten Überweisungen werden zur Zeit mit in der ini-Datei gespeichert, dies sollte später nicht mehr stattfinden.
Für Daueraufträge und terminierte Überweisungungen existieren bereits Objekte die die Daten für die interne Bearbeitung zur Verfügung stellen (abt_StandingInfo bzw. abt_DatedInfo). Jedes Account-Objekt (abt_AccountInfo) enthält jeweils eine Liste wo die entsprechenden Standing-/DatedInfo Objekte referenziert werden.

Die Dated- und StandingInfo Objekte könnten die Liste selber verwalten, somit kann hier dann auch ein löschen, ändern, anlegen implementiert werden (momentan geschieht dies in abt_settings). Dann braucht in abt_AccountInfo auch keine Liste mehr verwaltet werden, sondern es kann einfach das entprechende Objekt verwendet werden.
Dieses Objekt könnte als Basis-Klasse ausgelegt werden und dann auch für die Historie verwendet werden.

Interresant wäre das Speichern mithilfe der AqBanking_ImExporter* Funktionen. Die Funktion zum parsen müsste dann so erstellt werden das sie sowohl die Historie und lokal gespeicherten Daueraufträge/terminierten Überweisungen importieren kann, als auch die Daten die von der Bank zurückkommen.
Diese Funktion müsste die Daten in den entsprechenden Objekten zur Verfügung stellen. Beim Beenden müssen dann alle Daten der Objekte in einen Context gepackt werden und Exportiert werden.

Überlegungen noch nicht abgeschlossen, wird noch erweitert werden

weiteres

Ältere Überlegungen

Ab hier ist einiges veraltet und Bedarf einer Überarbeitung! Momentan fehlt allerdings die Zeit um dies vernünftig neu zu dokumentieren

Zum Nachdenken:

	ai=AB_ImExporterContext_GetFirstAccountInfo(ctx);
	while(ai) {
		this->parseImExporterAccountInfo_Status(ai);
		this->parseImExporterAccountInfo_DatedTransfers(ai);
		this->parseImExporterAccountInfo_NotedTransactions(ai);
		this->parseImExporterAccountInfo_StandingOrders(ai);
		this->parseImExporterAccountInfo_Transactions(ai);
		this->parseImExporterAccountInfo_Transfers(ai);
 
		ai=AB_ImExporterContext_GetNextAccountInfo(ctx);
	} /* while ai */

bei Anlegen und Ändern von DatedTransfers wird die while nicht durchlaufen, beim löschen schon (das funktioniert auch). Somit müssten wir beim Anlegen und Ändern auch die aktuellen DatedTransfers abfragen, sonst nicht?

Ich war eigentlich davon ausgegangen das auch beim Ändern einer datedTransfer die while Schleife durchlaufen wird, da in der Terminueberweisungen.ini auch Transactions existieren die einen Status zum löschen und geändert etc. besitzen. [NEIN! nach Anlage und nach Löschen ist dort dokumentiert!]

⇒ Schlussfolgerung

⇒ Umbau des Parsens — Patrick Wacker 2011/10/26 19:46

aqBanking

Verwendet wird die AqBanking 1) Bibliothek.

Übersicht über Jobs, Transactions und JobLists

Jobs

Transactions

JobLists

Übersicht der funktionen zum erstellen von Jobs

transfer jobs
dated transfers (Terminüberweisungen)
standing orders (Daueraufträge)

Brainstorming

Jede Überweisung muss in einem separaten AB_JOB gespeichert werden und dieser AB_JOB dann einer JOB_LIST hinzugefügt werden. Wenn alle Transactionen vorhanden sind wird die JOB_LIST zur Bank übertragen und danach der ImExporterContext (CTX) ausgewertet, im CTX können auch Meldungen und Logs vorkommen, nicht nur die Transaktionen und das ganze muss separat für jeden empfangenen Account erledigt werden.

Sammelüberweisungen können durch die Anwendung selber nicht beeinflusst werden, dies ist abhängig vom jeweiligen Institut und dem verwendeten Backend in AqBanking.

Erstellte und/oder geänderte/gelöschte Daueraufträge müssen dann in der lokalen Datei auch eingetragen/gelöscht werden, diese Daten müssen dem CTX entnommen werden!

Dasselbe gilt für Terminierte Überweisungen.

Basis-Klasse für Terminierte Überweisungen und Daueraufträge?

Verwendung in ab_transfer

1)
link erstellen