GNOME Bugzilla – Bug 795347
Australian (GMT+10) OFX transactions imported have previous days date
Last modified: 2018-06-30 00:08:30 UTC
OFX Transactions imported have date 1 day before what it should be EG 1 REDIATM MYALL STREET : OFX = <DTPOSTED>20180305000000, GnuCash = 04/03/2018 <trn:date-posted> <ts:date>2018-03-04 20:59:00 +1000</ts:date> </trn:date-posted> <trn:date-entered> <ts:date>2018-04-18 10:37:23 +0900</ts:date> </trn:date-entered> <trn:description>REDIATM MYALL STREET TE A GARDENS 20 - Receipt 8273ATM owner fee of $2.50 charged by REDIATM MYALL STREET TE A GARDENS 20Date 05 Mar 2018 Time 12:14PM Card NNNNxxxxxxNNNN</trn:description> <trn:slots> <slot> <slot:key>date-posted</slot:key> <slot:value type="gdate"> <gdate>2018-03-04</gdate> </slot:value> </slot> EG 2 COLES : OFX = <DTPOSTED>20180307000000, GnuCash = 06/03/2018 <trn:date-posted> <ts:date>2018-03-06 20:59:00 +1000</ts:date> </trn:date-posted> <trn:date-entered> <ts:date>2018-04-18 10:37:23 +0900</ts:date> </trn:date-entered> <trn:description>COLES 5692 - Visa Purchase - Receipt 160178In TEA GARDENS Date 06 Mar 2018 Card NNNNxxxxxxNNNN</trn:description> <trn:slots> <slot> <slot:key>date-posted</slot:key> <slot:value type="gdate"> <gdate>2018-03-06</gdate> </slot:value> </slot> Similar to bug 769124 where this problem was found in 2.6.12 + 2.6.13, fixed in 2.6.14.
Note I had to install Bob's fixed libofx-6.dll from bug 793461 comment 21 before the import showed any transactions to import.
This is most likely fixed on libofx git, but I an holding on a release until a fix for 793461 is sent upstream.
Chris, I think this is probably the same as bug 795405, which I think I fixed yesterday. Can you try https://wiki.gnucash.org/builds/win32/maint/gnucash-3.0-2018-04-28-git-3.0-116-gb761b5a0d+.setup.exe, which includes that fix and also a rebuilt LibOFX with a modified version of Bob's patch?
Hi John, New version is fine now thanks very much. <ts:date> fields are now exactly as they were in my 2.6.16 data file.
Yay! Thanks for testing.
Oops - I'm getting my bugs confused - That comment should have gone on bug 795405. Sorry. I'll test import now...
Tried to test import but see new file open dialog does not show current directory and does not allow me to change to another directory. I think I remember another recent bug about that but I'm out of time for now. Will test again in about 7 hours.
I couldn't find a bug about the file open dialog so I have raised bug 795653 (File open/save dialogs do not allow selection via drives (OFX Import + more)). What I remembered was a comment I think that was related in gnucash-user (see link in bug 795653). After copying my .ofx file into a directory I could access, I was able to import OK thanks! Here are the results of the rerun of the tests in this bug description: Example 1 <trn:date-posted> <ts:date>2018-03-05 21:59:00 +1100</ts:date> OK I THINK </trn:date-posted> <trn:date-entered> <ts:date>2018-04-29 18:15:53 +1000</ts:date> OK </trn:date-entered> <trn:description>REDIATM MYALL STREET TE A GARDENS 20 - Receipt 8273ATM owner fee of $2.50 charged by REDIATM MYALL STREET TE A GARDENS 20Date 05 Mar 2018 Time 12:14PM Card 462263xxxxxx3590</trn:description> <trn:slots> <slot> <slot:key>date-posted</slot:key> <slot:value type="gdate"> <gdate>2018-03-05</gdate> OK </slot:value> </slot> Example 2 <trn:date-posted> <ts:date>2018-03-07 21:59:00 +1100</ts:date> OK I THINK </trn:date-posted> <trn:date-entered> <ts:date>2018-04-29 18:15:53 +1000</ts:date> OK </trn:date-entered> <trn:description>COLES 5692 - Visa Purchase - Receipt 160178In TEA GARDENS Date 06 Mar 2018 Card 462263xxxxxx3590</trn:description> <trn:slots> <slot> <slot:key>date-posted</slot:key> <slot:value type="gdate"> <gdate>2018-03-07</gdate> OK </slot:value> </slot>
Should this fix be included in 3.1-2.setup.exe? It does not seem to be. Example 1: GnuCash says 04/04/2018 OFX <DTPOSTED>20180405000000 XML: <gnc:transaction version="2.0.0"> <trn:id type="guid">fb8888cb8d714f70b2abb49315d49645</trn:id> <trn:currency> <cmdty:space>CURRENCY</cmdty:space> <cmdty:id>AUD</cmdty:id> </trn:currency> <trn:num>1</trn:num> <trn:date-posted> <ts:date>2018-04-04 20:59:00 +1000</ts:date> WRONG </trn:date-posted> <trn:date-entered> <ts:date>2018-05-16 08:28:39 +1000</ts:date> </trn:date-entered> Example 2: GnuCash says 07/04/2018 OFX <DTPOSTED>20180408000000 XML: <gnc:transaction version="2.0.0"> <trn:id type="guid">eea64701f91d466296f712ce507ee745</trn:id> <trn:currency> <cmdty:space>CURRENCY</cmdty:space> <cmdty:id>AUD</cmdty:id> </trn:currency> <trn:date-posted> <ts:date>2018-04-07 20:59:00 +1000</ts:date> WRONG </trn:date-posted> <trn:date-entered> <ts:date>2018-05-16 08:28:39 +1000</ts:date> </trn:date-entered>
Yes, it's in 3.1, so maybe the problem's on the OFX side. 3.1 had only libofx-0.9.10 so I just rebuilt it with libofx-0.9.13. It's at https://code.gnucash.org/builds/win32/releases/gnucash-3.1-3.setup.exe, give it a go.
3.1-3.setup.exe finishes loading user data, then goes into the background and I cannot get it to display the window again. I'll won't be able to look at this again for a few hours.
Will email full tracefile direct to you John as may be sensitive data in it. Output of gnucash.exe --debug --extra extracts which may be of interest: 1) * 12:15:22 INFO <gnc.account> [xaccAccountSetGUID] acct=10806930 * 12:15:22 INFO <gnc.account> [xaccAccountRecomputeBalance] acct=Maree starting baln=0/1 * 12:15:22 INFO <gnc.account> [xaccAccountSetGUID] acct=10806a30 * 12:15:22 INFO <gnc.account> [xaccAccountRecomputeBalance] acct=Imbalance-AUD starting baln=0/1 * 12:15:22 INFO <gnc.account> [xaccAccountSetGUID] acct=10806b30 * 12:15:22 INFO <gnc.account> [xaccAccountRecomputeBalance] acct=Orphaned Gains-AUD starting baln=0/1 * 12:15:22 INFO <gnc.account> [xaccAccountSetGUID] acct=10806c30 * 12:15:22 INFO <gnc.account> [xaccAccountRecomputeBalance] acct=Orphan-AUD starting baln=0/1 * 12:15:22 INFO <gnc.translog> [xaccOpenLog] Attempt to open disabled transaction log * 12:15:22 INFO <gnc.translog> [xaccTransWriteLog] Attempt to write disabled transaction log * 12:15:22 INFO <gnc.translog> [xaccTransWriteLog] Attempt to write disabled transaction log * 12:15:22 INFO <gnc.engine> [trans_cleanup_commit] get rid of rollback trans=0beca650 * 12:15:22 INFO <gnc.translog> [xaccOpenLog] Attempt to open disabled transaction log * 12:15:22 INFO <gnc.translog> [xaccTransWriteLog] Attempt to write disabled transaction log * 12:15:22 INFO <gnc.translog> [xaccTransWriteLog] Attempt to write disabled transaction log * 12:15:22 INFO <gnc.engine> [trans_cleanup_commit] get rid of rollback trans=0beca650 4 lines starting with "Attempt to open disabled transaction log' are repaeated many times. 2) * 12:15:28 INFO <qof.query> [qof_query_run_internal] matching objects=00000000 count=0 * 12:15:28 MESSG <gnc.app-utils.sx> num_instances: 0 * 12:15:28 MESSG <gnc.app-utils.sx> num_to_create: 0 * 12:15:28 MESSG <gnc.app-utils.sx> num_auto_create_instances: 0 * 12:15:28 MESSG <gnc.app-utils.sx> num_auto_create_no_notify_instances: 0 * 12:15:28 MESSG <gnc.app-utils.sx> need dialog? false * 12:15:28 MESSG <GLib-GIO> Registry: resetting key 'Software\GSettings\org\gnucash\warnings\temporary': The system cannot find the file specified. * 12:15:28 MESSG <GLib-GIO> Registry: resetting key 'Software\GSettings\org\gnucash\warnings\temporary': The system cannot find the file specified. * 12:15:28 MESSG <GLib-GIO> Registry: resetting key 'Software\GSettings\org\gnucash\warnings\temporary': The system cannot find the file specified. "The system cannot find the file specified." is repeated many times.
I've been meaning to change the "disabled transaction log" noise to debug. It fires every time a transaction is added during load; of course the transaction log is disabled during load. "Software\GSettings\org\gnucash\warnings\temporary" is weird. No surprise the system can't find it, but I'm baffled as to where it would be coming from. This is all from the 3.1-3 that I built last night, right?
Hi John, Yes 3.1-3.
If I run with --nofile, "Help, About" shows me Version 3.1 Build ID: 3.0-118-gd2ef5fd0f+ (2018-04-28). I downloaded from SourceForge via gnucash.org. 2018-04-28 ???
2018-04-28 was the date of the release, but you should have downloaded using the link in comment 10. The build was just for you, I haven't released it on SourceForge or Github. Help about will be the same, it's built from the same release tarball.
O(In reply to John Ralls from comment #13) > "Software\GSettings\org\gnucash\warnings\temporary" is weird. No surprise > the system can't find it, but I'm baffled as to where it would be coming > from. Oh, it's a registry key. It's present on my system, under HKCU. I doubt that that has to do with the disappearing window.
(In reply to John Ralls from comment #16) > 2018-04-28 was the date of the release, but you should have downloaded using > the link in comment 10. The build was just for you, I haven't released it on > SourceForge or Github. Help about will be the same, it's built from the same > release tarball. Sorry, I was confused, I did download from your link in Comment 10. I just did it again to check and I still have the same problem with the window not displaying. If I run it with --nofile, then open my data file, it still will not display the window.
Chris, that's really weird. Do I understand correctly that the window shows until your file finishes loading? Having run without --debug do you still get the GIO warnings? If you reinstall gnucash-3.1-2.setup.exe does it work correctly?
The main window does not show at all, unless I run with --nofile. Task Manager shows gnucash.exe is not doing anything, and it shuts down nicely if I close it by right clicking on it in the task bar and select "Close Window". GLib-GIO warnings do not show if run with no cmd line args. Going back to 3.1-2.setup.exe now also does not work. I tried ticking again "Translation Files" as that was something else I did different to my normal install method but it has not helped. Ah! Running as a different user works with 3.1-3. Shall investigate further to see if it is saved reports or configuration causing problem.
I'd guess that it's something to do with the registry for your primary user. You can compare the "different" user's Software\GSettings\org\gnucash with the "regular" user's and perhaps see a way to recover.
Renaming C:\Users\cgood\AppData\Roaming\GnuCash\saved-reports-2.4 did not help. I made everything in Registry HKCU Software\GSettings\org\gnucash same as working user, but did not help. Renaming C:\Users\cgood\AppData\Roaming\GnuCash to GnuCash.20180519 DID fix the problem. While the problem was occurring, I created a gnucash.DMP using Task Manager, and used WinDbg to get a stack trace (I think): wow64win!NtUserMsgWaitForMultipleObjectsEx + 0x14 wow64win!whNtUserMsgWaitForMultipleObjectsEx + 0x8a wow64!Wow64SystemServiceEx + 0x153 wow64cpu!ServiceNoTurbo + 0xb wow64cpu!BTCpuSimulate + 0x9 wow64!RunCpuSimulation + 0xa wow64!Wow64LdrpInitialize + 0x120 ntdll!LdrpInitializeProcess + 0x18cf ntdll!_LdrpInitialize + 0x4c7bd ntdll!LdrpInitialize + 0x3b ntdll!LdrInitializeThunk + 0xe Doesn't look very helpful to me. I can send you the .DMP file (300MB) if you wish? Is there anything else you'd like do or have we gone as far as is reasonable possible trying to debug this? I haven't tested if 3.1-3 fixes the OFX dates yet.
WinDbg can't see the symbols created by gcc, so the .DMP file isn't likely to be helpful. Do the settings messages about the registry keys go away after you changed them? Can you discern any differences between the old and new AppData\Roaming\GnuCash directories? If you feel like burning some time perhaps you could copy one file at a time from GnuCash.20180519 to GnuCash to see which one breaks GnuCash.
Found that a corrupt .gcm seems to cause the main window to remain hidden. I have raised bug 796256 (Main Window stays hidden after starting because of corrupt gcm file) for that issue. Shall test OFX dates tomorrow.
(In reply to John Ralls from comment #23) > Do the settings messages about the registry keys go away after you changed > them? The registry messages did NOT go away after I made the registry the same as the user which did not have the hidden main window. The only difference in the [HKEY_CURRENT_USER\Software\GSettings\org\gnucash\warnings] area was the existence of the 'permanent' entry. I.e. Good: [HKEY_CURRENT_USER\Software\GSettings\org\gnucash\warnings] [HKEY_CURRENT_USER\Software\GSettings\org\gnucash\warnings\temporary] Bad: [HKEY_CURRENT_USER\Software\GSettings\org\gnucash\warnings] [HKEY_CURRENT_USER\Software\GSettings\org\gnucash\warnings\permanent] [HKEY_CURRENT_USER\Software\GSettings\org\gnucash\warnings\temporary]
The OFX imported transaction dates are correct in 3.1-3. Thanks very much.
OK, it's a fixed libofx problem then.
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=795347. Please update any external references or bookmarks.