diff --git a/addons/account/account_installer.xml b/addons/account/account_installer.xml
index 6d067a31a9f..77130168561 100644
--- a/addons/account/account_installer.xml
+++ b/addons/account/account_installer.xml
@@ -28,6 +28,7 @@
+
diff --git a/addons/account/installer.py b/addons/account/installer.py
index 4843f54187c..db68cac6583 100644
--- a/addons/account/installer.py
+++ b/addons/account/installer.py
@@ -63,14 +63,23 @@ class account_installer(osv.osv_memory):
'Periods', required=True),
'bank_accounts_id': fields.one2many('account.bank.accounts.wizard', 'bank_account_id', 'Bank Accounts',required=True),
'sale_tax':fields.float('Sale Tax(%)'),
- 'purchase_tax':fields.float('Purchase Tax(%)')
+ 'purchase_tax':fields.float('Purchase Tax(%)'),
+ 'company_id': fields.many2one('res.company', 'Company'),
}
+
+ def _default_company(self, cr, uid, context={}):
+ user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
+ if user.company_id:
+ return user.company_id.id
+ return False
+
_defaults = {
'date_start': lambda *a: time.strftime('%Y-01-01'),
'date_stop': lambda *a: time.strftime('%Y-12-31'),
'period':lambda *a:'month',
'sale_tax':lambda *a:0.0,
'purchase_tax':lambda *a:0.0,
+ 'company_id': _default_company,
#'charts':'configurable',
'bank_accounts_id':_get_default_accounts
}
@@ -251,10 +260,10 @@ class account_installer(osv.osv_memory):
elif val.account_type == 'check':
type = check_type_id
seq_prefix = "CHK/"
- else:
+ else:
type = check_type_id
seq_padding = None
-
+
vals_bnk = {'name': val.acc_name or '',
'currency_id': val.currency_id.id or False,
'code': str(110400 + code_cnt),
@@ -351,7 +360,7 @@ class account_installer(osv.osv_memory):
vals_journal['default_debit_account_id'] = acc_template_ref[obj_multi.property_account_expense_categ.id]
obj_journal.create(cr,uid,vals_journal)
-
+
# Creating Journals Sales Refund and Purchase Refund
vals_journal={}
data_id = mod_obj.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_sp_refund_journal_view')])
@@ -386,7 +395,7 @@ class account_installer(osv.osv_memory):
vals_journal['default_debit_account_id'] = acc_template_ref[obj_multi.property_account_expense_categ.id]
obj_journal.create(cr,uid,vals_journal)
-
+
# Bank Journals
view_id_cash = self.pool.get('account.journal.view').search(cr, uid, [('name','=','Bank/Cash Journal View')])[0] #TOFIX: Why put fixed name ?
view_id_cur = self.pool.get('account.journal.view').search(cr, uid, [('name','=','Bank/Cash Journal (Multi-Currency) View')])[0] #TOFIX: why put fixed name?
@@ -459,6 +468,7 @@ class account_installer(osv.osv_memory):
def execute(self, cr, uid, ids, context=None):
if context is None:
context = {}
+ res_obj = self.pool.get('account.fiscalyear')
data_pool = self.pool.get('ir.model.data')
obj_acc = self.pool.get('account.account')
super(account_installer, self).execute(cr, uid, ids, context=context)
@@ -535,18 +545,18 @@ class account_installer(osv.osv_memory):
if int(name) != int(res['date_stop'][:4]):
name = res['date_start'][:4] +'-'+ res['date_stop'][:4]
code = res['date_start'][2:4] +'-'+ res['date_stop'][2:4]
- res_obj = self.pool.get('account.fiscalyear')
- vals = {'name':name,
- 'code':code,
- 'date_start':res['date_start'],
- 'date_stop':res['date_stop'],
+ vals = {'name': name,
+ 'code': code,
+ 'date_start': res['date_start'],
+ 'date_stop': res['date_stop'],
+ 'company_id': res['company_id']
}
period_id = res_obj.create(cr, uid, vals, context=context)
if res['period'] == 'month':
res_obj.create_period(cr, uid, [period_id])
elif res['period'] == '3months':
res_obj.create_period3(cr, uid, [period_id])
-
+
# #fially inactive the demo chart of accounts
# data_id = data_pool.search(cr, uid, [('model','=','account.account'), ('name','=','chart0')])
# if data_id: