[FIX] Ensures the fiscal year is correctly chosen based on the company of the selecte...
authorDawn Richardson <dawn@catalyst.net.nz>
Mon, 15 Jul 2013 02:52:12 +0000 (14:52 +1200)
committerDawn Richardson <dawn@catalyst.net.nz>
Mon, 15 Jul 2013 02:52:12 +0000 (14:52 +1200)
lp bug: https://launchpad.net/bugs/1185275 fixed

bzr revid: dawn@catalyst.net.nz-20130715025212-ncgog0hbixnci7qh

addons/account/wizard/account_report_aged_partner_balance_view.xml
addons/account/wizard/account_report_common.py

index 77ebf02..be1d710 100644 (file)
@@ -11,7 +11,8 @@
                     <separator string="Aged Partner Balance"/>
                     <label string="Aged Partner Balance is a more detailed report of your receivables by intervals. When opening that report, OpenERP asks for the name of the company, the fiscal period and the size of the interval to be analyzed (in days). OpenERP then calculates a table of credit balance by period. So if you request an interval of 30 days OpenERP generates an analysis of creditors for the past month, past two months, and so on. "/>
                     <group col="4">
-                        <field name="chart_account_id" widget='selection'/>
+                        <field name="chart_account_id" widget='selection' on_change="onchange_chart_id(chart_account_id, context)"/>
+                        <field name="fiscalyear_id" invisible="1"/>
                         <newline/>
                         <field name="date_from"/>
                         <field name="period_length"/>
index 229ef3e..527dfb0 100644 (file)
@@ -34,7 +34,10 @@ class account_common_report(osv.osv_memory):
         res = {}
         if chart_account_id:
             company_id = self.pool.get('account.account').browse(cr, uid, chart_account_id, context=context).company_id.id
-            res['value'] = {'company_id': company_id}
+            now = time.strftime('%Y-%m-%d')
+            domain = [('company_id', '=', company_id),('date_start', '<', now), ('date_stop', '>', now)]
+            fiscalyears = self.pool.get('account.fiscalyear').search(cr, uid, domain, limit=1)
+            res['value'] = {'company_id': company_id, 'fiscalyear_id': fiscalyears and fiscalyears[0] or False}
         return res
 
     _columns = {
@@ -128,6 +131,9 @@ class account_common_report(osv.osv_memory):
         if ids and context.get('active_model') == 'account.account':
             company_id = self.pool.get('account.account').browse(cr, uid, ids[0], context=context).company_id.id
             domain += [('company_id', '=', company_id)]
+        else: #use current company id
+            company_id = self.pool.get('res.users').browse(cr, uid, uid, context=context).company_id.id
+            domain += [('company_id', '=', company_id)]
         fiscalyears = self.pool.get('account.fiscalyear').search(cr, uid, domain, limit=1)
         return fiscalyears and fiscalyears[0] or False