tag:infinitekind.tenderapp.com,2009-01-14:/discussions/suggestions/13597-cost-centre-feature-suggestionInfinite Kind: Discussion 2021-07-27T13:40:24Ztag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-01-20T09:30:47Z2021-01-20T09:30:47ZCost Centre Feature Suggestion<div><p>I'm a fellow user.</p>
<p>You threw me when you said cost centre.</p>
<p>Cost centres are used in business, each department or group would be a separate cost centre, rather than a grouping of expense types.</p>
<p>Moneydance does not allow for the arbitrary grouping of expenses under a heading, it is all based on the category structure. This is what would be needed to make it work within the existing framework.</p>
<p>To do it today you would have to create a custom report (graph) for each grouping that you want. So you could certain get the data it is just not the presentation you want.</p>
<p>I do not see why such a report could not be created by an extension, there have been reports created by extensions over the years.</p></div>dwgtag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-01-20T12:09:32Z2021-01-20T12:09:33ZCost Centre Feature Suggestion<div><p>Point taken on the use of Cost Centre as a name for this feature.</p>
<p>A more accurate description would be an ability to classify expense (and income) categories.</p>
<p>This would allow for two types of classification that adds flexibility to the rigid requirement presently to report upon the category parent/child structure:</p>
<p>Functional Classification - eg house, car, etc. (which is what we have today, except unrestricted by parent/child relationships)</p>
<p>Natural Classification - eg fixed, variable, one-off as per my original post.</p></div>marktag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-02-11T02:20:07Z2021-02-11T02:20:07ZCost Centre Feature Suggestion<div><p>Hi, wouldn't tags be helpful here: Fixed and Variable?</p></div>haroldtag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-10T10:37:44Z2021-04-10T10:37:45ZCost Centre Feature Suggestion<div><p>Hi @harold, if I could apply a tag at the category level rather than at the transaction level that would indeed offer a solution. My understanding is that tags are a transaction level attribute.</p></div>marktag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-10T10:53:51Z2021-04-10T10:53:51ZCost Centre Feature Suggestion<div><p>Use ‘fixed’ in the category name and then filter?<br>
Use fixed as the root category</p></div>Stuart Beesley (Mr Toolbox)tag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-10T12:02:12Z2021-04-10T12:02:14ZCost Centre Feature Suggestion<div><p>Hi Stuart, thanks for your suggestions. I'd go with the first option with a symbol suffix I think. I'm having a look at your extension scripts now, thanks for making them available.</p></div>marktag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-10T12:14:24Z2021-04-10T12:14:24ZCost Centre Feature Suggestion<div><p>... sounds like you need extract_data... dump to csv and open in excel.... depending on demand I could consider extra filters</p></div>Stuart Beesley (Mr Toolbox)tag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-10T12:14:47Z2021-04-10T12:14:47ZCost Centre Feature Suggestion<div><p>Mike Bray also has a new report writer extension tool too...</p></div>Stuart Beesley (Mr Toolbox)tag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-10T21:10:25Z2021-04-10T21:10:27ZCost Centre Feature Suggestion<div><p>Cheers Stuart, I've been playing with your extract_data python script most of today since your last comment.</p>
<p>I've added a filter by category option to the python script, I can send you the code if you like. This has been useful to find out how the 'other transaction' part of the api is working.</p>
<p>I've now discovered that each category has a comments field and I can use this to store a classification and export the category comment against the transaction split category in the csv output.</p></div>marktag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-10T21:18:54Z2021-04-10T21:18:54ZCost Centre Feature Suggestion<div><p>Well done. By all means send me your version.</p></div>Stuart Beesley (Mr Toolbox)tag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-16T16:13:25Z2021-04-16T16:30:45ZCost Centre Feature Suggestion<div><p>Stuart, this is my updated version of extract_data.py with the addition of a category filter for extraction of account register transactions. Feel free to merge into your codebase if you wish.</p>
<p>It filters only for Account.AccountType.EXPENSE and Account.AccountType.INCOME.</p></div>marktag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-16T16:15:11Z2021-04-16T16:15:15ZCost Centre Feature Suggestion<div><p>PY file didn't attach to my last message.</p></div>marktag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-17T13:01:11Z2021-04-17T13:01:11ZCost Centre Feature Suggestion<div><p>Hi Mark,</p>
<p>I like the code change and especially as it's 'sympathetic' to my code.. So a nice addition, and I have incorporated it..... I almost made no changes, but I think there might be a slight (rare-iso) issue... When on a split record (your file line 6899-6905), we need to check self (txn), and potentially the parent (ParentTxn) rather than .getOtherTxn() - (I agree it's a brain twister)... I have amended this section. Could you take a look and confirm you agree? Perhaps you could run your version and mine on your dataset filtering the same data and confirm it's OK/the same? If so, and it works for you, I will release the amended / updated code....</p>
<p>Thanks</p></div>Stuart Beesley (Mr Toolbox)tag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-18T12:31:53Z2021-04-18T12:31:55ZCost Centre Feature Suggestion<div><p>Hi Stuart</p>
<p>Thanks for incorporating my changes, I aimed to be as consistent with your style and placement as I could :-)</p>
<p>I compared the number of rows outtputted by your code and by my code and they agree for seven scenarios covering category matching that included single-entry splits and multiple-entry splits.</p>
<p>I'm not sure why you're also checking whether the Parent Txn has a category account type of income/expense though. This is new to me so I'm probably missing something, but I thought that Parent Transactions are the source side of the entry and so the AccountType must be a Bank Account, Credit Card, etc? If a refund is processed resulting in a negative value against an expense category this is still registered on the Split Txn side, rather than the Parent Txn being of income/expense type and the value being made positive - I ran a check to confirm for my own satisfaction.</p>
<p>As a further check, I removed from your code the additional conditionals that include the check against Parent Txn (in two places):</p>
<p>isCategory(parentAccount) and categoriesFilter_EAR in (parentAccount.getFullAccountName().upper().strip()))</p>
<p>and re-ran the seven scenarios - the row counts were consistent with my earlier results. This makes me wonder whether my dataset is missing some types of transactions that yours has.</p>
<p>Can you help me with understanding under what circumstances a ParentTxn passed into isCategory can return true?</p>
<p>Cheers</p></div>marktag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-18T13:56:18Z2021-04-18T13:56:18ZCost Centre Feature Suggestion<div><p>Hi Mark. As you probably know, categories are actually accounts. Thus you can actually have a category to category txn. In this case the parent would hold a category.</p>
<p>Now, I agree that the program pre filters txns for selected accounts, so probably a parent will never have a category using this filter. But future proofing in case we decide to also pre filter select categories too.</p>
<p>Given either side of a txn can be a category, it’s best to code for it in all scenarios whether receiving a split or a parent on a filtered txn. But it is also possible that you may not encounter this.</p>
<p>S</p></div>Stuart Beesley (Mr Toolbox)tag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-18T13:58:22Z2021-04-18T13:58:22ZCost Centre Feature Suggestion<div><p>Ps. To test. You can go to the register for a category and enter a (parent) txn with a category set to an account; even with multiple splits. This would therefore be a parent which is a category and splits that are accounts. (In theory).</p></div>Stuart Beesley (Mr Toolbox)tag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-18T16:23:55Z2021-04-19T06:28:20ZCost Centre Feature Suggestion<div><p>What you say makes sense Stuart, thanks.</p>
<p>I'm aware that categories are classed as accounts but hadn't considered that transactions could be made directly between categories, or indeed what sort of scenario this type of transaction would be used for in practice.</p>
<p>Partly because for me it's not immediately obvious that such transactions can be made through the UI. I've now added an expense category to the side bar which has given access to the registry for that category and have now added a category to category transaction. Will try a test later with splits.</p>
<p>Do you know what category to category transactions are used for in practice? This functionality seems a bit hidden away to me, unless I've missed somewhere else they can be accessed through the UI.</p></div>marktag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-18T16:30:14Z2021-04-18T16:30:15ZCost Centre Feature Suggestion<div><p>My last post seems to have got lost and hasn't added to the thread.</p>
<p>Thanks for the explanation Stuart, what you say makes sense to me.</p>
<p>I hadn't thought that category to category transactions were a 'thing' in Money Dance. I've added an expense category to the sidebar and can now add a category-to-category transaction which I'll have a go testing with splits later on. Seems a bit hidden away this capability, is it achievable elsewhere in the UI?</p>
<p>Do you know what category-to-category transactions would be used for in practice?</p></div>marktag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-18T16:45:49Z2021-04-18T16:45:49ZCost Centre Feature Suggestion<div><p>Tools>Categories> highlight one > right click > Open in new window.<br>
Create new Txn.<br>
At this point if you use a category of an Account, then you will have a parent which is a category and a split which is an account.<br>
Or just use a category, and thus you have a cat to cat txn.</p>
<p>IMHO - this can be dangerous as you can get 'lost' txns and they are difficult to find.</p>
<p>However, I do use them. I create a sub account under my main bank account called 'allocations' and I use cat>>cat txns to 'move' / 'allocate' costs from one category to another. The total always nets to zero. Hence, I can report on the account and / or include the sub account and include/exclude the allocations...</p></div>Stuart Beesley (Mr Toolbox)tag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-18T17:51:58Z2021-04-18T17:51:59ZCost Centre Feature Suggestion<div><p>Interesting, thanks!</p></div>marktag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-18T21:18:58Z2021-04-18T21:18:58ZCost Centre Feature Suggestion<div><p>I'm a fellow user.</p>
<p>For what it is worth I do use category to category transfers. As Stuart said categories are really just a type of account, and Also to note as Moneydance is based on Double Entry accounting every transaction is just movement of funds between two accounts.</p>
<p>There are two situations I have used category to category transfers.</p>
<p>The first is for older versions of Moneydance where the Tax date was only used in very few reports. I would use accounting accrual techniques along with categories to ensure transactions were reported during the period when I needed them to rather than when they were actually paid.</p>
<p>Another time I use them are with things like funds and annual tax statements. The figures in the Tax statement are embedded in the data throughout the year, hence they have no value as far as the accounts are concerned but I pass them through the accounts in Moneydance using category to category transfers, so I can generate a Income and Expense report that contains needed information for Tax time.</p>
<p>I do the same thing with capital gains as well.</p>
<p>Moneydance has the flexibility to do this, but I concede you have to understand what is going on to keep everything in order.</p></div>dwgtag:infinitekind.tenderapp.com,2009-01-14:Comment/489821402021-04-27T13:39:04Z2021-04-27T13:39:05ZCost Centre Feature Suggestion<div><p>Thanks @dwg. Would be great for Money Dance documentation to outline these advanced (to me) use-cases you're employing.</p></div>mark