Commit Graph

22386 Commits

Author SHA1 Message Date
Frank H. Ellenberger
21a039f278 L12N:de_DE: Remove some redundant slots from SKR04
empty notes, flags with value false, ...

- reduces the size by 30%
2020-03-04 09:37:06 +01:00
Dr. Peter Zimmerer
38bafcce06 Bug 797636 - Incorrect Online account matches cannot be deleted
A push button with text "Delete selected matches" is added to the
"Match Online accounts with GnuCash accounts" page of the "Online
Banking Setup" tool.
Additionally, the underlying tree view is set to multiple selection
mode from single selection mode.
Pushing the button will remove the matched GnuCash account from
all selected AqBanking (Online) accounts.
2020-03-02 16:54:03 +01:00
Christopher Lam
e85b28f00f Merge remote-tracking branch 'upstream/maint' 2020-03-01 21:31:21 +08:00
Geert Janssens
ab2edfccf1 quality-of-life improvements for python bindings 2020-03-01 11:00:53 +01:00
Christopher Lam
2c1ce30d7d [qif-to-gnc] centralize arithmetic functions 2020-03-01 13:40:12 +08:00
Christopher Lam
742b97229c [trep-engine] when Running Balance is shown, print "Balance b/f" 2020-03-01 13:30:31 +08:00
Christopher Lam
1d9c51d8e4 [qif-to-gnc] Bug 796579 - Cannot go forward with empty duplicates screen
better fix for bug 796579.

far-acct-info is a record with acct-info
far-acct-name is a string
far-acct      is a gnucash account object

(default-unspec-acct) always returns a string "Unspecified".

983c7ce0b was trying to find, from qif-memo-map the mapping for
"Unspecified" which isn't typically part of qif-memo-map. Therefore
far-acct-info would remain #f and fail the qif-map-entry:gnc-name.

Better fix: if far-acct-info cannot be derived, use unspecified account.
2020-03-01 13:30:31 +08:00
Christopher Lam
ec99c00714 [qif-to-gnc] use (ice-9 match), and compact functions 2020-03-01 13:30:31 +08:00
Christopher Lam
11689e2a4d [qif-guess-map] use (ice-9 match), and compact functions 2020-03-01 11:17:04 +08:00
Christopher Lam
890c96ce23 [qif-merge-groups] Move gnc:account-tree-get-transactions to qif-to-gnc.scm
This function is only used by qif-to-gnc.scm
2020-03-01 11:17:04 +08:00
andygoblins
08af4ce9bd context manager examples 2020-02-29 17:46:01 -06:00
andygoblins
f1f450cedc make Session a context manager 2020-02-29 17:46:01 -06:00
andygoblins
4502afad4f fix __eq__ in Split and Transaction
Compare guids with .Equal() when comparing Split and Transaction instances.
2020-02-29 17:44:55 -06:00
Ferran Pallarès
104519290d Fix rounding precision when importing prices from CSV 2020-02-29 18:51:45 +01:00
Geert Janssens
453919b3f6 Bug 797613 Due Invoices Reminder shows Job Name instead of Company Name
This closes #653
2020-02-29 17:34:02 +01:00
Rob Laan
7845f81846 Bug 797613 Due Invoices Reminder shows Job Name instead of Company Name
In the invoices due dialog, the column 'Company' should show the name of the customer/vendor of an invoice/bill.
Currently the content is set to the owner name, but if a job is assigned to the invoice, that will show the job name.
This change changes the content to the name of the owner parent, which is always  the customer/vendor name.
2020-02-29 16:10:24 +01:00
Geert Janssens
d7eb24f205 Travis - don't try to copy the removed afterfailure file to the test container 2020-02-29 13:43:33 +01:00
Geert Janssens
b5dfef628e Travis - use ctest built-in feature to verbosely log test failures
Setting CTEST_OUTPUT_ON_FAILURE will cause ctest to log all
output from failing tests (and only from failing tests).
This will reduce our ci output in case of failures as our
homebrew script 'afterfailure' would output all test logs
in case of failure not only the output of failed tests.
2020-02-29 12:58:18 +01:00
John Ralls
95857a8b99 Merge Christian Gruber's 'fix_bug_797587' into maint. 2020-02-28 21:29:58 -07:00
Geert Janssens
5c468b33bf Housekeeping - clarify the use of the word backend in a warning message
In this context backend refers to a preferences implementation.
To disambiguate this from our qof backends, add the word 'preferences'
2020-02-28 20:46:16 +01:00
Geert Janssens
e501de8e08 Remove stub files from translation catalog
These were added accidentally when fixing build order issues using makefiles
2020-02-28 20:18:14 +01:00
Geert Janssens
206cb7029b Build order - reports.scm depends on 4 standard reports and other standard reports depend on reports.scm
So we have to split up the standard reports target in one that needs to be built
before reports.go and one that is built after reports.go.
2020-02-28 19:31:49 +01:00
Geert Janssens
5e1316444e Fix build order of dependencies for tax sources 2020-02-28 18:55:07 +01:00
Geert Janssens
90345096e4 Merge branch 'maint' 2020-02-28 18:37:10 +01:00
Geert Janssens
b9d625d25f Move lot viewer to business-reports
It depends on the business-reports module which is not available to
standard-reports at build time
Interestingly this only is an issue for the makefile generator
The ninja generator works fine
2020-02-28 18:13:26 +01:00
Geert Janssens
feee495f2e Bug 797624 - Wrong Decimal for Vietnam currencies 2020-02-25 16:40:50 +01:00
Geert Janssens
2b70b1c1e4 Fix travis - needs gwenhywfar gtk3 devel package 2020-02-24 16:46:54 +01:00
Geert Janssens
987fc15fc9 Drop our local copy of pkg_check_modules
It was needed for cmake versions older than 3.6, but we
require at least 3.10 now
2020-02-24 13:33:06 +01:00
Geert Janssens
6316debc17 Moderately bump aqbanking and gwenhywfar versions
The chosen versions are those available in Ubuntu 18.04, our baseline distro.
This allows to drop our own copy of gwenhywfar-gui.
2020-02-24 13:31:02 +01:00
John Ralls
9df290da7c Bug 797540 - Mapping of aqbanking accounts to gnucash accounts doesn't work 2020-02-23 14:59:05 -08:00
Dr. Peter Zimmerer
d4f024eff7 Clear hbci KVP from accounts no longer associated with an online one
A reverse hash table is introduced in order to memorize the
matched GnuCash accounts before starting the matching wizard.
This hash table is used within the aai_on_finish callback
to delete only the KVPs of those GnuCash accounts which are
no longer matched with an AqBanking account.
All other GnuCash accounts (previously matched and currently
matched) are just updated with the new assignments.
2020-02-23 10:47:44 +01:00
Dr. Peter Zimmerer
768b25dfd6 Using equality check from commit 2f38095 for removal of unassigned GC accounts
Using the equality check introduced with the previous commit 2f38095
also for checking if a newly assigned GnuCash account has been
previously assigned to a different AqBanking account and
deleting the previous assignment to keep the matches unique.
2020-02-23 10:45:08 +01:00
Dr. Peter Zimmerer
6add6b1f1d New callback functions for matching online accounts with GnuCash accounts
Introducing a dedicated callback function to test two AqBanking accounts for equality and
an associated hash function returning the account unique id as hash value.
2020-02-23 10:36:18 +01:00
Frank H. Ellenberger
0e6c9e2191 Merge PR #635 into maint 2020-02-19 02:27:24 +01:00
Frank H. Ellenberger
0964b31c47 L12N:de_CH: Several fixes on KMU template
Add missing namespaces.
Replace type="guid" by type="new".
Add Placeholder slot to groups.
Remove redundant
   '<act:commodity-scu>100</act:commodity-scu>' and
   '<act:description>.*</act:description>'
<act:type> adjustments:
   RECEIVABLE should only be used for invoices,
   PAYABLE: "Verbindlichkeiten aus Lieferungen und Leistungen"
   (at least one) EQUITY is required. Because we currently do not have
an account type PASSIVA, the node "Passiven" was replaced by a note in
<description> it's child accounts.
2020-02-19 01:34:53 +01:00
Christopher Lam
fd76a31104 [utilities] deprecate gnc:substring-replace-from-to
with jqplot gone, no need to use this function anymore.
2020-02-19 06:19:27 +08:00
Christopher Lam
d5729306a0 [report-core] don't need to remove jquery anymore 2020-02-19 06:19:27 +08:00
David Cousens
8e1dba7eae Bug 797338 - Change "U+R" and "R" labels to "U+C" and "C" in Import matcher
This closes #554
2020-02-18 18:31:29 +01:00
Geert Janssens
427368eafd Merge PR#640 2020-02-18 14:52:02 +01:00
Christopher Lam
1f83cfaf64 [html-chart] compact, use (ice-9 match)
Use (ice-9 match) for easier matching for the variable
'path'. Explanation; consider the snippet

(cond
 ((null? path) ...A...)
 ((and (pair? (car path)) (number (caar path))) ...B...)
 (else ...C...))

This snippet is a shorthand for nested if-then-else clauses, testing
'path' successfully to determine whether to evaluate A, B or C. Some
code will also use components of 'path' eg B uses (caar path).

Using Alex Shinn's match.scm library allows more concise matching and
assignment at the same time. The syntax is (match EXPR (CLAUSE BODY ...))

(define (try path)
 (match path
   (() (display "null"))
   ((((? number? idx)) . tail) (display "B") (display idx) (newline) (display tail))
   ((head . tail) (display "C") (display head) (newline) (display tail))))

A: the first match is easy -- if path is '() then evaluate the first
body.

     (try '())
 --> "null"

C: the third match is easy -- if path is a pair, then assign 'head' to
pair's car, 'tail' to the pair's cdr, and evaluate the body which has
access to head and tail. Note the head is a string, and the tail is a
list containing a single string.

     (try '("this" "that"))
 --> Cthis
     (that)

B: the second match is more difficult -- let's consider the
broken-down clause: a pair, (HEAD . tail); where HEAD is a
single-element list (ELT), and ELT is a match conditional satisfying
number? and is also assigns the variable idx (? number? idx).

Example:
    (try '((2) "two"))
--> B2
    (two)

This means the match is successful when 'path' is a pair, the pair's
car is a single-element list, and the list's sole element is a
number. The latter is bound to the variable 'idx' which is accessible
in the body. The variable 'tail' contains the path's cdr which
contains a single string.

Note: later in same commit we also use the identifier _ to denote
elements which *must* be matched, but are *not* bound to any variable.

e.g. the clause (((? out-of-bound?)) . _) means that path is a pair,
whose car is a single-element list, and the element satisfies the
predicate out-of-bound?. We don't need to use the (cdr path) therefore
we use _ as a placeholder.
2020-02-18 18:44:12 +08:00
Christopher Lam
172e371d8a [report-core] compact, use (ice-9 match) 2020-02-18 18:21:44 +08:00
Christopher Lam
c671c57947 [jqplot] bye bye jqplot 2020-02-18 18:21:44 +08:00
Christian Gruber
7509b542da Simplify function build_bayes()
Inline function parse_bayes_imap_info() into build_bayes() and remove
temp_guid.
2020-02-17 23:41:05 +01:00
Christian Gruber
01c76e2391 Remove unused template of function for_each_slot_prefix()
for_each_slot_prefix() is not used anywhere with two arguments
2020-02-17 23:41:05 +01:00
Christian Gruber
41863be9c7 Avoid copying local instance of AccountTokenCount 2020-02-17 23:41:05 +01:00
Christian Gruber
d07d4b962f Fix tokenize_string()
This fix prevents empty strings as tokens and removes duplicated tokens.
Function tokenize_string() is used for bayesian import matching, where
empty token strings or duplicated tokens lead to wrong results within
probability calculation for matching of a transaction to an account.

Empty token strings can occur if (see function g_strsplit())
* two or more spaces occur directly after another
* the string begins or ends with spaces
2020-02-17 23:41:05 +01:00
Robert Fewell
6149352e6b Bug 797489 - No option to use account codes in Budget View - Part2
Add option to allow the account code column to be shown in the budget
tree view and as such the account tree view can be sorted by this column
2020-02-17 14:14:43 +00:00
Robert Fewell
2b2fa8476e Change the negative numbers CSS class name to new format
Change from negative-numbers to gnc-class-negative-numbers
2020-02-17 13:36:11 +00:00
Robert Fewell
e7cfcb3f70 Rename dialog-utils get_negative_color
Rename dialog-utils 'get_negative_color' to 'gnc_get_negative_color' as
it is used in more than one source file.
2020-02-17 13:28:27 +00:00
Geert Janssens
dd18128927 Tweak appdata file generation some more
Should make it easier for packagers to provide their own releases data.
2020-02-17 14:23:43 +01:00