GNOME Bugzilla – Bug 170729
locale-specific delimiters in scheduled transactions templates and mortgage druid
Last modified: 2018-06-29 20:50:58 UTC
i tested gnucash on knoppix with german locales. then i copied the files to my main system (fink with US locales). first all worked fine, until scheduled transactions had to be run (at startup). at this point gnucash (1.8.9) crashed with: Error: create_each_transaction_he...(): Error parsing debit_formula "522,58" at "522,58": Undefined character Error: create_each_transaction_he...(): Some error in new transaction creation... changing all the "," to "." in terminated splits solved the problem. thanks for this great tool! Ralph.
[for reference:] <jsled> hmm. that does suck. <jsled> [regarding the '.' vs. ','. <jsled> ] <jsled> But that's one of the reasons I want a better expression parser and supporting code. <jsled> So we can store the parsed form, including the numeric parts seperate from the operators, variables, &c... <jsled> For the moment, you can probably just edit the formula in the data file, sZeta.
by "changing all the "," to "." in terminated splits solved the problem." i wanted to say editing the templates, not the post-run-generated transactions. sorry for this missunderstanding.. ralph.
Development on 1.8.x has stopped and this versions won't be maintained anymore. Does this problem still occur in 2.0.x versions of gnucash? I'm afraid it does.
*** Bug 370331 has been marked as a duplicate of this bug. ***
*** Bug 442527 has been marked as a duplicate of this bug. ***
Created attachment 89363 [details] [review] Patch for loan druid and localization bug in formulas
Comment on attachment 89363 [details] [review] Patch for loan druid and localization bug in formulas I've found a patch to make the loan druid work correctly. I've tested with french localization and it works perfectly. In the file /src/gnome/druid-loan.c : l930-935 -> g_string_append_printf( gstr, "pmt( %.5f / %0.2f : %0.2f : %0.2f : 0 : 0 )", (ldd->ld.interestRate / 100), 12.0, ( ldd->ld.numPer * ( ldd->ld.perSize == GNC_MONTHS ? 1 : 12 ) ) * 1., gnc_numeric_to_double(ldd->ld.principal) ); l944-949 -> g_string_printf( gstr, "ppmt( %.5f / %0.2f : i : %0.2f : %0.2f : 0 : 0 )", (ldd->ld.interestRate / 100), 12.0, ( ldd->ld.numPer * ( ldd->ld.perSize == GNC_MONTHS ? 1 : 12 ) ) * 1., gnc_numeric_to_double(ldd->ld.principal)); l958-953 -> g_string_printf( gstr, "ipmt( %.5f / %0.2f : i : %0.2f : %0.2f : 0 : 0 )", (ldd->ld.interestRate / 100), 12.0, ( ldd->ld.numPer * ( ldd->ld.perSize == GNC_MONTHS ? 1 : 12 ) ) * 1., gnc_numeric_to_double( ldd->ld.principal ) );
r16380; 2.2.1. In the future, please generate an attach actual diffs against the source file(s), rather than just giving us the updated version. If you're working off a svn checkout, `svn diff > /tmp/bug.diff` should be sufficient. Thanks! :)
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=170729. Please update any external references or bookmarks.