After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 665998 - Migrate Aqbanking from druid to assistant / builder.
Migrate Aqbanking from druid to assistant / builder.
Status: RESOLVED FIXED
Product: GnuCash
Classification: Other
Component: User Interface General
git-master
Other Linux
: Normal enhancement
: ---
Assigned To: Christian Stimming
Geert Janssens
Depends on:
Blocks:
 
 
Reported: 2011-12-12 13:44 UTC by Bob
Modified: 2018-06-29 23:03 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Migrate Aqbanking directory to builder / assistant (289.65 KB, patch)
2011-12-12 13:45 UTC, Bob
committed Details | Review

Description Bob 2011-12-12 13:44:32 UTC
I have attempted to migrate the import-export/Aqbanking directory to use an assistant from druid and other dialogs to use builder from GladeXML.

The enclosed patch changes all the required entries in this folder and compiles with no errors. I have tested as far as I can as I do not use this and this is what I have observed.

The druid, (initial setup wizard) is now an assistant and runs as I think it should, starting the aqbanking wizard and ultimately saving the appropriate details. There are a lot of critical and warning log messages while running the wizard but I think these are coming from the gwenhywfar and aqbanking. On the account match page, there was a selection callback that fired every time the page loaded and I was unable to block this so have changed this to use a 'row-activated' call back which is in line with the Qif assistant.

There was another problem in that the KVP data was not being saved unless a change was made to an account. There is a function 'force_account_dirty' in gnc-ab-kvp.c that tried to set the dirty flag by re-saving the account name but this was being blocked as the name did not change. I have added qof_book_mark_dirty to this procedure and now it does ask to save on exit. I am not sure if this is the correct approach but it works so if this is correct then I assume the re-saving of the account name is redundant and this would need fixing in the 2.4 branch also.

The other dialogs in the directory have been migrated from GladeXML to builder and look OK but as I do not use this I can not fully test this.
Comment 1 Bob 2011-12-12 13:45:29 UTC
Created attachment 203251 [details] [review]
Migrate Aqbanking directory to builder / assistant
Comment 2 Geert Janssens 2011-12-17 11:14:20 UTC
Comment on attachment 203251 [details] [review]
Migrate Aqbanking directory to builder / assistant

Thank you for that patch. Like you, I don't use (can't use) the aqbanking features of GnuCash, since my bank doesn't support it.

I have played with the parts of the druid that are accessible and found no issues there.

I have decided to apply the patch, since that's probably the best way to get it tested by someone who is using aqbanking.

Regarding the use of qof_book_mark_dirty, have you also verified if the flag is properly stored when using an sql backend (such as sqlite) ? I don't know enough about the backend's handling of kvp's to estimate if your solution is good for both backend types we support. It looks like a clean solution though.
Comment 3 Bob 2011-12-18 16:25:39 UTC
(In reply to comment #2)
> (From update of attachment 203251 [details] [review])
> Thank you for that patch. Like you, I don't use (can't use) the aqbanking
> features of GnuCash, since my bank doesn't support it.
> 
> I have played with the parts of the druid that are accessible and found no
> issues there.
> 
> I have decided to apply the patch, since that's probably the best way to get it
> tested by someone who is using aqbanking.
> 
> Regarding the use of qof_book_mark_dirty, have you also verified if the flag is
> properly stored when using an sql backend (such as sqlite) ? I don't know
> enough about the backend's handling of kvp's to estimate if your solution is
> good for both backend types we support. It looks like a clean solution though.

Yes, it does work for sqlite and mysql.
Comment 4 Bob 2011-12-19 10:45:28 UTC
(In reply to comment #2)
> (From update of attachment 203251 [details] [review])
> Thank you for that patch. Like you, I don't use (can't use) the aqbanking
> features of GnuCash, since my bank doesn't support it.
> 
> I have played with the parts of the druid that are accessible and found no
> issues there.
> 
> I have decided to apply the patch, since that's probably the best way to get it
> tested by someone who is using aqbanking.
> 
> Regarding the use of qof_book_mark_dirty, have you also verified if the flag is
> properly stored when using an sql backend (such as sqlite) ? I don't know
> enough about the backend's handling of kvp's to estimate if your solution is
> good for both backend types we support. It looks like a clean solution though.

I noticed on a commit by John, r21744 he used a different method which I have tried and works here also and think it is better so I think the changes you made to the four functions should be changed to :-
   qof_instance_set_dirty (QOF_INSTANCE (a));

I will provide a patch if required.
Comment 5 Geert Janssens 2011-12-19 15:34:04 UTC
Thank you for your offer for a new patch.

However by the time I read your message, I had already changed the functions myself, so there's no need for it anymore.
Comment 6 John Ralls 2018-06-29 23:03:42 UTC
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=665998. Please update any external references or bookmarks.