diff --git a/addons/account/account.py b/addons/account/account.py
index 7445d9db60e..79ac233049b 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -228,6 +228,7 @@ class account_account(osv.osv):
'note': fields.text('Note'),
'company_currency_id': fields.function(_get_company_currency, method=True, type='many2one', relation='res.currency', string='Company Currency'),
'company_id': fields.many2one('res.company', 'Company', required=True),
+ 'active': fields.boolean('Active', select=2),
}
def _default_company(self, cr, uid, context={}):
@@ -235,13 +236,16 @@ class account_account(osv.osv):
if user.company_id:
return user.company_id.id
return self.pool.get('res.company').search(cr, uid, [('parent_id', '=', False)])[0]
+
_defaults = {
'sign': lambda *a: 1,
'type': lambda *a: 'view',
'reconcile': lambda *a: False,
'close_method': lambda *a: 'balance',
'company_id': _default_company,
+ 'active': lambda *a: True,
}
+
def _check_recursion(self, cr, uid, ids):
level = 100
while len(ids):
diff --git a/addons/account/account_analytic_line.py b/addons/account/account_analytic_line.py
index 77e318c5ff2..1295357558a 100644
--- a/addons/account/account_analytic_line.py
+++ b/addons/account/account_analytic_line.py
@@ -99,23 +99,6 @@ class timesheet_invoice(osv.osv):
}
_order = 'name desc, account_id'
def init(self, cr):
- #cr.execute("""
- #create or replace view report_hr_timesheet_invoice_journal as (
- # select
- # min(l.id) as id,
- # substring(l.create_date for 7)||'-01' as name,
- # sum(greatest(-l.amount,0)) as cost,
- # sum(greatest(l.amount,0)) as revenue,
- # sum(l.unit_amount*u.factor) as quantity,
- # journal_id,
- # account_id
- # from account_analytic_line l
- # left join product_uom u on (u.id=l.product_uom_id)
- # group by
- # substring(l.create_date for 7),
- # journal_id,
- # account_id
- #)""")
cr.execute("""
create or replace view report_hr_timesheet_invoice_journal as (
select
@@ -138,5 +121,6 @@ class timesheet_invoice(osv.osv):
substring(l.date for 7),
journal_id,
account_id
+ limit 12
)""")
timesheet_invoice()
diff --git a/addons/account/account_move_line.py b/addons/account/account_move_line.py
index f91712f1940..a098924ae43 100644
--- a/addons/account/account_move_line.py
+++ b/addons/account/account_move_line.py
@@ -192,8 +192,8 @@ class account_move_line(osv.osv):
'balance': fields.function(_balance, method=True, string='Balance'),
'active': fields.boolean('Active'),
'state': fields.selection([('draft','Draft'), ('valid','Valid')], 'State', readonly=True),
- 'tax_code_id': fields.many2one('account.tax.code', 'Tax Account', states={'valid':[('readonly', True)]}),
- 'tax_amount': fields.float('Tax/Base Amount', digits=(16,2), select=True, states={'valid':[('readonly', True)]}),
+ 'tax_code_id': fields.many2one('account.tax.code', 'Tax Account'),
+ 'tax_amount': fields.float('Tax/Base Amount', digits=(16,2), select=True),
}
_defaults = {
'blocked': lambda *a: False,
diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index f660499ac61..debe8ab5ca6 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -129,6 +129,7 @@
+
diff --git a/addons/account/partner.py b/addons/account/partner.py
index 9c3cd55b6a6..d500c0494d4 100644
--- a/addons/account/partner.py
+++ b/addons/account/partner.py
@@ -39,7 +39,7 @@ class res_partner(osv.osv):
res={}
query = self.pool.get('account.move.line')._query_get(cr, uid, context=context)
for id in ids:
- cr.execute("select sum(debit-credit) from account_move_line as l where account_id in (select id from account_account where type = %s) and partner_id=%d and reconcile_id is null and "+query, ('receivable', id))
+ cr.execute("select sum(debit-credit) from account_move_line as l where account_id in (select id from account_account where type = %s and active) and partner_id=%d and reconcile_id is null and "+query, ('receivable', id))
res[id]=cr.fetchone()[0] or 0.0
return res
@@ -47,7 +47,7 @@ class res_partner(osv.osv):
res={}
query = self.pool.get('account.move.line')._query_get(cr, uid, context=context)
for id in ids:
- cr.execute("select sum(debit-credit) from account_move_line as l where account_id in (select id from account_account where type = %s) and partner_id=%d and reconcile_id is null and "+query, ('payable', id))
+ cr.execute("select sum(debit-credit) from account_move_line as l where account_id in (select id from account_account where type = %s and active) and partner_id=%d and reconcile_id is null and "+query, ('payable', id))
res[id]=cr.fetchone()[0] or 0.0
return res
@@ -56,7 +56,7 @@ class res_partner(osv.osv):
return []
where = ' and '.join(map(lambda x: '(sum(debit-credit)'+x[1]+str(x[2])+')',args))
query = self.pool.get('account.move.line')._query_get(cr, uid, context={})
- cr.execute(('select partner_id from account_move_line l where account_id in (select id from account_account where type=%s) and reconcile_id is null and '+query+' and partner_id is not null group by partner_id having '+where), ('receivable',) )
+ cr.execute(('select partner_id from account_move_line l where account_id in (select id from account_account where type=%s and active) and reconcile_id is null and '+query+' and partner_id is not null group by partner_id having '+where), ('receivable',) )
res = cr.fetchall()
if not len(res):
return [('id','=','0')]
@@ -67,7 +67,7 @@ class res_partner(osv.osv):
return []
query = self.pool.get('account.move.line')._query_get(cr, uid, context={})
where = ' and '.join(map(lambda x: '(sum(debit-credit)'+x[1]+str(x[2])+')',args))
- cr.execute(('select partner_id from account_move_line where account_id in (select id from account_account where type=%s) and reconcile_id is null and '+query+' partner_id is not null group by partner_id having '+where), ('payable',) )
+ cr.execute(('select partner_id from account_move_line where account_id in (select id from account_account where type=%s and active) and reconcile_id is null and '+query+' partner_id is not null group by partner_id having '+where), ('payable',) )
res = cr.fetchall()
if not len(res):
return [('id','=','0')]
diff --git a/addons/account/project/project.py b/addons/account/project/project.py
index 391815da29b..133131bc665 100644
--- a/addons/account/project/project.py
+++ b/addons/account/project/project.py
@@ -140,7 +140,7 @@ class account_analytic_account(osv.osv):
'user_id' : fields.many2one('res.users', 'Account Manager'),
'date_start': fields.date('Date Start'),
'date': fields.date('Date End'),
- 'stats_ids': fields.one2many('report.hr.timesheet.invoice.journal', 'account_id', string='Statistics', readonly=True),
+ 'stats_ids': fields.one2many('report.hr.timesheet.invoice.journal', 'account_id', 'Statistics', readonly=True),
'company_id': fields.many2one('res.company', 'Company', required=True),
'company_currency_id': fields.function(_get_company_currency, method=True, type='many2one', relation='res.currency', string='Currency'),
'state': fields.selection([('draft','Draft'), ('open','Open'), ('pending','Pending'), ('close','Close'),], 'State', required=True),
diff --git a/addons/account/project/project_view.xml b/addons/account/project/project_view.xml
index 5cc363d424f..b87007a20a0 100644
--- a/addons/account/project/project_view.xml
+++ b/addons/account/project/project_view.xml
@@ -295,7 +295,7 @@
report.hr.timesheet.invoice.journal
graph
-
+
diff --git a/addons/account/project/report/analytic_balance.py b/addons/account/project/report/analytic_balance.py
index 31203595b10..46a479af97b 100644
--- a/addons/account/project/report/analytic_balance.py
+++ b/addons/account/project/report/analytic_balance.py
@@ -49,7 +49,7 @@ class account_analytic_balance(report_sxw.rml_parse):
def _lines_g(self, account_id, date1, date2):
self.cr.execute("SELECT aa.name AS name, aa.code AS code, sum(aal.amount) AS balance, sum(aal.unit_amount) AS quantity \
FROM account_analytic_line AS aal, account_account AS aa \
- WHERE (aal.general_account_id=aa.id) AND (aal.account_id=%d) AND (date>=%s) AND (date<=%s) \
+ WHERE (aal.general_account_id=aa.id) AND (aal.account_id=%d) AND (date>=%s) AND (date<=%s) AND aa.active \
GROUP BY aal.general_account_id, aa.name, aa.code, aal.code ORDER BY aal.code", (account_id, date1, date2))
res = self.cr.dictfetchall()
diff --git a/addons/account/project/report/cost_ledger.py b/addons/account/project/report/cost_ledger.py
index 7c2551ceb3e..48130783caf 100644
--- a/addons/account/project/report/cost_ledger.py
+++ b/addons/account/project/report/cost_ledger.py
@@ -48,7 +48,7 @@ class account_analytic_cost_ledger(report_sxw.rml_parse):
def _lines_g(self, account_id, date1, date2):
self.cr.execute("SELECT sum(aal.amount) AS balance, aa.code AS code, aa.name AS name, aa.id AS id \
FROM account_account AS aa, account_analytic_line AS aal \
- WHERE (aal.account_id=%d) AND (aal.date>=%s) AND (aal.date<=%s) AND (aal.general_account_id=aa.id) \
+ WHERE (aal.account_id=%d) AND (aal.date>=%s) AND (aal.date<=%s) AND (aal.general_account_id=aa.id) AND aa.active \
GROUP BY aa.code, aa.name, aa.id ORDER BY aa.code", (account_id, date1, date2))
res = self.cr.dictfetchall()
diff --git a/addons/account/project/report/inverted_analytic_balance.py b/addons/account/project/report/inverted_analytic_balance.py
index 0db7fcb6b86..e27a272f7a7 100644
--- a/addons/account/project/report/inverted_analytic_balance.py
+++ b/addons/account/project/report/inverted_analytic_balance.py
@@ -47,7 +47,7 @@ class account_inverted_analytic_balance(report_sxw.rml_parse):
ids = map(lambda x: x.id, accounts)
self.cr.execute("SELECT aa.name AS name, aa.code AS code, sum(aal.amount) AS balance, sum(aal.unit_amount) AS quantity, aa.id AS id \
FROM account_analytic_line AS aal, account_account AS aa \
- WHERE (aal.general_account_id=aa.id) AND (aal.account_id IN ("+','.join(map(str, ids))+")) AND (date>=%s) AND (date<=%s) \
+ WHERE (aal.general_account_id=aa.id) AND (aal.account_id IN ("+','.join(map(str, ids))+")) AND (date>=%s) AND (date<=%s) AND aa.active \
GROUP BY aal.general_account_id, aa.name, aa.code, aal.code, aa.id ORDER BY aal.code", (date1, date2))
res = self.cr.dictfetchall()
diff --git a/addons/account/project/report/quantity_cost_ledger.py b/addons/account/project/report/quantity_cost_ledger.py
index 169bce01dbd..dd05e2ab01d 100644
--- a/addons/account/project/report/quantity_cost_ledger.py
+++ b/addons/account/project/report/quantity_cost_ledger.py
@@ -45,13 +45,13 @@ class account_analytic_quantity_cost_ledger(report_sxw.rml_parse):
if not journals or not journals[0][2]:
self.cr.execute("SELECT sum(aal.unit_amount) AS quantity, aa.code AS code, aa.name AS name, aa.id AS id \
FROM account_account AS aa, account_analytic_line AS aal \
- WHERE (aal.account_id=%d) AND (aal.date>=%s) AND (aal.date<=%s) AND (aal.general_account_id=aa.id) \
+ WHERE (aal.account_id=%d) AND (aal.date>=%s) AND (aal.date<=%s) AND (aal.general_account_id=aa.id) AND aa.active \
GROUP BY aa.code, aa.name, aa.id ORDER BY aa.code", (account_id, date1, date2))
else:
journal_ids = journals[0][2]
self.cr.execute("SELECT sum(aal.unit_amount) AS quantity, aa.code AS code, aa.name AS name, aa.id AS id \
FROM account_account AS aa, account_analytic_line AS aal \
- WHERE (aal.account_id=%d) AND (aal.date>=%s) AND (aal.date<=%s) AND (aal.general_account_id=aa.id) \
+ WHERE (aal.account_id=%d) AND (aal.date>=%s) AND (aal.date<=%s) AND (aal.general_account_id=aa.id) AND aa.active \
AND (aal.journal_id IN ("+','.join(map(str, journal_ids))+")) \
GROUP BY aa.code, aa.name, aa.id ORDER BY aa.code", (account_id, date1, date2))
res = self.cr.dictfetchall()
diff --git a/addons/account/report/aged_trial_balance.py b/addons/account/report/aged_trial_balance.py
index 8a11ad09714..60ce1096ccc 100644
--- a/addons/account/report/aged_trial_balance.py
+++ b/addons/account/report/aged_trial_balance.py
@@ -52,7 +52,7 @@ class aged_trial_report(report_sxw.rml_parse):
WHERE (line.account_id=account_account.id) AND (line.reconcile_id IS NULL) \
AND (line.partner_id=res_partner.id) AND (line.state<>'draft') \
AND (line.period_id in (SELECT id FROM account_period WHERE fiscalyear_id=%d))\
- AND (account_account.company_id = %d) \
+ AND (account_account.company_id = %d) AND account_account.active \
ORDER BY res_partner.name", (form['fiscalyear'], form['company_id']))
partners = self.cr.dictfetchall()
for partner in partners:
@@ -63,7 +63,7 @@ class aged_trial_report(report_sxw.rml_parse):
AND (date<%s) AND (partner_id=%d) \
AND (reconcile_id IS NULL) AND (line.state<>'draft') \
AND (line.period_id in (SELECT id FROM account_period WHERE fiscalyear_id=%d)) \
- AND (account_account.company_id = %d)", (form['0']['start'], partner['id'], form['fiscalyear'], form['company_id']))
+ AND (account_account.company_id = %d) AND account_account.active", (form['0']['start'], partner['id'], form['fiscalyear'], form['company_id']))
before = self.cr.fetchone()
values['before'] = before and before[0] or ""
for i in range(5):
@@ -73,7 +73,7 @@ class aged_trial_report(report_sxw.rml_parse):
AND (date >= %s) AND (date <= %s) \
AND (partner_id=%d) AND (reconcile_id IS NULL) \
AND line.state<>'draft' AND (line.period_id in (SELECT id FROM account_period WHERE fiscalyear_id=%d)) \
- AND (account_account.company_id = %d)", (form[str(i)]['start'], form[str(i)]['stop'], partner['id'], form['fiscalyear'], form['company_id']))
+ AND (account_account.company_id = %d) AND account_account.active", (form[str(i)]['start'], form[str(i)]['stop'], partner['id'], form['fiscalyear'], form['company_id']))
during = self.cr.fetchone()
values[str(i)] = during and during[0] or ""
@@ -82,7 +82,7 @@ class aged_trial_report(report_sxw.rml_parse):
WHERE (line.account_id=account_account.id) AND (account_account.type IN ('payable','receivable')) \
AND (partner_id = %d) AND (reconcile_id IS NULL) \
AND (line.state <> 'draft') AND (line.period_id in (SELECT id FROM account_period WHERE fiscalyear_id=%d)) \
- AND (account_account.company_id = %d)", (partner['id'], form['fiscalyear'], form['company_id']))
+ AND (account_account.company_id = %d) AND account_account.active", (partner['id'], form['fiscalyear'], form['company_id']))
total = self.cr.fetchone()
values['total'] = total and total[0] or 0.0
values['name'] = partner['name']
@@ -106,7 +106,7 @@ class aged_trial_report(report_sxw.rml_parse):
WHERE (line.account_id=account_account.id) AND (account_account.type IN ('payable','receivable')) \
AND reconcile_id IS NULL AND (line.state<>'draft') \
AND partner_id is not null AND (line.period_id in (SELECT id FROM account_period WHERE fiscalyear_id=%d)) \
- AND (account_account.company_id = %d)", (fiscalyear, company_id))
+ AND (account_account.company_id = %d) AND account_account.active", (fiscalyear, company_id))
total = self.cr.fetchone()
return total and total[0] or 0.0
@@ -117,7 +117,7 @@ class aged_trial_report(report_sxw.rml_parse):
AND reconcile_id IS NULL AND (date < %s) \
AND (line.state <> 'draft') AND partner_id is not null \
AND (line.period_id in (SELECT id FROM account_period WHERE fiscalyear_id = %d)) \
- AND (account_account.company_id = %d)", (date, fiscalyear, company_id))
+ AND (account_account.company_id = %d) AND account_account.active", (date, fiscalyear, company_id))
before = self.cr.fetchone()
return before and before[0] or 0.0
@@ -128,7 +128,7 @@ class aged_trial_report(report_sxw.rml_parse):
AND reconcile_id IS NULL AND (date >= %s) AND (date <= %s) \
AND (line.state<>'draft') AND partner_id is not null \
AND (line.period_id in (SELECT id FROM account_period WHERE fiscalyear_id = %d)) \
- AND (account_account.company_id = %d)", (period['start'], period['stop'], fiscalyear, company_id))
+ AND (account_account.company_id = %d) AND account_account.active", (period['start'], period['stop'], fiscalyear, company_id))
period = self.cr.fetchone()
return period and period[0] or 0.0
diff --git a/addons/account/report/partner_balance.py b/addons/account/report/partner_balance.py
index 3b8ecd6ec10..aacb3bf9584 100644
--- a/addons/account/report/partner_balance.py
+++ b/addons/account/report/partner_balance.py
@@ -51,9 +51,9 @@ class partner_balance(report_sxw.rml_parse):
from account_move_line AS line, account_account AS account \
where line.partner_id is not null and line.date>=%s and line.date<=%s \
and line.period_id in (SELECT id FROM account_period WHERE fiscalyear_id=%d) \
- AND line.account_id = account.id AND account.company_id = %d', (data['form']['date1'], data['form']['date2'], data['form']['fiscalyear'], data['form']['company_id']))
+ AND line.account_id = account.id AND account.company_id = %d AND account.active', (data['form']['date1'], data['form']['date2'], data['form']['fiscalyear'], data['form']['company_id']))
new_ids = [id for (id,) in self.cr.fetchall()]
- self.cr.execute("SELECT a.id FROM account_account a LEFT JOIN account_account_type t ON (a.type=t.code) WHERE t.partner_account=TRUE AND a.company_id = %d", (data['form']['company_id'],))
+ self.cr.execute("SELECT a.id FROM account_account a LEFT JOIN account_account_type t ON (a.type=t.code) WHERE t.partner_account=TRUE AND a.company_id = %d AND a.active", (data['form']['company_id'],))
self.account_ids = ','.join([str(a) for (a,) in self.cr.fetchall()])
self.partner_ids = ','.join(map(str, new_ids))
objects = self.pool.get('res.partner').browse(self.cr, self.uid, new_ids)
diff --git a/addons/account/report/tax_report.py b/addons/account/report/tax_report.py
index bbddd34083c..b2b5e1a44d1 100644
--- a/addons/account/report/tax_report.py
+++ b/addons/account/report/tax_report.py
@@ -52,7 +52,7 @@ class tax_report(report_sxw.rml_parse):
self.cr.execute('select sum(line.tax_amount) as tax_amount, sum(line.debit) as debit, sum(line.credit) as credit, count(*) as count, account.id as account_id \
from account_move_line AS line, account_account AS account \
where line.state<>%s and line.period_id=%d and line.tax_code_id=%d \
- AND line.account_id = account.id AND account.company_id = %d \
+ AND line.account_id = account.id AND account.company_id = %d AND account.active \
group by account.id', ('draft',period_id, tax_code_id, company_id))
res = self.cr.dictfetchall()
i = 0
diff --git a/addons/account/report/third_party_ledger.py b/addons/account/report/third_party_ledger.py
index 9e596a39150..806c58db7a9 100644
--- a/addons/account/report/third_party_ledger.py
+++ b/addons/account/report/third_party_ledger.py
@@ -47,14 +47,14 @@ class third_party_ledger(report_sxw.rml_parse):
self.cr.execute(
"SELECT DISTINCT line.partner_id " \
"FROM account_move_line AS line, account_account AS account " \
- "WHERE line.partner_id IS NOT NULL AND line.date>=%s AND line.date<=%s AND line.state<>'draft' AND line.period_id in (SELECT id FROM account_period WHERE fiscalyear_id=%d)" \
- "AND line.account_id = account.id AND account.company_id = %d",
+ "WHERE line.partner_id IS NOT NULL AND line.date>=%s AND line.date<=%s AND line.state<>'draft' AND line.period_id in (SELECT id FROM account_period WHERE fiscalyear_id=%d) " \
+ "AND line.account_id = account.id AND account.company_id = %d AND account.active",
(data['form']['date1'], data['form']['date2'], data['form']['fiscalyear'], data['form']['company_id']))
new_ids = [id for (id,) in self.cr.fetchall()]
self.cr.execute(
"SELECT a.id " \
"FROM account_account a LEFT JOIN account_account_type t ON (a.type=t.code) " \
- "WHERE t.partner_account=TRUE AND a.company_id = %d", (data['form']['company_id'],))
+ "WHERE t.partner_account=TRUE AND a.company_id = %d AND a.active", (data['form']['company_id'],))
self.account_ids = ','.join([str(a) for (a,) in self.cr.fetchall()])
self.partner_ids = ','.join(map(str, new_ids))
objects = self.pool.get('res.partner').browse(self.cr, self.uid, new_ids)
diff --git a/addons/account/wizard/wizard_fiscalyear_close.py b/addons/account/wizard/wizard_fiscalyear_close.py
index 7f95d857c9e..526d5e4a01e 100644
--- a/addons/account/wizard/wizard_fiscalyear_close.py
+++ b/addons/account/wizard/wizard_fiscalyear_close.py
@@ -64,7 +64,7 @@ def _data_save(self, cr, uid, data, context):
fy_id = data['form']['fy_id']
if data['form']['report_new']:
period = pool.get('account.fiscalyear').browse(cr, uid, data['form']['fy2_id']).period_ids[0]
- cr.execute('select id from account_account')
+ cr.execute('select id from account_account WHERE active')
ids = map(lambda x: x[0], cr.fetchall())
for account in pool.get('account.account').browse(cr, uid, ids):
if account.close_method=='none' or account.type == 'view':
diff --git a/addons/account_chart/__init__.py b/addons/account_chart/__init__.py
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/addons/account_chart/__terp__.py b/addons/account_chart/__terp__.py
new file mode 100644
index 00000000000..28f82a36a3e
--- /dev/null
+++ b/addons/account_chart/__terp__.py
@@ -0,0 +1,18 @@
+{
+ "name" : "Account Chart",
+ "version" : "0.1",
+ "depends" : ["account"],
+ "author" : "Tiny",
+ "description": """Remove minimal account chart""",
+ "website" : "http://tinyerp.com/module_account.html",
+ "category" : "Generic Modules/Accounting",
+ "init_xml" : [
+ ],
+ "demo_xml" : [
+ ],
+ "update_xml" : [
+ "account_chart.xml",
+ ],
+ "active": False,
+ "installable": True
+}
diff --git a/addons/account_chart/account_chart.xml b/addons/account_chart/account_chart.xml
new file mode 100644
index 00000000000..7fa468416ba
--- /dev/null
+++ b/addons/account_chart/account_chart.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/account_followup/followup_report.py b/addons/account_followup/followup_report.py
index 228b12fc797..1ad17befde1 100644
--- a/addons/account_followup/followup_report.py
+++ b/addons/account_followup/followup_report.py
@@ -31,52 +31,53 @@
from osv import fields, osv
def _code_get(self, cr, uid, context={}):
- acc_type_obj = self.pool.get('account.account.type')
- ids = acc_type_obj.search(cr, uid, [])
- res = acc_type_obj.read(cr, uid, ids, ['code', 'name'], context)
- return [(r['code'], r['name']) for r in res]
+ acc_type_obj = self.pool.get('account.account.type')
+ ids = acc_type_obj.search(cr, uid, [])
+ res = acc_type_obj.read(cr, uid, ids, ['code', 'name'], context)
+ return [(r['code'], r['name']) for r in res]
class account_followup_stat(osv.osv):
- _name = "account_followup.stat"
- _description = "Followup statistics"
- _auto = False
- _columns = {
- 'name': fields.many2one('res.partner', 'Partner', readonly=True),
- 'account_type': fields.selection(_code_get, 'Account Type', required=True),
- 'date_move':fields.date('First move', readonly=True),
- 'date_move_last':fields.date('Last move', readonly=True),
- 'date_followup':fields.date('Latest followup', readonly=True),
- 'followup_id': fields.many2one('account_followup.followup.line', 'Follow Ups', required=True, ondelete="cascade"),
- 'balance':fields.float('Balance', readonly=True),
- 'debit':fields.float('Debit', readonly=True),
- 'credit':fields.float('Credit', readonly=True),
- }
- _order = 'date_move'
- def init(self, cr):
- cr.execute("""
- create or replace view account_followup_stat as (
- select
- l.partner_id as id,
- l.partner_id as name,
- min(l.date) as date_move,
- max(l.date) as date_move_last,
- max(l.followup_date) as date_followup,
- max(l.followup_line_id) as followup_id,
- sum(l.debit) as debit,
- sum(l.credit) as credit,
- sum(l.debit - l.credit) as balance,
- a.type as account_type
- from
- account_move_line l
- left join
- account_account a on (l.account_id=a.id)
- where
- l.reconcile_id is NULL and
- a.type in ('receivable', 'payable')
- group by
- l.partner_id, a.type
- )""")
+ _name = "account_followup.stat"
+ _description = "Followup statistics"
+ _auto = False
+ _columns = {
+ 'name': fields.many2one('res.partner', 'Partner', readonly=True),
+ 'account_type': fields.selection(_code_get, 'Account Type', required=True),
+ 'date_move':fields.date('First move', readonly=True),
+ 'date_move_last':fields.date('Last move', readonly=True),
+ 'date_followup':fields.date('Latest followup', readonly=True),
+ 'followup_id': fields.many2one('account_followup.followup.line', 'Follow Ups', required=True, ondelete="cascade"),
+ 'balance':fields.float('Balance', readonly=True),
+ 'debit':fields.float('Debit', readonly=True),
+ 'credit':fields.float('Credit', readonly=True),
+ }
+ _order = 'date_move'
+ def init(self, cr):
+ cr.execute("""
+ create or replace view account_followup_stat as (
+ select
+ l.partner_id as id,
+ l.partner_id as name,
+ min(l.date) as date_move,
+ max(l.date) as date_move_last,
+ max(l.followup_date) as date_followup,
+ max(l.followup_line_id) as followup_id,
+ sum(l.debit) as debit,
+ sum(l.credit) as credit,
+ sum(l.debit - l.credit) as balance,
+ a.type as account_type
+ from
+ account_move_line l
+ left join
+ account_account a on (l.account_id=a.id)
+ where
+ l.reconcile_id is NULL and
+ a.type in ('receivable', 'payable')
+ and a.active
+ group by
+ l.partner_id, a.type
+ )""")
account_followup_stat()
diff --git a/addons/account_followup/wizard/wizard_followup_print.py b/addons/account_followup/wizard/wizard_followup_print.py
index 866d93c56dc..911e85cbb3d 100644
--- a/addons/account_followup/wizard/wizard_followup_print.py
+++ b/addons/account_followup/wizard/wizard_followup_print.py
@@ -93,7 +93,8 @@ class followup_all_print(wizard.interface):
"AND (a.type='receivable') "\
"AND (l.state<>'draft') "\
"AND (l.reconcile_id is NULL) "\
- "AND (l.partner_id is NOT NULL) ")
+ "AND (l.partner_id is NOT NULL) "\
+ "AND a.active ")
ids = map(lambda x: x[0], cr.fetchall())
return {'partner_ids': ids}
@@ -109,6 +110,7 @@ class followup_all_print(wizard.interface):
"AND (l.state<>'draft') "\
"AND (l.reconcile_id is NULL) "\
"AND partner_id in ("+','.join(map(str,partner_ids))+") "\
+ "AND a.active "\
"ORDER BY l.date")
move_lines = cr.fetchall()
else:
diff --git a/addons/base_setup/wizard/wizard_base_setup.py b/addons/base_setup/wizard/wizard_base_setup.py
index 4abb18c9240..326ba7da8f8 100644
--- a/addons/base_setup/wizard/wizard_base_setup.py
+++ b/addons/base_setup/wizard/wizard_base_setup.py
@@ -74,6 +74,7 @@ view_form_company = """
+
@@ -131,6 +132,7 @@ class wizard_base_setup(wizard.interface):
return {}
company=company_obj.browse(cr, uid, ids)[0]
self.fields['name']['default']=company.name
+ self.fields['currency']['default']=company.currency_id.id
return {}
#self.fields['rml_header1']['default']=company.rml_header1
#self.fields['rml_footer1']['default']=company.rml_footer1
@@ -188,6 +190,7 @@ class wizard_base_setup(wizard.interface):
'rml_header1': form['rml_header1'],
'rml_footer1': form['rml_footer1'],
'rml_footer2': form['rml_footer2'],
+ 'currency_id': form['currency'],
})
partner_obj.write(cr, uid, [company.partner_id.id], {
'name': form['name'],
@@ -200,7 +203,7 @@ class wizard_base_setup(wizard.interface):
'city': form['city'],
'email': form['email'],
'phone': form['phone'],
- 'country_id': form['country_id']
+ 'country_id': form['country_id'],
}
if form['state_id'] > 0:
values['state_id']=form['state_id']
@@ -307,6 +310,12 @@ class wizard_base_setup(wizard.interface):
'type': 'char',
'size': 64,
},
+ 'currency': {
+ 'string': 'Currency',
+ 'type': 'many2one',
+ 'relation': 'res.currency',
+ 'required': True,
+ },
'rml_header1':{
'string': 'Report Header',
'type': 'char',
diff --git a/addons/hr_timesheet_invoice/report/cost_ledger.py b/addons/hr_timesheet_invoice/report/cost_ledger.py
index b47e523cce5..c1c5ebac130 100644
--- a/addons/hr_timesheet_invoice/report/cost_ledger.py
+++ b/addons/hr_timesheet_invoice/report/cost_ledger.py
@@ -55,7 +55,7 @@ class account_analytic_cost_ledger(report_sxw.rml_parse):
def _lines_g(self, account_id, date1, date2):
self.cr.execute("SELECT sum(aal.amount) AS balance, aa.code AS code, aa.name AS name, aa.id AS id, sum(aal.unit_amount) AS quantity \
FROM account_account AS aa, account_analytic_line AS aal \
- WHERE (aal.account_id=%d) AND (aal.date>=%s) AND (aal.date<=%s) AND (aal.general_account_id=aa.id) \
+ WHERE (aal.account_id=%d) AND (aal.date>=%s) AND (aal.date<=%s) AND (aal.general_account_id=aa.id) AND aa.active \
GROUP BY aa.code, aa.name, aa.id ORDER BY aa.code", (account_id, date1, date2))
res = self.cr.dictfetchall()
diff --git a/addons/hr_timesheet_project/wizard/timesheet_hour_encode.py b/addons/hr_timesheet_project/wizard/timesheet_hour_encode.py
index d06cf59997c..a3d36d11858 100644
--- a/addons/hr_timesheet_project/wizard/timesheet_hour_encode.py
+++ b/addons/hr_timesheet_project/wizard/timesheet_hour_encode.py
@@ -55,9 +55,11 @@ def _action_line_create(self, cr, uid, data, context):
res2 = ts.on_change_unit_amount(cr, uid, False, product_id, work.hours or 0.0,unit_id, context)
if res2:
res.update(res2['value'])
+ if hasattr(ts, 'on_change_account_id'):
+ res2 = ts.on_change_account_id(cr, uid, False, work.task_id.project_id.category_id.id)
+ if res2:
+ res.update(res2['value'])
id = ts.create(cr, uid, res, context)
- else:
- print 'not found', work.task_id.project_id.name
value = {
'domain': "[('user_id','=',%d),('date','>=','%s'), ('date','<=','%s')]" % (uid, time.strftime('%Y-%m-%d 00:00:00'), time.strftime('%Y-%m-%d 23:59:59')),
diff --git a/addons/l10n_be/__terp__.py b/addons/l10n_be/__terp__.py
index 7b276eed4ab..ff13a4c1dcf 100644
--- a/addons/l10n_be/__terp__.py
+++ b/addons/l10n_be/__terp__.py
@@ -3,7 +3,7 @@
"version" : "1.0",
"author" : "Tiny",
"category" : "Localisation/Account charts",
- "depends" : ["base", "account", "account_report", "base_vat", "base_iban"],
+ "depends" : ["base", "account", "account_report", "base_vat", "base_iban", "account_chart"],
"init_xml" : [],
"demo_xml" : ["account_demo.xml","account.report.report.csv"],
"update_xml" : ["account_pcmn_belgium.xml"],
diff --git a/addons/l10n_be/account_pcmn_belgium.xml b/addons/l10n_be/account_pcmn_belgium.xml
index b64c8b0212a..a1aa97432b8 100644
--- a/addons/l10n_be/account_pcmn_belgium.xml
+++ b/addons/l10n_be/account_pcmn_belgium.xml
@@ -1,11 +1,11 @@
+
PLAN COMPTABLE MINIMUM NORMALISE
0
view
-
CLASSE 1
diff --git a/addons/l10n_ca-qc/__terp__.py b/addons/l10n_ca-qc/__terp__.py
index 49e6c1cbead..703780752a3 100644
--- a/addons/l10n_ca-qc/__terp__.py
+++ b/addons/l10n_ca-qc/__terp__.py
@@ -3,7 +3,7 @@
"version" : "1.0",
"author" : "Tiny",
"category" : "Localisation/Account charts",
- "depends" : ["base", "account"],
+ "depends" : ["base", "account", "account_chart"],
"init_xml" : [],
"demo_xml" : ["account_demo.xml"],
"update_xml" : ["account_pc_canada.xml"],
diff --git a/addons/l10n_ca-qc/account_pc_canada.xml b/addons/l10n_ca-qc/account_pc_canada.xml
index b6f8583a275..086fa9ef304 100644
--- a/addons/l10n_ca-qc/account_pc_canada.xml
+++ b/addons/l10n_ca-qc/account_pc_canada.xml
@@ -2,6 +2,7 @@
+
+
view
0
@@ -67,9 +63,11 @@
+
view
00001
@@ -77,10 +75,12 @@
-
+
+
view
10000
@@ -89,9 +89,11 @@
+
view
11000
@@ -303,9 +305,11 @@
+
view
13000
@@ -356,9 +360,11 @@
+
view
15000
@@ -514,9 +520,11 @@
+
view
17000
@@ -581,9 +589,11 @@
+
view
20000
@@ -592,9 +602,11 @@
+
view
21000
@@ -862,9 +874,11 @@
+
view
25000
@@ -929,9 +943,11 @@
+
view
30000
@@ -940,9 +956,11 @@
+
view
31000
@@ -979,9 +997,11 @@
+
view
34000
@@ -1024,10 +1044,11 @@
-
+
view
37000
@@ -1057,9 +1078,11 @@
+
view
00002
@@ -1068,9 +1091,11 @@
+
view
40000
@@ -1078,10 +1103,11 @@
-
+
view
41000
@@ -1103,10 +1129,11 @@
-
+
view
43000
@@ -1128,10 +1155,11 @@
-
+
view
44000
@@ -1167,10 +1195,11 @@
-
+
view
47000
@@ -1206,10 +1235,11 @@
-
+
view
50000
@@ -1280,10 +1310,11 @@
-
+
view
60000
@@ -1291,10 +1322,11 @@
-
+
view
61000
@@ -1358,10 +1390,11 @@
-
+
view
65000
@@ -1936,7 +1969,7 @@
-
+
percent
TVQ 7.5 %
@@ -1977,9 +2011,11 @@
2
+
percent
TPS 6.0 %
diff --git a/addons/l10n_ch/vaudtax_data.xml b/addons/l10n_ch/vaudtax_data.xml
index 87e898f05a2..b7528914761 100755
--- a/addons/l10n_ch/vaudtax_data.xml
+++ b/addons/l10n_ch/vaudtax_data.xml
@@ -62,15 +62,6 @@
Mme,m
-
-
-
- CHF
- CHF
- 1.0
-
-
-
- GBP
- GBP
- 0.01
- 4
-
-
-
-
-
-
diff --git a/addons/l10n_chart_us_general/__terp__.py b/addons/l10n_chart_us_general/__terp__.py
index d8f3f03ea92..6e3ce40adb4 100644
--- a/addons/l10n_chart_us_general/__terp__.py
+++ b/addons/l10n_chart_us_general/__terp__.py
@@ -1,12 +1,9 @@
-#
-#
-#
{
"name" : "United States - General",
"version" : "1.0",
"author" : "Tiny",
"category" : "Localisation/Account charts",
- "depends" : ["account"],
+ "depends" : ["account", "account_chart"],
"demo_xml" : [],
"update_xml" : ['account_tax_code.xml',"account_chart.xml",'account_tax.xml'],
"active": False,
diff --git a/addons/l10n_chart_us_general/account_chart.xml b/addons/l10n_chart_us_general/account_chart.xml
index 975060b9608..977070419d8 100644
--- a/addons/l10n_chart_us_general/account_chart.xml
+++ b/addons/l10n_chart_us_general/account_chart.xml
@@ -1,10 +1,6 @@
-
+
-
-
- USD
- USD
-
+
0
Account Chart
@@ -716,4 +712,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_chart_us_general/account_tax.xml b/addons/l10n_chart_us_general/account_tax.xml
index 7cf3e88a7eb..595de695223 100644
--- a/addons/l10n_chart_us_general/account_tax.xml
+++ b/addons/l10n_chart_us_general/account_tax.xml
@@ -1,4 +1,4 @@
-
+
@@ -13,4 +13,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_chart_us_manufacturing/__terp__.py b/addons/l10n_chart_us_manufacturing/__terp__.py
index df8c0246624..c1a1e80e2ea 100644
--- a/addons/l10n_chart_us_manufacturing/__terp__.py
+++ b/addons/l10n_chart_us_manufacturing/__terp__.py
@@ -1,12 +1,9 @@
-#
-#
-#
{
"name" : "United States - Manufacturing",
"version" : "1.0",
"author" : "Tiny",
"category" : "Localisation/Account charts",
- "depends" : ["account"],
+ "depends" : ["account", "account_chart"],
"demo_xml" : [],
"update_xml" : ['account_tax_code.xml',"account_chart.xml",'account_tax.xml'],
"active": False,
diff --git a/addons/l10n_chart_us_manufacturing/account_chart.xml b/addons/l10n_chart_us_manufacturing/account_chart.xml
index 4b409039bc6..3584f22eb7e 100644
--- a/addons/l10n_chart_us_manufacturing/account_chart.xml
+++ b/addons/l10n_chart_us_manufacturing/account_chart.xml
@@ -1,10 +1,6 @@
-
+
-
-
- USD
- USD
-
+
0
Account Chart
@@ -635,4 +631,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_chart_us_manufacturing/account_tax.xml b/addons/l10n_chart_us_manufacturing/account_tax.xml
index 7cf3e88a7eb..595de695223 100644
--- a/addons/l10n_chart_us_manufacturing/account_tax.xml
+++ b/addons/l10n_chart_us_manufacturing/account_tax.xml
@@ -1,4 +1,4 @@
-
+
@@ -13,4 +13,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_chart_us_service/__terp__.py b/addons/l10n_chart_us_service/__terp__.py
index 9a39da2444c..fc3f978389d 100644
--- a/addons/l10n_chart_us_service/__terp__.py
+++ b/addons/l10n_chart_us_service/__terp__.py
@@ -1,12 +1,9 @@
-#
-#
-#
{
"name" : "United States - Services",
"version" : "1.0",
"author" : "Tiny",
"category" : "Localisation/Account charts",
- "depends" : ["account"],
+ "depends" : ["account", "account_chart"],
"demo_xml" : [],
"update_xml" : ['account_tax_code.xml',"account_chart.xml",'account_tax.xml'],
"active": False,
diff --git a/addons/l10n_chart_us_service/account_chart.xml b/addons/l10n_chart_us_service/account_chart.xml
index 914d0983f90..0f3c02171d4 100644
--- a/addons/l10n_chart_us_service/account_chart.xml
+++ b/addons/l10n_chart_us_service/account_chart.xml
@@ -1,10 +1,6 @@
-
+
-
- USD
- USD
-
0
Account Chart
@@ -545,4 +541,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_chart_us_service/account_tax.xml b/addons/l10n_chart_us_service/account_tax.xml
index 7cf3e88a7eb..595de695223 100644
--- a/addons/l10n_chart_us_service/account_tax.xml
+++ b/addons/l10n_chart_us_service/account_tax.xml
@@ -1,4 +1,4 @@
-
+
@@ -13,4 +13,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_chart_us_ucoa/__terp__.py b/addons/l10n_chart_us_ucoa/__terp__.py
index b1d4b5d7d67..f72265e9e95 100644
--- a/addons/l10n_chart_us_ucoa/__terp__.py
+++ b/addons/l10n_chart_us_ucoa/__terp__.py
@@ -1,12 +1,9 @@
-#
-#
-#
{
"name" : "United States - UCOA",
"version" : "1.0",
"author" : "Tiny",
"category" : "Localisation/Account charts",
- "depends" : ["account"],
+ "depends" : ["account", "account_chart"],
"demo_xml" : [],
"update_xml" : ['account_tax_code.xml',"account_chart.xml",'account_tax.xml'],
"active": False,
diff --git a/addons/l10n_chart_us_ucoa/account_chart.xml b/addons/l10n_chart_us_ucoa/account_chart.xml
index ce9c19fa6f9..37ed0e32781 100644
--- a/addons/l10n_chart_us_ucoa/account_chart.xml
+++ b/addons/l10n_chart_us_ucoa/account_chart.xml
@@ -1,10 +1,6 @@
-
+
-
- USD
- USD
-
0
Account Chart
@@ -1994,4 +1990,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_chart_us_ucoa/account_tax.xml b/addons/l10n_chart_us_ucoa/account_tax.xml
index 0d43a495220..880e735db6d 100644
--- a/addons/l10n_chart_us_ucoa/account_tax.xml
+++ b/addons/l10n_chart_us_ucoa/account_tax.xml
@@ -1,4 +1,4 @@
-
+
@@ -35,4 +35,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_chart_us_ucoa_ez/__terp__.py b/addons/l10n_chart_us_ucoa_ez/__terp__.py
index 60710540bea..b02444f8f12 100644
--- a/addons/l10n_chart_us_ucoa_ez/__terp__.py
+++ b/addons/l10n_chart_us_ucoa_ez/__terp__.py
@@ -1,12 +1,9 @@
-#
-#
-#
{
"name" : "United States - UCOA EZ",
"version" : "1.0",
"author" : "Tiny",
"category" : "Localisation/Account charts",
- "depends" : ["account"],
+ "depends" : ["account", "account_chart"],
"demo_xml" : [],
"update_xml" : ['account_tax_code.xml',"account_chart.xml",'account_tax.xml'],
"active": False,
diff --git a/addons/l10n_chart_us_ucoa_ez/account_chart.xml b/addons/l10n_chart_us_ucoa_ez/account_chart.xml
index ce9c19fa6f9..37ed0e32781 100644
--- a/addons/l10n_chart_us_ucoa_ez/account_chart.xml
+++ b/addons/l10n_chart_us_ucoa_ez/account_chart.xml
@@ -1,10 +1,6 @@
-
+
-
- USD
- USD
-
0
Account Chart
@@ -1994,4 +1990,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_chart_us_ucoa_ez/account_tax.xml b/addons/l10n_chart_us_ucoa_ez/account_tax.xml
index 0d43a495220..880e735db6d 100644
--- a/addons/l10n_chart_us_ucoa_ez/account_tax.xml
+++ b/addons/l10n_chart_us_ucoa_ez/account_tax.xml
@@ -1,4 +1,4 @@
-
+
@@ -35,4 +35,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_chart_ve/__terp__.py b/addons/l10n_chart_ve/__terp__.py
index fcfe1b1cc5e..7024d7c67af 100644
--- a/addons/l10n_chart_ve/__terp__.py
+++ b/addons/l10n_chart_ve/__terp__.py
@@ -3,7 +3,7 @@
"version" : "1.0",
"author" : "Tiny",
"category" : "Localisation/Account charts",
- "depends" : ["account", "base_vat"],
+ "depends" : ["account", "base_vat", "account_chart"],
"demo_xml" : [],
"update_xml" : ['account_tax_code.xml',"account_chart.xml",'account_tax.xml'],
"active": False,
diff --git a/addons/l10n_chart_ve/account_chart.xml b/addons/l10n_chart_ve/account_chart.xml
index 9e9c4460dd5..cea1f2de2c0 100644
--- a/addons/l10n_chart_ve/account_chart.xml
+++ b/addons/l10n_chart_ve/account_chart.xml
@@ -1,10 +1,6 @@
-
+
-
-
- VEB
- VEB
-
+
0
Account Chart
@@ -653,4 +649,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_chart_ve/account_tax.xml b/addons/l10n_chart_ve/account_tax.xml
index c601e68b636..7275b7894cd 100644
--- a/addons/l10n_chart_ve/account_tax.xml
+++ b/addons/l10n_chart_ve/account_tax.xml
@@ -1,4 +1,4 @@
-
+
@@ -13,4 +13,4 @@
-
\ No newline at end of file
+
diff --git a/addons/l10n_fr/__terp__.py b/addons/l10n_fr/__terp__.py
index 8cfa9d7b8ac..0cffba95eca 100644
--- a/addons/l10n_fr/__terp__.py
+++ b/addons/l10n_fr/__terp__.py
@@ -11,7 +11,7 @@
"author" : "SISalp-NBconseil",
"category" : "Localisation/Account charts",
"website": "http://erp-libre.info",
- "depends" : ["base", "account"],
+ "depends" : ["base", "account", "account_chart"],
"init_xml" : [],
"update_xml" : ["types.xml", "plan-99-03_societe.xml", "taxes.xml",],
"demo_xml" : [],
diff --git a/addons/l10n_fr/plan-99-03_societe.xml b/addons/l10n_fr/plan-99-03_societe.xml
index 7259ad1351b..d588f51617e 100644
--- a/addons/l10n_fr/plan-99-03_societe.xml
+++ b/addons/l10n_fr/plan-99-03_societe.xml
@@ -1,6 +1,6 @@
-
+