Moin Christian,

wie besprochen also als CC an die Liste.

On Wednesday 24 January 2007 17:52, you wrote:
[...]
> Bisher wird der einzelne Job per Banking_EnqueueJob an aqbanking
> übergeben, mit Banking_DelPending_Job (bei Abbruch) wieder gelöscht, und
> per Banking_ExecuteQueue abgeschickt. Jetzt seh ich nur
> Banking_ExecuteJobs und da brauch ich einen ImExporterContext, den ich
> bisher in gnucash aber noch nicht habe (die Ergebnisse der Jobs hole ich
> bisher aus den Jobs selber wieder raus). Wie ist das vorgesehen?
[...]

Wie beschrieben verwaltet AqBanking keine Queue mehr. Du uebergibst nun 
stattdessen einfach eine Liste von Jobs, die Du jetzt ausgefuehrt wissen 
moechtest.

Inzwischen gibt es nur noch die Funktion mit einem ImExporterContext, warum 
hatte ich ja damals bei deren Einfuehrung beschrieben. In der alten Version 
hatte ich noch Kompatibilitaetsfunktionen eingebaut, die versucht haben, Dir 
das alte Interface vorzugaukeln. Da dies auch in der 2er Version schon 
deprecated war, habe ich es in AqBanking3 nicht mehr portiert.

Ich hatte Dir allerdings mal geschrieben, wie Du die Daten aus einem solchen 
Kontext bekommen kannst. Das ist ja auch gar nicht so schwierig, denn die 
Daten sind ja auch in einem solchen Kontext nach Konto sortiert. Wenn Du also 
weiterhin nur die Daten herausfiltern willst, die zu einem bestimmten Job 
gehoeren (und die eventuell gesendeten anderen Daten verwerfen willst), 
kannst Du das immer noch leicht tun.

Die einfachste Moeglichkeit, das so zu handhaben, wie frueher - auch, wenn ich 
es nicht empfehlen mag - waere einfach die Jobs ausfuehren zu lassen, und 
fuer jeden Job anschliessend die Daten aus den Kontext heraussuchen, die zu 
dem Account passen, fuer den der Job ausgefuehrt wurde (alle Jobs sind ja an 
Konten gekoppelt).

[...]
> gnc-hbci-utils.c: In function 'gnc_AB_BANKING_new_currentbook':
> gnc-hbci-utils.c:60: error: too few arguments to function 'AB_Banking_new'
>
> Wie soll der neue Aufruf aussehen? Im Doku-Text zu dieser Funktion ist
> etwas von AB_Banking_newExtended geschrieben, aber die Funktion hab ich
> nicht gefunden.
[...]

Gibt es auch nicht mehr, und die APIDOC habe ich noch nicht angepasst. Du 
kannst hier einfach 0 uebergeben. Dies soll spaeter mal dazu dienen, 
AqBanking mitzuteilen, wenn die Anwendung irgendwelche 
Besonderheiten/Erweiterungen unterstuetzt. Bisher gibt es ja keine 
Erweiterungen, daher ist hier der Wert 0 richtig.

[...]
> gnc-hbci-utils.c:427: warning: implicit declaration of function
> 'AB_Banking_SetPinCacheEnabled'
>
> Ist das einfach ersatzlos gestrichen, d.h. es verhält sich immer wie mit
> abgeschaltetem PinCache? Dann muss ich also in gnucash wieder einen
> eigenen cache implementieren?
[...]
Ich denke, Du bist sowieso gegen Pincaching? Du hattest doch selber eine 
Funktion zum abschalten des Pincache gefordert?

Allerdings cached inzwischen das Medium seine eigene Pin, solange ein Medium 
gemounted ist. Damit entfaellt beispielsweise die ueberhaeufige Nachfrage im 
Pin/Tan-Modus. Ich werde daher auch bei jetzt nicht mehr verfuegbarem 
Pincache nicht oefter von QBankManager nach der Pin gefragt als vorher.

[...]
> Kannst du eine Anleitung geben, wie eine bisher auf AB_Banking
> basierende callback-GUI nun ins gwen3-framework umgesetzt wird?
[...]

Das ist ziemlich einfach: Die Funktionen heissen grundsaetzlich genauso wie 
vorher (inclusive Flags), nur, dass jetzt die Praefixe anders lauten: z.B.  
GWEN_Gui_ProgressStart() statt AB_Banking_ProgressStart().

Genauso verhaelt es sich mit den Flags fuer die einzelnen Funktionen. 
Grundsaetzlich kannst Du also einfach z.B. sed 
s/AB_BANKING_MSG/GWEN_GUI_MSG/g machen, analog dazu auch mit den anderen 
Flags.

Grundsaetzlich muss die Anwendung (und nur diese) am Beginn eine GUI 
implementieren und setzen. Schaue Dir dazu mal das QT-Frontend an, und fuer 
Dich vermutlich interessanter die Consolen-GUI-Implementierung in Gwen.

Du musst im einfachsten Fall lediglich ein Objekt mittels GWEN_Gui_new() 
erstellen, dann die einzelnen Callbacks setzen (z.B. 
GWEN_Gui_SetMessageBoxFn), und anschliessend GWEN_Gui_SetGui() aufrufen, um 
diese GUI-Implementierung zur aktiven zu machen.

Frueher hat das jeweilige Frontend dies selber gemacht, aber das konnte in 
Konflikt mit der Anwendung geraten. Daher ist es nun an der Anwendung, die 
GUI-Implementierung zu setzen.

[...]
> Was ist aus dem Rückgabewert von Banking_ActivateProvider geworden? Der
> war für bereits aktivierte providers AB_ERROR_FOUND, was ist er nun?
[...]
Musst Du mal im Sourcecode nachschauen, ich vermute aber stark, es ist nun 
GWEN_ERROR_FOUND.

Ich habe ja in AqBanking die Fehlercodes geaendert: Es gab in der 
Vergangenheit Fehlercodes, fuer die es auch schon aehnliche Codes in Gwen 
gab. Da es hier aber zwei Werteraeume gab - den von Gwen und den von 
AqBanking - musste man haeufig die Fehlercodes von Gwen nach AqBanking 
uebersetzen.

Das entfaellt nun, weil AqBanking jetzt nur noch eigene Fehlercodes verwendet, 
wenn es dazu kein Aequivalent in Gwen gibt. Ausserdem erweitert AqBanking 
jetzt den Werteraum fuer GWE's Fehlercodes: AqBanking verwendet daher jetzt 
Fehlercodes wie (GWEN_ERROR_USEROFFSET-1) etc. Damit kann man nun Fehlercodes 
aus Gwen auch direkt aus AqBanking-Funktionen an die Anwendung weiterreichen, 
ohne die Codes uebersetzen zu muessen.

Die Anwendung kann diesen Werteraum dann auch noch erweitern, wenn sie will, 
dafuer muss sie einfach Fehlercodes als (AB_ERROR_USEROFFSET-x) deklarieren.


Gruss
Martin

-- 
"Things are only impossible until they're not"

AqBanking - http://www.aqbanking.de/
LibChipcard - http://www.libchipcard.de/

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Aqbanking-devel mailing list
Aqbanking-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/aqbanking-devel

Reply via email to