New split proposition
Reported by Virgil Dupras | June 4th, 2009 @ 04:53 PM | in v1.8 (closed)
In this proposition, a transaction always has an amount. This amount is the amount of money that is moved. In other words, it's the sum of debits (which is equal to the sum of credits) in the transaction. This amount is a given value. It is not calculated from the splits. In the context of calculated transactions, it is the result of the calculation.
The splits are divided in two: the credit ("from") splits and the debit ("to") splits. Each split can be either a fixed amount or a percentage. To compute the amount of each split, moneyguru first allocates the fixed amounts. The rest is split between the percentage splits. If the percentages don't add up to 100%, the remaining amount is considered "unassigned". The credit splits and the debit splits are processed independently.
I can't find a completely satisfying solution if the total of fixed amounts is greater than the transaction amount, but I suggest that moneyguru allocates the fixed amounts in the order they appear in the transaction and stops allocating when there is no money left.
When an account name is entered directly in the table, it should create a 100% split. I'm not sure of the behavior we should adopt when more than one account is added, but we probably can find some useful defaults.
It's interesting to note that this proposition makes it possible to mass edit splits.
Modified Proposition
The original proposition for this ticket makes things a little to complex for my own taste, but I'd also like to have an Amount field in the info panel to simplify things a little bit. This ticket, instead of introducing a new notation (percentages) for amount fields in split, would simply define an auto-attribution mechanism when the Amount field is changed. This mechanism would be this one below...
The Amount field would contain the total amount of money moved by the transaction (what it currently shows in the transaction table). For 2-splits transactions, modifying the amount field would be like modifying the amount field in the transaction table: it just changes the 2 splits with the new amount. For transactions with more than 2 splits, it would consider the 2 first splits as the "variable" splits. Subsequent splits are considered as invariant, and moneyGuru simply balances the 2 variable splits so that the new amounts fits (note that if the 2 first splits are on the same side, moneyGuru must, of course, the first 2 splits that are not on the same side).
When the splits are edited, transaction balancing tries to preserve the value of the Amount field. For example, if the amount of a transaction is 100$ and that a 3rd split of 10$ is added, rather than adding a new unassigned split for 10$ (what happens now), the "main splits" are re-balanced to fit the 100 amount.
One exception to that is transactions involving more than one currencies. The Amount field would show what the transaction currently shows (a "natified" amount), but the field would be read-only, and a label would explain that multi-currency transactions must be edited through the split table.
Moreover, the transaction info panel would be split in 2 tabs, the split table going in a separate view (there's going to be a 3rd tab with #19). The split tab would also contain an Amount field, allowing the user to directly see the effect changing the Amount field has on the splits.
Comments and changes to this ticket
-
Virgil Dupras September 5th, 2009 @ 07:10 PM
- Tag changed from from-trac, suggestion to feature, from-trac
[not-tagged:"suggestion" tagged:"feature" bulk edit command]
-
Virgil Dupras February 18th, 2010 @ 02:21 PM
- State changed from hold to accepted
- Milestone set to v1.8
I modified the ticket to simplify it a little bit.
-
Virgil Dupras February 19th, 2010 @ 12:58 PM
- Tag changed from feature, from-trac to big, feature, from-trac
- Assigned user set to Virgil Dupras
-
Virgil Dupras February 20th, 2010 @ 11:36 AM
(from [066bdd192a5e]) [#16] Started implementing the new balancing system. http://bitbucket.org/hsoft/moneyguru/changeset/066bdd192a5e/
-
Virgil Dupras February 20th, 2010 @ 11:36 AM
(from [3a4b5fb6c42d]) [#16] Added an Amount field to core's transaction panel (but it really doesn't do much yet). http://bitbucket.org/hsoft/moneyguru/changeset/3a4b5fb6c42d/
-
Virgil Dupras February 20th, 2010 @ 01:32 PM
(from [f59107cd1a9a]) [#16] Added an Amount field to the transaction info panel's views. http://bitbucket.org/hsoft/moneyguru/changeset/f59107cd1a9a/
-
Virgil Dupras February 20th, 2010 @ 05:59 PM
(from [302667665e92]) [#16] When a currency-less amount is typed in the transaction panel, the previous amount's currency is used. http://bitbucket.org/hsoft/moneyguru/changeset/302667665e92/
-
Virgil Dupras February 20th, 2010 @ 05:59 PM
(from [3102c81c6770]) [#16] Transaction info panel's amount field becomes disabled when a transaction is MCT. http://bitbucket.org/hsoft/moneyguru/changeset/3102c81c6770/
-
Virgil Dupras February 20th, 2010 @ 05:59 PM
(from [eaca883c2ae6]) [#16] When doing multi-currency balancing, an amount is now assigned to the transaction. Also, the transaction table now uses Transaction.amount, which triggered a few test failures here and there which had to be fixed. http://bitbucket.org/hsoft/moneyguru/changeset/eaca883c2ae6/
-
Virgil Dupras February 20th, 2010 @ 05:59 PM
(from [6a7680c81303]) [#16] Integrated the entry table to the new balancing system. http://bitbucket.org/hsoft/moneyguru/changeset/6a7680c81303/
-
Virgil Dupras February 20th, 2010 @ 06:42 PM
(from [4619e505d791]) [#16] The default currency for amounts in the split table is now the currency of the transaction's amount. http://bitbucket.org/hsoft/moneyguru/changeset/4619e505d791/
-
Virgil Dupras February 20th, 2010 @ 06:42 PM
(from [ad49ad3cdbf8]) [#16] The Amount field in the transaction panel is updated when it is modified through the split table. http://bitbucket.org/hsoft/moneyguru/changeset/ad49ad3cdbf8/
-
Virgil Dupras February 21st, 2010 @ 02:06 PM
(from [80fd545900fc]) [#16] In the split table, the 2 main splits are now in bold font. http://bitbucket.org/hsoft/moneyguru/changeset/80fd545900fc/
-
Virgil Dupras February 21st, 2010 @ 04:55 PM
(from [99c8ebb029ce]) [#16] Changing the currency of the Amount field changes all splits' currency. http://bitbucket.org/hsoft/moneyguru/changeset/99c8ebb029ce/
-
Virgil Dupras February 21st, 2010 @ 04:55 PM
(from [b3ea30213f48]) [#16] Negative amounts are reversed. http://bitbucket.org/hsoft/moneyguru/changeset/b3ea30213f48/
-
Virgil Dupras February 21st, 2010 @ 05:26 PM
(from [f5c7bd18cdbd]) [#16] Transactions with more than 2 splits (of the same currency) can have their amount field edited through the ttable. http://bitbucket.org/hsoft/moneyguru/changeset/f5c7bd18cdbd/
-
Virgil Dupras February 21st, 2010 @ 07:57 PM
(from [a51fa6f987ba]) [#16] The Amount field in the mass edition panel is now enabled even when transactions with more than 2 splits are selected. http://bitbucket.org/hsoft/moneyguru/changeset/a51fa6f987ba/
-
Virgil Dupras February 22nd, 2010 @ 09:40 AM
(from [379fef4fcd9c]) [#16] Added drag & drop support for splits. http://bitbucket.org/hsoft/moneyguru/changeset/379fef4fcd9c/
-
Virgil Dupras February 22nd, 2010 @ 02:02 PM
(from [3eacd2811f89]) [#16] Added a tab view with 2 tabs, Info and Splits. http://bitbucket.org/hsoft/moneyguru/changeset/3eacd2811f89/
-
Virgil Dupras February 22nd, 2010 @ 05:03 PM
(from [3d0edad1fe66]) [#16] Fixed a glitch with transaction balancing when a split would be deleted and pushed amount field related code up the chain so it can be used in the schedule panel. http://bitbucket.org/hsoft/moneyguru/changeset/3d0edad1fe66/
-
Virgil Dupras February 22nd, 2010 @ 05:03 PM
(from [81bb39aa4540]) [#16] Added the Amount field to the schedule panel, as well as the Info/Splits tab view. http://bitbucket.org/hsoft/moneyguru/changeset/81bb39aa4540/
-
Virgil Dupras February 22nd, 2010 @ 05:28 PM
(from [a42af96b4771]) [#16] Tweaked Qt UI for Windows. http://bitbucket.org/hsoft/moneyguru/changeset/a42af96b4771/
-
Virgil Dupras February 22nd, 2010 @ 05:29 PM
- State changed from accepted to fixed
-
Virgil Dupras February 22nd, 2010 @ 06:23 PM
(from [44a591dcf4e4]) [#16] Updated the help file to reflect the new system. http://bitbucket.org/hsoft/moneyguru/changeset/44a591dcf4e4/
-
Virgil Dupras March 25th, 2010 @ 11:02 AM
(from [9ef220cee8e8]) [#16] Removed the new split feature... snif... http://bitbucket.org/hsoft/moneyguru/changeset/9ef220cee8e8/
-
Virgil Dupras June 7th, 2011 @ 02:17 PM
- Tag changed from big, feature, from-trac to big, feature
- Milestone order changed from 0 to 0
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป
People watching this ticket
Referenced by
- 16 New split proposition (from [066bdd192a5e]) [#16] Started implementing the new ...
- 16 New split proposition (from [3a4b5fb6c42d]) [#16] Added an Amount field to core...
- 16 New split proposition (from [f59107cd1a9a]) [#16] Added an Amount field to the ...
- 16 New split proposition (from [302667665e92]) [#16] When a currency-less amount i...
- 16 New split proposition (from [3102c81c6770]) [#16] Transaction info panel's amou...
- 16 New split proposition (from [eaca883c2ae6]) [#16] When doing multi-currency bal...
- 16 New split proposition (from [6a7680c81303]) [#16] Integrated the entry table to...
- 16 New split proposition (from [4619e505d791]) [#16] The default currency for amou...
- 16 New split proposition (from [ad49ad3cdbf8]) [#16] The Amount field in the trans...
- 16 New split proposition (from [80fd545900fc]) [#16] In the split table, the 2 mai...
- 16 New split proposition (from [99c8ebb029ce]) [#16] Changing the currency of the ...
- 16 New split proposition (from [b3ea30213f48]) [#16] Negative amounts are reversed...
- 16 New split proposition (from [f5c7bd18cdbd]) [#16] Transactions with more than 2...
- 16 New split proposition (from [a51fa6f987ba]) [#16] The Amount field in the mass ...
- 16 New split proposition (from [379fef4fcd9c]) [#16] Added drag & drop support for...
- 16 New split proposition (from [3eacd2811f89]) [#16] Added a tab view with 2 tabs,...
- 16 New split proposition (from [3d0edad1fe66]) [#16] Fixed a glitch with transacti...
- 16 New split proposition (from [81bb39aa4540]) [#16] Added the Amount field to the...
- 16 New split proposition (from [a42af96b4771]) [#16] Tweaked Qt UI for Windows. ht...
- 16 New split proposition (from [44a591dcf4e4]) [#16] Updated the help file to refl...
- 16 New split proposition (from [9ef220cee8e8]) [#16] Removed the new split feature...