Thanks for sending me. Unfortunately I was not successful in running you r module. I had to make these changes in order to get the module loaded:
-> In openerp/addons/account/report/__init__.py I had to comment out: #import account_balance_sheet #import account_profit_loss because the new modules would conflict with existing modules -> openerp/addons/account_report_alt/report/account_balance_sheet.py I had to make this change: #from openerp.addons.account_report_alt.report import account_profit_loss import account_profit_loss because the server complained it couldn't find openerp.addons.account_report_alt.report import account_profit_loss Error #1 is of course related to #2, but I fail to see what is wrong with the path openerp.addons.account_report_alt.report. Anyway, WHEN I have it up and running, I get this error: [2012-02-17 14:18:34,408][demo] ERROR:web-services:[11]: File "/usr/share/pyshared/openerp/addons/account_report_alt/report/account_profit_loss.py", line 63, in set_context [2012-02-17 14:18:34,408][demo] ERROR:web-services:[12]: new_ids = 'chart_account_id' in data['form'] and data['form']['chart_account_id'] and [data['form']['chart_account_id'][0]] or [] [2012-02-17 14:18:34,408][demo] ERROR:web-services:[13]: TypeError: 'int' object is not subscriptable > /usr/share/pyshared/openerp/netsvc.py(131)abortResponse() -> raise Which seems to me either a version problem or a wrong object class, maybe because I changed the wrong things. I think the errors are because my lack of understanding. However, when I look into the code of account_profit_loss.py, it seems to me that still the absolute value of the account balance is being used to calculate net profit or net loss. In the mean time, I got some replies on my own bug report https://bugs.launchpad.net/bugs/930739 and in the OpenERP forum. Unless the error is solved sooner, I would be gratefule if you could reproduce the bug in the demo version and confirm. I noticed you are from the Netherlands as well, so may it is a Dutch problem that we want to have negative balances on Expense accounts. Just kidding, the demo database I use is English language with a generic accounting scheme. jlinkels -- You received this bug notification because you are a member of OpenERP Indian Team, which is subscribed to OpenERP Addons. https://bugs.launchpad.net/bugs/784339 Title: [stable 6.0.2] Account Balance Sheet parser logic error leads to incorrect totals amounts and developer confusion Status in OpenERP Addons (modules): Fix Released Bug description: If you look at the section where it calculates sum_dr and sum_cr it is incorrect. Well it is technically correct, but in the sense of having a balance sheet that balances it is incorrect. Take the accounting equation property = property rights expanded to assets = liabilities + equity In the case of a net profit we incorrectly add the result to sum_dr, our equity has increased afterall, so sum_cr should increase, (this behaviour is correct, except the function is named wrong) however in the case of a net loss we subtract the amount from sum_cr (which should be sum_dr) which is incorrect as our equity has reduced. However here is the first bug - sum_dr and sum_cr are around the wrong way - sum_cr is increased for asset accounts, and sum_dr is increased for liabilities - it should be the other way around Put another way, for a balance sheet, we don't really want the totals to be the sum of dr's and cr's, we want it to be the total of the stuff on the left (Assets) and the total of the stuff on the right (Property Rights). So in the case of a Net Profit we must increase equity (credit) and in the case of a net loss we must reduce equity (credit). At no point should we be changing debits. The value of our Assets has not changed (in so far that a net loss already reduces our assets), it is our equity that has reduced. Now to make this one step more confusing, and for some unknown reason it has been decided to leave liabilities as a negative balance, and then on the report use absolute value which is also incorrect. Many assets and liabilities should have a balance opposite of the standard, Accumulated depreciation for example in Assets, VAT Paid in Liabilities, Bank Accounts temporarily in overdraft. In my own parser, which I have written, to resolve this we declare a dictionary called signs and at the point we compute the account.balance we multiple it by the sign. sign = { 'fixed_asset': 1, 'asset': 1, 'liability': -1, 'fixed_liability': -1, 'equity': -1, } We use more types than standard but you get the idea. Assets are their balance, liability is their balance *-1. Then all we do in the for account in accounts loop is make the balance: account.balance * sign[typ] So in summary sum_dr and sum_cr are round the wrong way. Adding a net loss to Assets is incorrect - it should be subtracted from Equity. values (already reported bug) should not be absolute, but rather their inverse for liability and equity accounts. To manage notifications about this bug go to: https://bugs.launchpad.net/openobject-addons/+bug/784339/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~openerp-india Post to : [email protected] Unsubscribe : https://launchpad.net/~openerp-india More help : https://help.launchpad.net/ListHelp

