[[ data['form']['date1'] ]]
@@ -191,10 +195,10 @@
-
+
|
- Code / Date
+ Code / Date
|
J.C. / Move name
@@ -211,15 +215,13 @@
|
-
+
|
-
-
-
+ Total :
|
- Total:
+
|
[[ '%.2f' % (sum_debit(objects,data['form']['date1'],data['form']['date2']) or 0.0) ]]
@@ -237,7 +239,7 @@
|
[[ repeatIn(objects,'o') ]]
-
+
|
[[ o.code ]]
@@ -259,46 +261,43 @@
|
[[ repeatIn(lines_g(o.id,data['form']['date1'],data['form']['date2']),'move_g') ]]
-
+
|
- [[ move_g['code'] ]]
+ [[ move_g['code'] ]]
|
- [[ move_g['name'] ]]
+ [[ move_g['name'] ]]
|
- [[ '%.2f' % move_g['debit'] ]]
+ [[ '%.2f' % move_g['debit'] ]]
|
- [[ '%.2f' % move_g['credit'] ]]
+ [[ '%.2f' % move_g['credit'] ]]
|
- [[ '%.2f' % move_g['balance'] ]]
+ [[ '%.2f' % move_g['balance'] ]]
|
[[ repeatIn(lines_a(move_g['id'],o.id,data['form']['date1'],data['form']['date2']),'move_a') ]]
-
+
|
- [[ move_a['date'] ]]
+ [[ move_a['date'] ]]
|
- [[ move_a['cj'] ]]
+ [[ move_a['cj'] ]] / [[ move_a['name'] ]]
|
- [[ move_a['name'] ]]
+ [[ '%.2f' % move_a['debit'] ]]
|
- [[ '%.2f' % move_a['debit'] ]]
+ [[ '%.2f' % move_a['credit'] ]]
|
- [[ '%.2f' % move_a['credit'] ]]
- |
-
- [[ '%.2f' % move_a['balance'] ]]
+ [[ '%.2f' % move_a['balance'] ]]
|
@@ -319,4 +318,4 @@
-
+
\ No newline at end of file
diff --git a/addons/account/project/report/inverted_analytic_balance.rml b/addons/account/project/report/inverted_analytic_balance.rml
index 63100e50a9d..3453e8f009b 100644
--- a/addons/account/project/report/inverted_analytic_balance.rml
+++ b/addons/account/project/report/inverted_analytic_balance.rml
@@ -17,7 +17,7 @@
[[ company.name ]]
- Inverted Analytic Balance
+ Inverted Analytic Balance - [[ company.currency_id.name ]]
diff --git a/addons/account/project/report/quantity_cost_ledger.rml b/addons/account/project/report/quantity_cost_ledger.rml
index 755ed501fd3..f87c74f4d69 100644
--- a/addons/account/project/report/quantity_cost_ledger.rml
+++ b/addons/account/project/report/quantity_cost_ledger.rml
@@ -132,8 +132,10 @@
-
-
+
+
+
+
@@ -217,12 +219,10 @@
|
-
-
-
+ Total:
|
- Total:
+
|
[[ '%.2f' % (sum_quantity(objects,data['form']['date1'],data['form']['date2'], data['form']['journal']) or 0.0) ]]
@@ -238,7 +238,7 @@
|
- [[ o.code ]]
+ [[ o.code ]]
|
[[ o.complete_name ]]
@@ -257,33 +257,30 @@
|
- [[ move_g['code'] ]]
+ [[ move_g['code'] ]]
|
- [[ move_g['name'] ]]
+ [[ move_g['name'] ]]
|
-
+
|
- [[ '%.2f' % (move_g['quantity'] or 0.0) ]]
+ [[ '%.2f' % (move_g['quantity'] or 0.0) ]]
|
-
+
|
- [[ repeatIn(lines_a(move_g['id'],o.id,data['form']['date1'],data['form']['date2'],data['form']['journal']),'move_a') ]][[ move_a['date'] ]]
+ [[ repeatIn(lines_a(move_g['id'],o.id,data['form']['date1'],data['form']['date2'],data['form']['journal']),'move_a') ]][[ move_a['date'] ]]
|
- [[ move_a['cj'] ]]
- |
-
- [[ move_a['name'] ]]
+ [[ move_a['cj'] ]] / [[ move_a['name'] ]]
|
[[ '%.2f' % (move_a['quantity'] or 0.0 )]]
diff --git a/addons/account/report/__init__.py b/addons/account/report/__init__.py
index f14ab460225..a3206fbcdf8 100644
--- a/addons/account/report/__init__.py
+++ b/addons/account/report/__init__.py
@@ -40,6 +40,7 @@ import overdue
import aged_trial_balance
import tax_report
import general_ledger_landscape
+import account_tax_code
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/account_balance.rml b/addons/account/report/account_balance.rml
index cfabf9d545f..8178d8fa399 100755
--- a/addons/account/report/account_balance.rml
+++ b/addons/account/report/account_balance.rml
@@ -42,7 +42,7 @@
-
+
@@ -50,7 +50,7 @@
-
+
@@ -80,6 +80,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
| [[ setTag('para','para',{'style':('Det_Level'+str(a['level']))}) ]][[ a['jname'] or removeParentNode('tr') ]] |
- [[ a['level']<4 and removeParentNode('font') or '...'*(2) ]][[ setTag('para','para',{'style':('Det_Level'+str(a['level']))}) ]][ref: [[ a['ref'] or removeParentNode('font') ]] ] [[ a['lname'] ]] |
+ [[ setTag('para','para',{'style':('Det_Level'+str(a['level']))}) ]] [[ setTag('tr','tr',{'style':('TrLevel_Name'+str(a['level']))}) ]][ref: [[ a['ref'] or removeParentNode('font') ]] ] [[ a['lname'] ]] |
[[ setTag('para','para',{'style':('Det_Amt_Level'+str(a['level']))}) ]][[ formatLang(a['debit1']) and '%.2f'%a['debit1'] or '0.00']] |
[[ setTag('para','para',{'style':('Det_Amt_Level'+str(a['level']))}) ]][[ formatLang(a['credit1']) and '%.2f'%a['credit1'] or '0.00']] |
[[ setTag('para','para',{'style':('Det_Amt_Level'+str(a['level']))}) ]][[ formatLang(a['balance1']) and '%.2f'%a['balance1'] or '0.00' ]] |
@@ -277,4 +302,3 @@
-
diff --git a/addons/account/report/account_journal.py b/addons/account/report/account_journal.py
index 5110287b2b0..11252b0707a 100644
--- a/addons/account/report/account_journal.py
+++ b/addons/account/report/account_journal.py
@@ -45,12 +45,28 @@ class journal_print(report_sxw.rml_parse):
'sum_credit': self._sum_credit
})
- def lines(self, period_id, journal_id, *args):
+ def lines(self, period_id, journal_id, sort_selection='date', *args):
+ if type(period_id)==type([]):
+ ids_final = []
+ for journal in journal_id:
+ for period in period_id:
+ ids_journal_period = self.pool.get('account.journal.period').search(self.cr,self.uid, [('journal_id','=',journal),('period_id','=',period)])
+ if ids_journal_period:
+ self.cr.execute('update account_journal_period set state=%s where journal_id=%d and period_id=%d and state=%s', ('printed',journal,period,'draft'))
+ self.cr.commit()
+ self.cr.execute('select id from account_move_line where period_id=%d and journal_id=%d and state<>\'draft\' order by ('+ sort_selection +'),id', (period, journal))
+ ids = map(lambda x: x[0], self.cr.fetchall())
+ ids_final.append(ids)
+ line_ids = []
+ for line_id in ids_final:
+ a = self.pool.get('account.move.line').browse(self.cr, self.uid, line_id )
+ line_ids.append(a)
+ return line_ids
self.cr.execute('update account_journal_period set state=%s where journal_id=%d and period_id=%d and state=%s', ('printed',journal_id,period_id,'draft'))
self.cr.commit()
self.cr.execute('select id from account_move_line where period_id=%d and journal_id=%d and state<>\'draft\' order by date,id', (period_id, journal_id))
ids = map(lambda x: x[0], self.cr.fetchall())
- return self.pool.get('account.move.line').browse(self.cr, self.uid, ids)
+ return self.pool.get('account.move.line').browse(self.cr, self.uid, ids )
def _sum_debit(self, period_id, journal_id):
self.cr.execute('select sum(debit) from account_move_line where period_id=%d and journal_id=%d and state<>\'draft\'', (period_id, journal_id))
@@ -59,8 +75,8 @@ class journal_print(report_sxw.rml_parse):
def _sum_credit(self, period_id, journal_id):
self.cr.execute('select sum(credit) from account_move_line where period_id=%d and journal_id=%d and state<>\'draft\'', (period_id, journal_id))
return self.cr.fetchone()[0] or 0.0
-report_sxw.report_sxw('report.account.journal.period.print', 'account.journal.period', 'addons/account/report/account_journal.rml', parser=journal_print)
-
+report_sxw.report_sxw('report.account.journal.period.print', 'account.journal.period', 'addons/account/report/account_journal.rml', parser=journal_print,header=False)
+report_sxw.report_sxw('report.account.journal.period.print.wiz', 'account.journal.period', 'addons/account/report/wizard_account_journal.rml', parser=journal_print,header=False)
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/account_journal.rml b/addons/account/report/account_journal.rml
index 0deffbdee64..4831315864a 100644
--- a/addons/account/report/account_journal.rml
+++ b/addons/account/report/account_journal.rml
@@ -3,6 +3,37 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ [[ company.name ]]
+ Print Journal - [[ company.currency_id.name ]]
+
+
+
+
+
+
+ [[ time.strftime("%Y-%m-%d %H:%M", time.localtime()) ]]
+ Page
+
+
+
+
+ 1cm 27.7cm 20cm 27.7cm
+
+
+
@@ -13,24 +44,25 @@
-
-
-
+
+
+
+
+
-
+
+
+
+
+
-
-
-
-
-
@@ -38,14 +70,18 @@
-
-
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
@@ -53,111 +89,102 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
[[ repeatIn(objects, 'o') ]]
-
+
|
-
-
-
+ Date
|
- Journal
+ Voucher No
|
- [[o.period_id.name ]]
+ A/c No.
+ |
+
+ Third party
+ |
+
+ Entry label
+ |
+
+ Debit
+ |
+
+ Credit
|
-
+
|
- [[ company.name ]]
+ [[o.period_id.name ]]
|
- [[ o.journal_id.code ]] [[ o.journal_id.name ]]
+ [[ o.journal_id.code ]] |
+ |
+ |
+ |
+
+ [[ '%.2f' % sum_debit(o.period_id.id, o.journal_id.id) or '0.00' ]]
|
- Currency: [[ company.currency_id.name ]]
+ [[ '%.2f' % sum_credit(o.period_id.id, o.journal_id.id) or '0.00' ]]
|
-
-
+
+ |
+ [[ repeatIn(lines(o.period_id.id, o.journal_id.id), 'line') ]]
+ [[ line.date ]]
+ |
+
+ [[ line.ref ]]
+ |
+
+ [[ line.account_id.code ]]
+ |
+
+ [[ line.partner_id and line.partner_id.name ]]
+ |
+
+ [[ line.name ]]
+ |
+
+ [[ line.debit and '%.2f' % line.debit or '0.00' ]]
+ |
+
+ [[ line.credit and '%.2f' % line.credit or '0.00' ]]
+ |
+
- Printing date: [[ time.strftime('%Y-%m-%d') ]] at [[ time.strftime('%H:%M:%S') ]]
-
-
-
-
-
- |
- Date
- |
-
- Voucher Nb
- |
-
- Account Number
- |
-
- Third party
- |
-
- Entry label
- |
-
- Debit
- |
-
- Credit
- |
-
-
- |
-
- [[ repeatIn(lines(o.period_id.id, o.journal_id.id), 'line') ]]
- [[ line.date ]]
-
- |
-
- [[ line.ref ]]
- |
-
- [[ line.account_id.code ]]
- |
-
- [[ line.partner_id and line.partner_id.name ]]
- |
-
- [[ line.name ]]
- |
-
- [[ line.debit and '%.2f' % line.debit or '' ]]
- |
-
- [[ line.credit and '%.2f' % line.credit or '' ]]
- |
-
-
-
-
- |
- TOTAL:
- |
-
- [[ '%.2f' % sum_debit(o.period_id.id, o.journal_id.id) ]]
- |
-
- [[ '%.2f' % sum_credit(o.period_id.id, o.journal_id.id) ]]
- |
-
-
-
-
-
-
-
+
\ No newline at end of file
diff --git a/addons/account/report/account_tax_code.py b/addons/account/report/account_tax_code.py
new file mode 100644
index 00000000000..b236c087949
--- /dev/null
+++ b/addons/account/report/account_tax_code.py
@@ -0,0 +1,19 @@
+import time
+import pooler
+import rml_parse
+import copy
+from report import report_sxw
+import re
+
+class account_tax_code_report(rml_parse.rml_parse):
+ _name = 'report.account.tax.code.entries'
+ def __init__(self, cr, uid, name, context):
+ super(account_tax_code_report, self).__init__(cr, uid, name, context)
+ self.localcontext.update({
+ 'time': time,
+ })
+
+
+report_sxw.report_sxw('report.account.tax.code.entries', 'account.tax.code',
+ 'addons/account/report/account_tax_code.rml', parser=account_tax_code_report, header=False)
+
diff --git a/addons/account/report/account_tax_code.rml b/addons/account/report/account_tax_code.rml
index ade928c8a9d..c33827bf559 100644
--- a/addons/account/report/account_tax_code.rml
+++ b/addons/account/report/account_tax_code.rml
@@ -2,7 +2,31 @@
-
+
+
+
+
+
+
+
+ [[ company.name ]]
+ Accounting Entries-[[ company.currency_id.name ]]
+
+
+
+
+
+ [[ time.strftime("%m-%d-%Y %H:%M", time.localtime()) ]]
+ Page
+
+
+
+
+ 1cm 27.7cm 20cm 27.7cm
+
+
+
+
@@ -10,42 +34,29 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
@@ -53,113 +64,110 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- [[ repeatIn(objects, 'o') ]]
-
+
+
-
+
+
|
- Date
+ Date
|
- Voucher Nb
+ Voucher Nb
|
- Account Number
+ Account Number
|
- Third party (Country)
+ Third party (Country)
|
- Entry label
+ Entry label
|
- Debit
+ Debit
|
- Credit
+ Credit
|
-
-
+
- |
-
- [[ repeatIn(o.line_ids, 'line') ]]
- [[ line.date ]]
-
- |
-
- [[ line.ref ]]
- |
-
- [[ line.account_id.code ]]
- |
-
- [[ line.partner_id and line.partner_id.name ]] ([[ line.partner_id and line.partner_id.address and line.partner_id.address[0].country_id.code or '' ]] )
- |
-
- [[ line.name ]]
- |
-
- [[ '%.2f' % line.debit ]]
- |
-
- [[ '%.2f' % line.credit ]]
- |
+
+ [[ repeatIn(objects, 'o') ]]
+ [[ repeatIn(o.line_ids, 'line') ]]
+
+
+ |
+ [[ line.date ]]
+ |
+
+ [[ line.ref ]]
+ |
+
+ [[ line.account_id.code ]]
+ |
+
+ [[ line.partner_id and line.partner_id.name ]]([[ line.partner_id and line.partner_id.address and line.partner_id.address[0].country_id.code or removeParentNode('font') ]] )
+ |
+
+ [[ line.name ]]
+ |
+
+ [[ formatLang(line.debit) or '%.2f' % line.debit ]]
+ |
+
+ [[ formatLang(line.credit) or '%.2f' % line.credit ]]
+ |
+
+
+ |
-
-
- |
- TOTAL:
- |
-
-
-
-
- |
-
-
-
-
- |
-
-
-
+
+
diff --git a/addons/account/report/aged_trial_balance.py b/addons/account/report/aged_trial_balance.py
index bd04138c8bf..ee7f5555ae9 100755
--- a/addons/account/report/aged_trial_balance.py
+++ b/addons/account/report/aged_trial_balance.py
@@ -31,13 +31,13 @@ import rml_parse
from report import report_sxw
class aged_trial_report(rml_parse.rml_parse):
-
+
def __init__(self, cr, uid, name, context):
super(aged_trial_report, self).__init__(cr, uid, name, context)
self.line_query = ''
self.total_account = []
-
-
+
+
self.localcontext.update({
'time': time,
'get_lines': self._get_lines,
@@ -46,19 +46,19 @@ class aged_trial_report(rml_parse.rml_parse):
'get_for_period': self._get_for_period,
'get_company': self._get_company,
'get_currency': self._get_currency,
-
+
})
-
-
+
+
def _get_lines(self, form):
-
+
if (form['result_selection'] == 'customer' ):
self.ACCOUNT_TYPE = "('receivable')"
elif (form['result_selection'] == 'supplier'):
self.ACCOUNT_TYPE = "('payable')"
else:
self.ACCOUNT_TYPE = "('payable','receivable')"
-
+
res = []
account_move_line_obj = pooler.get_pool(self.cr.dbname).get('account.move.line')
@@ -78,7 +78,7 @@ class aged_trial_report(rml_parse.rml_parse):
for i in range(7):
self.total_account.append(0)
#
-
+
for partner in partners:
values = {}
## If choise selection is in the future
@@ -94,7 +94,7 @@ class aged_trial_report(rml_parse.rml_parse):
"AND account_account.active",
(form['date1'], partner['id'],form['date1'], form['company_id']))
before = self.cr.fetchone()
-
+
self.total_account[6] = self.total_account[6] + (before and before[0] or 0.0)
values['direction'] = before and before[0] or 0.0
@@ -112,7 +112,6 @@ class aged_trial_report(rml_parse.rml_parse):
after = self.cr.fetchone()
self.total_account[6] = self.total_account[6] + (after and after[0] or 0.0)
values['direction'] = after and after[0] or ""
- #print str(values['direction'])
for i in range(5):
self.cr.execute("SELECT SUM(debit-credit) " \
"FROM account_move_line AS line, account_account " \
@@ -128,8 +127,6 @@ class aged_trial_report(rml_parse.rml_parse):
during = self.cr.fetchone()
# Ajout du compteur
self.total_account[(i)] = self.total_account[(i)] + (during and during[0] or 0)
-
- #print str(during)
values[str(i)] = during and during[0] or ""
self.cr.execute("SELECT SUM(debit-credit) " \
"FROM account_move_line AS line, account_account " \
@@ -145,19 +142,16 @@ class aged_trial_report(rml_parse.rml_parse):
values['total'] = total and total[0] or 0.0
## Add for total
self.total_account[(i+1)] = self.total_account[(i+1)] + (total and total[0] or 0.0)
- print self.total_account,">>>>>>>>>>>>>Total>>>>>>>>>>>>>>>>"
values['name'] = partner['name']
#t = 0.0
#for i in range(5)+['direction']:
# t+= float(values.get(str(i), 0.0) or 0.0)
#values['total'] = t
-
+
if values['total']:
-
res.append(values)
-
+
total = 0.0
-
totals = {}
for r in res:
total += float(r['total'] or 0.0)
@@ -166,24 +160,17 @@ class aged_trial_report(rml_parse.rml_parse):
totals[str(i)] += float(r[str(i)] or 0.0)
return res
-
-
-
def _get_total(self,pos):
- print self.total_account,"========_get_total========"
period = self.total_account[int(pos)]
- return period
+ return period
-
def _get_direction(self,pos):
-
period = self.total_account[int(pos)]
- return period
+ return period
def _get_for_period(self,pos):
-
period = self.total_account[int(pos)]
- return period
+ return period
def _get_company(self, form):
return pooler.get_pool(self.cr.dbname).get('res.company').browse(self.cr, self.uid, form['company_id']).name
@@ -194,5 +181,5 @@ class aged_trial_report(rml_parse.rml_parse):
report_sxw.report_sxw('report.account.aged_trial_balance', 'res.partner',
'addons/account/report/aged_trial_balance.rml',parser=aged_trial_report,header=False)
-
+
diff --git a/addons/account/report/central_journal.py b/addons/account/report/central_journal.py
index c4dab8fc600..7b595a311a7 100644
--- a/addons/account/report/central_journal.py
+++ b/addons/account/report/central_journal.py
@@ -55,7 +55,7 @@ class journal_print(report_sxw.rml_parse):
def _sum_credit(self, period_id, journal_id):
self.cr.execute('select sum(credit) from account_move_line where period_id=%d and journal_id=%d and state<>\'draft\'', (period_id, journal_id))
return self.cr.fetchone()[0] or 0.0
-report_sxw.report_sxw('report.account.central.journal', 'account.journal.period', 'addons/account/report/central_journal.rml',parser=journal_print)
+report_sxw.report_sxw('report.account.central.journal', 'account.journal.period', 'addons/account/report/central_journal.rml',parser=journal_print, header=False)
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/central_journal.rml b/addons/account/report/central_journal.rml
index 359465379d2..ade1659de58 100644
--- a/addons/account/report/central_journal.rml
+++ b/addons/account/report/central_journal.rml
@@ -3,6 +3,30 @@
+
+
+
+
+
+
+ [[ company.name ]]
+ Central Journal-[[ company.currency_id.name ]]
+
+
+
+
+
+ [[ time.strftime("%Y-%m-%d %H:%M", time.localtime()) ]]
+ Page
+
+
+
+
+ 1cm 27.7cm 20cm 27.7cm
+
+
+
+
@@ -10,44 +34,62 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -55,104 +97,150 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- [[ repeatIn(objects, 'o') ]]
-
+
+
- Printing date: [[ time.strftime('%Y-%m-%d') ]] at [[ time.strftime('%H:%M:%S') ]]
-
+
-
+ [[ repeatIn(objects, 'o') ]]
+
|
- Account number
+ Journal Code
|
- Account name
+ Journal Name
|
- Currency
- |
-
- Debit
- |
-
- Credit
+ Printing Date
|
-
+
|
- [[ repeatIn(lines(o.period_id.id, o.journal_id.id), 'line') ]][[ line['code'] ]]
+ [[ o.journal_id.code or '' ]]
|
- [[ line['name'] ]]
+ [[ o.journal_id.name ]]
|
-
-
-
- |
-
- [[ line['debit'] and '%.2f' % line['debit'] or '' ]]
- |
-
- [[ line['credit'] and '%.2f' % line['credit'] or '' ]]
+ [[ time.strftime('%Y-%m-%d') ]] at [[ time.strftime('%H:%M:%S') ]]
|
-
-
- |
- TOTAL:
- |
-
- [[ '%.2f' % sum_debit(o.period_id.id, o.journal_id.id) ]]
- |
-
- [[ '%.2f' % sum_credit(o.period_id.id, o.journal_id.id) ]]
- |
-
-
-
+
-
-
+
+
+
+
+
+ |
+ Account Num.
+ |
+
+ Account Name
+ |
+
+ Debit
+ |
+
+ Credit
+ |
+
+
+
+
+
+
+ |
+ Total:
+ |
+
+
+
+
+ |
+
+ [[ '%.2f' % sum_debit(o.period_id.id, o.journal_id.id) ]]
+ |
+
+ [[ '%.2f' % sum_credit(o.period_id.id, o.journal_id.id) ]]
+ |
+
+
+ |
+
+
+
+
+ [[ repeatIn(lines(o.period_id.id,o.journal_id.id),'line') ]]
+
+
+ |
+ [[ line['code'] ]]
+ |
+
+ [[ line['name'] ]]
+ |
+
+ [[ formatLang(line['debit']) and '%.2f' % line['debit'] or '0.00' ]]
+ |
+
+ [[ formatLang(line['credit']) and '%.2f' % line['credit'] or '0.00' ]]
+ |
+
+
+ |
+
+
+
-
diff --git a/addons/account/report/general_journal.py b/addons/account/report/general_journal.py
index 9233a98b765..8899977e17a 100644
--- a/addons/account/report/general_journal.py
+++ b/addons/account/report/general_journal.py
@@ -96,7 +96,7 @@ class journal_print(report_sxw.rml_parse):
return 0.0
self.cr.execute('select sum(credit) from account_move_line where period_id in (' + self.period_ids + ') and journal_id in (' + self.journal_ids + ') and state<>\'draft\'')
return self.cr.fetchone()[0] or 0.0
-report_sxw.report_sxw('report.account.general.journal', 'account.journal.period', 'addons/account/report/general_journal.rml',parser=journal_print)
+report_sxw.report_sxw('report.account.general.journal', 'account.journal.period', 'addons/account/report/general_journal.rml',parser=journal_print, header=False)
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/general_journal.rml b/addons/account/report/general_journal.rml
index 8de0f1a82ea..f89c7d201b6 100644
--- a/addons/account/report/general_journal.rml
+++ b/addons/account/report/general_journal.rml
@@ -1,8 +1,32 @@
-
+
-
+
+
+
+
+
+
+
+ [[ company.name ]]
+ General Journal - [[ company.currency_id.name ]]
+
+
+
+
+
+ [[ time.strftime("%Y-%m-%d %H:%M", time.localtime()) ]]
+ Page
+
+
+
+
+ 1cm 27.7cm 20cm 27.7cm
+
+
+
+
@@ -10,174 +34,215 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
|
- [[ company.name ]]
+ Printing Date :
|
-
-
-
- |
-
- Currency: [[ company.currency_id.name ]]
+ [[ time.strftime('%Y-%m-%d') ]] at [[ time.strftime('%H:%M:%S') ]]
|
-
+
- Printing date: [[ time.strftime('%Y-%m-%d') ]] at [[ time.strftime('%H:%M:%S') ]]
-
-
-
-
-
- |
- Journal code
- |
-
- Journal name
- |
-
- Period
- |
-
- Debit trans.
- |
-
- Credit trans.
- |
-
-
-
+
- [[ repeatIn( periods(objects), 'o') ]]
-
-
- |
-
- [[ repeatIn(lines(o.id), 'line') ]]
- [[ line['code'] ]]
-
- |
-
- [[ line['name'] ]]
- |
-
- [[ o.name ]]
- |
-
- [[ line['debit'] and ('%.2f' % line['debit']) or '' ]]
- |
-
- [[ line['credit'] and ('%.2f' % line['credit']) or '' ]]
- |
-
-
-
-
- |
- Total [[ o.name ]]
- |
-
- [[ '%.2f' % sum_debit_period(o.id) ]]
- |
-
- [[ '%.2f' % sum_credit_period(o.id) ]]
- |
-
-
-
-
-
-
-
-
-
-
+
|
- TOTAL:
+ Jrl Code
|
- [[ '%.2f' % sum_debit() ]]
+ Journal Name
|
- [[ '%.2f' % sum_credit() ]]
+ Period
+ |
+
+ Debit Trans.
+ |
+
+ Credit Trans.
|
-
-
+
+
+
+
+
+ |
+ Total:
+ |
+
+
+
+
+ |
+
+
+
+
+ |
+
+ [[ '%.2f' % sum_debit() ]]
+ |
+
+ [[ '%.2f' % sum_credit() ]]
+ |
+
+
+ |
+
+
+
+
+ [[ repeatIn( periods(objects), 'o') ]]
+
+
+ |
+ [[ o.name ]] :
+ |
+
+
+
+
+ |
+
+
+
+
+ |
+
+ [[ '%.2f' % sum_debit_period(o.id) ]]
+ |
+
+ [[ '%.2f' % sum_credit_period(o.id) ]]
+ |
+
+
+
+
+
+ |
+ [[ repeatIn(lines(o.id),'line')]][[ line['code'] ]]
+ |
+
+ [[ line['name'] ]]
+ |
+
+ [[ o.name ]]
+ |
+
+ [[ line['debit'] and ('%.2f' % line['debit']) or '' ]]
+ |
+
+ [[ line['credit'] and ('%.2f' % line['credit']) or '' ]]
+ |
+
+
+ |
+
+
+ |
+
+
+
+
-
diff --git a/addons/account/report/general_ledger.rml b/addons/account/report/general_ledger.rml
index 15be15e7be9..20817dff3f3 100755
--- a/addons/account/report/general_ledger.rml
+++ b/addons/account/report/general_ledger.rml
@@ -16,14 +16,14 @@
[[ company.name ]]
- General Ledger
+ General Ledger - [[ company.currency_id.name ]]
[[ time.strftime("%d-%m-%Y %H:%M", time.localtime()) ]]
Page
-
+
1cm 27.7cm 20cm 27.7cm
@@ -32,29 +32,29 @@
-
+
-
+
-
+
-
-
+
+
-
-
+
+
@@ -91,7 +91,7 @@
- [[ data['form']['amount_currency'] == False or removeParentNode('blockTable') ]]
+ [[ data['form']['amount_currency'] == False or removeParentNode('blockTable') ]]
|
Date
@@ -122,7 +122,7 @@
[[ repeatIn(objects, 'a') ]]
[[ repeatIn(get_children_accounts(a,data['form']), 'o') ]]
|
-
+
|
@@ -139,7 +139,7 @@
[[sum_solde_account(o, data['form']) or '0.0' ]]
|
-
+
|
@@ -147,7 +147,7 @@
|
|
-
+
Balance Initial
|
@@ -169,13 +169,13 @@
[[ (o.init_debit - o.init_credit) or '0.0' ]]
|
-
+
[[ repeatIn(lines(o, data['form']), 'line') ]]
|
[[ line['date'] ]]
|
-
+
[[ line['partner'] ]]
|
@@ -197,14 +197,14 @@
[[ line['progress'] and line['progress'] or '0.0' ]]
|
-
+
-
- [[ data['form']['amount_currency'] == True or removeParentNode('blockTable') ]]
+
+ [[ data['form']['amount_currency'] == True or removeParentNode('blockTable') ]]
|
Date
@@ -229,17 +229,17 @@
|
Balance
- |
+
Currency
- |
-
+
+
[[ repeatIn(objects, 'a') ]]
[[ repeatIn(get_children_accounts(a,data['form']), 'o') ]]
-
+
|
@@ -256,18 +256,18 @@
[[sum_solde_account(o, data['form']) or '0.0' ]]
|
-
+
[[ sum_currency_amount_account(a, data['form']) or '0.0' ]]
|
-
+
|
[[ data['form']['soldeinit'] == True or removeParentNode('tr') ]]
|
|
-
+
Balance Initial
|
@@ -292,7 +292,7 @@
|
-
+
[[ repeatIn(lines(o, data['form']), 'line') ]]
|
@@ -323,15 +323,15 @@
[[ line['amount_currency'] or '0.0' ]] [[ line['currency_code'] ]]
|
-
+
-
+
-
+
-
-
-
-
+
+
+
+
\ No newline at end of file
diff --git a/addons/account/report/general_ledger_landscape.py b/addons/account/report/general_ledger_landscape.py
index f090b18c090..a091ec905dd 100755
--- a/addons/account/report/general_ledger_landscape.py
+++ b/addons/account/report/general_ledger_landscape.py
@@ -35,8 +35,8 @@ import pooler
class general_ledger_landscape(rml_parse.rml_parse):
_name = 'report.account.general.ledger_landscape'
-
-
+
+
def preprocess(self, objects, data, ids):
##
self.borne_date = self.get_min_date(data['form'])
@@ -46,18 +46,18 @@ class general_ledger_landscape(rml_parse.rml_parse):
new_ids = ids
else:
new_ids.append(data['form']['Account_list'])
-
+
objects = self.pool.get('account.account').browse(self.cr, self.uid, new_ids)
-
- super(general_ledger_landscape, self).preprocess(objects, data, new_ids)
-
+
+ super(general_ledger_landscape, self).preprocess(objects, data, new_ids)
+
def __init__(self, cr, uid, name, context):
super(general_ledger_landscape, self).__init__(cr, uid, name, context)
self.query = ""
self.child_ids = ""
self.tot_currency = 0.0
self.period_sql = ""
- self.sold_accounts = {}
+ self.sold_accounts = {}
self.localcontext.update( {
'time': time,
'lines': self.lines,
@@ -66,7 +66,7 @@ class general_ledger_landscape(rml_parse.rml_parse):
'sum_solde_account': self._sum_solde_account,
'sum_debit': self._sum_debit,
'sum_credit': self._sum_credit,
- 'sum_solde': self._sum_solde,
+ 'sum_solde': self._sum_solde,
'get_children_accounts': self.get_children_accounts,
'sum_currency_amount_account': self._sum_currency_amount_account
})
@@ -75,7 +75,7 @@ class general_ledger_landscape(rml_parse.rml_parse):
result = {}
#for id in ids:
# result.setdefault(id, False)
-
+
for account_line in self.pool.get('account.move.line').browse(cr, uid, ids, context):
# For avoid long text in the field we will limit it to 5 lines
#
@@ -85,7 +85,7 @@ class general_ledger_landscape(rml_parse.rml_parse):
num_id_move = str(account_line.move_id.id)
num_id_line = str(account_line.id)
account_id = str(account_line.account_id.id)
- # search the basic account
+ # search the basic account
# We have the account ID we will search all account move line from now until this time
# We are in the case of we are on the top of the account move Line
cr.execute('SELECT distinct(ac.code) as code_rest,ac.name as name_rest from account_account AS ac, account_move_line mv\
@@ -103,10 +103,8 @@ class general_ledger_landscape(rml_parse.rml_parse):
result[account_line.id] = concat + '...'
break
rup_id+=1
-
- #print str(result)
return result
-
+
def get_min_date(self,form):
## Get max born from account_fiscal year
#
@@ -123,9 +121,9 @@ class general_ledger_landscape(rml_parse.rml_parse):
periods = form['periods'][0][2]
if not periods:
sql = """
- Select min(p.date_start) from account_period as p where p.fiscalyear_id = """ + str(form['fiscalyear']) + """
+ Select min(p.date_start) from account_period as p where p.fiscalyear_id = """ + str(form['fiscalyear']) + """
"""
- else:
+ else:
periods_id = ','.join(map(str, periods))
sql = """
Select min(p.date_start) from account_period as p where p.id in ( """ + periods_id + """)
@@ -141,30 +139,30 @@ class general_ledger_landscape(rml_parse.rml_parse):
}
return date_borne
-
-
+
+
def get_children_accounts(self, account, form):
-
-
+
+
self.child_ids = self.pool.get('account.account').search(self.cr, self.uid,
[('parent_id', 'child_of', self.ids)])
-#
+#
res = []
ctx = self.context.copy()
## We will make the test for period or date
## We will now make the test
#
- if form.has_key('fiscalyear'):
+ if form.has_key('fiscalyear'):
ctx['fiscalyear'] = form['fiscalyear']
ctx['periods'] = form['periods'][0][2]
else:
ctx['date_from'] = form['date_from']
ctx['date_to'] = form['date_to']
##
-
+
#
self.query = self.pool.get('account.move.line')._query_get(self.cr, self.uid, context=ctx)
-
+
for child_id in self.pool.get('account.account').search(self.cr, self.uid,[('parent_id', 'child_of', [account.id])]):
child_account = self.pool.get('account.account').browse(self.cr, self.uid, child_id)
sold_account = self._sum_solde_account(child_account,form)
@@ -175,7 +173,6 @@ class general_ledger_landscape(rml_parse.rml_parse):
[('account_id','=',child_account.id)],
context=ctx)) <> 0 :
res.append(child_account)
- #print "Type de vue :" + form['display_account']
elif form['display_account'] == 'bal_solde':
if child_account.type != 'view' \
and len(self.pool.get('account.move.line').search(self.cr, self.uid,
@@ -183,7 +180,7 @@ class general_ledger_landscape(rml_parse.rml_parse):
context=ctx)) <> 0 :
if ( sold_account <> 0.0):
res.append(child_account)
- else:
+ else:
if child_account.type != 'view' \
and len(self.pool.get('account.move.line').search(self.cr, self.uid,
[('account_id','=',child_account.id)],
@@ -205,17 +202,17 @@ class general_ledger_landscape(rml_parse.rml_parse):
sum_credit = 0
else:
sum_credit = resultat[0]['sum_credit']
-
+
move.init_credit = sum_credit
move.init_debit = sum_debit
-
+
else:
move.init_credit = 0
move.init_debit = 0
-
+
##
return res
-
+
def lines(self, account, form):
inv_types = {
'out_invoice': 'CI: ',
@@ -229,9 +226,9 @@ class general_ledger_landscape(rml_parse.rml_parse):
else:
sorttag = 'j.code'
sql = """
- SELECT l.id, l.date, j.code,c.code AS currency_code,l.amount_currency,l.ref, l.name, l.debit, l.credit, l.period_id
+ SELECT l.id, l.date, j.code,c.code AS currency_code,l.amount_currency,l.ref, l.name, l.debit, l.credit, l.period_id
FROM account_move_line l LEFT JOIN res_currency c on (l.currency_id=c.id) JOIN account_journal j on (l.journal_id=j.id)
- AND account_id = %d AND %s
+ AND account_id = %d AND %s
ORDER by %s"""%(account.id,self.query,sorttag)
self.cr.execute(sql)
res = self.cr.dictfetchall()
@@ -258,11 +255,11 @@ class general_ledger_landscape(rml_parse.rml_parse):
if (l['credit'] > 0):
if l['amount_currency'] != None:
l['amount_currency'] = abs(l['amount_currency']) * -1
-
+
#
if l['amount_currency'] != None:
- self.tot_currency = self.tot_currency + l['amount_currency']
-
+ self.tot_currency = self.tot_currency + l['amount_currency']
+
return res
def _sum_debit_account(self, account, form):
@@ -291,7 +288,7 @@ class general_ledger_landscape(rml_parse.rml_parse):
sum_credit += account.init_credit
#
##
-
+
return sum_credit
def _sum_solde_account(self, account, form):
@@ -301,7 +298,7 @@ class general_ledger_landscape(rml_parse.rml_parse):
sum_solde = self.cr.fetchone()[0] or 0.0
if form['soldeinit']:
sum_solde += account.init_debit - account.init_credit
-
+
return sum_solde
def _sum_debit(self, form):
@@ -330,31 +327,24 @@ class general_ledger_landscape(rml_parse.rml_parse):
self.cr.execute("SELECT (sum(debit) - sum(credit)) as tot_solde "\
"FROM account_move_line l "\
"WHERE l.account_id in ("+','.join(map(str, self.child_ids))+") AND "+self.query)
-# print ("SELECT (sum(debit) - sum(credit)) as Test "\
-# "FROM account_move_line l "\
-# "WHERE l.account_id in ("+','.join(map(str, child_ids))+") AND "+query+period_sql)
sum_solde = self.cr.fetchone()[0] or 0.0
return sum_solde
-
+
def _set_get_account_currency_code(self, account_id):
- print"====account_id=====",account_id
self.cr.execute("SELECT c.code as code "\
"FROM res_currency c,account_account as ac "\
"WHERE ac.id = %s AND ac.currency_id = c.id"%(account_id))
result = self.cr.fetchone()
- print"====result====",result
if result:
self.account_currency = result[0]
else:
self.account_currency = False
-
-
+
def _sum_currency_amount_account(self, account, form):
-
self._set_get_account_currency_code(account.id)
self.cr.execute("SELECT sum(aml.amount_currency) FROM account_move_line as aml,res_currency as rc WHERE aml.currency_id = rc.id AND aml.account_id= %d "%account.id)
total = self.cr.fetchone()
-
+
if self.account_currency:
return_field = str(total[0]) + self.account_currency
return return_field
diff --git a/addons/account/report/general_ledger_landscape.rml b/addons/account/report/general_ledger_landscape.rml
index 439dff350bb..16ddfa9a594 100755
--- a/addons/account/report/general_ledger_landscape.rml
+++ b/addons/account/report/general_ledger_landscape.rml
@@ -16,7 +16,7 @@
[[ company.name ]]
- General Ledger
+ General Ledger - [[ company.currency_id.name ]]
@@ -24,39 +24,39 @@
Page
-
+
1.3cm 24.9cm 38.3cm 24.9cm
-
+
-
+
-
+
-
+
-
-
+
+
-
-
+
+
@@ -92,10 +92,10 @@
-
-
- [[ data['form']['amount_currency'] == True or removeParentNode('blockTable') ]]
-
+
+
+ [[ data['form']['amount_currency'] == True or removeParentNode('blockTable') ]]
+
|
@@ -145,10 +145,10 @@
|
[[ repeatIn(objects, 'a') ]]
[[ repeatIn(get_children_accounts(a,data['form']), 'o') ]]
-
+
-
-
+
+
|
@@ -165,18 +165,18 @@
[[ sum_solde_account(o, data['form']) or '0.0' ]]
|
-
+
[[ sum_currency_amount_account(o, data['form']) or '0.0' ]]
|
-
+
|
[[ data['form']['soldeinit'] == True or removeParentNode('tr') ]]
|
Balance Initial
|
-
+
|
@@ -207,13 +207,13 @@
|
-
-
-
+
+ |
+
[[ repeatIn(lines(o, data['form']), 'line') ]]
|
-
+
[[ line['date'] ]]
|
@@ -247,17 +247,17 @@
[[ line['amount_currency'] or '0.0' ]] [[ line['currency_code'] ]]
|
-
-
+
+
|
-
-
-
+
+
+
-
-
- [[ data['form']['amount_currency'] == False or removeParentNode('blockTable') ]]
+
+
+ [[ data['form']['amount_currency'] == False or removeParentNode('blockTable') ]]
|
@@ -320,7 +320,7 @@
Balance
|
-
+
|
[[ repeatIn(objects, 'a') ]]
@@ -342,14 +342,14 @@
[[sum_solde_account(o, data['form']) or '0.0' ]]
|
-
+
|
[[ data['form']['soldeinit'] == True or removeParentNode('tr') ]]
|
|
-
+
Solde Initial
|
@@ -368,7 +368,7 @@
|
-
+
[[ o.init_debit or '0.0' ]]
|
@@ -378,7 +378,7 @@
[[ o.init_debit - o.init_credit or '0.0' ]]
|
-
+
[[ repeatIn(lines(o, data['form']), 'line') ]]
|
@@ -412,15 +412,15 @@
[[ line['progress'] and line['progress'] or '0.0' ]]
|
-
-
+
+
|
-
+
-
-
+
+
-
+
\ No newline at end of file
diff --git a/addons/account/report/overdue.rml b/addons/account/report/overdue.rml
index f9f213f0d89..aa0d111b28f 100644
--- a/addons/account/report/overdue.rml
+++ b/addons/account/report/overdue.rml
@@ -14,195 +14,193 @@
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- [[ repeatIn(objects,'o') ]]
- [[ setLang(o.lang) ]]
+ [[ repeatIn(objects,'o') ]]
+ [[ setLang(o.lang) ]]
|
-
+
|
- [[ o.name ]]
- [[ adr_get(o, 'invoice')['name'] ]]
- [[ adr_get(o, 'invoice')['street'] ]]
- [[ adr_get(o, 'invoice')['zip'] ]] [[ adr_get(o, 'invoice')['city'] ]]
- [[ adr_get(o, 'invoice')['country_id'] and adr_get(o, 'invoice')['country_id'][1] ]]
-
+ [[ o.name ]]
+ [[ adr_get(o, 'invoice')['name'] ]]
+ [[ adr_get(o, 'invoice')['street'] ]]
+ [[ adr_get(o, 'invoice')['zip'] ]] [[ adr_get(o, 'invoice')['city'] ]]
+ [[ adr_get(o, 'invoice')['country_id'] and adr_get(o, 'invoice')['country_id'][1] ]]
+
- VAT: [[ o.vat or removeParentNode('para') ]]
+ VAT: [[ o.vat or removeParentNode('para') ]]
|
+
+
+
+
+
+
+ Document: Customer account statement
-
+ Date:
+ [[ time.strftime('%d/%m/%Y') ]]
-
-
-
- Document: Customer account statement
-
- Date:
- [[ time.strftime('%d/%m/%Y') ]]
-
- Customer Ref: [[ o.id ]]
-
-
-
- Dear Sir/Madam,
-
-
-
- Exception made of a mistake of our side, it seems that the following bills stay unpaid. Please, take appropriate measures in order to carry out this payment in the next 8 days.
-
-
-
- Would your payment have been carried out after this mail was sent, please consider the present one as void. Do not hesitate to contact our accounting departement at [[ tel_get(company.partner_id) ]].
-
-
-
- Best regards.
+ Customer Ref: [[ o.id ]]
-
+ Dear Sir/Madam,
+
+
+
+ Exception made of a mistake of our side, it seems that the following bills stay unpaid. Please, take appropriate measures in order to carry out this payment in the next 8 days.
+
+
+
+ Would your payment have been carried out after this mail was sent, please consider the present one as void. Do not hesitate to contact our accounting departement at +32 81 81 37 00.
+
+
+
+ Best regards.
+
+
+
+
|
- Date
+ Date
|
- Description
+ Description
|
- Ref
+ Ref
|
- Maturity date
+ Maturity date
|
- Due
+ Due
|
- Paid
+ Paid
|
- Maturity
+ Maturity
|
- Li.
+ Li.
|
-
+
|
-
- [[repeatIn(getLines(o), 'line') ]]
- [[ line['date'] ]]
-
+ Sub-Total:
+ |
+ |
+ |
+ |
+
+ [[ '%.2f' % (reduce(lambda x, y: x + (y['debit'] * (y['account_id']['type'] == 'payable' and -1 or 1)), getLines(o), 0)) ]]
|
- [[ line['name'] ]]
+ [[ '%.2f' % (reduce(lambda x ,y: x + (y['credit'] * (y['account_id']['type'] == 'payable' and -1 or 1)), getLines(o), 0)) ]]
|
- [[ line['ref'] ]]
+ [[ '%.2f' % (reduce(lambda x, y: x + ((y['debit'] - y['credit']) * (y['account_id']['type'] == 'payable' and -1 or 1)), filter(lambda x: x['date_maturity'] < time.strftime('%Y-%m-%d'), getLines(o)), 0)) ]]
|
- [[ line['date_maturity'] ]]
- |
-
- [[ line['debit'] and '%.2f' % (line['debit'] * (line['account_id']['type'] == 'payable' and -1 or 1)) or '' ]]
- |
-
- [[ line['credit'] and '%.2f' % (line['credit'] * (line['account_id']['type'] == 'payable' and -1 or 1)) or '' ]]
- |
-
- [[ (line['date_maturity'] < time.strftime('%Y-%m-%d')) and '%.2f' % ((line['debit'] - line['credit']) * (line['account_id']['type'] == 'payable' and -1 or 1)) or '' ]]
- |
-
- [[ line['blocked'] and 'X' or '' ]]
- |
-
-
-
-
- |
- Sub-Total:
- |
-
- [[ '%.2f' % (reduce(lambda x, y: x + (y['debit'] * (y['account_id']['type'] == 'payable' and -1 or 1)), getLines(o), 0)) ]]
- |
-
-
- [[ '%.2f' % (reduce(lambda x ,y: x + (y['credit'] * (y['account_id']['type'] == 'payable' and -1 or 1)), getLines(o), 0)) ]]
-
- |
-
- [[ '%.2f' % (reduce(lambda x, y: x + ((y['debit'] - y['credit']) * (y['account_id']['type'] == 'payable' and -1 or 1)), filter(lambda x: x['date_maturity'] < time.strftime('%Y-%m-%d'), getLines(o)), 0)) ]]
- |
-
-
+
|
|
- Balance:
+ Balance:
+ |
+ |
+ |
+ |
+
+ [[ '%.2f' % (reduce(lambda x, y: x +((y['debit'] - y['credit']) * (y['account_id']['type'] == 'payable' and -1 or 1)), getLines(o), 0)) ]]
|
- [[ '%.2f' % (reduce(lambda x, y: x +((y['debit'] - y['credit']) * (y['account_id']['type'] == 'payable' and -1 or 1)), getLines(o), 0)) ]]
+
+
+
|
@@ -210,27 +208,52 @@
|
-
+
|
+
+
+
+ |
+
+ [[repeatIn(getLines(o), 'line') ]]
+ [[ line['date'] ]]
+
+ |
-
-
-
+ [[ line['name'] ]]
+ |
+
+ [[ line['ref'] ]]
+ |
+
+ [[ line['date_maturity'] ]]
+ |
+
+ [[ line['debit'] and '%.2f' % (line['debit'] * (line['account_id']['type'] == 'payable' and -1 or 1)) or '' ]]
+ |
+
+ [[ line['credit'] and '%.2f' % (line['credit'] * (line['account_id']['type'] == 'payable' and -1 or 1)) or '' ]]
+ |
+
+ [[ (line['date_maturity'] < time.strftime('%Y-%m-%d')) and '%.2f' % ((line['debit'] - line['credit']) * (line['account_id']['type'] == 'payable' and -1 or 1)) or '' ]]
+ |
+
+ [[ line['blocked'] and 'X' or '' ]]
|
-
+
-
- Total amount due:
- [[ '%.2f' % (reduce(lambda x, y: x + ((y['debit'] - y['credit']) * (y['account_id']['type'] == 'payable' and -1 or 1)), getLines(o), 0)) ]] [[ company.currency_id.name ]].
+
+ Total amount due:
+ [[ '%.2f' % (reduce(lambda x, y: x + ((y['debit'] - y['credit']) * (y['account_id']['type'] == 'payable' and -1 or 1)), getLines(o), 0)) ]] [[ company.currency_id.name ]]
+ .
-
+
-
diff --git a/addons/account/report/partner_balance.py b/addons/account/report/partner_balance.py
index e7313354aea..519456527c8 100644
--- a/addons/account/report/partner_balance.py
+++ b/addons/account/report/partner_balance.py
@@ -67,10 +67,13 @@ class partner_balance(report_sxw.rml_parse):
return full_str_date
#
+
+
def transform_period_into_date_array(self,data):
## Get All Period Date
#
# If we have no period we will take all perdio in the FiscalYear.
+ print"data['form']['periods'][0][2]",data['form']['periods'][0][2]
if not data['form']['periods'][0][2] :
periods_id = self.pool.get('account.period').search(self.cr, self.uid, [('fiscalyear_id','=',data['form']['fiscalyear'])])
else:
@@ -79,7 +82,6 @@ class partner_balance(report_sxw.rml_parse):
for period_id in periods_id:
period_obj = self.pool.get('account.period').browse(self.cr, self.uid, period_id)
date_array = date_array + self.date_range(period_obj.date_start,period_obj.date_stop)
-
self.date_lst = date_array
self.date_lst.sort()
@@ -89,7 +91,54 @@ class partner_balance(report_sxw.rml_parse):
self.date_lst = return_array
self.date_lst.sort()
-
+ def transform_both_into_date_array(self,data):
+ if not data['form']['periods'][0][2] :
+ periods_id = self.pool.get('account.period').search(self.cr, self.uid, [('fiscalyear_id','=',data['form']['fiscalyear'])])
+ else:
+ periods_id = data['form']['periods'][0][2]
+ date_array = []
+ for period_id in periods_id:
+ period_obj = self.pool.get('account.period').browse(self.cr, self.uid, period_id)
+ date_array = date_array + self.date_range(period_obj.date_start,period_obj.date_stop)
+
+ period_start_date = date_array[0]
+ date_start_date = data['form']['date1']
+ period_stop_date = date_array[-1]
+ date_stop_date = data['form']['date2']
+
+ if period_start_date sum(credit) " \
@@ -178,6 +245,7 @@ class partner_balance(report_sxw.rml_parse):
#
#
#
+
self.cr.execute(
"SELECT p.ref,l.account_id,ac.name as account_name,ac.code as code ,p.name, sum(debit) as debit, sum(credit) as credit, " \
"CASE WHEN sum(debit) > sum(credit) " \
@@ -202,7 +270,7 @@ class partner_balance(report_sxw.rml_parse):
"GROUP BY p.id, p.ref, p.name,l.account_id,ac.name,ac.code " \
"ORDER BY l.account_id,p.name")
res = self.cr.dictfetchall()
- print"=====res=====",res
+
for r in res:
full_account.append(r)
@@ -229,18 +297,19 @@ class partner_balance(report_sxw.rml_parse):
new_header['ref'] = ''
new_header['name'] = r['account_name']
new_header['code'] = r['code']
- new_header['debit'] = 0
- new_header['credit'] = 0
- new_header['scredit'] = 0
- new_header['sdebit'] = 0
- new_header['enlitige'] = 0
- new_header['balance'] = 0
+ new_header['debit'] = tot_debit
+ new_header['credit'] = tot_credit
+ new_header['scredit'] = tot_scredit
+ new_header['sdebit'] = tot_sdebit
+ new_header['enlitige'] = tot_enlitige
+ new_header['balance'] = float(tot_sdebit) - float(tot_scredit)
new_header['type'] = 3
##
completearray.append(new_header)
#
r['type'] = 1
r['balance'] = float(r['sdebit']) - float(r['scredit'])
+
completearray.append(r)
#
tot_debit = r['debit']
@@ -252,21 +321,27 @@ class partner_balance(report_sxw.rml_parse):
else:
if cleanarray[i]['account_id'] <> cleanarray[i-1]['account_id']:
##
- new_tot = {}
- new_tot['ref'] = 'Total'
- new_tot['name'] = cleanarray[i-1]['account_name']
- new_tot['code'] = cleanarray[i-1]['code']
-
- new_tot['debit'] = tot_debit
- new_tot['credit'] = tot_credit
- new_tot['scredit'] = tot_scredit
- new_tot['sdebit'] = tot_sdebit
- new_tot['enlitige'] = tot_enlitige
- new_tot['balance'] = float(tot_sdebit) - float(tot_scredit)
- new_tot['type'] = 3
- ##
- completearray.append(new_tot)
-
+# new_tot = {}
+# new_tot['ref'] = 'Total'
+# new_tot['name'] = cleanarray[i-1]['account_name']
+# new_tot['code'] = cleanarray[i-1]['code']
+#
+# new_tot['debit'] = tot_debit
+# new_tot['credit'] = tot_credit
+# new_tot['scredit'] = tot_scredit
+# new_tot['sdebit'] = tot_sdebit
+# new_tot['enlitige'] = tot_enlitige
+# new_tot['balance'] = float(tot_sdebit) - float(tot_scredit)
+# new_tot['type'] = 3
+# ##
+# completearray.append(new_tot)
+ new_header['debit'] = tot_debit
+ new_header['credit'] = tot_credit
+ new_header['scredit'] = tot_scredit
+ new_header['sdebit'] = tot_sdebit
+ new_header['enlitige'] = tot_enlitige
+ new_header['balance'] = float(tot_sdebit) - float(tot_scredit)
+ new_header['type'] = 3
# we reset the counter
tot_debit = r['debit']
tot_credit = r['credit']
@@ -279,12 +354,12 @@ class partner_balance(report_sxw.rml_parse):
new_header['ref'] = ''
new_header['name'] = r['account_name']
new_header['code'] = r['code']
- new_header['debit'] = 0
- new_header['credit'] = 0
- new_header['scredit'] = 0
- new_header['sdebit'] = 0
- new_header['enlitige'] = 0
- new_header['balance'] = 0
+ new_header['debit'] = tot_debit
+ new_header['credit'] = tot_credit
+ new_header['scredit'] = tot_scredit
+ new_header['sdebit'] = tot_sdebit
+ new_header['enlitige'] = tot_enlitige
+ new_header['balance'] = float(tot_sdebit) - float(tot_scredit)
new_header['type'] = 3
##
##
@@ -296,8 +371,10 @@ class partner_balance(report_sxw.rml_parse):
r['balance'] = float(r['sdebit']) - float(r['scredit'])
#
completearray.append(r)
+
if cleanarray[i]['account_id'] == cleanarray[i-1]['account_id']:
# we reset the counter
+
tot_debit = tot_debit + r['debit']
tot_credit = tot_credit + r['credit']
tot_scredit = tot_scredit + r['scredit']
@@ -308,8 +385,11 @@ class partner_balance(report_sxw.rml_parse):
#
r['balance'] = float(r['sdebit']) - float(r['scredit'])
#
+
completearray.append(r)
+
i = i + 1
+
return completearray
@@ -320,6 +400,7 @@ class partner_balance(report_sxw.rml_parse):
result_tmp = 0.0
#
#
+
if data['form']['soldeinit'] :
self.cr.execute(
'SELECT sum(debit) ' \
@@ -443,17 +524,21 @@ class partner_balance(report_sxw.rml_parse):
# ' account_id IN (' + self.account_ids + ') ' \
'l.date IN (' + self.date_lst_string + ') ' \
'GROUP BY partner_id')
-
+ a = self.cr.fetchone()[0]
+ print"====self.cr.fetchone()====",a
if self.cr.fetchone() != None:
- result_tmp = result_tmp + float(self.cr.fetchone()[0] or 0.0)
+ result_tmp = result_tmp + (a or 0.0)
else:
result_tmp = 0.0
+
return result_tmp
def _sum_scredit(self,data):
+
if not self.ids:
return 0.0
account_move_line_obj = pooler.get_pool(self.cr.dbname).get('account.move.line')
+
result_tmp = 0.0
#
#
@@ -470,8 +555,9 @@ class partner_balance(report_sxw.rml_parse):
'AND l.reconcile_id IS NULL ' \
'GROUP BY partner_id',
(self.date_lst[0],))
+ print"self.cr.fetchone()[0]",self.cr.fetchone()
if self.cr.fetchone() != None:
- result_tmp = float(self.cr.fetchone()[0])
+ result_tmp = float(self.cr.fetchone()[0]) or 0.0
else:
result_tmp = 0.0
#
@@ -486,9 +572,10 @@ class partner_balance(report_sxw.rml_parse):
# ' account_id IN (' + self.account_ids + ') ' \
'l.date IN (' + self.date_lst_string + ') ' \
'GROUP BY partner_id')
-
+ a = self.cr.fetchone()[0]
if self.cr.fetchone() != None:
- result_tmp = result_tmp + float(self.cr.fetchone()[0] or 0.0)
+ result_tmp = result_tmp + (a or 0.0)
+
else:
result_tmp = 0.0
diff --git a/addons/account/report/partner_balance.rml b/addons/account/report/partner_balance.rml
index 5e99323bb09..561eb07f505 100644
--- a/addons/account/report/partner_balance.rml
+++ b/addons/account/report/partner_balance.rml
@@ -3,6 +3,7 @@
+
@@ -16,22 +17,23 @@
[[ company.name ]]
- Third Party Balance [[ data['form']['result_selection'] == 'customer' and '/ Débiteur' ]] [[ data['form']['result_selection'] == 'supplier' and '/ Créancier' ]] [[ data['form']['result_selection'] == 'all' and '/ Créancier et Débiteur' ]] - [[ get_currency(data['form']) ]]
-
-
-
-
-
- [[ time.strftime("%m-%d-%y %H:%M", time.localtime()) ]]
- Page
+ Partnar Balance [[ data['form']['result_selection'] == 'customer' and '/ Débiteur' ]] [[ data['form']['result_selection'] == 'supplier' and '/ Créancier' ]] [[ data['form']['result_selection'] == 'all' and '/ Créancier et Débiteur' ]] [[ company.currency_id.name ]]
+
+
+
+
+
+ [[ time.strftime("%Y-%m-%d %H:%M", time.localtime()) ]]
+ Page
-
+
1cm 27.7cm 20cm 27.7cm
-
+
+
@@ -55,11 +57,13 @@
-
-
-
-
-
+
+
+
+
+
@@ -76,24 +80,29 @@
-
+
-
-
+
-
-
+
+
+
+
+
+
+
-
-
+
+
+
@@ -103,106 +112,273 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
|
- Grand total
- |
-
- [[ comma_me(sum_debit(data)) ]]
- |
-
- [[ comma_me(sum_credit(data)) ]]
- |
-
- [[ comma_me(sum_sdebit(data)) ]]
- |
-
- [[ comma_me(sum_scredit(data)) ]]
- |
-
- [[ comma_me(sum_litige(data)) ]]
- |
-
-
- |
- Balance
- |
-
-
-
-
- |
-
-
-
-
- |
-
- [[ comma_me(solde_debit(data)) ]]
- |
-
- [[ comma_me(solde_credit(data)) ]]
- |
-
-
-
-
- |
-
-
-
-
- |
- Code
+ [[ setTag('tr','tr',{'style':'Line1'}) ]] Code
|
Partner name
|
- Débit
+ Débit
|
- Crédit
+ Crédit
|
- Balance
+ Balance
|
- In dispute
+ In dispute
|
|
- [[ repeatIn(lines(data), 'a') ]][[ a['type']==3 and ( setTag('para','para',{'fontName':'Helvetica-Bold'})) ]] [[ a['ref'] ]]
+ [[ setTag('tr','tr',{'style':'Line2'}) ]] Grand total
|
- [[ a['type']==3 and ( setTag('para','para',{'fontName':'Helvetica-Bold'})) ]] [[ a['type']==3 and a['code'] ]] [[ a['name'] ]]
+
|
- [[ a['type']==3 and ( setTag('para','para',{'fontName':'Helvetica-Bold'})) ]] [[ comma_me(a['debit']) ]]
+ [[ sum_debit(data) or '0.0' ]]
|
- [[ a['type']==3 and ( setTag('para','para',{'fontName':'Helvetica-Bold'})) ]] [[ comma_me(a['credit']) ]]
+ [[ sum_credit(data) or '0.0' ]]
|
- [[ a['type']==3 and ( setTag('para','para',{'fontName':'Helvetica-Bold'})) ]] [[ comma_me(a['balance']) ]]
+ [[ (sum_scredit(data)-sum_sdebit(data)) or '0.0' ]]
|
- [[ a['type']==3 and ( setTag('para','para',{'fontName':'Helvetica-Bold'})) ]] [[ comma_me(a['enlitige']) ]]
+ [[ sum_litige(data) or '0.0' ]]
+ |
+
+
+
+ |
+ [[ repeatIn(lines(data), 'a') ]][[ a['type']==3 and ( setTag('para','para',{'fontName':'Helvetica-Bold'})) ]] [[ a['ref'] ]] [[ a['type']==3 and a['code'] ]]
+ |
+
+ [[ a['type']==3 and ( setTag('tr','tr',{'style':'TrLevel0'})) ]] [[ a['type']==3 and ( setTag('para','para',{'fontName':'Helvetica-Bold'})) ]] [[ a['type']==1 and ( setTag('blockTable','blockTable',{'style':'LineLevel1'})) ]] [[ a['name'] ]]
+ |
+
+
+ [[ (a['type']==3 or removeParentNode('font')) and setTag('para','para',{'fontName':'Helvetica-Bold'}) ]] [[ a['debit'] or '0.0' ]]
+ [[ (a['type']!=3 or removeParentNode('font')) and setTag('para','para',{'fontName':'Helvetica'}) ]] [[ a['debit'] or '0.0' ]]
+
+ |
+
+
+ [[ (a['type']==3 or removeParentNode('font')) and setTag('para','para',{'fontName':'Helvetica-Bold'}) ]] [[ a['credit'] or '0.0' ]]
+ [[ (a['type']!=3 or removeParentNode('font')) and setTag('para','para',{'fontName':'Helvetica'}) ]] [[ a['credit'] or '0.0' ]]
+
+ |
+
+
+ [[ (a['type']==3 or removeParentNode('font')) and setTag('para','para',{'fontName':'Helvetica-Bold'}) ]] [[ a['balance'] or '0.0' ]]
+ [[ (a['type']!=3 or removeParentNode('font')) and setTag('para','para',{'fontName':'Helvetica'}) ]] [[ a['balance'] or '0.0' ]]
+
+ |
+
+
+ [[ (a['type']==3 or removeParentNode('font')) and setTag('para','para',{'fontName':'Helvetica-Bold'}) ]] [[ a['enlitige'] or '0.0' ]]
+ [[ (a['type']!=3 or removeParentNode('font')) and setTag('para','para',{'fontName':'Helvetica'}) ]] [[ a['enlitige'] or '0.0' ]]
+
|
-
-
-
-
-
-
-
-
-
+
\ No newline at end of file
diff --git a/addons/account/report/tax_report.py b/addons/account/report/tax_report.py
index 445ca968878..6e8cc64f29c 100755
--- a/addons/account/report/tax_report.py
+++ b/addons/account/report/tax_report.py
@@ -87,7 +87,7 @@ class tax_report(rml_parse.rml_parse):
while ind_general < len(res_general) :
res_general[ind_general]['type'] = 2
res_general[ind_general]['pos'] = 0
- res_general[ind_general]['level'] = res_dict['level'] + ' '
+ res_general[ind_general]['level'] = res_dict['level']
top_result.append(res_general[ind_general])
ind_general+=1
i+=1
@@ -143,6 +143,7 @@ class tax_report(rml_parse.rml_parse):
GROUP BY account.id,account.name,account.code', ('draft',tax_code_id,
company_id))
res = self.cr.dictfetchall()
+
#AND line.period_id IN ('+ period_sql_list +') \
i = 0
@@ -158,7 +159,7 @@ class tax_report(rml_parse.rml_parse):
res = []
for code in tc.browse(self.cr, self.uid, ids, {'based_on': based_on}):
res.append(('a'*2*level,code))
- print"=====res=====",res
+
res += self._get_codes(based_on, code.id, level+1)
return res
diff --git a/addons/account/report/tax_report.rml b/addons/account/report/tax_report.rml
index 50dd5a89dda..3b34e3bb618 100755
--- a/addons/account/report/tax_report.rml
+++ b/addons/account/report/tax_report.rml
@@ -128,19 +128,11 @@
-
-
-
-
-
+
-
-
-
-
[[ repeatIn(get_lines(data['form']['based_on'],data['form']['periods'],data['form']['company_id']), 'o') ]]
[[ o['level'] ]]
- [[o['type']==1 and ( setTag('para','para',{'fontName':'Helvetica'}))]]
+ [[o['type']==1 and ( setTag('para','para',{'fontName':'Helvetica'}))]]
[[ setTag('tr','tr',{'style':'TrLevel'+str(o['level']), 'paraStyle':('Level'+str(o['level']))}) ]]
[[ o['code'] ]] [[ o['name'] ]]
|
- [[o['type']==2 and (o['debit']) ]]
+
+
+ [[ len(o['level'])>3 and removeParentNode('font') ]][[ formatLang(o['debit']) and '%.2f'%o['debit'] or '0.00' ]]
+ [[ len(o['level'])<4 and removeParentNode('font') ]][[ formatLang(o['debit']) and '%.2f'%o['debit'] or '0.00' ]]
+
|
- [[o['type']==2 and (o['credit']) ]]
+ [[ len(o['level'])>3 and removeParentNode('font') ]][[ formatLang(o['credit']) and '%.2f'%o['credit'] or '0.00' ]]
+ [[ len(o['level'])<4 and removeParentNode('font') ]][[ formatLang(o['credit']) and '%.2f'%o['credit'] or '0.00' ]]
+
+
|
- [[ o['tax_amount'] ]]
+ [[ len(o['level'])>3 and removeParentNode('font') ]][[ formatLang(o['tax_amount']) and '%.2f'%o['tax_amount'] or '0.00' ]]
+ [[ len(o['level'])<4 and removeParentNode('font') ]][[ formatLang(o['tax_amount']) and '%.2f'%o['tax_amount'] or '0.00' ]]
+
+
|
|
diff --git a/addons/account/report/third_party_ledger.py b/addons/account/report/third_party_ledger.py
index c8bda2a3045..194e18d1d53 100755
--- a/addons/account/report/third_party_ledger.py
+++ b/addons/account/report/third_party_ledger.py
@@ -59,7 +59,7 @@ class third_party_ledger(rml_parse.rml_parse):
for date in date_array:
full_str_date.append(str(date))
return full_str_date
-
+
#
def transform_period_into_date_array(self,data):
## Get All Period Date
@@ -67,18 +67,61 @@ class third_party_ledger(rml_parse.rml_parse):
periods_id = self.pool.get('account.period').search(self.cr, self.uid, [('fiscalyear_id','=',data['form']['fiscalyear'])])
else:
periods_id = data['form']['periods'][0][2]
- date_array = []
+ date_array = []
for period_id in periods_id:
period_obj = self.pool.get('account.period').browse(self.cr, self.uid, period_id)
date_array = date_array + self.date_range(period_obj.date_start,period_obj.date_stop)
self.date_lst = date_array
self.date_lst.sort()
-
+
def transform_date_into_date_array(self,data):
return_array = self.date_range(data['form']['date1'],data['form']['date2'])
self.date_lst = return_array
self.date_lst.sort()
+ def transform_both_into_date_array(self,data):
+
+ if not data['form']['periods'][0][2] :
+ periods_id = self.pool.get('account.period').search(self.cr, self.uid, [('fiscalyear_id','=',data['form']['fiscalyear'])])
+ else:
+ periods_id = data['form']['periods'][0][2]
+ date_array = []
+ for period_id in periods_id:
+ period_obj = self.pool.get('account.period').browse(self.cr, self.uid, period_id)
+ date_array = date_array + self.date_range(period_obj.date_start,period_obj.date_stop)
+
+ period_start_date = date_array[0]
+ date_start_date = data['form']['date1']
+ period_stop_date = date_array[-1]
+ date_stop_date = data['form']['date2']
+
+ if period_start_date
-
+
@@ -19,24 +19,24 @@
[[ company.name ]]
Third Party Ledger [[ data['form']['result_selection'] == 'customer' and '/ Débiteur' ]] [[ data['form']['result_selection'] == 'supplier' and '/ Créancier' ]] [[ data['form']['result_selection'] == 'all' and '/ Créancier et Débiteur' ]]
-
+
-
-
+
+
[[ time.strftime("%Y-%m-%d %H:%M", time.localtime()) ]]
Page
-
+
1cm 27.7cm 20cm 27.7cm
-
+
-
+
-
+
@@ -53,43 +53,43 @@
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
@@ -124,16 +124,16 @@
-
+
[[ data['form']['page_split'] == True or removeParentNode('para') ]]
[[ repeatIn(objects, 'p') ]] [[ setLang(p.partner_id.lang) ]]
-
+
|
-
+
Date
|
@@ -147,7 +147,7 @@
|
Debit
- |
+
Credit
|
@@ -183,7 +183,7 @@
[[ data['form']['page_split'] == False or removeParentNode('para') ]]
[[ repeatIn(objects, 'p') ]]
-
+
|
[[ p.ref ]] - [[ p.name ]]
@@ -202,7 +202,7 @@
|
-
+
|
[[ repeatIn(lines(p,data), 'line') ]][[ line['date'] ]]
@@ -211,10 +211,10 @@
[[ line['code'] ]]
|
- [[ line['ref'] ]]
+ [[ line['ref'] ]] / [[ line['name'] ]]
|
- [[ line['name'] ]]
+
|
[[ (line['debit']) or '' ]]
@@ -227,13 +227,13 @@
|
-
+
-
-
-
-
+
+
+
+
-
+
\ No newline at end of file
diff --git a/addons/account/report/wizard_account_journal.rml b/addons/account/report/wizard_account_journal.rml
new file mode 100644
index 00000000000..def6acbecb8
--- /dev/null
+++ b/addons/account/report/wizard_account_journal.rml
@@ -0,0 +1,191 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ [[ company.name ]]
+ Print Journal - [[ company.currency_id.name ]]
+
+
+
+
+
+
+ [[ time.strftime("%Y-%m-%d %H:%M", time.localtime()) ]]
+ Page
+
+
+
+
+ 1cm 27.7cm 20cm 27.7cm
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ [[ repeatIn(objects, 'o') ]]
+
+ [[repeatIn(lines(data['form']['period_id'][0][2],data['form']['journal_id'][0][2],data['form']['sort_selection']), 'line') ]]
+
+ |
+ Date
+ |
+
+ Voucher No
+ |
+
+ A/c No.
+ |
+
+ Third party
+ |
+
+ Entry label
+ |
+
+ Debit
+ |
+
+ Credit
+ |
+
+
+ |
+ [[line[0].period_id.name ]]
+ |
+
+ [[line[0].journal_id.code ]] |
+ |
+ |
+ |
+
+ [[ '%.2f' % sum_debit(line[0].period_id.id, line[0].journal_id.id) or '0.00' ]]
+ |
+
+ [[ '%.2f' % sum_credit(line[0].period_id.id, line[0].journal_id.id) or '0.00' ]]
+ |
+
+
+ [[repeatIn(line,'l')]]
+ |
+ [[ l.date ]]
+ |
+
+ [[ l.ref ]]
+ |
+
+ [[ l.account_id.code ]]
+ |
+
+ [[ l.partner_id and l.partner_id.name ]]
+ |
+
+ [[ l.name ]]
+ |
+
+ [[ l.debit and '%.2f' % l.debit or '0.00' ]]
+ |
+
+ [[ l.credit and '%.2f' % l.credit or '0.00' ]]
+ |
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/account/security/account_security.xml b/addons/account/security/account_security.xml
index 3860447ff9d..7f441b1b551 100644
--- a/addons/account/security/account_security.xml
+++ b/addons/account/security/account_security.xml
@@ -1,4 +1,4 @@
-
+
Finance / Invoice
@@ -11,4 +11,29 @@
Finance / Manager
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/account/security/ir.model.access.csv b/addons/account/security/ir.model.access.csv
index 67bbe0f197e..9dbdcb18b55 100644
--- a/addons/account/security/ir.model.access.csv
+++ b/addons/account/security/ir.model.access.csv
@@ -4,15 +4,18 @@
"access_account_account_type","account.account.type","model_account_account_type","account.group_account_user",1,0,0,0
"access_account_tax","account.tax","model_account_tax","account.group_account_user",1,0,0,0
"access_account_account","account.account","model_account_account","account.group_account_user",1,0,0,0
+"access_account_account_user","account.account user","model_account_account","base.group_user",1,0,0,0
+"access_account_account_partner_manager","account.account partner manager","model_account_account","base.group_partner_manager",1,0,0,0
"access_account_journal_view","account.journal.view","model_account_journal_view","account.group_account_user",1,0,0,0
"access_account_journal_column","account.journal.column","model_account_journal_column","account.group_account_user",1,0,0,0
"access_account_journal","account.journal","model_account_journal","account.group_account_user",1,0,0,0
"access_account_period","account.period","model_account_period","account.group_account_user",1,0,0,0
+"access_account_journal_period_manager","account.journal.period manager","model_account_journal_period","account.group_account_manager",1,1,1,1
"access_account_journal_period","account.journal.period","model_account_journal_period","account.group_account_user",1,1,1,1
"access_account_move","account.move","model_account_move","account.group_account_user",1,1,1,1
"access_account_move_reconcile","account.move.reconcile","model_account_move_reconcile","account.group_account_user",1,1,1,1
-"access_account_tax_code","account.tax.code","model_account_tax_code","account.group_account_user",1,0,0,0
-"access_account_tax","account.tax","model_account_tax","account.group_account_user",1,0,0,0
+"access_account_tax_code","account.tax.code","model_account_tax_code",,1,0,0,0
+"access_account_tax","account.tax","model_account_tax",,1,0,0,0
"access_account_model","account.model","model_account_model","account.group_account_user",1,1,1,1
"access_account_model_line","account.model.line","model_account_model_line","account.group_account_user",1,1,1,1
"access_account_subscription","account.subscription","model_account_subscription","account.group_account_user",1,1,1,1
@@ -24,25 +27,22 @@
"access_account_tax_template","account.tax.template","model_account_tax_template","account.group_account_manager",1,1,1,1
"access_wizard_multi_charts_accounts","wizard.multi.charts.accounts","model_wizard_multi_charts_accounts","account.group_account_manager",1,1,1,1
"access_account_bank_accounts_wizard","account.bank.accounts.wizard","model_account_bank_accounts_wizard","account.group_account_manager",1,1,1,1
-"access_account_move_line","account.move.line","model_account_move_line","account.group_account_user",1,1,1,1
+"access_account_move_line","account.move.line invoice","model_account_move_line","account.group_account_invoice",1,1,1,1
"access_account_bank_statement","account.bank.statement","model_account_bank_statement","account.group_account_user",1,1,1,1
"access_account_bank_statement_reconcile","account.bank.statement.reconcile","model_account_bank_statement_reconcile","account.group_account_user",1,1,1,1
"access_account_bank_statement_reconcile_line","account.bank.statement.reconcile.line","model_account_bank_statement_reconcile_line","account.group_account_user",1,1,1,1
"access_account_bank_statement_line","account.bank.statement.line","model_account_bank_statement_line","account.group_account_user",1,1,1,1
"access_account_analytic_line","account.analytic.line","model_account_analytic_line","account.group_account_user",1,1,1,1
"access_report_hr_timesheet_invoice_journal","report.hr.timesheet.invoice.journal","model_report_hr_timesheet_invoice_journal","account.group_account_manager",1,0,0,0
-"access_account_invoice","account.invoice","model_account_invoice","account.group_account_user",1,0,0,0
-"access_account_invoice_line","account.invoice.line","model_account_invoice_line","account.group_account_user",1,0,0,0
-"access_account_invoice_tax","account.invoice.tax","model_account_invoice_tax","account.group_account_user",1,0,0,0
-"access_account_analytic_account","account.analytic.account","model_account_analytic_account","account.group_account_user",1,0,0,0
+"access_account_analytic_account","account.analytic.account","model_account_analytic_account","base.group_user",1,0,0,0
"access_account_analytic_journal","account.analytic.journal","model_account_analytic_journal","account.group_account_user",1,0,0,0
-"access_account_invoice_uinvoice","account.invoice","model_account_invoice","account.group_account_user",1,1,1,1
-"access_account_invoice_line_uinvoice","account.invoice.line","model_account_invoice_line","account.group_account_user",1,1,1,1
-"access_account_invoice_tax_uinvoice","account.invoice.tax","model_account_invoice_tax","account.group_account_user",1,1,1,1
+"access_account_invoice_uinvoice","account.invoice","model_account_invoice","account.group_account_invoice",1,1,1,1
+"access_account_invoice_line_uinvoice","account.invoice.line","model_account_invoice_line","account.group_account_invoice",1,1,1,1
+"access_account_invoice_tax_uinvoice","account.invoice.tax","model_account_invoice_tax","account.group_account_invoice",1,1,1,1
"access_account_analytic_line_uinvoice","account.analytic.line","model_account_analytic_line","account.group_account_user",1,1,1,1
-"access_account_move_uinvoice","account.move","model_account_move","account.group_account_user",1,1,1,1
-"access_account_move_reconcile_uinvoice","account.move.reconcile","model_account_move_reconcile","account.group_account_user",1,1,1,1
-"access_account_journal_period_uinvoice","account.journal.period","model_account_journal_period","account.group_account_user",1,1,1,1
+"access_account_move_uinvoice","account.move","model_account_move","account.group_account_invoice",1,1,1,1
+"access_account_move_reconcile_uinvoice","account.move.reconcile","model_account_move_reconcile","account.group_account_invoice",1,1,1,1
+"access_account_journal_period_uinvoice","account.journal.period","model_account_journal_period","account.group_account_invoice",1,1,1,1
"access_account_payment_term_manager","account.payment.term","model_account_payment_term","account.group_account_manager",1,1,1,1
"access_account_payment_term_line_manager","account.payment.term.line","model_account_payment_term_line","account.group_account_manager",1,1,1,1
"access_account_account_type_manager","account.account.type","model_account_account_type","account.group_account_manager",1,1,1,1
@@ -51,14 +51,31 @@
"access_account_journal_view_manager","account.journal.view","model_account_journal_view","account.group_account_manager",1,1,1,1
"access_account_journal_column_manager","account.journal.column","model_account_journal_column","account.group_account_manager",1,1,1,1
"access_account_journal_manager","account.journal","model_account_journal","account.group_account_manager",1,1,1,1
+"access_account_journal_invoice","account.journal invoice","model_account_journal","account.group_account_invoice",1,0,0,0
"access_account_period_manager","account.period","model_account_period","account.group_account_manager",1,1,1,1
+"access_account_period_invoice","account.period invoice","model_account_period","account.group_account_invoice",1,0,0,0
"access_account_tax_code_manager","account.tax.code","model_account_tax_code","account.group_account_manager",1,1,1,1
"access_account_tax_manager","account.tax","model_account_tax","account.group_account_manager",1,1,1,1
-"access_account_invoice_manager","account.invoice","model_account_invoice","account.group_account_manager",1,1,1,1
-"access_account_invoice_line_manager","account.invoice.line","model_account_invoice_line","account.group_account_manager",1,1,1,1
-"access_account_invoice_tax_manager","account.invoice.tax","model_account_invoice_tax","account.group_account_manager",1,1,1,1
+"access_account_invoice_group_invoice","account.invoice group invoice","model_account_invoice","account.group_account_invoice",1,1,1,1
"access_account_analytic_account_manager","account.analytic.account","model_account_analytic_account","account.group_account_manager",1,1,1,1
"access_account_analytic_journal_manager","account.analytic.journal","model_account_analytic_journal","account.group_account_manager",1,1,1,1
"access_account_fiscalyear","account.fiscalyear","model_account_fiscalyear","account.group_account_manager",1,1,1,1
"access_account_fiscalyear_user","account.fiscalyear.user","model_account_fiscalyear","account.group_account_user",1,0,0,0
"access_account_fiscalyear_invoice","account.fiscalyear.invoice","model_account_fiscalyear","account.group_account_invoice",1,0,0,0
+"access_res_currency_account_manager","res.currency account manager","base.model_res_currency","group_account_manager",1,1,1,1
+"access_res_currency_rate_account_manager","res.currency.rate account manager","base.model_res_currency_rate","group_account_manager",1,1,1,1
+"access_account_config_wizard_account_manager","account.config.wizard account manager","model_account_config_wizard","group_account_manager",1,1,1,1
+"access_account_config_wizard_system_manager","account.config.wizard system manager","model_account_config_wizard","base.group_system",1,1,1,1
+"access_account_invoice_partner_manager","account.invoice partner manager","model_account_invoice","base.group_partner_manager",1,0,0,0
+"access_account_invoice_line_partner_manager","account.invoice.line partner manager","model_account_invoice_line","base.group_partner_manager",1,0,0,0
+"access_account_invoice_tax_partner_manager","account.invoice.tax partner manager","model_account_invoice_tax","base.group_partner_manager",1,0,0,0
+"access_account_payment_term_partner_manager","account.payment.term partner manager","model_account_payment_term","base.group_user",1,0,0,0
+"access_account_payment_term_line_partner_manager","account.payment.term.line partner manager","model_account_payment_term_line","base.group_user",1,0,0,0
+"access_account_account_product_manager","account.account product manager","model_account_account","product.group_product_manager",1,0,0,0
+"access_account_journal_product_manager","account.journal product manager","model_account_journal","product.group_product_manager",1,0,0,0
+"access_account_fiscal_position_product_manager","account.fiscal.position account.manager","model_account_fiscal_position","account.group_account_manager",1,1,1,1
+"access_account_fiscal_position","account.fiscal.position all","model_account_fiscal_position","base.group_user",1,0,0,0
+"access_account_fiscal_position_tax_product_manager","account.fiscal.position.tax account.manager","model_account_fiscal_position_tax","account.group_account_manager",1,1,1,1
+"access_account_fiscal_position_tax","account.fiscal.position.tax all","model_account_fiscal_position_tax","base.group_user",1,0,0,0
+"access_account_fiscal_position_account_product_manager","account.fiscal.position account.manager","model_account_fiscal_position_account","account.group_account_manager",1,1,1,1
+"access_account_fiscal_position_account","account.fiscal.position all","model_account_fiscal_position_account","base.group_user",1,0,0,0
diff --git a/addons/account/wizard/__init__.py b/addons/account/wizard/__init__.py
index 6ecd2040756..3cae8e78a95 100644
--- a/addons/account/wizard/__init__.py
+++ b/addons/account/wizard/__init__.py
@@ -64,6 +64,7 @@ import wizard_use_model
import wizard_state_open
import wizard_statement_from_invoice
+import wizard_print_journal
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/wizard_account_balance_report.py b/addons/account/wizard/wizard_account_balance_report.py
index 431e183f156..3677f51f050 100644
--- a/addons/account/wizard/wizard_account_balance_report.py
+++ b/addons/account/wizard/wizard_account_balance_report.py
@@ -46,7 +46,7 @@ dates_form = '''
dates_fields = {
'date_from': {'string':"Start date",'type':'date','required':True ,'default': lambda *a: time.strftime('%Y-01-01')},
'date_to': {'string':"End date",'type':'date','required':True, 'default': lambda *a: time.strftime('%Y-%m-%d')},
- 'display_account':{'string':"Display accounts",'type':'selection','selection':[('bal_mouvement','With movements'),('bal_all','All'),('bal_solde','With balance is not equal to 0')]}
+ 'display_account':{'string':"Filter on Accounts",'type':'selection','selection':[('bal_mouvement','With Entries'),('bal_all','All Accounts'),('bal_solde','With Balance Different Than 0')]}
}
@@ -61,8 +61,12 @@ period_form = '''
period_fields = {
- 'fiscalyear': {'string': 'Fiscal year', 'type': 'many2one', 'relation': 'account.fiscalyear',
- 'help': 'Keep empty for all open fiscal year'},
+ 'fiscalyear': {
+ 'string':'Fiscal year',
+ 'type':'many2one',
+ 'relation':'account.fiscalyear',
+ 'help':'Keep empty for all open fiscal year'
+ },
'periods': {'string': 'Periods', 'type': 'many2many', 'relation': 'account.period', 'help': 'All periods if empty'},
'display_account':{'string':"Display accounts ",'type':'selection','selection':[('bal_mouvement','With movements'),('bal_all','All'),('bal_solde','With balance is not equal to 0')]}
}
diff --git a/addons/account/wizard/wizard_aged_trial_balance.py b/addons/account/wizard/wizard_aged_trial_balance.py
index ce95c2c8ab1..7e8bcc6048c 100755
--- a/addons/account/wizard/wizard_aged_trial_balance.py
+++ b/addons/account/wizard/wizard_aged_trial_balance.py
@@ -35,76 +35,84 @@ from mx.DateTime import *
_aged_trial_form = """
"""
_aged_trial_fields = {
- 'company_id': {'string': 'Company', 'type': 'many2one', 'relation': 'res.company', 'required': True},
- 'period_length': {'string': 'Period length (days)', 'type': 'integer', 'required': True, 'default': lambda *a:30},
- 'date1': {'string':'Start of period', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-%m-%d')},
- 'result_selection':{'string':"Display partner",'type':'selection','selection':[('customer','Debiteur'),('supplier','Creancier'),('all','Tous')]},
- 'direction_selection':{'string':"Display aged balance of",'type':'selection','selection':[('past','Due amount'),('future','Not due amount')]},
- }
+ 'company_id': {'string': 'Company', 'type': 'many2one', 'relation': 'res.company', 'required': True},
+ 'period_length': {'string': 'Period length (days)', 'type': 'integer', 'required': True, 'default': lambda *a:30},
+ 'date1': {'string':'Start of period', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-%m-%d')},
+ 'result_selection':{
+ 'string':"Filter on Partners",
+ 'type':'selection',
+ 'selection':[('customer','Customer'),('supplier','Supplier'),('all','All')],
+ 'required':True,
+ 'default': lambda *a: 'customer',
+ },
+ 'direction_selection':{
+ 'string':"Analysis Direction",
+ 'type':'selection',
+ 'selection':[('past','Past'),('future','Future')],
+ 'required':True,
+ 'default': lambda *a: 'past',
+ },
+}
def _calc_dates(self, cr, uid, data, context):
- res = {}
- period_length = data['form']['period_length']
- if period_length<=0:
- raise wizard.except_wizard('UserError', 'You must enter a period length that cannot be 0 or below !')
- start = datetime.date.fromtimestamp(time.mktime(time.strptime(data['form']['date1'],"%Y-%m-%d")))
- start = DateTime(int(start.year),int(start.month),int(start.day))
- if data['form']['direction_selection'] == 'past':
- for i in range(5)[::-1]:
- stop = start - RelativeDateTime(days=period_length)
- res[str(i)] = {
- 'name' : str((5-(i+1))*period_length) + '-' + str((5-i)*period_length),
-
- 'stop': start.strftime('%Y-%m-%d'),
- 'start' : stop.strftime('%Y-%m-%d'),
- }
- start = stop - RelativeDateTime(days=1)
- else:
- for i in range(5):
- stop = start + RelativeDateTime(days=period_length)
- res[str(5-(i+1))] = {
- 'name' : str((i)*period_length)+'-'+str((i+1)*period_length),
- 'start': start.strftime('%Y-%m-%d'),
- 'stop' : stop.strftime('%Y-%m-%d'),
- }
- start = stop + RelativeDateTime(days=1)
- return res
+ res = {}
+ period_length = data['form']['period_length']
+ if period_length<=0:
+ raise wizard.except_wizard('UserError', 'You must enter a period length that cannot be 0 or below !')
+ start = datetime.date.fromtimestamp(time.mktime(time.strptime(data['form']['date1'],"%Y-%m-%d")))
+ start = DateTime(int(start.year),int(start.month),int(start.day))
+ if data['form']['direction_selection'] == 'past':
+ for i in range(5)[::-1]:
+ stop = start - RelativeDateTime(days=period_length)
+ res[str(i)] = {
+ 'name' : str((5-(i+1))*period_length) + '-' + str((5-i)*period_length),
+
+ 'stop': start.strftime('%Y-%m-%d'),
+ 'start' : stop.strftime('%Y-%m-%d'),
+ }
+ start = stop - RelativeDateTime(days=1)
+ else:
+ for i in range(5):
+ stop = start + RelativeDateTime(days=period_length)
+ res[str(5-(i+1))] = {
+ 'name' : str((i)*period_length)+'-'+str((i+1)*period_length),
+ 'start': start.strftime('%Y-%m-%d'),
+ 'stop' : stop.strftime('%Y-%m-%d'),
+ }
+ start = stop + RelativeDateTime(days=1)
+ return res
class wizard_report(wizard.interface):
- def _get_defaults(self, cr, uid, data, context):
- fiscalyear_obj = pooler.get_pool(cr.dbname).get('account.fiscalyear')
- data['form']['fiscalyear'] = fiscalyear_obj.find(cr, uid)
-
- user = pooler.get_pool(cr.dbname).get('res.users').browse(cr, uid, uid, context=context)
- if user.company_id:
- company_id = user.company_id.id
- else:
- company_id = pooler.get_pool(cr.dbname).get('res.company').search(cr, uid, [('parent_id', '=', False)])[0]
- data['form']['company_id'] = company_id
-
- return data['form']
-
-
- states = {
- 'init': {
- 'actions': [_get_defaults],
- 'result': {'type':'form', 'arch':_aged_trial_form, 'fields':_aged_trial_fields, 'state':[('end','Cancel'),('print','Print Aged Trial Balance')]},
- },
- 'print': {
- 'actions': [_calc_dates],
- 'result': {'type':'print', 'report':'account.aged_trial_balance', 'state':'end'},
- },
- }
+ def _get_defaults(self, cr, uid, data, context):
+ fiscalyear_obj = pooler.get_pool(cr.dbname).get('account.fiscalyear')
+ data['form']['fiscalyear'] = fiscalyear_obj.find(cr, uid)
+ user = pooler.get_pool(cr.dbname).get('res.users').browse(cr, uid, uid, context=context)
+ if user.company_id:
+ company_id = user.company_id.id
+ else:
+ company_id = pooler.get_pool(cr.dbname).get('res.company').search(cr, uid, [('parent_id', '=', False)])[0]
+ data['form']['company_id'] = company_id
+ return data['form']
+ states = {
+ 'init': {
+ 'actions': [_get_defaults],
+ 'result': {'type':'form', 'arch':_aged_trial_form, 'fields':_aged_trial_fields, 'state':[('end','Cancel'),('print','Print Aged Trial Balance')]},
+ },
+ 'print': {
+ 'actions': [_calc_dates],
+ 'result': {'type':'print', 'report':'account.aged_trial_balance', 'state':'end'},
+ },
+ }
wizard_report('account.aged.trial.balance')
diff --git a/addons/account/wizard/wizard_partner_balance_report.py b/addons/account/wizard/wizard_partner_balance_report.py
index 08af6074215..5b28e10ceb9 100644
--- a/addons/account/wizard/wizard_partner_balance_report.py
+++ b/addons/account/wizard/wizard_partner_balance_report.py
@@ -29,78 +29,80 @@ import time
import wizard
import pooler
-report_type = '''
-'''
-
-
-dates_form = '''
-'''
-
-dates_fields = {
- 'company_id': {'string': 'Company', 'type': 'many2one', 'relation': 'res.company', 'required': True},
- 'result_selection':{'string':"Display partner ",'type':'selection','selection':[('customer','Debiteur'),('supplier','Creancier'),('all','Tous')]},
- 'soldeinit':{'string':"Inclure les soldes initiaux",'type':'boolean'},
- 'date1': {'string':'Start date', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-01-01')},
- 'date2': {'string':'End date', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-%m-%d')},
-}
-
period_form = '''
-'''
period_fields = {
'company_id': {'string': 'Company', 'type': 'many2one', 'relation': 'res.company', 'required': True},
- 'fiscalyear': {'string': 'Fiscal year', 'type': 'many2one', 'relation': 'account.fiscalyear',
- 'help': 'Keep empty for all open fiscal year'},
- 'periods': {'string': 'Periods', 'type': 'many2many', 'relation': 'account.period', 'help': 'All periods if empty'},
- 'result_selection':{'string':"Display partner",'type':'selection','selection':[('customer','Debiteur'),('supplier','Creancier'),('all','Tous')]},
- 'soldeinit':{'string':"Inclure les soldes initiaux",'type':'boolean'},
+ 'state':{
+ 'string':"Date/Period Filter",
+ 'type':'selection',
+ 'selection':[('bydate','By Date'),('byperiod','By Period'),('all','By Date and Period'),('none','No Filter')],
+ 'default': lambda *a:'bydate'
+ },
+ 'fiscalyear': {
+ 'string':'Fiscal year', 'type': 'many2one', 'relation': 'account.fiscalyear',
+ 'help': 'Keep empty for all open fiscal year'
+ },
+ 'periods': {'string': 'Periods', 'type': 'many2many', 'relation': 'account.period', 'help': 'All periods if empty','states':{'none':[('readonly',True)],'bydate':[('readonly',True)]}},
+ 'result_selection':{
+ 'string':"Partner",
+ 'type':'selection',
+ 'selection':[('customer','Receivable Accounts'),('supplier','Payable Accounts'),('all','Receivable and Payable Accounts')],
+ 'required':True
+ },
+ 'soldeinit':{'string':" Inclure les soldes initiaux",'type':'boolean'},
+ 'date1': {'string':' Start date', 'type':'date', 'required':True,'default': lambda *a: time.strftime('%Y-01-01')},
+ 'date2': {'string':'End date', 'type':'date', 'required':True,'default': lambda *a: time.strftime('%Y-%m-%d')},
}
-
class wizard_report(wizard.interface):
- def _get_defaults(self, cr, uid, data, context):
+
+ def _get_defaults(self,cr,uid,data,context):
+ user = pooler.get_pool(cr.dbname).get('res.users').browse(cr, uid, uid, context=context)
+ if user.company_id:
+ company_id = user.company_id.id
+ else:
+ company_id = pooler.get_pool(cr.dbname).get('res.company').search(cr, uid, [('parent_id', '=', False)])[0]
+
fiscalyear_obj = pooler.get_pool(cr.dbname).get('account.fiscalyear')
+ periods_obj=pooler.get_pool(cr.dbname).get('account.period')
data['form']['fiscalyear'] = fiscalyear_obj.find(cr, uid)
-
- user = pooler.get_pool(cr.dbname).get('res.users').browse(cr, uid, uid, context=context)
- if user.company_id:
- company_id = user.company_id.id
- else:
- company_id = pooler.get_pool(cr.dbname).get('res.company').search(cr, uid, [('parent_id', '=', False)])[0]
+ data['form']['periods'] =periods_obj.search(cr, uid, [('fiscalyear_id','=',data['form']['fiscalyear'])])
data['form']['company_id'] = company_id
data['form']['soldeinit'] = True
data['form']['result_selection'] = 'all'
return data['form']
- def _get_defaults_fordate(self, cr, uid, data, context):
- user = pooler.get_pool(cr.dbname).get('res.users').browse(cr, uid, uid, context=context)
- if user.company_id:
- company_id = user.company_id.id
- else:
- company_id = pooler.get_pool(cr.dbname).get('res.company').search(cr, uid, [('parent_id', '=', False)])[0]
- data['form']['company_id'] = company_id
- data['form']['soldeinit'] = True
- data['form']['result_selection'] = 'all'
+ def _check_state(self, cr, uid, data, context):
+
+ if data['form']['state'] == 'bydate' :
+ self._check_date(cr, uid, data, context)
return data['form']
-
+
def _check_date(self, cr, uid, data, context):
+
sql = """
SELECT f.id, f.date_start, f.date_stop FROM account_fiscalyear f Where '%s' between f.date_start and f.date_stop """%(data['form']['date1'])
cr.execute(sql)
@@ -114,27 +116,14 @@ class wizard_report(wizard.interface):
else:
raise wizard.except_wizard('UserError','Date not in a defined fiscal year')
-
states = {
'init': {
- 'actions': [],
- 'result': {'type':'form', 'arch':report_type,'fields':{}, 'state':[('with_period','Use with Period'),('with_date','Use with Date')]}
- },
- 'with_period': {
'actions': [_get_defaults],
- 'result': {'type':'form', 'arch':period_form, 'fields':period_fields, 'state':[('end','Cancel'),('report','Print')]}
- },
- 'with_date': {
- 'actions': [_get_defaults_fordate],
- 'result': {'type':'form', 'arch':dates_form, 'fields':dates_fields, 'state':[('end','Cancel'),('checkdate','Print')]}
- },
- 'checkdate': {
- 'actions': [],
- 'result': {'type':'choice','next_state':_check_date}
+ 'result': {'type':'form', 'arch':period_form, 'fields':period_fields, 'state':[('end','Cancel'),('report','Print')]}
},
'report': {
- 'actions': [],
+ 'actions': [_check_state],
'result': {'type':'print', 'report':'account.partner.balance', 'state':'end'}
}
}
diff --git a/addons/account/wizard/wizard_print_journal.py b/addons/account/wizard/wizard_print_journal.py
new file mode 100644
index 00000000000..d9440a8a231
--- /dev/null
+++ b/addons/account/wizard/wizard_print_journal.py
@@ -0,0 +1,71 @@
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+# Copyright (c) 2004-2008 TINY SPRL. (http://tiny.be) All Rights Reserved.
+#
+# $Id$
+#
+# WARNING: This program as such is intended to be used by professional
+# programmers who take the whole responsability of assessing all potential
+# consequences resulting from its eventual inadequacies and bugs
+# End users who are looking for a ready-to-use solution with commercial
+# garantees and support are strongly adviced to contract a Free Software
+# Service Company
+#
+# This program is Free Software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+##############################################################################
+
+import wizard
+import pooler
+
+form = '''
+'''
+
+fields = {
+ 'journal_id': {'string': 'Journal', 'type': 'many2many', 'relation': 'account.journal', 'required': True},
+ 'period_id': {'string': 'Period', 'type': 'many2many', 'relation': 'account.period', 'required': True},
+ 'sort_selection':{
+ 'string':"Entries Sorted By",
+ 'type':'selection',
+ 'selection':[('date','By date'),('ref','Reference Number')],
+ 'required':True,
+ 'default': lambda *a: 'date',
+ },
+
+}
+
+def print_journal(self, cr, uid, data, context):
+ return {}
+
+class wizard_print_journal(wizard.interface):
+ states = {
+ 'init': {
+ 'actions': [],
+ 'result': {'type': 'form', 'arch': form, 'fields': fields, 'state': (('end', 'Cancel'), ('print', 'Print'))},
+ },
+ 'print': {
+ 'actions': [print_journal],
+ 'result': {'type':'print', 'report':'account.journal.period.print.wiz', 'state':'end'},
+ },
+ }
+wizard_print_journal('account.print.journal.report')
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+
diff --git a/addons/account/wizard/wizard_third_party_ledger.py b/addons/account/wizard/wizard_third_party_ledger.py
index e9f2daf4b01..298cf910275 100755
--- a/addons/account/wizard/wizard_third_party_ledger.py
+++ b/addons/account/wizard/wizard_third_party_ledger.py
@@ -30,65 +30,65 @@ import wizard
import pooler
-report_type = '''
-'''
-
-
-dates_form = '''
-'''
-
-dates_fields = {
- 'company_id': {'string': 'Company', 'type': 'many2one', 'relation': 'res.company', 'required': True},
- 'date1': {'string':'Start date', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-01-01')},
- 'date2': {'string':'End date', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-%m-%d')},
- 'result_selection':{'string':"Display partners",'type':'selection','selection':[('customer','Debiteur'),('supplier','Creancier'),('all','Tous')]},
- 'soldeinit':{'string':"Inclure les soldes initiaux",'type':'boolean'},
- 'reconcil':{'string':"Inclure les ecritures reconsiliees",'type':'boolean'},
- 'page_split':{'string':"Un partenaire par page",'type':'boolean'},
-}
-
period_form = '''
'''
period_fields = {
'company_id': {'string': 'Company', 'type': 'many2one', 'relation': 'res.company', 'required': True},
- 'fiscalyear': {'string': 'Fiscal year', 'type': 'many2one', 'relation': 'account.fiscalyear',
- 'help': 'Keep empty for all open fiscal year'},
- 'periods': {'string': 'Periods', 'type': 'many2many', 'relation': 'account.period', 'help': 'All periods if empty'},
- 'result_selection':{'string':"Display partners",'type':'selection','selection':[('customer','Debiteur'),('supplier','Creancier'),('all','Tous')]},
+ 'state':{
+ 'string':"Date/Period Filter",
+ 'type':'selection',
+ 'selection':[('bydate','By Date'),('byperiod','By Period'),('all','By Date and Period'),('none','No Filter')],
+ 'default': lambda *a:'bydate'
+ },
+ 'fiscalyear': {
+ 'string':'Fiscal year', 'type': 'many2one', 'relation': 'account.fiscalyear',
+ 'help': 'Keep empty for all open fiscal year'
+ },
+ 'periods': {'string': 'Periods', 'type': 'many2many', 'relation': 'account.period', 'help': 'All periods if empty','states':{'none':[('readonly',True)],'bydate':[('readonly',True)]}},
+ 'result_selection':{
+ 'string':"Partner",
+ 'type':'selection',
+ 'selection':[('customer','Receivable Accounts'),('supplier','Payable Accounts'),('all','Receivable and Payable Accounts')],
+ 'required':True
+ },
'soldeinit':{'string':"Inclure les soldes initiaux",'type':'boolean'},
- 'reconcil':{'string':"Inclure les ecritures reconsiliees",'type':'boolean'},
- 'page_split':{'string':"Un partenaire par page",'type':'boolean'},
+ 'reconcil':{'string':" Include Reconciled Entries",'type':'boolean'},
+ 'page_split':{'string':"One Partner Per Page",'type':'boolean'},
+ 'date1': {'string':' Start date', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-01-01')},
+ 'date2': {'string':'End date', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-%m-%d')},
}
class wizard_report(wizard.interface):
def _get_defaults(self, cr, uid, data, context):
-
fiscalyear_obj = pooler.get_pool(cr.dbname).get('account.fiscalyear')
data['form']['fiscalyear'] = fiscalyear_obj.find(cr, uid)
data['form']['display_account']='bal_all'
@@ -100,26 +100,15 @@ class wizard_report(wizard.interface):
else:
company_id = pooler.get_pool(cr.dbname).get('res.company').search(cr, uid, [('parent_id', '=', False)])[0]
data['form']['company_id'] = company_id
+ periods_obj=pooler.get_pool(cr.dbname).get('account.period')
+ data['form']['periods'] =periods_obj.search(cr, uid, [('fiscalyear_id','=',data['form']['fiscalyear'])])
data['form']['page_split'] = False
data['form']['reconcil'] = False
data['form']['soldeinit'] = True
return data['form']
- def _get_defaults_fordate(self, cr, uid, data, context):
- data['form']['result_selection'] = 'all'
- user = pooler.get_pool(cr.dbname).get('res.users').browse(cr, uid, uid, context=context)
- if user.company_id:
- company_id = user.company_id.id
- else:
- company_id = pooler.get_pool(cr.dbname).get('res.company').search(cr, uid, [('parent_id', '=', False)])[0]
- data['form']['company_id'] = company_id
- data['form']['page_split'] = False
- data['form']['reconcil'] = False
- data['form']['soldeinit'] = True
- return data['form']
-
-
def _check_date(self, cr, uid, data, context):
+
sql = """
SELECT f.id, f.date_start, f.date_stop FROM account_fiscalyear f Where '%s' between f.date_start and f.date_stop """%(data['form']['date1'])
cr.execute(sql)
@@ -132,27 +121,24 @@ class wizard_report(wizard.interface):
else:
raise wizard.except_wizard('UserError','Date not in a defined fiscal year')
+
+
+ def _check_state(self, cr, uid, data, context):
+ if data['form']['state'] == 'byperiod':
+ data['form']['fiscalyear'] = True
+ else :
+ self._check_date(cr, uid, data, context)
+ data['form']['fiscalyear'] = False
+ return data['form']
states = {
'init': {
- 'actions': [],
- 'result': {'type':'form', 'arch':report_type,'fields':{}, 'state':[('with_period','Use with Period'),('with_date','Use with Date')]}
- },
- 'with_period': {
'actions': [_get_defaults],
'result': {'type':'form', 'arch':period_form, 'fields':period_fields, 'state':[('end','Cancel'),('report','Print')]}
},
- 'with_date': {
- 'actions': [_get_defaults_fordate],
- 'result': {'type':'form', 'arch':dates_form, 'fields':dates_fields, 'state':[('end','Cancel'),('checkdate','Print')]}
- },
- 'checkdate': {
- 'actions': [],
- 'result': {'type':'choice','next_state':_check_date}
- },
'report': {
- 'actions': [],
+ 'actions': [_check_state],
'result': {'type':'print', 'report':'account.third_party_ledger', 'state':'end'}
}
}
diff --git a/addons/account_analytic_plans/security/ir.model.access.csv b/addons/account_analytic_plans/security/ir.model.access.csv
index fe56cde8939..f7f141ac15a 100644
--- a/addons/account_analytic_plans/security/ir.model.access.csv
+++ b/addons/account_analytic_plans/security/ir.model.access.csv
@@ -1,7 +1,8 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_account_analytic_plan_line,account.analytic.plan.line,model_account_analytic_plan_line,account.group_account_user,1,1,1,1
-access_account_analytic_plan_instance,account.analytic.plan.instance,model_account_analytic_plan_instance,account.group_account_user,1,1,1,1
-access_account_analytic_plan_instance_line,account.analytic.plan.instance.line,model_account_analytic_plan_instance_line,account.group_account_user,1,1,1,1
-access_account_analytic_plan_line_invoice,account.analytic.plan.line.invoice,model_account_analytic_plan_line,account.group_account_user,1,1,1,1
-access_account_analytic_plan_instance_invoice,account.analytic.plan.instance.invoice,model_account_analytic_plan_instance,account.group_account_user,1,1,1,1
-access_account_analytic_plan_instance_line_invoice,account.analytic.plan.instance.line.invoice,model_account_analytic_plan_instance_line,account.group_account_user,1,1,1,1
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_account_analytic_plan","account.analytic.plan","model_account_analytic_plan","account.group_account_user",1,1,1,1
+"access_account_analytic_plan_line","account.analytic.plan.line","model_account_analytic_plan_line","account.group_account_user",1,1,1,1
+"access_account_analytic_plan_instance","account.analytic.plan.instance","model_account_analytic_plan_instance","account.group_account_user",1,1,1,1
+"access_account_analytic_plan_instance_line","account.analytic.plan.instance.line","model_account_analytic_plan_instance_line","account.group_account_user",1,1,1,1
+"access_account_analytic_plan_line_invoice","account.analytic.plan.line.invoice","model_account_analytic_plan_line","account.group_account_user",1,1,1,1
+"access_account_analytic_plan_instance_manager","account.analytic.plan.instance manager","model_account_analytic_plan_instance","account.group_account_manager",1,1,1,1
+"access_account_analytic_plan_instance_line_manager","account.analytic.plan.instance.line manager","model_account_analytic_plan_instance_line","account.group_account_manager",1,1,1,1
diff --git a/addons/account_budget/i18n/fr_FR.po b/addons/account_budget/i18n/fr_FR.po
index c192840f293..f1c7b9cf177 100644
--- a/addons/account_budget/i18n/fr_FR.po
+++ b/addons/account_budget/i18n/fr_FR.po
@@ -1,346 +1,313 @@
# Translation of OpenERP Server.
# This file containt the translation of the following modules:
-# * account_budget
+# * account_budget_crossover
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:42+0000"
-"PO-Revision-Date: 2008-09-11 15:41:42+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:26+0000\n"
+"PO-Revision-Date: 2008-10-14 10:30+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-14 11:08+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
-#. module: account_budget
-#: view:account.budget.post:0
-msgid "Dotations"
-msgstr "Dotations"
-
-#. module: account_budget
+#. module: account_budget_crossover
#: field:crossovered.budget,creating_user_id:0
msgid "Responsible User"
-msgstr ""
+msgstr "Utilisateur Responsable"
-#. module: account_budget
+#. module: account_budget_crossover
#: selection:crossovered.budget,state:0
msgid "Confirmed"
-msgstr ""
+msgstr "Confirmé"
-#. module: account_budget
+#. module: account_budget_crossover
#: constraint:ir.model:0
-msgid "The Object name must start with x_ and not contain any special character !"
+msgid ""
+"The Object name must start with x_ and not contain any special character !"
msgstr ""
+"Le nom de l'objet doit commencer avec x_ et ne pas contenir de charactères "
+"spéciaux !"
-#. module: account_budget
-#: model:ir.actions.report.xml,name:account_budget.account_analytic_account_budget
-#: model:ir.actions.report.xml,name:account_budget.report_crossovered_budget
-#: model:ir.actions.wizard,name:account_budget.account_analytic_account_budget_report
-#: model:ir.actions.wizard,name:account_budget.wizard_crossovered_budget_menu
-msgid "Print Budgets"
-msgstr ""
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+#: rml:crossovered.budget.report:0
+msgid "Printed at:"
+msgstr "Imprimé à :"
-#. module: account_budget
+#. module: account_budget_crossover
#: view:crossovered.budget:0
msgid "Confirm"
-msgstr ""
+msgstr "Confirmer"
-#. module: account_budget
+#. module: account_budget_crossover
#: field:crossovered.budget,validating_user_id:0
msgid "Validate User"
-msgstr ""
+msgstr "Valider l'utilisateur"
-#. module: account_budget
+#. module: account_budget_crossover
#: field:crossovered.budget.lines,analytic_account_id:0
msgid "Analytic Account Ref"
-msgstr ""
+msgstr "Réf. du Compte Analytique"
-#. module: account_budget
-#: view:account.budget.post:0
-msgid "Master Budget"
-msgstr ""
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+#: rml:crossovered.budget.report:0
+msgid "Currency:"
+msgstr "Devise"
-#. module: account_budget
-#: field:account.budget.post.dotation,period_id:0
-msgid "Period"
-msgstr "Période"
-
-#. module: account_budget
-#: selection:crossovered.budget,state:0
-msgid "Cancelled"
-msgstr ""
-
-#. module: account_budget
-#: wizard_view:account.budget.spread,init:0
-#: wizard_button:account.budget.spread,init,spread:0
-#: view:account.budget.post:0
-msgid "Spread"
-msgstr "Écarts"
-
-#. module: account_budget
+#. module: account_budget_crossover
#: selection:crossovered.budget,state:0
msgid "Draft"
-msgstr ""
+msgstr "Brouillon"
-#. module: account_budget
-#: model:ir.actions.wizard,name:account_budget.wizard_budget_spread
-msgid "Spread amount"
-msgstr "Ventiler le montant"
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+#: rml:crossovered.budget.report:0
+msgid "at"
+msgstr "Ã "
-#. module: account_budget
+#. module: account_budget_crossover
+#: model:ir.actions.report.xml,name:account_budget_crossover.account_analytic_account_budget
+#: model:ir.actions.report.xml,name:account_budget_crossover.report_crossovered_budget
+#: model:ir.actions.wizard,name:account_budget_crossover.account_analytic_account_budget_report
+#: model:ir.actions.wizard,name:account_budget_crossover.wizard_crossovered_budget_menu
+msgid "Print Budgets"
+msgstr "Imprimer les Budgets"
+
+#. module: account_budget_crossover
#: wizard_button:wizard.analytic.account.budget.report,init,report:0
-#: wizard_button:account.budget.report,init,report:0
#: wizard_button:wizard.crossovered.budget,init,report:0
#: wizard_button:wizard.crossovered.budget.summary,init,report:0
msgid "Print"
msgstr "Imprimer"
-#. module: account_budget
+#. module: account_budget_crossover
#: field:crossovered.budget.lines,percentage:0
msgid "Percentage"
+msgstr "Pourcentage"
+
+#. module: account_budget_crossover
+#: selection:crossovered.budget,state:0
+msgid "Validated"
+msgstr "Validé"
+
+#. module: account_budget_crossover
+#: model:ir.model,name:account_budget_crossover.model_crossovered_budget_lines
+msgid "Crossovered Budget Lines"
msgstr ""
-#. module: account_budget
-#: field:crossovered.budget,state:0
-msgid "Status"
-msgstr ""
-
-#. module: account_budget
-#: wizard_field:wizard.analytic.account.budget.report,init,date_from:0
-#: wizard_field:account.budget.report,init,date1:0
-#: wizard_field:wizard.crossovered.budget,init,date_from:0
-#: wizard_field:wizard.crossovered.budget.summary,init,date_from:0
-msgid "Start of period"
-msgstr "Démarrer période"
-
-#. module: account_budget
-#: model:ir.model,name:account_budget.model_account_budget_post_dotation
-msgid "Budget item endowment"
-msgstr "Répartition des postes budgétaires"
-
-#. module: account_budget
-#: field:crossovered.budget.lines,crossovered_budget_id:0
-msgid "Budget Ref"
-msgstr ""
-
-#. module: account_budget
-#: field:crossovered.budget.lines,planned_amount:0
-msgid "Planned Amount"
-msgstr ""
-
-#. module: account_budget
-#: wizard_view:account.budget.report,init:0
-msgid "Select period"
-msgstr "Sélectionner période"
-
-#. module: account_budget
-#: model:ir.ui.menu,name:account_budget.menu_financial_reporting_budget_budget_entries
-msgid "Entries"
-msgstr "Entrées "
-
-#. module: account_budget
-#: field:account.budget.post,account_ids:0
-#: view:account.budget.post:0
-msgid "Accounts"
-msgstr "Comptes"
-
-#. module: account_budget
-#: view:crossovered.budget:0
-msgid "Validate"
-msgstr ""
-
-#. module: account_budget
-#: wizard_view:wizard.crossovered.budget,init:0
-#: wizard_view:wizard.crossovered.budget.summary,init:0
-msgid "Select Options"
-msgstr ""
-
-#. module: account_budget
-#: model:ir.actions.act_window,name:account_budget.open_budget_post_form
-#: model:ir.ui.menu,name:account_budget.menu_budget_post_form
-msgid "Master Budgets"
-msgstr ""
-
-#. module: account_budget
-#: field:crossovered.budget.lines,practical_amount:0
-msgid "Practical Amount"
-msgstr ""
-
-#. module: account_budget
-#: field:crossovered.budget,date_to:0
-#: field:crossovered.budget.lines,date_to:0
-msgid "End Date"
-msgstr ""
-
-#. module: account_budget
-#: constraint:ir.ui.view:0
-msgid "Invalid XML for View Architecture!"
-msgstr ""
-
-#. module: account_budget
-#: field:crossovered.budget.lines,theoritical_amount:0
-msgid "Theoritical Amount"
-msgstr ""
-
-#. module: account_budget
-#: field:account.budget.post.dotation,name:0
-#: field:account.budget.post,name:0
+#. module: account_budget_crossover
#: field:crossovered.budget,name:0
msgid "Name"
msgstr "Nom"
-#. module: account_budget
-#: model:ir.actions.wizard,name:account_budget.wizard_crossovered_budget_menu_1
-msgid "Print Summary of Budgets"
-msgstr ""
+#. module: account_budget_crossover
+#: field:crossovered.budget,state:0
+msgid "Status"
+msgstr "État"
-#. module: account_budget
-#: selection:crossovered.budget,state:0
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+#: rml:crossovered.budget.report:0
+msgid "%"
+msgstr "%"
+
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+#: rml:crossovered.budget.report:0
+msgid "Description"
+msgstr "Description"
+
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+msgid "Analytic Account :"
+msgstr "Compte Analytique :"
+
+#. module: account_budget_crossover
+#: field:crossovered.budget.lines,crossovered_budget_id:0
+msgid "Budget Ref"
+msgstr "Réf. du Budget"
+
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+#: rml:crossovered.budget.report:0
+msgid "to"
+msgstr "au"
+
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+#: rml:crossovered.budget.report:0
+#: field:crossovered.budget.lines,planned_amount:0
+msgid "Planned Amount"
+msgstr "Montant Plannifié"
+
+#. module: account_budget_crossover
+#: model:ir.ui.menu,name:account_budget_crossover.menu_financial_reporting_budget_budget_entries
+msgid "Entries"
+msgstr "Écritures"
+
+#. module: account_budget_crossover
#: view:crossovered.budget:0
-msgid "Done"
-msgstr ""
+msgid "Validate"
+msgstr "Valider"
-#. module: account_budget
+#. module: account_budget_crossover
+#: wizard_view:wizard.crossovered.budget,init:0
+#: wizard_view:wizard.crossovered.budget.summary,init:0
+msgid "Select Options"
+msgstr "Sélectionnez les Options"
+
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+#: rml:crossovered.budget.report:0
+#: field:crossovered.budget.lines,practical_amount:0
+msgid "Practical Amount"
+msgstr "Montant en Pratique"
+
+#. module: account_budget_crossover
+#: field:crossovered.budget,date_to:0
+#: field:crossovered.budget.lines,date_to:0
+msgid "End Date"
+msgstr "Date de fin"
+
+#. module: account_budget_crossover
+#: constraint:ir.ui.view:0
+msgid "Invalid XML for View Architecture!"
+msgstr "XML non valide pour l'architecture de la vue"
+
+#. module: account_budget_crossover
+#: field:crossovered.budget.lines,theoritical_amount:0
+msgid "Theoritical Amount"
+msgstr "Montant Théorique"
+
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+#: rml:crossovered.budget.report:0
+msgid "Total:"
+msgstr "Total:"
+
+#. module: account_budget_crossover
+#: selection:crossovered.budget,state:0
+msgid "Cancelled"
+msgstr "Annulé"
+
+#. module: account_budget_crossover
#: field:crossovered.budget.lines,general_budget_id:0
msgid "Master Budget Ref"
-msgstr ""
+msgstr "Réf; du Budget Principal"
-#. module: account_budget
+#. module: account_budget_crossover
#: view:account.analytic.account:0
-#: view:account.budget.post:0
msgid "Lines"
msgstr "Lignes"
-#. module: account_budget
-#: model:ir.actions.act_window,name:account_budget.act_crossovered_budget_view
-#: model:ir.actions.wizard,name:account_budget.wizard_budget_report
-#: model:ir.ui.menu,name:account_budget.menu_act_crossovered_budget_view
+#. module: account_budget_crossover
+#: model:ir.actions.act_window,name:account_budget_crossover.act_crossovered_budget_view
+#: model:ir.ui.menu,name:account_budget_crossover.menu_act_crossovered_budget_view
#: view:crossovered.budget:0
msgid "Budget"
-msgstr "Prévisions budgétaires"
+msgstr "Budget"
-#. module: account_budget
-#: view:account.budget.post:0
-msgid "Definition"
-msgstr "Définition de campagne"
-
-#. module: account_budget
+#. module: account_budget_crossover
#: wizard_view:wizard.analytic.account.budget.report,init:0
msgid "Select Dates Period"
-msgstr ""
+msgstr "Sélectionnez la Période de Date"
-#. module: account_budget
-#: wizard_field:account.budget.spread,init,fiscalyear:0
-msgid "Fiscal Year"
-msgstr "Exercice comptable"
-
-#. module: account_budget
+#. module: account_budget_crossover
#: field:crossovered.budget.lines,paid_date:0
msgid "Paid Date"
-msgstr ""
+msgstr "Date de Paiement"
-#. module: account_budget
-#: model:ir.actions.act_window,name:account_budget.action_account_budget_post_tree
-#: model:ir.ui.menu,name:account_budget.menu_action_account_budget_post_tree
-#: model:ir.ui.menu,name:account_budget.menu_financial_reporting_budget_budget
-#: model:ir.ui.menu,name:account_budget.next_id_31
+#. module: account_budget_crossover
+#: model:ir.ui.menu,name:account_budget_crossover.menu_financial_reporting_budget_budget
msgid "Budgets"
msgstr "Budgets"
-#. module: account_budget
-#: model:ir.model,name:account_budget.model_account_budget_post
-msgid "Budget item"
-msgstr "Poste budgétaire"
-
-#. module: account_budget
+#. module: account_budget_crossover
#: wizard_field:wizard.analytic.account.budget.report,init,date_to:0
-#: wizard_field:account.budget.report,init,date2:0
#: wizard_field:wizard.crossovered.budget,init,date_to:0
#: wizard_field:wizard.crossovered.budget.summary,init,date_to:0
msgid "End of period"
msgstr "Fin de la période"
-#. module: account_budget
-#: model:ir.model,name:account_budget.model_crossovered_budget
+#. module: account_budget_crossover
+#: model:ir.model,name:account_budget_crossover.model_crossovered_budget
msgid "Crossovered Budget"
msgstr ""
-#. module: account_budget
-#: model:ir.model,name:account_budget.model_crossovered_budget_lines
-msgid "Crossovered Budget Lines"
-msgstr ""
+#. module: account_budget_crossover
+#: wizard_field:wizard.analytic.account.budget.report,init,date_from:0
+#: wizard_field:wizard.crossovered.budget,init,date_from:0
+#: wizard_field:wizard.crossovered.budget.summary,init,date_from:0
+msgid "Start of period"
+msgstr "Début de la période"
-#. module: account_budget
-#: field:account.budget.post,code:0
+#. module: account_budget_crossover
+#: model:ir.actions.wizard,name:account_budget_crossover.wizard_crossovered_budget_menu_1
+msgid "Print Summary of Budgets"
+msgstr "Imprimer le Résumé des Budgets"
+
+#. module: account_budget_crossover
#: field:crossovered.budget,code:0
msgid "Code"
msgstr "Code"
-#. module: account_budget
-#: view:account.budget.post.dotation:0
-msgid "Master Budget Expenses"
-msgstr ""
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+#: rml:crossovered.budget.report:0
+msgid "Theoretical Amount"
+msgstr "Montant Théorique"
-#. module: account_budget
-#: field:account.budget.post.dotation,post_id:0
-msgid "Item"
-msgstr "Élément"
+#. module: account_budget_crossover
+#: rml:crossovered.budget.report:0
+msgid "Budget :"
+msgstr "Budget :"
-#. module: account_budget
-#: wizard_field:account.budget.spread,init,amount:0
-#: field:account.budget.post.dotation,amount:0
-msgid "Amount"
-msgstr "Montant"
+#. module: account_budget_crossover
+#: selection:crossovered.budget,state:0
+#: view:crossovered.budget:0
+msgid "Done"
+msgstr "Terminé"
-#. module: account_budget
-#: field:account.budget.post,dotation_ids:0
-msgid "Expenses"
-msgstr "Dépense"
-
-#. module: account_budget
-#: model:ir.actions.report.xml,name:account_budget.account_budget
-msgid "Print Budget"
-msgstr "Impression du budget"
-
-#. module: account_budget
-#: model:ir.actions.act_window,name:account_budget.act_crossovered_budget_lines_view
+#. module: account_budget_crossover
+#: model:ir.actions.act_window,name:account_budget_crossover.act_crossovered_budget_lines_view
#: field:account.analytic.account,crossovered_budget_line:0
#: field:account.budget.post,crossovered_budget_line:0
#: field:crossovered.budget,crossovered_budget_line:0
-#: model:ir.ui.menu,name:account_budget.menu_act_crossovered_budget_lines_view
+#: model:ir.ui.menu,name:account_budget_crossover.menu_act_crossovered_budget_lines_view
#: view:crossovered.budget:0
#: view:account.analytic.account:0
-#: view:account.budget.post:0
#: view:crossovered.budget.lines:0
msgid "Budget Lines"
-msgstr ""
+msgstr "Lignes de Budget"
-#. module: account_budget
+#. module: account_budget_crossover
#: wizard_button:wizard.analytic.account.budget.report,init,end:0
-#: wizard_button:account.budget.report,init,end:0
-#: wizard_button:account.budget.spread,init,end:0
#: wizard_button:wizard.crossovered.budget,init,end:0
#: wizard_button:wizard.crossovered.budget.summary,init,end:0
#: view:crossovered.budget:0
msgid "Cancel"
msgstr "Annuler"
-#. module: account_budget
+#. module: account_budget_crossover
#: field:account.budget.post.dotation,tot_planned:0
msgid "Total Planned Amount"
-msgstr ""
+msgstr "Montant Total Planifié"
-#. module: account_budget
+#. module: account_budget_crossover
#: field:crossovered.budget,date_from:0
#: field:crossovered.budget.lines,date_from:0
msgid "Start Date"
-msgstr ""
-
-#. module: account_budget
-#: selection:crossovered.budget,state:0
-msgid "Validated"
-msgstr ""
+msgstr "Date de début"
+#. module: account_budget_crossover
+#: rml:account.analytic.account.budget:0
+#: rml:crossovered.budget.report:0
+msgid "Analysis from"
+msgstr "Analyse de"
diff --git a/addons/account_followup/__terp__.py b/addons/account_followup/__terp__.py
index a1b6713ca83..392df34f11a 100644
--- a/addons/account_followup/__terp__.py
+++ b/addons/account_followup/__terp__.py
@@ -50,8 +50,9 @@
"demo_xml" : ["followup_demo.xml"],
"update_xml" : [
"security/ir.model.access.csv",
+ "wizard/wizard_view.xml",
"followup_view.xml",
- "followup_report_view.xml"
+ "followup_report_view.xml",
],
"active": False,
"installable": True
diff --git a/addons/account_followup/followup_view.xml b/addons/account_followup/followup_view.xml
index 8739a94372a..81298dbf24d 100644
--- a/addons/account_followup/followup_view.xml
+++ b/addons/account_followup/followup_view.xml
@@ -42,12 +42,6 @@
-
- Send followups
- account_followup.followup.print.all
-
-
-
account.move.line.partner.tree
diff --git a/addons/account_followup/i18n/fr_FR.po b/addons/account_followup/i18n/fr_FR.po
index a7794a7331f..c049727c42f 100644
--- a/addons/account_followup/i18n/fr_FR.po
+++ b/addons/account_followup/i18n/fr_FR.po
@@ -427,7 +427,7 @@ msgstr "%(partner_name)s: nom du Partenaire"
#. module: account_followup
#: wizard_view:account_followup.followup.print.all,next:0
msgid "Select partners to remind"
-msgstr ""
+msgstr "Sélectionnez les partenaires à prévenir"
#. module: account_followup
#: model:ir.actions.report.xml,name:account_followup.account_followup_followup_report
diff --git a/addons/account_followup/wizard/wizard_view.xml b/addons/account_followup/wizard/wizard_view.xml
new file mode 100644
index 00000000000..643265ddca2
--- /dev/null
+++ b/addons/account_followup/wizard/wizard_view.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
diff --git a/addons/account_payment/security/ir.model.access.csv b/addons/account_payment/security/ir.model.access.csv
index d5d97f5cbdc..09ee2170239 100644
--- a/addons/account_payment/security/ir.model.access.csv
+++ b/addons/account_payment/security/ir.model.access.csv
@@ -1,5 +1,8 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_payment_type,payment.type,model_payment_type,group_account_payment,1,1,1,1
-access_payment_mode,payment.mode,model_payment_mode,group_account_payment,1,1,1,1
-access_payment_order,payment.order,model_payment_order,group_account_payment,1,1,1,1
-access_payment_line,payment.line,model_payment_line,group_account_payment,1,1,1,1
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_payment_type","payment.type","model_payment_type","group_account_payment",1,1,1,1
+"access_payment_mode","payment.mode","model_payment_mode","group_account_payment",1,1,1,1
+"access_payment_order","payment.order","model_payment_order","group_account_payment",1,1,1,1
+"access_payment_line","payment.line","model_payment_line","group_account_payment",1,1,1,1
+"access_account_journal_payement","account.journal payment","account.model_account_journal","group_account_payment",1,0,0,0
+"access_account_invoice_payment","account.invoice payment","account.model_account_invoice","group_account_payment",1,0,0,0
+"access_account_move_line_payment","account.move.line payment","account.model_account_move_line","group_account_payment",1,0,0,0
diff --git a/addons/account_report/account_report.xml b/addons/account_report/account_report.xml
index 082c15f139f..b105fae4cf4 100755
--- a/addons/account_report/account_report.xml
+++ b/addons/account_report/account_report.xml
@@ -3,7 +3,7 @@
-
+
diff --git a/addons/account_report/report/__init__.py b/addons/account_report/report/__init__.py
index 3592ada3b0a..03cbac9c6d7 100644
--- a/addons/account_report/report/__init__.py
+++ b/addons/account_report/report/__init__.py
@@ -29,6 +29,7 @@
##############################################################################
import accounting_report
+import print_indicator
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_report/report/print_indicator.py b/addons/account_report/report/print_indicator.py
new file mode 100644
index 00000000000..203f249178b
--- /dev/null
+++ b/addons/account_report/report/print_indicator.py
@@ -0,0 +1,265 @@
+
+# -*- encoding: utf-8 -*-
+##############################################################################
+#
+# Copyright (c) 2004-2008 TINY SPRL. (http://tiny.be) All Rights Reserved.
+#
+# $Id$
+#
+# WARNING: This program as such is intended to be used by professional
+# programmers who take the whole responsability of assessing all potential
+# consequences resulting from its eventual inadequacies and bugs
+# End users who are looking for a ready-to-use solution with commercial
+# garantees and support are strongly adviced to contract a Free Software
+# Service Company
+#
+# This program is Free Software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+##############################################################################
+
+import pooler
+import time
+from report import report_sxw
+
+#from report.interface import report_int
+#from reportlab.graphics.shapes import Drawing
+#from reportlab.graphics.charts.barcharts import VerticalBarChart
+#import reportlab.lib.colors as colors
+#from reportlab.graphics.widgetbase import Widget, TypedPropertyCollection
+#from reportlab.graphics.charts.textlabels import BarChartLabel
+#from reportlab.graphics import renderPM
+#from report.render import render
+#from report.interface import report_int
+from pychart import *
+import StringIO
+theme.use_color = 1
+theme.default_font_family = "Helvetica-Bold"
+theme.default_font_size = 18
+theme.default_line_width = 1.0
+import tools
+
+
+parents = {
+ 'tr':1,
+ 'li':1,
+ 'story': 0,
+ 'section': 0
+}
+
+class accounting_report_indicator(report_sxw.rml_parse):
+
+ def __init__(self, cr, uid, name, context):
+ super(accounting_report_indicator, self).__init__(cr, uid, name, context)
+ self.ret_list = []
+ self.localcontext.update({
+ 'time': time,
+ 'test': self.test1,
+ 'lines':self.lines,
+ 'getarray':self.getarray,
+ })
+ self.count=0
+ self.list=[]
+ self.header_name=self.header_val=[]
+
+ def repeatIn(self, lst, name, nodes_parent=False,td=False,width=[],value=[],type=[]):
+ self._node.data = ''
+ node = self._find_parent(self._node, nodes_parent or parents)
+ ns = node.nextSibling
+#start
+ if not name=='array':
+ return super(accounting_report_indicator,self).repeatIn(lst, name, nodes_parent=False)
+
+ value=['Data']
+ value.extend(self.header_name)
+ type=['string'].extend(['float']*len(self.header_name))
+ width=[40]*(len(self.header_name)+1)
+
+ if not lst:
+ lst.append(1)
+ for ns in node.childNodes :
+ if ns and ns.nodeName!='#text' and ns.tagName=='blockTable' and td :
+ width_str = ns._attrs['colWidths'].nodeValue
+ ns.removeAttribute('colWidths')
+ total_td = td * len(value)
+
+ if not width:
+ for v in value:
+ width.append(30)
+ for v in range(len(value)):
+ width_str +=',%d'%width[v]
+
+ ns.setAttribute('colWidths',width_str)
+
+ child_list = ns.childNodes
+ check=0
+ for child in child_list:
+ if child.nodeName=='tr':
+ lc = child.childNodes[1]
+# for t in range(td):
+ i=0
+ for v in value:
+ newnode = lc.cloneNode(1)
+ if check==1:
+ t1="[[ %s['%s'] ]]"%(name,v)
+ else:
+ t1="%s"%(v)
+ newnode.childNodes[1].lastChild.data = t1
+ child.appendChild(newnode)
+ newnode=False
+ i+=1
+ check=1
+
+ return super(accounting_report_indicator,self).repeatIn(lst, name, nodes_parent=False)
+
+ def lines(self,data):
+ res={}
+ result=[]
+ ind_ids=self.pool.get('account.report.report').search(self.cr,self.uid,[])
+ obj_inds=self.pool.get('account.report.report').browse(self.cr,self.uid,ind_ids)
+
+# def find_child(obj):
+# self.list.append(obj)
+# if obj.child_ids:
+# for child in obj.child_ids:
+# find_child(child)
+# return True
+#
+# find_child(obj_inds)
+
+ for obj_ind in obj_inds:
+ res = {
+ 'id':obj_ind.id,
+ 'name':obj_ind.name,
+ 'code':obj_ind.code,
+ 'expression':obj_ind.expression,
+ 'disp_graph':obj_ind.disp_graph,
+ 'note':obj_ind.note,
+ 'type':obj_ind.type,
+ }
+ result.append(res)
+ return result
+
+ def getarray(self,data,object):
+ res={}
+ result=[]
+ self.test1(data,object,intercall=True)
+ self.header_val=[str(x) for x in self.header_val]
+ temp_dict=zip(self.header_name,self.header_val)
+ res=dict(temp_dict)
+ res['Data']='Value'
+ result.append(res)
+ return result
+
+
+ def test1(self,data,object,intercall=False):
+ obj_history=self.pool.get('account.report.history')
+
+ if data['select_base']=='year':
+ tuple_search=('fiscalyear_id','in',data['base_selection'][0][2])
+ base='year'
+ else:
+ tuple_search=('period_id','in',data['base_selection'][0][2])
+ base='period'
+
+ history_ids=obj_history.search(self.cr,self.uid,[('name','=',object['id']),tuple_search])
+ history_ids.sort()
+ obj_his=obj_history.browse(self.cr,self.uid,history_ids)
+
+ data_val=[]
+ data_period=[]
+ if base=='period':
+ for item in obj_his:
+ data_val.append(item.val)
+ data_period.append(item.period_id.name)
+ else:
+ for i in data['base_selection'][0][2]:
+ val_temp=[]
+ data_period.append(self.pool.get('account.fiscalyear').browse(self.cr,self.uid,i).name)
+ for item in obj_his:
+ if item.fiscalyear_id.id==i:
+ val_temp.append(item.val)
+ data_val.append(sum(val_temp))
+
+ self.header_name=data_period
+ self.header_val=data_val
+
+ if intercall:
+ return True
+ self.count +=1
+# drawing = Drawing(400, 300)
+# data = [
+# tuple(data_val),
+# ]
+# value_min=0.0
+# vmin=min(data_val)
+# vmax=max(data_val)
+#
+# val_min=((vmin < 0.00 and vmin-2.00) or 0.00)
+# # calculating maximum
+# val_max=(vmax/(pow(10,len(str(int(vmax)))-2))+1)*pow(10,len(str(int(vmax)))-2)
+# bc = VerticalBarChart()
+# bc.x = 50
+# bc.y = 50
+# bc.height = 245
+# bc.width = 300
+# bc.data = data
+# value_step=(abs(val_max)-abs(val_min))/5
+#
+# bc.strokeColor = colors.black
+# bc.valueAxis.valueMin = val_min
+# bc.valueAxis.valueMax = val_max
+# bc.valueAxis.valueStep = value_step
+#
+# bc.categoryAxis.labels.boxAnchor = 'ne'
+# bc.categoryAxis.labels.dx = 8
+#
+# bc.categoryAxis.labels.dy = -2
+# bc.categoryAxis.labels.angle = 30
+# bc.categoryAxis.categoryNames = data_period
+# drawing.add(bc)
+# drawing.save(formats=['png'],fnRoot=path+str(self.count),title="helo")
+# renderPM.drawToFile(drawing1, 'example1.jpg','jpg')
+ import os
+ path=tools.config['addons_path']+"/account_report/tmp_images/image"
+
+ dirname =tools.config['addons_path']+'/account_report/tmp_images/'
+ if not os.path.isdir(dirname):
+ os.mkdir(dirname)
+
+ can = canvas.init('image'+str(self.count)+".png")
+# can.clip(0,0,600,400)
+
+ data=zip(self.header_name,self.header_val)
+
+ ar = area.T(size = (650,450),x_coord = category_coord.T(data, 0), y_range = (None, None),
+ x_axis = axis.X(label="Period // Year",format="/a-30{}%s"),
+ y_axis = axis.Y(label="Value"))
+
+ ar.add_plot(bar_plot.T(data = data,width=15, data_label_format="/o/15{}%s",label = "Value",fill_style=fill_style.red))
+ ar.draw()
+
+ can.close()
+ os.system('cp '+'image'+str(self.count)+'.png ' +path+str(self.count)+'.png')
+ os.system('rm '+'image'+str(self.count)+'.png')
+# can.endclip()
+ return path+str(self.count)+'.png'
+
+report_sxw.report_sxw('report.print.indicators', 'account.report.history',
+ 'addons/account_report/report/print_indicator.rml',
+ parser=accounting_report_indicator, header=False)
+
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+
diff --git a/addons/account_report/report/print_indicator.rml b/addons/account_report/report/print_indicator.rml
new file mode 100644
index 00000000000..7e66c37452c
--- /dev/null
+++ b/addons/account_report/report/print_indicator.rml
@@ -0,0 +1,178 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+|
+
+
+
+ |
+
+Indicators
+ |
+
+
+
+
+ |
+
+
+|
+[[ company.name ]]
+ |
+
+
+
+
+ |
+
+Currency: [[ company.currency_id.name]]
+
+ |
+
+
+
+
+
+Printing date: [[ time.strftime('%Y-%m-%d') ]] at [[ time.strftime('%H:%M:%S') ]]
+
+
+|
+Name
+ |
+
+Code
+ |
+
+
+
+
+
+
+
+[[ repeatIn(lines(data['form']),'o')]]
+
+
+|
+() [[ o['type']=='view' and setTag('para','para',{'fontName':'Helvetica-Bold'}) ]][[ o['name'] ]]
+ |
+
+[[ o['type']=='view' and setTag('para','para',{'fontName':'Helvetica-Bold'}) ]][[ o['code'] ]]
+ |
+
+
+
+
+
+[[ o['disp_graph'] and setTag('para','image',{'width':'450.00','height':'215.00','file':test(data['form'],o)}) or removeParentNode('para') ]]
+
+
+
+
+ [[ repeatIn(getarray(data['form'],o),'array',td=len(data['form']['base_selection'][0][2])) ]]
+
+
+ |
+
+ |
+
+
+ |
+
+ |
+
+
+
+
+
+
+
+
+|
+Expression : [[ o['expression'] ]]
+ |
+
+
+
+
+
+
+
+|
+Notes : [[ o['note'] ]]
+ |
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/account_report/security/ir.model.access.csv b/addons/account_report/security/ir.model.access.csv
index e74efd16f3b..ace4bc06db0 100644
--- a/addons/account_report/security/ir.model.access.csv
+++ b/addons/account_report/security/ir.model.access.csv
@@ -1,2 +1,3 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_account_report_report,account.report.report,model_account_report_report,base.group_user,1,0,0,0
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_account_report_report","account.report.report","model_account_report_report","account.group_account_manager",1,0,0,0
+"access_account_report_history","account.report.history","model_account_report_history","account.group_account_manager",1,0,0,0
diff --git a/addons/account_report/wizard/wizard_print_indicators.py b/addons/account_report/wizard/wizard_print_indicators.py
index 373b86fd914..b781073ddf4 100644
--- a/addons/account_report/wizard/wizard_print_indicators.py
+++ b/addons/account_report/wizard/wizard_print_indicators.py
@@ -33,12 +33,12 @@ import pooler
form = '''
'''
fields = {
- 'indicator_id': {'string':'Choose Indicator', 'type':'many2one', 'relation': 'account.report.report','required':True,},
'select_base': {'string':'Choose Criteria', 'type':'selection','selection':[('year','Based On Fiscal Years'),('periods','Based on Fiscal Periods')],'required':True,},
}
@@ -73,7 +73,7 @@ class wizard_print_indicators(wizard.interface):
},
'print': {
'actions':[],
- 'result' :{'type':'print','report':'report.print.indicators', 'state':'end'}
+ 'result' :{'type':'print','report':'print.indicators', 'state':'end'}
}
}
wizard_print_indicators('print.indicators')
diff --git a/addons/account_tax_include/i18n/fr_FR.po b/addons/account_tax_include/i18n/fr_FR.po
index 3dcb5980d8b..003361b5d18 100644
--- a/addons/account_tax_include/i18n/fr_FR.po
+++ b/addons/account_tax_include/i18n/fr_FR.po
@@ -4,39 +4,39 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:42+0000"
-"PO-Revision-Date: 2008-09-11 15:41:42+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:27+0000\n"
+"PO-Revision-Date: 2008-10-09 20:00+0000\n"
+"Last-Translator: Fabien Pinckaers \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-14 14:40+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: account_tax_include
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "XML non valide pour l'architecture de la vue!"
#. module: account_tax_include
#: selection:account.invoice,price_type:0
msgid "Tax excluded"
-msgstr ""
+msgstr "Tax exclue"
#. module: account_tax_include
#: view:account.tax:0
msgid "Compute Code for Taxes included prices"
-msgstr ""
+msgstr "Code de calcul pour les taxes comprises"
#. module: account_tax_include
#: selection:account.invoice,price_type:0
msgid "Tax included"
-msgstr ""
+msgstr "Tax inclue"
#. module: account_tax_include
#: field:account.invoice,price_type:0
msgid "Price method"
-msgstr ""
-
+msgstr "Méthode de prix"
diff --git a/addons/analytic_journal_billing_rate/__terp__.py b/addons/analytic_journal_billing_rate/__terp__.py
index 5ee1e35b8a8..b7293fd4c77 100644
--- a/addons/analytic_journal_billing_rate/__terp__.py
+++ b/addons/analytic_journal_billing_rate/__terp__.py
@@ -17,6 +17,7 @@
"demo_xml" : [],
"update_xml" : [
"analytic_journal_billing_rate_view.xml",
+ "security/ir.model.access.csv",
],
"active": False,
"installable": True
diff --git a/addons/analytic_journal_billing_rate/security/ir.model.access.csv b/addons/analytic_journal_billing_rate/security/ir.model.access.csv
new file mode 100644
index 00000000000..cf13af205ba
--- /dev/null
+++ b/addons/analytic_journal_billing_rate/security/ir.model.access.csv
@@ -0,0 +1,4 @@
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_analytic_journal_rate_user","analytic journal rate user","model_analytic_journal_rate_grid","project.group_project_user",1,0,0,0
+"access_analytic_journal_rate_manager","analytic journal rate manager","model_analytic_journal_rate_grid","project.group_project_manager",1,1,1,1
+"access_analytic_journal_rate_account_manager","analytic journal rateaccount manager","model_analytic_journal_rate_grid","account.group_account_manager",1,1,1,1
diff --git a/addons/analytic_user_function/__terp__.py b/addons/analytic_user_function/__terp__.py
index 6208cd43226..1a71adee8d6 100644
--- a/addons/analytic_user_function/__terp__.py
+++ b/addons/analytic_user_function/__terp__.py
@@ -17,6 +17,7 @@
"demo_xml" : [],
"update_xml" : [
"analytic_user_function_view.xml",
+ "security/ir.model.access.csv",
],
"active": False,
"installable": True
diff --git a/addons/analytic_user_function/security/ir.model.access.csv b/addons/analytic_user_function/security/ir.model.access.csv
new file mode 100644
index 00000000000..b2fb45404e8
--- /dev/null
+++ b/addons/analytic_user_function/security/ir.model.access.csv
@@ -0,0 +1,4 @@
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_analytic_user_funct_user","analytic user funct user","model_analytic_user_funct_grid","project.group_project_user",1,0,0,0
+"access_analytic_user_funct_manager","analytic user funct manager","model_analytic_user_funct_grid","project.group_project_manager",1,1,1,1
+"access_analytic_user_funct_account_manager","analytic user funct account manager","model_analytic_user_funct_grid","account.group_account_manager",1,1,1,1
diff --git a/addons/association_vertical/aso_vertical_view.xml b/addons/association_vertical/aso_vertical_view.xml
index cb810f113d1..219cea03776 100644
--- a/addons/association_vertical/aso_vertical_view.xml
+++ b/addons/association_vertical/aso_vertical_view.xml
@@ -6,15 +6,15 @@
-
+
+
+ id="menu_document_directories"
+ parent="menu_document_configuration"/>
ir.actions.act_window
@@ -80,9 +82,10 @@
[('ressource_parent_type_id','=',False),('parent_id','=',False)]
+ id="menu_document_directories_tree"
+ parent="menu_document"/>
@@ -141,9 +144,10 @@
form
+ id="menu_document_files"
+ parent="menu_document"/>
ir.actions.act_window
@@ -201,21 +205,31 @@
Auto Configure Directory
- auto.configuration
+ document.configuration.wizard
form
@@ -223,7 +237,7 @@
Auto Configure Directory
ir.actions.act_window
- auto.configuration
+ document.configuration.wizard
form
form
new
@@ -232,6 +246,7 @@
Auto Configure Directory
+ This wizard will be configure directory for ressource model.
open
diff --git a/addons/document/process/document_process.xml b/addons/document/process/document_process.xml
new file mode 100644
index 00000000000..3c37c793ab4
--- /dev/null
+++ b/addons/document/process/document_process.xml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/document/security/document_security.xml b/addons/document/security/document_security.xml
new file mode 100644
index 00000000000..4cef19d31ed
--- /dev/null
+++ b/addons/document/security/document_security.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+ Document / Manager
+
+
+
+
+
+
diff --git a/addons/document/security/ir.model.access.csv b/addons/document/security/ir.model.access.csv
new file mode 100644
index 00000000000..dfe882e49d8
--- /dev/null
+++ b/addons/document/security/ir.model.access.csv
@@ -0,0 +1,9 @@
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_document_directory_all","document.directory all","model_document_directory",,1,0,0,0
+"access_document_directory_group_document_manager","document.directory document manager","model_document_directory","group_document_manager",1,1,1,1
+"access_document_directory_group_system","document.directory group system","model_document_directory","base.group_system",1,1,1,1
+"access_document_directory_content_all","document.directory.content all","model_document_directory_content",,1,0,0,0
+"access_document_directory_content_group_document_manager","document.directory.content document manager","model_document_directory_content","group_document_manager",1,1,1,1
+"access_document_directory_content_group_system","document.directory.content group system","model_document_directory_content","base.group_system",1,1,1,1
+"access_document_configuation_wizard","document.configuration.wizard document manager","model_document_configuration_wizard","group_document_manager",1,1,1,1
+"access_document_configuation_wizard_sytem","document.configuration.wizard group system","model_document_configuration_wizard","base.group_system",1,1,1,1
diff --git a/addons/event/i18n/fr_FR.po b/addons/event/i18n/fr_FR.po
index e4f3d91286c..7e17a0929c6 100644
--- a/addons/event/i18n/fr_FR.po
+++ b/addons/event/i18n/fr_FR.po
@@ -4,113 +4,114 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:42+0000"
-"PO-Revision-Date: 2008-09-11 15:41:42+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 13:31+0000\n"
+"PO-Revision-Date: 2008-10-13 11:02+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-13 11:24+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: event
#: field:event.event,date_end:0
#: field:report.event.registration,date_end:0
msgid "Ending date"
-msgstr ""
+msgstr "Date de Fin"
#. module: event
#: field:event.event,register_min:0
msgid "Minimum Registrations"
-msgstr ""
+msgstr "Inscriptions Minimum"
#. module: event
#: model:ir.model,name:event.model_event_registration
msgid "Event Registration"
-msgstr ""
+msgstr "Inscription de l'Évenement"
#. module: event
#: model:ir.actions.wizard,name:event.event_reg_invoice
msgid "Make Invoice"
-msgstr ""
+msgstr "Créer facture"
#. module: event
#: field:report.event.type.registration,draft_state:0
msgid "Draft Registrations"
-msgstr ""
+msgstr "Inscriptions Brouillon"
#. module: event
#: view:report.event.registration:0
msgid "Event on Registration"
-msgstr ""
+msgstr "Évènement à l'Inscription"
#. module: event
#: wizard_button:event.reg_make_invoice,init,end:0
#: wizard_button:event.project,init,done:0
msgid "Ok"
-msgstr ""
+msgstr "Ok"
#. module: event
#: field:event.registration,partner_invoice_id:0
msgid "Partner Invoice"
-msgstr ""
+msgstr "Facture Partenaire"
#. module: event
#: model:ir.actions.act_window,name:event.action_registration
#: model:ir.actions.wizard,name:event.wizard_event_registration
#: view:event.event:0
msgid "Registrations"
-msgstr ""
+msgstr "Inscriptions"
#. module: event
#: wizard_field:event.project,init,project_id:0
#: model:ir.actions.wizard,name:event.event_wiz
#: field:event.event,project_id:0
msgid "Project"
-msgstr ""
+msgstr "Projet"
#. module: event
#: wizard_field:event.reg_make_invoice,init,inv_rejected:0
msgid "Invoice Rejected"
-msgstr ""
+msgstr "Facture Rejetée"
#. module: event
#: view:event.event:0
msgid "Confirm Event"
-msgstr ""
+msgstr "Confirmez l'Évènement"
#. module: event
#: field:report.event.registration,draft_state:0
msgid "Draft Registration"
-msgstr ""
+msgstr "Inscription Brouillon"
#. module: event
#: field:event.registration,tobe_invoiced:0
msgid "To be Invoice"
-msgstr ""
+msgstr "Ã Facturer"
#. module: event
#: wizard_view:event.reg_make_invoice,init:0
msgid "Create Invoices"
-msgstr ""
+msgstr "Créer les Factures"
#. module: event
#: view:event.registration:0
msgid "Extra Info"
-msgstr ""
+msgstr "Infos Complémentaires"
#. module: event
#: view:event.registration:0
msgid "Registration"
-msgstr ""
+msgstr "Inscription"
#. module: event
#: model:ir.model,name:event.model_event_type
#: field:event.type,name:0
msgid "Event type"
-msgstr ""
+msgstr "Type d'Évènement"
#. module: event
#: wizard_view:event.project,init:0
@@ -118,29 +119,29 @@ msgstr ""
#: field:report.event.registration,name:0
#: view:event.event:0
msgid "Event"
-msgstr ""
+msgstr "Évènement"
#. module: event
#: wizard_field:event.reg_make_invoice,init,inv_created:0
msgid "Invoice Created"
-msgstr ""
+msgstr "Facture créée"
#. module: event
#: view:event.event:0
msgid "Statistics"
-msgstr ""
+msgstr "Statistiques"
#. module: event
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "XML non valide pour l'architecture de la vue!"
#. module: event
#: model:ir.actions.act_window,name:event.action_registration_confirm
#: field:event.event,register_current:0
#: model:ir.ui.menu,name:event.menu_action_registration_confirm
msgid "Confirmed Registrations"
-msgstr ""
+msgstr "Inscriptions Confirmées"
#. module: event
#: field:event.event,mail_auto_registr:0
@@ -150,12 +151,12 @@ msgstr ""
#. module: event
#: field:event.event,type:0
msgid "Type"
-msgstr ""
+msgstr "Type"
#. module: event
#: field:event.event,section_id:0
msgid "Case section"
-msgstr ""
+msgstr "Section de cas"
#. module: event
#: field:event.event,mail_confirm:0
@@ -165,7 +166,7 @@ msgstr ""
#. module: event
#: model:ir.ui.menu,name:event.menu_event_event
msgid "All Events"
-msgstr ""
+msgstr "Tous les évènements"
#. module: event
#: model:ir.ui.menu,name:event.menu_report_event
@@ -175,34 +176,34 @@ msgstr "Reporting"
#. module: event
#: view:event.event:0
msgid "Remaining Tasks"
-msgstr ""
+msgstr "Tâches Restantes"
#. module: event
#: view:event.registration:0
msgid "Cancel Registration"
-msgstr ""
+msgstr "Annuler l'Inscription"
#. module: event
#: model:ir.ui.menu,name:event.menu_action_event_categories
msgid "Events by Categories"
-msgstr ""
+msgstr "Évènements par Catégorie"
#. module: event
#: field:report.event.type.registration,confirm_state:0
msgid "Confirm Registrations"
-msgstr ""
+msgstr "Confirmez les Inscriptions"
#. module: event
#: view:event.registration:0
msgid "References"
-msgstr ""
+msgstr "Références"
#. module: event
#: model:ir.actions.act_window,name:event.action_event_type_registration
#: model:ir.ui.menu,name:event.menu_report_event_type_registration
#: view:report.event.type.registration:0
msgid "Registration By Event Types"
-msgstr ""
+msgstr "Inscriptions par Types d'Évènements"
#. module: event
#: model:ir.ui.menu,name:event.menu_event_config
@@ -212,37 +213,39 @@ msgstr "Configuration"
#. module: event
#: view:event.registration:0
msgid "Dates"
-msgstr ""
+msgstr "Dates"
#. module: event
#: constraint:product.template:0
msgid "Error: UOS must be in a different category than the UOM"
msgstr ""
+"Erreur: l'unité de vente doit appartenir à une catégorie différente que "
+"l'unité de mesure"
#. module: event
#: view:event.registration:0
msgid "Registration Invoiced"
-msgstr ""
+msgstr "Inscriptions Facturées"
#. module: event
#: field:event.event,budget_id:0
msgid "Budget"
-msgstr ""
+msgstr "Budget"
#. module: event
#: field:report.event.type.registration,nbevent:0
msgid "Number Of Events"
-msgstr ""
+msgstr "Nombre d'Évènements"
#. module: event
#: view:event.event:0
msgid "Cancel Event"
-msgstr ""
+msgstr "Annuler l'Évènement"
#. module: event
#: wizard_field:event.reg_make_invoice,init,inv_rej_reason:0
msgid "Error Messages"
-msgstr ""
+msgstr "Messages d'erreur"
#. module: event
#: view:event.event:0
@@ -252,100 +255,103 @@ msgstr ""
#. module: event
#: model:product.template,name:event.event_product_0_product_template
msgid "Ticket for Concert"
-msgstr ""
+msgstr "Ticket de Concert"
#. module: event
#: model:ir.actions.act_window,name:event.action_registration_draft
#: field:event.event,register_prospect:0
#: model:ir.ui.menu,name:event.menu_action_registration_draft
msgid "Unconfirmed Registrations"
-msgstr ""
+msgstr "Inscriptions Non Confirmées"
#. module: event
#: model:ir.actions.wizard,name:event.wizard_event_task
msgid "Tasks"
-msgstr ""
+msgstr "Tâches"
#. module: event
#: view:event.registration:0
msgid "Communication history"
-msgstr ""
+msgstr "Historique de la communication"
#. module: event
#: help:event.event,mail_auto_registr:0
msgid "A mail is send when the registration is confirmed"
-msgstr ""
+msgstr "Un Message est envoyé lorsque l'inscription est confirmée"
#. module: event
#: help:event.event,mail_auto_confirm:0
msgid "A mail is send when the event is confimed"
-msgstr ""
+msgstr "Un Message est envoyé lorsque l'évènement est confirmé"
#. module: event
#: selection:event.event,state:0
msgid "Canceled"
-msgstr ""
+msgstr "Annulé"
#. module: event
#: view:event.event:0
msgid "Event Done"
-msgstr ""
+msgstr "Évènement Effectué"
#. module: event
#: field:event.registration,badge_name:0
msgid "Badge Name"
-msgstr ""
+msgstr "Nom du Badge"
#. module: event
#: model:ir.actions.act_window,name:event.action_event_registration
#: model:ir.ui.menu,name:event.menu_report_event_registration
msgid "Events On Registrations"
-msgstr ""
+msgstr "Évènements à l'Inscription"
#. module: event
#: view:event.event:0
msgid "Tasks management"
-msgstr ""
+msgstr "Gestion des Tâches"
#. module: event
#: view:event.event:0
msgid "Category"
-msgstr ""
+msgstr "Catégorie"
#. module: event
#: constraint:product.template:0
-msgid "Error: The default UOM and the purchase UOM must be in the same category."
+msgid ""
+"Error: The default UOM and the purchase UOM must be in the same category."
msgstr ""
+"Erreur: l'unité de mesure par défaut et l'unité de mesure d'achat doivent "
+"faire partie de la même catégorie"
#. module: event
#: selection:event.event,state:0
msgid "Confirmed"
-msgstr ""
+msgstr "Confirmé"
#. module: event
#: view:event.registration:0
msgid "Action Information"
-msgstr ""
+msgstr "Infos sur l'action"
#. module: event
#: selection:event.event,state:0
msgid "Draft"
-msgstr ""
+msgstr "Brouillon"
#. module: event
#: view:event.event:0
msgid "Event description"
-msgstr ""
+msgstr "Description de l'Évènement"
#. module: event
#: model:ir.model,name:event.model_report_event_type_registration
msgid "Event type on registration"
-msgstr ""
+msgstr "Type d'Évènement à l'Inscription"
#. module: event
#: field:event.registration,badge_title:0
msgid "Badge Title"
-msgstr ""
+msgstr "Titre du Badge"
#. module: event
#: field:event.registration,event_id:0
@@ -356,33 +362,33 @@ msgstr ""
#: model:ir.actions.act_window,name:event.action_event_view
#: view:event.event:0
msgid "Events"
-msgstr ""
+msgstr "Évènements"
#. module: event
#: field:event.registration,nb_register:0
msgid "Number of Registration"
-msgstr ""
+msgstr "Nombre d'Inscription"
#. module: event
#: field:event.event,state:0
#: view:event.event:0
msgid "Status"
-msgstr ""
+msgstr "État"
#. module: event
#: model:ir.actions.act_window,name:event.action_event_categories
msgid "Events by section"
-msgstr ""
+msgstr "Évènements par section"
#. module: event
#: model:ir.ui.menu,name:event.menu_action_registration
msgid "All Registrations"
-msgstr ""
+msgstr "Toutes les Inscriptions"
#. module: event
#: field:event.registration,partner_order_id:0
msgid "Partner Order"
-msgstr ""
+msgstr "Ordre du Partenaire"
#. module: event
#: field:event.event,mail_registr:0
@@ -392,95 +398,98 @@ msgstr ""
#. module: event
#: view:event.event:0
msgid "Set To Draft"
-msgstr ""
+msgstr "Mettre à l'état Brouillon"
#. module: event
#: field:report.event.registration,confirm_state:0
#: view:event.registration:0
msgid "Confirm Registration"
-msgstr ""
+msgstr "Confirmer l'Inscription"
#. module: event
#: view:event.registration:0
msgid "History"
-msgstr ""
+msgstr "Historique"
#. module: event
#: model:ir.ui.menu,name:event.menu_event_type
msgid "Types of Events"
-msgstr ""
+msgstr "Types d'Évènements"
#. module: event
#: view:event.registration:0
msgid "General"
-msgstr ""
+msgstr "Général"
#. module: event
#: view:event.registration:0
msgid "Send Reminder"
-msgstr ""
+msgstr "Envoyer un rappel"
#. module: event
#: selection:event.event,state:0
msgid "Done"
-msgstr ""
+msgstr "Terminé"
#. module: event
#: field:event.event,date_begin:0
#: field:report.event.registration,date_begin:0
msgid "Beginning date"
-msgstr ""
+msgstr "Date de début"
#. module: event
#: field:event.registration,invoice_id:0
msgid "Invoice"
-msgstr ""
+msgstr "Facture"
#. module: event
#: model:ir.model,name:event.model_report_event_registration
msgid "Events on registrations"
-msgstr ""
+msgstr "Évènements à l'Inscription"
#. module: event
#: wizard_button:event.project,init,end:0
msgid "Cancel"
-msgstr ""
+msgstr "Annuler"
#. module: event
#: wizard_button:event.reg_make_invoice,init,open:0
msgid "Open"
-msgstr ""
+msgstr "Ouvert"
#. module: event
#: view:event.event:0
msgid "Information"
-msgstr ""
+msgstr "Information"
#. module: event
#: constraint:ir.model:0
-msgid "The Object name must start with x_ and not contain any special character !"
+msgid ""
+"The Object name must start with x_ and not contain any special character !"
msgstr ""
+"Le nom de l'objet doit commencer avec x_ et ne pas contenir de charactères "
+"spéciaux !"
#. module: event
#: model:ir.actions.act_window,name:event.action_new_event_form
#: model:ir.ui.menu,name:event.menu_event_new_event
msgid "New event"
-msgstr ""
+msgstr "Nouvel évènement"
#. module: event
#: view:event.event:0
msgid "All tasks"
-msgstr ""
+msgstr "Toutes les tâches"
#. module: event
#: field:event.registration,unit_price:0
msgid "Unit Price"
-msgstr ""
+msgstr "Prix unitaire"
#. module: event
#: view:event.event:0
msgid "Create Retro-Planning"
-msgstr ""
+msgstr "Générer le retro planning"
#. module: event
#: field:event.registration,badge_partner:0
@@ -491,43 +500,43 @@ msgstr ""
#: model:ir.actions.act_window,name:event.action_event_view_confirm
#: model:ir.ui.menu,name:event.menu_event_event_confirm
msgid "Confirmed Events"
-msgstr ""
+msgstr "Évènements Confirmés"
#. module: event
#: field:event.event,register_max:0
#: field:report.event.registration,register_max:0
msgid "Maximum Registrations"
-msgstr ""
+msgstr "Inscriptions Maximum"
#. module: event
#: view:event.registration:0
msgid "Badge"
-msgstr ""
+msgstr "Badge"
#. module: event
#: model:product.template,name:event.event_product_2_product_template
msgid "Ticket for Conference"
-msgstr ""
+msgstr "Ticket de Conférence"
#. module: event
#: field:event.event,task_ids:0
msgid "Project tasks"
-msgstr ""
+msgstr "Tâches du projet"
#. module: event
#: field:event.registration,case_id:0
msgid "Case"
-msgstr ""
+msgstr "Cas"
#. module: event
#: view:event.event:0
msgid "Name"
-msgstr ""
+msgstr "Nom"
#. module: event
#: field:event.event,product_id:0
msgid "Product"
-msgstr ""
+msgstr "Produit"
#. module: event
#: field:event.registration,invoice_label:0
@@ -537,13 +546,13 @@ msgstr ""
#. module: event
#: view:event.registration:0
msgid "Payments"
-msgstr ""
+msgstr "Paiements"
#. module: event
#: field:report.event.type.registration,name:0
#: view:event.type:0
msgid "Event Type"
-msgstr ""
+msgstr "Type d'évènement"
#. module: event
#: field:event.event,mail_auto_confirm:0
@@ -554,36 +563,35 @@ msgstr ""
#: model:ir.actions.act_window,name:event.action_event_view_draft
#: model:ir.ui.menu,name:event.menu_event_event_draft
msgid "Draft Events"
-msgstr ""
+msgstr "Évènements Brouillon"
#. module: event
#: model:product.template,name:event.event_product_1_product_template
msgid "Ticket for Opera"
-msgstr ""
+msgstr "Ticket d'Opera"
#. module: event
#: model:ir.ui.menu,name:event.menu_event_main
msgid "Events Organisation"
-msgstr ""
+msgstr "Organisation des Évènements"
#. module: event
#: view:event.registration:0
msgid "Actions"
-msgstr ""
+msgstr "Actions"
#. module: event
#: model:ir.actions.wizard,name:event.wizard_event_reg_partners
msgid "List Register Partners"
-msgstr ""
+msgstr "Lister les Partenaires Inscrits"
#. module: event
#: constraint:product.product:0
msgid "Error: Invalid ean code"
-msgstr ""
+msgstr "Erreur: code EAN invalide"
#. module: event
#: help:event.event,mail_confirm:0
#: help:event.event,mail_registr:0
msgid "Template for the mail"
-msgstr ""
-
+msgstr "Patron pour le Message"
diff --git a/addons/event/security/ir.model.access.csv b/addons/event/security/ir.model.access.csv
index e7668f30c38..126c78ea6ad 100644
--- a/addons/event/security/ir.model.access.csv
+++ b/addons/event/security/ir.model.access.csv
@@ -1,6 +1,7 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_event_type,event.type,model_event_type,crm.group_crm_user,1,1,1,1
-access_event_event,event.event,model_event_event,crm.group_crm_user,1,1,1,1
-access_event_registration,event.registration,model_event_registration,crm.group_crm_user,1,1,1,1
-access_report_event_registration,report.event.registration,model_report_event_registration,crm.group_crm_user,1,1,1,1
-access_report_event_type_registration,report.event.type.registration,model_report_event_type_registration,crm.group_crm_user,1,1,1,1
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_event_type","event.type","model_event_type","crm.group_crm_user",1,1,1,1
+"access_event_event","event.event","model_event_event","crm.group_crm_user",1,1,1,1
+"access_event_registration","event.registration","model_event_registration","crm.group_crm_user",1,1,1,1
+"access_report_event_registration","report.event.registration","model_report_event_registration","crm.group_crm_user",1,0,0,0
+"access_report_event_type_registration","report.event.type.registration","model_report_event_type_registration","crm.group_crm_user",1,0,0,0
+"access_project_project_crm_user","project.project crm user","project.model_project_project","crm.group_crm_user",1,0,0,0
diff --git a/addons/google_map/i18n/fr_FR.po b/addons/google_map/i18n/fr_FR.po
index 69cca2d908f..7ead04c08b0 100644
--- a/addons/google_map/i18n/fr_FR.po
+++ b/addons/google_map/i18n/fr_FR.po
@@ -4,31 +4,31 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:43+0000"
-"PO-Revision-Date: 2008-09-11 15:41:43+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 13:23+0000\n"
+"PO-Revision-Date: 2008-10-11 07:06+0000\n"
+"Last-Translator: Christophe Chauvet \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-14 15:08+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: google_map
#: view:res.partner.address:0
#: view:res.partner:0
msgid "Map"
-msgstr ""
+msgstr "Carte"
#. module: google_map
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "XML non valide pour l'architecture de la vue!"
#. module: google_map
#: view:res.partner.address:0
#: view:res.partner:0
msgid "Street2 : "
-msgstr ""
-
+msgstr "Adresse suite "
diff --git a/addons/hr/__terp__.py b/addons/hr/__terp__.py
index 7da1af96772..1e5c9ff7e12 100644
--- a/addons/hr/__terp__.py
+++ b/addons/hr/__terp__.py
@@ -40,7 +40,7 @@
Different reports are also provided, mainly for attendance statistics.
""",
- "depends" : ["base", "process"],
+ "depends" : ["base", "crm_configuration", "process"],
"init_xml" : [],
"demo_xml" : [
"hr_demo.xml",
@@ -52,6 +52,7 @@
"hr_view.xml",
"hr_wizard.xml",
"hr_department_view.xml",
+ "process/hr_process.xml"
],
"active": False,
"installable": True
diff --git a/addons/hr/i18n/fr_FR.po b/addons/hr/i18n/fr_FR.po
index af72274ae8f..0e17e256282 100644
--- a/addons/hr/i18n/fr_FR.po
+++ b/addons/hr/i18n/fr_FR.po
@@ -4,27 +4,28 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:43+0000"
-"PO-Revision-Date: 2008-09-11 15:41:43+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:32+0000\n"
+"PO-Revision-Date: 2008-10-13 11:08+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-13 11:28+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: hr
#: model:ir.actions.act_window,name:hr.edit_workgroup
#: model:ir.ui.menu,name:hr.menu_edit_workgroup
msgid "Working Time Categories"
-msgstr ""
+msgstr "Catégories de Temps de Travail"
#. module: hr
#: constraint:hr.department:0
msgid "Error! You can not create recursive departments."
-msgstr ""
+msgstr "Erreur! Vous ne pouvez pas créer de départements récursifs."
#. module: hr
#: field:hr.employee,sinid:0
@@ -54,21 +55,16 @@ msgstr "Imprimer Timesheet"
msgid "Department"
msgstr "département"
-#. module: hr
-#: model:ir.actions.act_window,name:hr.action2
-msgid "Hierarchical view of this employee"
-msgstr "Vue hiérarchisée de cet employé"
-
#. module: hr
#: field:hr.employee,work_email:0
msgid "Work Email"
-msgstr ""
+msgstr "Adresse électronique professionnelle"
#. module: hr
#: model:ir.actions.act_window,name:hr.open_view_employee_list_my
#: model:ir.ui.menu,name:hr.menu_open_view_employee_list_my
msgid "My Employees"
-msgstr ""
+msgstr "Mes Employés"
#. module: hr
#: field:hr.timesheet.group,name:0
@@ -96,12 +92,6 @@ msgstr "Total de la période:"
msgid "Reason"
msgstr "Motifs de pointage"
-#. module: hr
-#, python-format
-#: code:addons/hr/wizard/sign_in_out.py:0
-msgid "The sign-out date must be in the past"
-msgstr ""
-
#. module: hr
#: rml:hr.timesheet.attendance.error:0
msgid "Date Signed"
@@ -151,26 +141,18 @@ msgstr "Présent depuis"
#. module: hr
#: wizard_view:hr.si_so,so_ask_si:0
-msgid "You did not signed in the last time. Please enter the date and time you signed in."
-msgstr "Vous n'avez pas pointé la dernière fois. Veuillez entrer la date et l'heure à laquelle vous êtes arrivé(e)"
+msgid ""
+"You did not signed in the last time. Please enter the date and time you "
+"signed in."
+msgstr ""
+"Vous n'avez pas pointé la dernière fois. Veuillez entrer la date et l'heure "
+"à laquelle vous êtes arrivé(e)"
#. module: hr
#: model:ir.actions.act_window,name:hr.open_view_attendance_reason
#: model:ir.ui.menu,name:hr.menu_open_view_attendance_reason
msgid "Attendance Reasons"
-msgstr ""
-
-#. module: hr
-#, python-format
-#: code:addons/hr/hr.py:0
-msgid "You tried to sign with a date anterior to another event !\nTry to contact the administrator to correct attendances."
-msgstr ""
-
-#. module: hr
-#, python-format
-#: code:addons/hr/wizard/sign_in_out.py:0
-msgid "UserError"
-msgstr ""
+msgstr "Raisons d'assistance"
#. module: hr
#: model:ir.ui.menu,name:hr.menu_hr_configuration
@@ -193,16 +175,10 @@ msgstr "Pointage employé"
msgid "Sunday"
msgstr "Dimanche"
-#. module: hr
-#, python-format
-#: code:addons/hr/hr.py:0
-msgid "Warning"
-msgstr ""
-
#. module: hr
#: selection:hr.employee,gender:0
msgid "Female"
-msgstr ""
+msgstr "Féminin"
#. module: hr
#: rml:hr.timesheet.attendance.error:0
@@ -210,15 +186,9 @@ msgid "Operation"
msgstr "Opération"
#. module: hr
-#: view:hr.timesheet.group:0
-msgid "Working Time Category"
-msgstr ""
-
-#. module: hr
-#, python-format
-#: code:addons/hr/wizard/sign_in_out.py:0
-msgid "A sign-in must be right after a sign-out !"
-msgstr ""
+#: rml:hr.timesheet.attendance.error:0
+msgid "Date Printed:"
+msgstr "Date Imprimée :"
#. module: hr
#: model:ir.actions.act_window,name:hr.open_view_employee_tree
@@ -249,7 +219,7 @@ msgstr "Sociétés"
#. module: hr
#: field:hr.employee,work_phone:0
msgid "Work Phone"
-msgstr ""
+msgstr "Téléphone professionnel"
#. module: hr
#: wizard_field:hr.timesheet.attendance.report,init,max_delay:0
@@ -259,7 +229,7 @@ msgstr "Délais max (Min)"
#. module: hr
#: field:hr.employee,work_location:0
msgid "Office Location"
-msgstr ""
+msgstr "Localisation du Bureau"
#. module: hr
#: model:ir.model,name:hr.model_hr_employee
@@ -300,10 +270,19 @@ msgstr "Membres"
msgid "Action's type"
msgstr "Type d'action"
+#. module: hr
+#: rml:hr.timesheet.attendance.error:0
+msgid "Report"
+msgstr "Rapport"
+
#. module: hr
#: wizard_view:hr.si_so,si_ask_so:0
-msgid "You did not signed out the last time. Please enter the date and time you signed out."
-msgstr "Vous n'avez pas pointé la dernière fois. Veuillez entrer la date et l'heure à laquelle vous êtes parti(e)"
+msgid ""
+"You did not signed out the last time. Please enter the date and time you "
+"signed out."
+msgstr ""
+"Vous n'avez pas pointé la dernière fois. Veuillez entrer la date et l'heure "
+"à laquelle vous êtes parti(e)"
#. module: hr
#: model:ir.actions.report.xml,name:hr.attendance_error_report
@@ -319,17 +298,12 @@ msgstr "Date de début"
#. module: hr
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "XML non valide pour l'architecture de la vue!"
#. module: hr
#: selection:hr.employee,marital:0
msgid "Divorced"
-msgstr ""
-
-#. module: hr
-#: rml:hr.timesheet.attendance.error:0
-msgid "Min Delay"
-msgstr ""
+msgstr "Divorcé(e)"
#. module: hr
#: view:hr.attendance:0
@@ -353,7 +327,7 @@ msgstr "Pointer l'entrée"
#. module: hr
#: selection:hr.employee,marital:0
msgid "Maried"
-msgstr ""
+msgstr "Marié(e)"
#. module: hr
#: field:hr.timesheet,tgroup_id:0
@@ -363,18 +337,13 @@ msgstr "Groupe de feuille de présence"
#. module: hr
#: selection:hr.employee,gender:0
msgid "Male"
-msgstr ""
+msgstr "Masculin"
#. module: hr
-#, python-format
-#: code:addons/hr/wizard/sign_in_out.py:0
-msgid "The Sign-in date must be in the past"
-msgstr ""
-
-#. module: hr
-#: selection:hr.employee,marital:0
-msgid "Unmaried"
-msgstr ""
+#: model:ir.actions.act_window,name:hr.open_view_categ_form
+#: model:ir.ui.menu,name:hr.menu_view_employee_category_form
+msgid "Categories of Employee"
+msgstr "Catégories d'Employés"
#. module: hr
#: model:ir.model,name:hr.model_hr_employee_category
@@ -404,8 +373,11 @@ msgstr ""
#. module: hr
#: rml:hr.timesheet.attendance.error:0
-msgid "(*) A negative delay means that the employee worked more than encoded."
-msgstr "(*) Un retard négatif signifie que l'employé à travaillé plus que ce qui est encodé."
+msgid ""
+"(*) A negative delay means that the employee worked more than encoded."
+msgstr ""
+"(*) Un retard négatif signifie que l'employé à travaillé plus que ce qui est "
+"encodé."
#. module: hr
#: field:hr.employee,category_id:0
@@ -427,12 +399,6 @@ msgstr "Pointer"
msgid "Note"
msgstr "Note"
-#. module: hr
-#, python-format
-#: code:addons/hr/hr.py:0
-msgid "You tried to sign in with a date anterior to another event !\nTry to contact the administrator to correct attendances."
-msgstr ""
-
#. module: hr
#: model:ir.model,name:hr.model_hr_attendance
#: field:hr.employee,state:0
@@ -442,23 +408,33 @@ msgstr "Pointage"
#. module: hr
#: view:hr.employee:0
msgid "Contact Information"
-msgstr ""
+msgstr "Informations sur le contact"
#. module: hr
#: model:ir.actions.wizard,name:hr.print_week
msgid "Print Timesheet by week"
msgstr "Présences par semaine"
+#. module: hr
+#: selection:hr.employee,marital:0
+msgid "Other"
+msgstr "Autre"
+
#. module: hr
#: view:hr.employee:0
msgid "Status"
-msgstr ""
+msgstr "État"
#. module: hr
#: field:hr.employee,address_id:0
msgid "Contact address"
msgstr "Adresse"
+#. module: hr
+#: rml:hr.timesheet.attendance.error:0
+msgid "Avg Delay"
+msgstr "Délai Moyen"
+
#. module: hr
#: selection:hr.timesheet,dayofweek:0
msgid "Monday"
@@ -473,13 +449,7 @@ msgstr "Structure des catégories"
#. module: hr
#: view:hr.employee:0
msgid "Job Information"
-msgstr ""
-
-#. module: hr
-#, python-format
-#: code:addons/hr/wizard/sign_in_out.py:0
-msgid "A sign-out must be right after a sign-in !"
-msgstr ""
+msgstr "Information sur l'Emploi"
#. module: hr
#: field:hr.timesheet,dayofweek:0
@@ -496,6 +466,11 @@ msgstr ""
msgid "Date"
msgstr "Date"
+#. module: hr
+#: rml:hr.timesheet.attendance.error:0
+msgid "To:"
+msgstr "À :"
+
#. module: hr
#: wizard_button:hr.si_so,si_ask_so,si:0
#: wizard_button:hr.si_so,init,si_test:0
@@ -519,10 +494,9 @@ msgid "Active"
msgstr "Actif"
#. module: hr
-#: model:ir.actions.act_window,name:hr.open_view_categ_form
-#: model:ir.ui.menu,name:hr.menu_view_employee_category_form
-msgid "Categories of Employee"
-msgstr ""
+#: selection:hr.employee,marital:0
+msgid "Unmaried"
+msgstr "Non Marié(e)"
#. module: hr
#: rml:hr.timesheet.attendance.error:0
@@ -540,12 +514,6 @@ msgstr "Pointage"
msgid "Starting date"
msgstr "Date début"
-#. module: hr
-#, python-format
-#: code:addons/hr/hr.py:0
-msgid "You tried to sign out with a date anterior to another event !\nTry to contact the administrator to correct attendances."
-msgstr ""
-
#. module: hr
#: wizard_view:hr.print_week,init:0
msgid "Select a starting and a end date"
@@ -559,12 +527,12 @@ msgstr "Catégorie parents"
#. module: hr
#: field:hr.employee,marital:0
msgid "Marital Status"
-msgstr ""
+msgstr "État matrimonial"
#. module: hr
-#: selection:hr.employee,marital:0
-msgid "Other"
-msgstr ""
+#: model:ir.actions.act_window,name:hr.action2
+msgid "Hierarchical view of this employee"
+msgstr "Vue hiérarchisée de cet employé"
#. module: hr
#: wizard_button:hr.print_month,init,end:0
@@ -584,24 +552,30 @@ msgstr "Ligne de feuille d'heures"
#. module: hr
#: view:hr.employee:0
msgid "Personal Information"
-msgstr ""
+msgstr "Informations personnelles"
#. module: hr
#: constraint:ir.model:0
-msgid "The Object name must start with x_ and not contain any special character !"
+msgid ""
+"The Object name must start with x_ and not contain any special character !"
msgstr ""
+"Le nom de l'objet doit commencer avec x_ et ne pas contenir de charactères "
+"spéciaux !"
#. module: hr
#: rml:hr.timesheet.attendance.error:0
-msgid "(*) A positive delay means that the employee worked less than recorded."
-msgstr "(*) Un retard positif signifie que les employés ont travaillé moins que ce qui est enregistré."
+msgid ""
+"(*) A positive delay means that the employee worked less than recorded."
+msgstr ""
+"(*) Un retard positif signifie que les employés ont travaillé moins que ce "
+"qui est enregistré."
#. module: hr
#: model:ir.model,name:hr.model_hr_timesheet_group
#: field:hr.timesheet.group,timesheet_id:0
#: view:hr.timesheet:0
msgid "Working Time"
-msgstr ""
+msgstr "Temps de Travail"
#. module: hr
#: selection:hr.timesheet,dayofweek:0
@@ -681,18 +655,28 @@ msgstr "département"
#. module: hr
#: field:hr.employee,country_id:0
msgid "Nationality"
-msgstr ""
+msgstr "Nationalité"
#. module: hr
#: view:hr.action.reason:0
msgid "Define attendance reason"
msgstr "Définir les motifs de pointage"
+#. module: hr
+#: rml:hr.timesheet.attendance.error:0
+msgid "From:"
+msgstr "De :"
+
#. module: hr
#: field:hr.employee,otherid:0
msgid "Other ID"
msgstr ""
+#. module: hr
+#: view:hr.timesheet.group:0
+msgid "Working Time Category"
+msgstr "Catégorie de Temps de Travail"
+
#. module: hr
#: field:hr.timesheet,name:0
msgid "Name"
@@ -701,14 +685,14 @@ msgstr "Nom"
#. module: hr
#: field:hr.employee,gender:0
msgid "Gender"
-msgstr ""
+msgstr "Genre"
#. module: hr
#: model:ir.actions.act_window,name:hr.open_view_employee_list
#: model:ir.ui.menu,name:hr.menu_open_view_employee_list
#: view:hr.employee:0
msgid "Employees"
-msgstr ""
+msgstr "Employés"
#. module: hr
#: field:hr.department,name:0
@@ -724,7 +708,7 @@ msgstr "Explication de la tâche"
#. module: hr
#: field:hr.employee,birthday:0
msgid "Started on"
-msgstr ""
+msgstr "Débuté en"
#. module: hr
#: wizard_view:hr.timesheet.attendance.report,init:0
@@ -756,5 +740,4 @@ msgstr "Samedi"
#: model:ir.actions.act_window,name:hr.open_view_employee_new
#: model:ir.ui.menu,name:hr.menu_open_view_employee_new
msgid "New Employee"
-msgstr ""
-
+msgstr "Nouvel employé"
diff --git a/addons/hr/process/hr_process.xml b/addons/hr/process/hr_process.xml
new file mode 100644
index 00000000000..bfb0ad21f2a
--- /dev/null
+++ b/addons/hr/process/hr_process.xml
@@ -0,0 +1,84 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/hr/security/ir.model.access.csv b/addons/hr/security/ir.model.access.csv
index 743cbce21c2..d6e8f812590 100644
--- a/addons/hr/security/ir.model.access.csv
+++ b/addons/hr/security/ir.model.access.csv
@@ -1,9 +1,10 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_hr_timesheet_group,hr.timesheet.group,model_hr_timesheet_group,hr.group_hr_user,1,0,0,0
-access_hr_employee_category,hr.employee.category,model_hr_employee_category,hr.group_hr_user,1,0,0,0
-access_hr_employee,hr.employee,model_hr_employee,hr.group_hr_user,1,1,1,1
-access_hr_timesheet,hr.timesheet,model_hr_timesheet,hr.group_hr_user,1,1,1,1
-access_hr_department,hr.department,model_hr_department,hr.group_hr_user,1,0,0,0
-access_hr_timesheet_group_manager,hr.timesheet.group.manager,model_hr_timesheet_group,hr.group_hr_manager,1,1,1,1
-access_hr_employee_category_manager,hr.employee.category.manager,model_hr_employee_category,hr.group_hr_manager,1,1,1,1
-access_hr_department_manager,hr.department.manager,model_hr_department,hr.group_hr_manager,1,1,1,1
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_hr_timesheet_group","hr.timesheet.group","model_hr_timesheet_group","hr.group_hr_user",1,0,0,0
+"access_hr_employee_category","hr.employee.category","model_hr_employee_category","hr.group_hr_user",1,0,0,0
+"access_hr_employee","hr.employee","model_hr_employee","hr.group_hr_user",1,1,1,1
+"access_hr_timesheet_manager","hr.timesheet manager","model_hr_timesheet","hr.group_hr_manager",1,1,1,1
+"access_hr_timesheet","hr.timesheet","model_hr_timesheet","hr.group_hr_user",1,1,1,1
+"access_hr_department","hr.department","model_hr_department","hr.group_hr_user",1,0,0,0
+"access_hr_timesheet_group_manager","hr.timesheet.group.manager","model_hr_timesheet_group","hr.group_hr_manager",1,1,1,1
+"access_hr_employee_category_manager","hr.employee.category.manager","model_hr_employee_category","hr.group_hr_manager",1,1,1,1
+"access_hr_department_manager","hr.department.manager","model_hr_department","hr.group_hr_manager",1,1,1,1
diff --git a/addons/hr_attendance/__terp__.py b/addons/hr_attendance/__terp__.py
index 0dd9eff1013..c6a6162bcf9 100644
--- a/addons/hr_attendance/__terp__.py
+++ b/addons/hr_attendance/__terp__.py
@@ -9,7 +9,8 @@
"update_xml" : [
"hr_attendance_view.xml",
"hr_attendance_wizard.xml",
- "hr_attendance_report.xml"
+ "hr_attendance_report.xml",
+ "security/ir.model.access.csv",
],
"active": False,
"installable": True,
diff --git a/addons/hr_attendance/security/ir.model.access.csv b/addons/hr_attendance/security/ir.model.access.csv
new file mode 100644
index 00000000000..b96c0e6be0d
--- /dev/null
+++ b/addons/hr_attendance/security/ir.model.access.csv
@@ -0,0 +1,3 @@
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_hr_action_reason_employee","hr action reason employee","model_hr_action_reason","hr.group_hr_user",1,1,1,1
+"access_hr_attendance_employee","hr attendance employee","model_hr_attendance","hr.group_hr_user",1,1,1,1
diff --git a/addons/hr_contract/__terp__.py b/addons/hr_contract/__terp__.py
index a03f8140f72..c07e6c55a5a 100644
--- a/addons/hr_contract/__terp__.py
+++ b/addons/hr_contract/__terp__.py
@@ -46,7 +46,7 @@
"demo_xml" : [],
"update_xml" : [
"security/hr_contract_security.xml",
-# "security/ir.model.access.csv",
+ "security/ir.model.access.csv",
"hr_contract_view.xml",
],
"active": False,
diff --git a/addons/hr_contract/i18n/fr_FR.po b/addons/hr_contract/i18n/fr_FR.po
index 01606b1ab15..3d3d3dbcf2a 100644
--- a/addons/hr_contract/i18n/fr_FR.po
+++ b/addons/hr_contract/i18n/fr_FR.po
@@ -4,147 +4,151 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:43+0000"
-"PO-Revision-Date: 2008-09-11 15:41:43+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:25+0000\n"
+"PO-Revision-Date: 2008-10-13 11:14+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-13 11:44+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: hr_contract
#: field:hr.contract,wage:0
msgid "Wage"
-msgstr ""
+msgstr "Salaire"
#. module: hr_contract
#: selection:hr.contract.wage.type,type:0
msgid "Gross"
-msgstr ""
+msgstr "Brut"
#. module: hr_contract
#: constraint:ir.model:0
-msgid "The Object name must start with x_ and not contain any special character !"
+msgid ""
+"The Object name must start with x_ and not contain any special character !"
msgstr ""
+"Le nom de l'objet doit commencer avec x_ et ne pas contenir de charactères "
+"spéciaux !"
#. module: hr_contract
#: view:hr.contract:0
#: view:hr.employee:0
msgid "Generalities"
-msgstr ""
+msgstr "Généralités"
#. module: hr_contract
#: field:hr.employee,children:0
msgid "Number of children"
-msgstr ""
+msgstr "Nombre d'Enfants"
#. module: hr_contract
#: field:hr.contract.wage.type,factor_type:0
msgid "Factor for hour cost"
-msgstr ""
+msgstr "Facteur pour le coût horaire"
#. module: hr_contract
#: view:hr.contract.wage.type:0
msgid "Wage Types"
-msgstr ""
+msgstr "Types de Salaire"
#. module: hr_contract
#: field:hr.employee,soc_security:0
msgid "Social security number"
-msgstr ""
+msgstr "Numéro de Sécurité Sociale"
#. module: hr_contract
#: field:hr.contract,employee_id:0
msgid "Employee"
-msgstr ""
+msgstr "Employé"
#. module: hr_contract
#: selection:hr.contract.wage.type,type:0
msgid "Net"
-msgstr ""
+msgstr "Net"
#. module: hr_contract
#: field:hr.contract.wage.type,type:0
msgid "Type"
-msgstr ""
+msgstr "Type"
#. module: hr_contract
#: field:hr.contract.wage.type.period,factor_days:0
msgid "Hours in the period"
-msgstr ""
+msgstr "# d'Heures dans la période"
#. module: hr_contract
#: field:hr.contract,function:0
msgid "Function"
-msgstr ""
+msgstr "Fonction"
#. module: hr_contract
#: model:ir.actions.act_window,name:hr_contract.action_hr_contract_wage_type
#: model:ir.ui.menu,name:hr_contract.hr_menu_contract_wage_type
msgid "Contract Wage Type"
-msgstr ""
+msgstr "Type de COntrat Salarial"
#. module: hr_contract
#: view:hr.employee:0
msgid "Miscelleanous"
-msgstr ""
+msgstr "Divers"
#. module: hr_contract
#: field:hr.employee,contract_ids:0
#: view:hr.contract:0
#: view:hr.employee:0
msgid "Contracts"
-msgstr ""
+msgstr "Contrats"
#. module: hr_contract
#: model:ir.model,name:hr_contract.model_hr_contract_wage_type
#: field:hr.contract,wage_type_id:0
#: view:hr.contract.wage.type:0
msgid "Wage Type"
-msgstr ""
+msgstr "Type de salaire"
#. module: hr_contract
#: field:hr.contract.wage.type.period,name:0
msgid "Period Name"
-msgstr ""
+msgstr "Nom de la Période"
#. module: hr_contract
#: model:ir.model,name:hr_contract.model_hr_employee_marital_status
msgid "Employee Marital Status"
-msgstr ""
+msgstr "État Matrimonial de l'Employé"
#. module: hr_contract
#: field:hr.employee,medic_exam:0
msgid "Medical examination date"
-msgstr ""
+msgstr "Date de l'Examen Médical"
#. module: hr_contract
#: field:hr.contract.wage.type,name:0
msgid "Wage Type Name"
-msgstr ""
+msgstr "Nom du Type de Salaire"
#. module: hr_contract
#: field:hr.contract,working_hours_per_day:0
msgid "Working hours per day"
-msgstr ""
+msgstr "Heures de Travail par Jour"
#. module: hr_contract
#: view:hr.employee:0
msgid "Salary"
-msgstr ""
+msgstr "Salaire"
#. module: hr_contract
#: field:hr.contract,date_end:0
msgid "End Date"
-msgstr ""
+msgstr "Date de fin"
#. module: hr_contract
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "XML non valide pour l'architecture de la vue!"
#. module: hr_contract
#: field:hr.contract,notes:0
@@ -160,28 +164,28 @@ msgstr "Notes"
#: view:hr.contract:0
#: view:hr.employee:0
msgid "Contract"
-msgstr ""
+msgstr "Contrat"
#. module: hr_contract
#: view:hr.contract.type:0
msgid "Contract Type"
-msgstr ""
+msgstr "Type de Contrat"
#. module: hr_contract
#: model:ir.model,name:hr_contract.model_hr_contract_wage_type_period
#: field:hr.contract.wage.type,period_id:0
msgid "Wage Period"
-msgstr ""
+msgstr "Période Salariale"
#. module: hr_contract
#: field:hr.employee,nationality:0
msgid "Nationality"
-msgstr ""
+msgstr "Nationalité"
#. module: hr_contract
#: view:hr.contract.wage.type:0
msgid "Hourly cost computation"
-msgstr ""
+msgstr "Calcul du côut horaire"
#. module: hr_contract
#: field:hr.employee,audiens_num:0
@@ -191,12 +195,12 @@ msgstr ""
#. module: hr_contract
#: view:hr.contract:0
msgid "Remuneration"
-msgstr ""
+msgstr "Rémuneration"
#. module: hr_contract
#: field:hr.contract,name:0
msgid "Contract Name"
-msgstr ""
+msgstr "Nom du Contrat"
#. module: hr_contract
#: model:ir.actions.act_window,name:hr_contract.action_hr_marital_status
@@ -205,49 +209,52 @@ msgstr ""
#: model:ir.ui.menu,name:hr_contract.hr_menu_marital_status
#: view:hr.employee.marital.status:0
msgid "Marital Status"
-msgstr ""
+msgstr "État matrimonial"
#. module: hr_contract
#: field:hr.employee,place_of_birth:0
msgid "Place of Birth"
-msgstr ""
+msgstr "Lieu de Naissance"
#. module: hr_contract
#: field:hr.employee,manager:0
msgid "Manager"
-msgstr ""
+msgstr "Gestionnaire"
#. module: hr_contract
#: model:ir.actions.act_window,name:hr_contract.action_hr_contract_wage_type_period
#: model:ir.ui.menu,name:hr_contract.hr_menu_contract_wage_type_period
#: view:hr.contract.wage.type.period:0
msgid "Wage period"
-msgstr ""
+msgstr "Période Salariale"
#. module: hr_contract
#: help:hr.contract.wage.type,factor_type:0
#: help:hr.contract.wage.type.period,factor_days:0
-msgid "This field is used by the timesheet system to compute the price of an hour of work wased on the contract of the employee"
+msgid ""
+"This field is used by the timesheet system to compute the price of an hour "
+"of work wased on the contract of the employee"
msgstr ""
+"Ce champ est utilisé par le système de feuille de temps pour calculer le "
+"prix d'une heure de travail basé sur le contrat de l'employé"
#. module: hr_contract
#: field:hr.contract,date_start:0
msgid "Start Date"
-msgstr ""
+msgstr "Date de début"
#. module: hr_contract
#: view:hr.contract:0
#: view:hr.employee:0
msgid "Contract Duration"
-msgstr ""
+msgstr "Durée du Contrat"
#. module: hr_contract
#: field:hr.employee.marital.status,description:0
msgid "Status Description"
-msgstr ""
+msgstr "Description du Statut"
#. module: hr_contract
#: field:hr.employee,birth_date:0
msgid "Birth Date"
-msgstr ""
-
+msgstr "Date de naissance"
diff --git a/addons/hr_contract/security/ir.model.access.csv b/addons/hr_contract/security/ir.model.access.csv
index a9a7e3d5219..053b5c42ecd 100644
--- a/addons/hr_contract/security/ir.model.access.csv
+++ b/addons/hr_contract/security/ir.model.access.csv
@@ -1,5 +1,11 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_hr_employee_marital_status,hr.employee.marital.status,model_hr_employee_marital_status,hr.group_hr_user,1,1,1,1
-access_hr_contract_wage_type_period,hr.contract.wage.type.period,model_hr_contract_wage_type_period,hr.group_hr_manager,1,1,1,1
-access_hr_contract_wage_type,hr.contract.wage.type,model_hr_contract_wage_type,hr.group_hr_manager,1,1,1,1
-access_hr_contract,hr.contract,model_hr_contract,group_hr_contract,1,1,1,1
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_hr_employee_marital_status","hr.employee.marital.status","model_hr_employee_marital_status","hr.group_hr_user",1,1,1,1
+"access_hr_contract_wage_type_period_user","hr.contract.wage.type.period user","model_hr_contract_wage_type_period","hr.group_hr_user",1,0,0,0
+"access_hr_contract_wage_type_period","hr.contract.wage.type.period","model_hr_contract_wage_type_period","hr.group_hr_manager",1,1,1,1
+"access_hr_contract_wage_type_user","hr.contract.wage.type user","model_hr_contract_wage_type","hr.group_hr_user",1,0,0,0
+"access_hr_contract_wage_type","hr.contract.wage.type","model_hr_contract_wage_type","hr.group_hr_manager",1,1,1,1
+"access_hr_contract_wage_type_contract","hr.contract.wage.type contract","model_hr_contract_wage_type","group_hr_contract",1,1,1,1
+"access_hr_contract_wage_type_period_contract","hr.contract.wage.type.period contract","model_hr_contract_wage_type_period","group_hr_contract",1,1,1,1
+"access_hr_contract_user","hr.contract user","model_hr_contract","hr.group_hr_user",1,0,0,0
+"access_hr_contract","hr.contract","model_hr_contract","group_hr_contract",1,1,1,1
+"access_hr_employee_contract","hr.employee contract","hr.model_hr_employee","group_hr_contract",1,0,0,0
diff --git a/addons/hr_expense/i18n/fr_FR.po b/addons/hr_expense/i18n/fr_FR.po
index 6529569c4ce..bf065f55e63 100644
--- a/addons/hr_expense/i18n/fr_FR.po
+++ b/addons/hr_expense/i18n/fr_FR.po
@@ -4,375 +4,366 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:43+0000"
-"PO-Revision-Date: 2008-09-11 15:41:43+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:25+0000\n"
+"PO-Revision-Date: 2008-10-13 11:30+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-13 11:52+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: hr_expense
#: view:hr.expense.expense:0
msgid "Accounting data"
-msgstr ""
+msgstr "Données Comptables"
#. module: hr_expense
#: rml:hr.expense:0
msgid "Employee:"
-msgstr ""
+msgstr "Employé:"
#. module: hr_expense
#: constraint:ir.model:0
-msgid "The Object name must start with x_ and not contain any special character !"
+msgid ""
+"The Object name must start with x_ and not contain any special character !"
msgstr ""
+"Le nom de l'objet doit commencer avec x_ et ne pas contenir de charactères "
+"spéciaux !"
#. module: hr_expense
#: model:ir.model,name:hr_expense.model_hr_expense_line
msgid "Expense Line"
-msgstr ""
+msgstr "Ligne de dépense"
#. module: hr_expense
#: view:hr.expense.expense:0
msgid "Confirm"
-msgstr ""
+msgstr "Confirmer"
#. module: hr_expense
#: view:hr.expense.expense:0
msgid "Other Info"
-msgstr ""
+msgstr "Autre information"
#. module: hr_expense
#: rml:hr.expense:0
msgid "Date:"
-msgstr ""
+msgstr "Date :"
#. module: hr_expense
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "XML non valide pour l'architecture de la vue!"
#. module: hr_expense
#: model:ir.actions.act_window,name:hr_expense.expense_all_draft
#: model:ir.ui.menu,name:hr_expense.menu_expense_all_draft
msgid "Draft expenses"
-msgstr ""
+msgstr "Dépenses Brouillon"
#. module: hr_expense
#: field:hr.expense.expense,note:0
msgid "Note"
-msgstr ""
+msgstr "Note"
#. module: hr_expense
#: field:hr.expense.expense,state:0
msgid "State"
-msgstr ""
+msgstr "État"
#. module: hr_expense
#: field:hr.expense.line,unit_amount:0
msgid "Unit Price"
-msgstr ""
+msgstr "Prix unitaire"
#. module: hr_expense
#: model:ir.actions.act_window,name:hr_expense.expense_all_confirm
#: model:ir.ui.menu,name:hr_expense.menu_expense_all_confirm
msgid "Expenses waiting validation"
-msgstr ""
+msgstr "Dépenses en attende de validation"
#. module: hr_expense
#: field:hr.expense.expense,date_valid:0
msgid "Date Valided"
-msgstr ""
+msgstr "Date de la Validation"
#. module: hr_expense
#: field:hr.expense.expense,employee_id:0
msgid "Employee"
-msgstr ""
+msgstr "Employé"
#. module: hr_expense
#: field:hr.expense.expense,date_confirm:0
msgid "Date Confirmed"
-msgstr ""
+msgstr "Date de la Confirmation"
#. module: hr_expense
#: field:hr.expense.line,analytic_account:0
msgid "Analytic account"
-msgstr ""
+msgstr "Compte analytique"
#. module: hr_expense
#: model:ir.ui.menu,name:hr_expense.next_id_49
#: view:hr.expense.expense:0
msgid "Expenses"
-msgstr ""
+msgstr "Dépenses"
#. module: hr_expense
#: selection:hr.expense.expense,state:0
msgid "Waiting confirmation"
-msgstr ""
+msgstr "En Attente de Confirmation"
#. module: hr_expense
#: model:ir.actions.act_window,name:hr_expense.expense_all_valid
#: model:ir.ui.menu,name:hr_expense.menu_expense_all_valid
msgid "Expenses waiting invoice"
-msgstr ""
+msgstr "Dépenses attendant la facture"
#. module: hr_expense
#: field:hr.expense.line,product_id:0
msgid "Product"
-msgstr ""
+msgstr "Produit"
#. module: hr_expense
#: view:hr.expense.expense:0
msgid "Validation"
-msgstr ""
-
-#. module: hr_expense
-#, python-format
-#: code:addons/hr_expense/hr_expense.py:0
-msgid "Error !"
-msgstr ""
+msgstr "Validation"
#. module: hr_expense
#: field:hr.expense.line,description:0
msgid "Description"
-msgstr ""
+msgstr "Description"
#. module: hr_expense
#: model:ir.actions.act_window,name:hr_expense.expense_my
#: model:ir.ui.menu,name:hr_expense.menu_expense_my
msgid "My Expenses"
-msgstr ""
+msgstr "Mes Dépenses"
#. module: hr_expense
#: selection:hr.expense.expense,state:0
msgid "Canceled"
-msgstr ""
+msgstr "Annulé"
#. module: hr_expense
#: field:hr.expense.expense,name:0
#: view:hr.expense.expense:0
msgid "Expense Sheet"
-msgstr ""
+msgstr "Feuille de Dépense"
#. module: hr_expense
#: rml:hr.expense:0
#: field:hr.expense.line,unit_quantity:0
msgid "Quantities"
-msgstr ""
+msgstr "Quantités"
#. module: hr_expense
#: field:hr.expense.expense,amount:0
msgid "Total Amount"
-msgstr ""
+msgstr "Montant Total"
#. module: hr_expense
#: field:hr.expense.expense,id:0
msgid "Sheet ID"
-msgstr ""
+msgstr "ID de la feuille"
#. module: hr_expense
#: view:hr.expense.expense:0
msgid "Set to Draft"
-msgstr ""
+msgstr "Mettre au brouillon"
#. module: hr_expense
#: field:hr.expense.expense,journal_id:0
msgid "Force Journal"
-msgstr ""
+msgstr "Forcer le Journal"
#. module: hr_expense
#: field:hr.expense.expense,user_id:0
msgid "User"
-msgstr ""
+msgstr "Utilisateur"
#. module: hr_expense
#: model:ir.actions.act_window,name:hr_expense.expense_my_confirm
#: model:ir.ui.menu,name:hr_expense.menu_expense_my_confirm
msgid "My expenses waiting validation"
-msgstr ""
+msgstr "Mes Dépenses en attende de validation"
#. module: hr_expense
#: rml:hr.expense:0
#: field:hr.expense.expense,date:0
#: field:hr.expense.line,date_value:0
msgid "Date"
-msgstr ""
+msgstr "Date"
#. module: hr_expense
#: selection:hr.expense.expense,state:0
msgid "Accepted"
-msgstr ""
+msgstr "Accepté"
#. module: hr_expense
#: model:ir.ui.menu,name:hr_expense.menu_expense_all
msgid "All expenses"
-msgstr ""
+msgstr "Toutes les Dépenses"
#. module: hr_expense
#: rml:hr.expense:0
msgid "Reference:"
-msgstr ""
+msgstr "Réference :"
#. module: hr_expense
#: rml:hr.expense:0
msgid "(Date and signature)"
-msgstr ""
+msgstr "(Date et Signature)"
#. module: hr_expense
#: view:hr.expense.expense:0
msgid "Refuse"
-msgstr ""
+msgstr "Refuser"
#. module: hr_expense
#: rml:hr.expense:0
msgid "Name"
-msgstr ""
+msgstr "Nom"
#. module: hr_expense
#: rml:hr.expense:0
msgid "Total:"
-msgstr ""
+msgstr "Total:"
#. module: hr_expense
#: field:hr.expense.line,name:0
msgid "Short Description"
-msgstr ""
+msgstr "Brève Description"
#. module: hr_expense
#: rml:hr.expense:0
msgid "HR Expenses"
-msgstr ""
-
-#. module: hr_expense
-#, python-format
-#: code:addons/hr_expense/hr_expense.py:0
-msgid "The employee must have a contact address"
-msgstr ""
+msgstr "Dépense HR"
#. module: hr_expense
#: view:hr.expense.expense:0
msgid "Notes"
-msgstr ""
+msgstr "Notes"
#. module: hr_expense
#: selection:hr.expense.expense,state:0
msgid "Reimbursed"
-msgstr ""
+msgstr "Remboursée"
#. module: hr_expense
#: field:hr.expense.expense,account_move_id:0
msgid "Account Move"
-msgstr ""
+msgstr "Mouvement de Compte"
#. module: hr_expense
#: model:ir.model,name:hr_expense.model_hr_expense_expense
#: field:hr.expense.line,expense_id:0
msgid "Expense"
-msgstr ""
+msgstr "Dépense"
#. module: hr_expense
#: field:hr.expense.expense,line_ids:0
#: view:hr.expense.expense:0
#: view:hr.expense.line:0
msgid "Expense Lines"
-msgstr ""
+msgstr "Ligne de Dépense"
#. module: hr_expense
#: rml:hr.expense:0
msgid "This document must be dated and signed for reimbursment"
-msgstr ""
+msgstr "Ce document doit être daté et signé pour remboursement"
#. module: hr_expense
#: rml:hr.expense:0
#: field:hr.expense.expense,ref:0
#: field:hr.expense.line,ref:0
msgid "Reference"
-msgstr ""
+msgstr "Référence"
#. module: hr_expense
#: field:hr.expense.line,sequence:0
msgid "Sequence"
-msgstr ""
+msgstr "Séquence"
#. module: hr_expense
#: view:hr.expense.expense:0
msgid "Expenses Sheet"
-msgstr ""
+msgstr "Feuille de Dépense"
#. module: hr_expense
#: rml:hr.expense:0
msgid "Certified honest and conform,"
-msgstr ""
+msgstr "Certifié honête et conforme,"
#. module: hr_expense
#: model:ir.actions.act_window,name:hr_expense.expense_all_invoiced
#: model:ir.ui.menu,name:hr_expense.menu_expense_all_invoiced
msgid "Expenses waiting payment"
-msgstr ""
+msgstr "Dépenses en attente d'un paiement"
#. module: hr_expense
#: view:hr.expense.expense:0
msgid "Accept"
-msgstr ""
+msgstr "Accepter"
#. module: hr_expense
#: model:ir.actions.act_window,name:hr_expense.expense_my_draft
#: model:ir.ui.menu,name:hr_expense.menu_expense_my_draft
msgid "My Draft expenses"
-msgstr ""
+msgstr "Mes dépenses Brouillon"
#. module: hr_expense
#: field:hr.expense.expense,currency_id:0
msgid "Currency"
-msgstr ""
+msgstr "Devise"
#. module: hr_expense
#: rml:hr.expense:0
msgid "Unit price"
-msgstr ""
+msgstr "Prix Unitaire"
#. module: hr_expense
#: field:hr.expense.line,uom_id:0
msgid "UoM"
-msgstr ""
+msgstr "UdM"
#. module: hr_expense
#: field:hr.expense.expense,invoice_id:0
#: view:hr.expense.expense:0
msgid "Invoice"
-msgstr ""
+msgstr "Facture"
#. module: hr_expense
#: field:hr.expense.expense,user_valid:0
msgid "Validation User"
-msgstr ""
+msgstr "Utilisateur pour la Validation"
#. module: hr_expense
#: view:hr.expense.expense:0
msgid "Cancel"
-msgstr ""
+msgstr "Annuler"
#. module: hr_expense
#: selection:hr.expense.expense,state:0
msgid "Draft"
-msgstr ""
+msgstr "Brouillon"
#. module: hr_expense
#: rml:hr.expense:0
#: field:hr.expense.line,total_amount:0
msgid "Total"
-msgstr ""
+msgstr "Total"
#. module: hr_expense
#: model:ir.actions.report.xml,name:hr_expense.hr_expenses
msgid "Print HR expenses"
-msgstr ""
+msgstr "Imprimer les Dépenses HR"
#. module: hr_expense
#: selection:hr.expense.expense,state:0
msgid "Invoiced"
-msgstr ""
-
+msgstr "Facturée"
diff --git a/addons/hr_expense/report/expense.rml b/addons/hr_expense/report/expense.rml
index 7ab564bf011..82321f43dec 100644
--- a/addons/hr_expense/report/expense.rml
+++ b/addons/hr_expense/report/expense.rml
@@ -59,6 +59,14 @@
+
+
+
+
+
+
+
+
@@ -104,6 +112,7 @@
+
@@ -201,6 +210,46 @@
[[ company.currency_id.name ]]
|
+
+ |
+
+
+
+ |
+
+ [[ format(line.analytic_account and line.analytic_account.complete_name or removeParentNode('tr')) ]]
+ |
+
+
+
+
+ |
+
+
+
+
+ |
+
+
+
+
+ |
+
+
+
+
+ |
+
+
+
+
+ |
+
+
+
+
+ |
+
@@ -248,4 +297,4 @@
This document must be dated and signed for reimbursment
-
+
\ No newline at end of file
diff --git a/addons/hr_expense/security/ir.model.access.csv b/addons/hr_expense/security/ir.model.access.csv
index ea8c924ddb6..aa00dab4fa1 100644
--- a/addons/hr_expense/security/ir.model.access.csv
+++ b/addons/hr_expense/security/ir.model.access.csv
@@ -1,3 +1,3 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_hr_expense_expense,hr.expense.expense,model_hr_expense_expense,base.group_user,1,1,1,1
-access_hr_expense_line,hr.expense.line,model_hr_expense_line,base.group_user,1,1,1,1
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_hr_expense_expense","hr.expense.expense","model_hr_expense_expense","hr.group_hr_user",1,1,1,1
+"access_hr_expense_line","hr.expense.line","model_hr_expense_line","hr.group_hr_user",1,1,1,1
diff --git a/addons/hr_holidays/__terp__.py b/addons/hr_holidays/__terp__.py
index 6f3188d6acf..982b5624c19 100644
--- a/addons/hr_holidays/__terp__.py
+++ b/addons/hr_holidays/__terp__.py
@@ -32,7 +32,7 @@
"hr_view.xml",
"hr_holidays_report.xml",
"hr_holidays_wizard.xml",
-# "process/hr_holidays_process.xml"
+ "process/hr_holidays_process.xml"
],
# "demo_xml" : ["hr_bel_holidays_2008.xml",],
"demo_xml" : [],
diff --git a/addons/hr_holidays/hr_holidays_report.xml b/addons/hr_holidays/hr_holidays_report.xml
index 85c4f69649e..2d89b467c26 100644
--- a/addons/hr_holidays/hr_holidays_report.xml
+++ b/addons/hr_holidays/hr_holidays_report.xml
@@ -9,17 +9,6 @@
auto="False"
menu="False"/>
-
-
+
diff --git a/addons/hr_holidays/hr_holidays_wizard.xml b/addons/hr_holidays/hr_holidays_wizard.xml
index 325768afbef..475da254cdf 100644
--- a/addons/hr_holidays/hr_holidays_wizard.xml
+++ b/addons/hr_holidays/hr_holidays_wizard.xml
@@ -10,6 +10,11 @@
type="wizard"
id="menu_holidays_summary"/>
+
+
+
diff --git a/addons/hr_holidays/i18n/fr_FR.po b/addons/hr_holidays/i18n/fr_FR.po
index 9811de832e5..d0e47845b9e 100644
--- a/addons/hr_holidays/i18n/fr_FR.po
+++ b/addons/hr_holidays/i18n/fr_FR.po
@@ -4,16 +4,17 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:43+0000"
-"PO-Revision-Date: 2008-09-11 15:41:43+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:30+0000\n"
+"PO-Revision-Date: 2008-10-13 11:55+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-13 12:04+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: hr_holidays
#: view:hr.holidays.status:0
@@ -23,18 +24,18 @@ msgstr "Définir les types de congés"
#. module: hr_holidays
#: wizard_view:hr.holidays.summary,notify:0
msgid "You have to select atleast 1 Department. Try again."
-msgstr ""
+msgstr "Vous devez sélectionner au moins 1 département. Essayez à nouveau."
#. module: hr_holidays
#: selection:hr.holidays,state:0
msgid "Confirmed"
-msgstr ""
+msgstr "Confirmé"
#. module: hr_holidays
#: wizard_field:hr.holidays.summary,init,date_from:0
#: wizard_field:hr.holidays.summary.employee,init,date_from:0
msgid "From"
-msgstr ""
+msgstr "De"
#. module: hr_holidays
#: view:hr.holidays:0
@@ -44,28 +45,28 @@ msgstr "Congés"
#. module: hr_holidays
#: view:hr.holidays:0
msgid "Confirm"
-msgstr ""
+msgstr "Confirmer"
#. module: hr_holidays
#: wizard_view:hr.holidays.summary,notify:0
#: wizard_view:hr.holidays.summary.employee,notify:0
msgid "Notification"
-msgstr ""
+msgstr "Notification"
#. module: hr_holidays
#: field:hr.holidays.status,section_id:0
msgid "Section"
-msgstr ""
+msgstr "Section"
#. module: hr_holidays
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "XML non valide pour l'architecture de la vue!"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Light Coral"
-msgstr ""
+msgstr "Corail clair"
#. module: hr_holidays
#: field:hr.holidays,employee_id:0
@@ -77,124 +78,127 @@ msgstr "Employé"
#: model:ir.actions.wizard,name:hr_holidays.holidays_summary
#: model:ir.ui.menu,name:hr_holidays.menu_holidays_summary
msgid "Print Summary of Holidays"
-msgstr ""
+msgstr "Imprimer le résumé des Vacances"
#. module: hr_holidays
#: model:ir.actions.act_window,name:hr_holidays.action_my_holiday_available
#: model:ir.ui.menu,name:hr_holidays.menu_action_my_holiday_available
msgid "My Available Holidays"
-msgstr ""
+msgstr "Mes Vacances Disponibles"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Black"
-msgstr ""
+msgstr "Noir"
#. module: hr_holidays
#: model:ir.ui.menu,name:hr_holidays.menu_action_my_holiday_refuse
msgid "My Refused Holidays Requests"
-msgstr ""
+msgstr "Mes Demandes de Vacances Refusées"
#. module: hr_holidays
#: model:ir.ui.menu,name:hr_holidays.menu_action_my_holiday_waiting
msgid "My Awaiting Confirmation Holidays Requests"
-msgstr ""
+msgstr "Mes Demandes de Vacances en attende de Confirmation"
#. module: hr_holidays
#: wizard_button:hr.holidays.summary,init,checkdept:0
#: wizard_button:hr.holidays.summary.employee,init,checkemp:0
msgid "Print"
-msgstr ""
+msgstr "Imprimer"
#. module: hr_holidays
#: constraint:ir.model:0
-msgid "The Object name must start with x_ and not contain any special character !"
+msgid ""
+"The Object name must start with x_ and not contain any special character !"
msgstr ""
+"Le nom de l'objet doit commencer avec x_ et ne pas contenir de charactères "
+"spéciaux !"
#. module: hr_holidays
#: model:ir.actions.act_window,name:hr_holidays.action_holiday_waiting
msgid "Requests Awaiting for Validation"
-msgstr ""
+msgstr "Demandes en attende de Validation"
#. module: hr_holidays
#: selection:hr.holidays,state:0
msgid "Refused"
-msgstr ""
+msgstr "Refusée"
#. module: hr_holidays
#: field:hr.holidays.per.user,max_leaves:0
msgid "Maximum Leaves Allowed"
-msgstr ""
+msgstr "Nombre Maximum de Congés Permis"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Light Blue"
-msgstr ""
+msgstr "Bleu clair"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Red"
-msgstr ""
+msgstr "Rouge"
#. module: hr_holidays
#: wizard_field:hr.holidays.summary,init,depts:0
msgid "Department(s)"
-msgstr ""
+msgstr "Département(s)"
#. module: hr_holidays
#: field:hr.holidays,state:0
msgid "Status"
-msgstr ""
+msgstr "État"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Brown"
-msgstr ""
+msgstr "Brun"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Light Salmon"
-msgstr ""
+msgstr "Saumon clair"
#. module: hr_holidays
#: view:hr.holidays.per.user:0
msgid "Holidays Allowed"
-msgstr ""
+msgstr "Vacances Permises"
#. module: hr_holidays
-#: xsl:holidays.summary:0
+#: xsl:hr.holidays.holidays_summary:0
msgid "of the"
-msgstr ""
+msgstr "du"
#. module: hr_holidays
-#: xsl:holidays.summary:0
+#: xsl:hr.holidays.holidays_summary:0
msgid "Off-Days' Summary"
-msgstr ""
+msgstr "Résumé des Congés"
#. module: hr_holidays
#: field:hr.holidays.per.user,leaves_taken:0
msgid "Leaves Already Taken"
-msgstr ""
+msgstr "Congés déjà pris"
#. module: hr_holidays
#: model:ir.actions.act_window,name:hr_holidays.action_my_holiday
msgid "My Holidays Request"
-msgstr ""
+msgstr "Mes Demandes de Congés"
#. module: hr_holidays
#: field:hr.holidays.status,color_name:0
msgid "Color of the status"
-msgstr ""
+msgstr "Couleur du Statut"
#. module: hr_holidays
#: view:hr.holidays:0
msgid "Number of Days"
-msgstr ""
+msgstr "Nombre de jour"
#. module: hr_holidays
#: view:hr.holidays:0
msgid "Set to Draft"
-msgstr ""
+msgstr "Mettre au brouillon"
#. module: hr_holidays
#: model:ir.model,name:hr_holidays.model_hr_holidays
@@ -202,75 +206,75 @@ msgid "Holidays"
msgstr "Vacances"
#. module: hr_holidays
-#: xsl:holidays.summary:0
+#: xsl:hr.holidays.holidays_summary:0
msgid "to"
-msgstr ""
+msgstr "Ã "
#. module: hr_holidays
-#: xsl:holidays.summary:0
+#: xsl:hr.holidays.holidays_summary:0
msgid "holidays."
-msgstr ""
+msgstr "Vacances"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Light Cyan"
-msgstr ""
+msgstr "Cyan clair"
#. module: hr_holidays
#: selection:hr.holidays,state:0
msgid "draft"
-msgstr ""
+msgstr "brouillon"
#. module: hr_holidays
#: field:hr.holidays.per.user,user_id:0
msgid "User"
-msgstr ""
+msgstr "Utilisateur"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Light Green"
-msgstr ""
+msgstr "Vert clair"
#. module: hr_holidays
#: wizard_field:hr.holidays.summary,init,holiday_type:0
#: wizard_field:hr.holidays.summary.employee,init,holiday_type:0
msgid "Select Holiday Type"
-msgstr ""
+msgstr "Sélectionnez le Type de Vacances"
#. module: hr_holidays
#: selection:hr.holidays,state:0
#: view:hr.holidays:0
msgid "Validate"
-msgstr ""
+msgstr "Valider"
#. module: hr_holidays
#: model:ir.actions.act_window,name:hr_holidays.open_view_holiday_status
#: field:hr.holidays.status,name:0
#: model:ir.ui.menu,name:hr_holidays.menu_open_view_holiday_status
msgid "Holiday Status"
-msgstr ""
+msgstr "Statut des Vacances"
#. module: hr_holidays
#: field:hr.holidays,notes:0
#: field:hr.holidays.per.user,notes:0
msgid "Notes"
-msgstr ""
+msgstr "Notes"
#. module: hr_holidays
#: wizard_view:hr.holidays.summary,init:0
#: wizard_view:hr.holidays.summary.employee,init:0
msgid "Report Options"
-msgstr ""
+msgstr "Options du Rapport"
#. module: hr_holidays
#: field:hr.holidays,case_id:0
msgid "Case"
-msgstr ""
+msgstr "Cas"
#. module: hr_holidays
#: view:hr.holidays:0
msgid "Refuse"
-msgstr ""
+msgstr "Refuser"
#. module: hr_holidays
#: field:hr.holidays,user_id:0
@@ -281,27 +285,27 @@ msgstr ""
#: wizard_button:hr.holidays.summary,notify,end:0
#: wizard_button:hr.holidays.summary.employee,notify,end:0
msgid "Ok"
-msgstr ""
+msgstr "Ok"
#. module: hr_holidays
#: model:ir.ui.menu,name:hr_holidays.menu_action_my_holiday_draft
msgid "My Draft Holidays Requests"
-msgstr ""
+msgstr "Mes Demandes de Vacances Brouillon"
#. module: hr_holidays
#: model:ir.ui.menu,name:hr_holidays.menu_action_my_holiday
msgid "My Holidays Requests"
-msgstr ""
+msgstr "Mes Demandes de Vacances"
#. module: hr_holidays
#: model:ir.actions.act_window,name:hr_holidays.action_my_holiday_waiting
msgid "My Holidays Request Waiting confirmation"
-msgstr ""
+msgstr "Mes Demandes de Vacances en attente de Confirmation"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Violet"
-msgstr ""
+msgstr "Violet"
#. module: hr_holidays
#: field:hr.holidays,holiday_status:0
@@ -312,49 +316,49 @@ msgstr "Type de congés"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Ivory"
-msgstr ""
+msgstr "Ivoire"
#. module: hr_holidays
#: field:hr.holidays,manager_id:0
msgid "Holiday manager"
-msgstr ""
+msgstr "Gestionnaire de Vacances"
#. module: hr_holidays
-#: xsl:holidays.summary:0
+#: xsl:hr.holidays.holidays_summary:0
msgid "Analyze from"
-msgstr ""
+msgstr "Analyser de"
#. module: hr_holidays
#: model:ir.actions.report.xml,name:hr_holidays.report_holidays_summary
msgid "Summary Of Holidays"
-msgstr ""
+msgstr "Résumé des Vacances"
#. module: hr_holidays
#: wizard_field:hr.holidays.summary.employee,init,emp:0
msgid "Employee(s)"
-msgstr ""
+msgstr "Employés"
#. module: hr_holidays
#: field:hr.holidays,number_of_days:0
msgid "Number of Days in this Holiday Request"
-msgstr ""
+msgstr "Nombre de Jours dans cette Demande de Congé"
#. module: hr_holidays
#: model:ir.actions.act_window,name:hr_holidays.action_holidays_per_user
#: model:ir.ui.menu,name:hr_holidays.menu_open_holidays_per_user
#: view:hr.holidays.per.user:0
msgid "Holidays Per Employee"
-msgstr ""
+msgstr "Congés par Employé"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Wheat"
-msgstr ""
+msgstr "Blé"
#. module: hr_holidays
#: model:ir.actions.act_window,name:hr_holidays.action_my_holiday_draft
msgid "My Holidays Request Draft"
-msgstr ""
+msgstr "Mes Demandes de Vacances Brouillon"
#. module: hr_holidays
#: view:hr.holidays.status:0
@@ -364,7 +368,7 @@ msgstr "Types de congés"
#. module: hr_holidays
#: model:ir.actions.act_window,name:hr_holidays.action_my_holiday_validate
msgid "My Holidays Request Validated"
-msgstr ""
+msgstr "Mes Demandes de Vacances Validée"
#. module: hr_holidays
#: field:hr.holidays,name:0
@@ -374,27 +378,27 @@ msgstr "Description"
#. module: hr_holidays
#: model:ir.ui.menu,name:hr_holidays.menu_open_ask_holidays
msgid "Holidays Request"
-msgstr ""
+msgstr "Demandes de Vacances"
#. module: hr_holidays
#: wizard_view:hr.holidays.summary.employee,notify:0
msgid "You have to select at least 1 Employee. Try again."
-msgstr ""
+msgstr "Vous devez sélectionner au moins 1 employé. Veuillez réessayez."
#. module: hr_holidays
#: model:ir.ui.menu,name:hr_holidays.menu_action_holiday_waiting
msgid "Holidays Requests Awaiting for Validation"
-msgstr ""
+msgstr "Demandes de Vacances en attente de Validation"
#. module: hr_holidays
#: model:ir.ui.menu,name:hr_holidays.menu_action_my_holiday_validate
msgid "My Validated Holidays Requests"
-msgstr ""
+msgstr "Mes Demandes de Vacances Validée"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Light Yellow"
-msgstr ""
+msgstr "Jaune clair"
#. module: hr_holidays
#: model:ir.model,name:hr_holidays.model_hr_holidays_status
@@ -404,7 +408,7 @@ msgstr "Statut des vacances"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Light Pink"
-msgstr ""
+msgstr "Rose clair"
#. module: hr_holidays
#: field:hr.holidays,date_to:0
@@ -414,7 +418,7 @@ msgstr "Fin du congé"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Lavender"
-msgstr ""
+msgstr "Lavande"
#. module: hr_holidays
#: field:hr.holidays,date_from:0
@@ -424,12 +428,12 @@ msgstr "Début du congé"
#. module: hr_holidays
#: model:ir.ui.menu,name:hr_holidays.menu_action_all_holiday
msgid "All Holidays Requests"
-msgstr ""
+msgstr "Toutes les Demandes de Vacances"
#. module: hr_holidays
#: model:ir.actions.wizard,name:hr_holidays.wizard_holidays_summary
msgid "Print Summary of Employee's Holidays"
-msgstr ""
+msgstr "Imprimer un Résumé des Vacances de l'employé"
#. module: hr_holidays
#: wizard_button:hr.holidays.summary,init,end:0
@@ -437,20 +441,19 @@ msgstr ""
#: selection:hr.holidays,state:0
#: view:hr.holidays:0
msgid "Cancel"
-msgstr ""
+msgstr "Annuler"
#. module: hr_holidays
#: selection:hr.holidays.status,color_name:0
msgid "Magenta"
-msgstr ""
+msgstr "Magenta"
#. module: hr_holidays
#: model:ir.actions.act_window,name:hr_holidays.action_my_holiday_refuse
msgid "My Holidays Request Refused"
-msgstr ""
+msgstr "Mes Demandes de Vacances Refusée"
#. module: hr_holidays
#: model:ir.model,name:hr_holidays.model_hr_holidays_per_user
msgid "Holidays Per User"
-msgstr ""
-
+msgstr "Vacnaces par Utilisateur"
diff --git a/addons/hr_holidays/process/hr_holidays_process.xml b/addons/hr_holidays/process/hr_holidays_process.xml
new file mode 100644
index 00000000000..4cbddc9c423
--- /dev/null
+++ b/addons/hr_holidays/process/hr_holidays_process.xml
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/hr_holidays/security/ir.model.access.csv b/addons/hr_holidays/security/ir.model.access.csv
index 69619dde43d..b095b8bf50d 100644
--- a/addons/hr_holidays/security/ir.model.access.csv
+++ b/addons/hr_holidays/security/ir.model.access.csv
@@ -1,2 +1,4 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_hr_holidays_per_user,hr.holidays.per.user,model_hr_holidays_per_user,base.group_user,1,1,1,1
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_hr_holidays_per_user","hr.holidays.per.user","model_hr_holidays_per_user","hr.group_hr_user",1,1,1,1
+"access_hr_holydays_status_user","hr.holidays.status user","model_hr_holidays_status","hr.group_hr_user",1,1,1,1
+"access_hr_holidays_user","hr holidays user","model_hr_holidays","hr.group_hr_user",1,1,1,1
diff --git a/addons/hr_timesheet/i18n/fr_FR.po b/addons/hr_timesheet/i18n/fr_FR.po
index bf3a595b844..fda6d1ca2da 100644
--- a/addons/hr_timesheet/i18n/fr_FR.po
+++ b/addons/hr_timesheet/i18n/fr_FR.po
@@ -4,16 +4,17 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:43+0000"
-"PO-Revision-Date: 2008-09-11 15:41:43+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:28+0000\n"
+"PO-Revision-Date: 2008-10-13 15:49+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-14 11:51+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: hr_timesheet
#: wizard_view:hr.analytical.timesheet,init:0
@@ -23,15 +24,18 @@ msgstr "Choisissez le mois"
#. module: hr_timesheet
#: constraint:ir.model:0
-msgid "The Object name must start with x_ and not contain any special character !"
+msgid ""
+"The Object name must start with x_ and not contain any special character !"
msgstr ""
+"Le nom de l'objet doit commencer avec x_ et ne pas contenir de charactères "
+"spéciaux !"
#. module: hr_timesheet
#: model:ir.actions.report.xml,name:hr_timesheet.report_user_timesheet
#: model:ir.actions.wizard,name:hr_timesheet.wizard_hr_timesheet
#: model:ir.ui.menu,name:hr_timesheet.menu_wizard_hr_timesheet
msgid "Employee timesheet"
-msgstr "Feuille de temps de l'employé"
+msgstr "Feuille de présence de l'employé"
#. module: hr_timesheet
#: model:ir.actions.wizard,name:hr_timesheet.si_so
@@ -49,12 +53,6 @@ msgstr "Somme"
msgid "Sign in / Sign out"
msgstr "Pointer l'entrée / Pointer la sortie"
-#. module: hr_timesheet
-#, python-format
-#: code:addons/hr_timesheet/wizard/sign_in_out.py:0
-msgid "No employee defined for your user !"
-msgstr ""
-
#. module: hr_timesheet
#: wizard_button:hr.analytical.timesheet,init,report:0
#: wizard_button:hr.analytical.timesheet.my,init,report:0
@@ -87,18 +85,6 @@ msgstr "Ligne analytique"
msgid "Current Server Date"
msgstr "Date du serveur"
-#. module: hr_timesheet
-#, python-format
-#: code:addons/hr_timesheet/wizard/sign_in_out.py:0
-msgid "No cost unit defined for this employee !"
-msgstr ""
-
-#. module: hr_timesheet
-#, python-format
-#: code:addons/hr_timesheet/hr_timesheet.py:0
-msgid "No analytic journal available for this employee.\nDefine an employee for the selected user and assign an analytic journal."
-msgstr ""
-
#. module: hr_timesheet
#: field:hr.employee,product_id:0
msgid "Product"
@@ -113,7 +99,7 @@ msgstr "Journal analytique"
#: model:ir.actions.act_window,name:hr_timesheet.act_hr_timesheet_line_evry1_today_form_my
#: model:ir.ui.menu,name:hr_timesheet.menu_act_hr_timesheet_line_evry1_today_form_my
msgid "My Working Hours of The Day"
-msgstr ""
+msgstr "Mes Heures de Travail du Jour"
#. module: hr_timesheet
#: view:account.analytic.account:0
@@ -145,7 +131,7 @@ msgstr "Timesheet"
#. module: hr_timesheet
#: constraint:product.product:0
msgid "Error: Invalid ean code"
-msgstr ""
+msgstr "Erreur: code EAN invalide"
#. module: hr_timesheet
#: wizard_field:hr.analytical.timesheet,init,user_id:0
@@ -162,7 +148,7 @@ msgstr "Pointer l'entrée"
#: model:ir.actions.act_window,name:hr_timesheet.act_hr_timesheet_line_evry1_today_form
#: model:ir.ui.menu,name:hr_timesheet.menu_act_hr_timesheet_line_evry1_today_form
msgid "Working Hours of The Day"
-msgstr ""
+msgstr "Heures de Travail du Jour"
#. module: hr_timesheet
#: wizard_view:hr_timesheet.si_so,sign_out:0
@@ -188,7 +174,7 @@ msgstr "Date de clôture"
#. module: hr_timesheet
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "XML non valide pour l'architecture de la vue!"
#. module: hr_timesheet
#: wizard_field:hr_timesheet.si_so,sign_in,analytic_amount:0
@@ -204,6 +190,8 @@ msgstr "Résumé analyse"
#: constraint:product.template:0
msgid "Error: UOS must be in a different category than the UOM"
msgstr ""
+"Erreur: l'unité de vente doit appartenir à une catégorie différente que "
+"l'unité de mesure"
#. module: hr_timesheet
#: wizard_view:hr.analytical.timesheet_users,init:0
@@ -212,8 +200,11 @@ msgstr "Choisir les utilisateurs"
#. module: hr_timesheet
#: constraint:product.template:0
-msgid "Error: The default UOM and the purchase UOM must be in the same category."
+msgid ""
+"Error: The default UOM and the purchase UOM must be in the same category."
msgstr ""
+"Erreur: l'unité de mesure par défaut et l'unité de mesure d'achat doivent "
+"faire partie de la même catégorie"
#. module: hr_timesheet
#: wizard_view:hr_timesheet.si_so,sign_in:0
@@ -254,7 +245,7 @@ msgstr "Nom de l'employé"
#: model:ir.actions.act_window,name:hr_timesheet.act_hr_timesheet_line_me_all_form
#: model:ir.ui.menu,name:hr_timesheet.menu_act_hr_timesheet_line_me_all_form
msgid "My Working Hours"
-msgstr ""
+msgstr "Mes Heures de Travail"
#. module: hr_timesheet
#: model:ir.actions.report.xml,name:hr_timesheet.report_users_timesheet
@@ -268,12 +259,6 @@ msgstr "Timesheet des employés"
msgid "Stop Working"
msgstr "Arrêter le travail"
-#. module: hr_timesheet
-#, python-format
-#: code:addons/hr_timesheet/wizard/sign_in_out.py:0
-msgid "UserError"
-msgstr ""
-
#. module: hr_timesheet
#: wizard_view:hr_timesheet.si_so,sign_in:0
msgid "(Keep empty for current_time)"
@@ -282,7 +267,7 @@ msgstr "(Garder vide pour la date actuelle)"
#. module: hr_timesheet
#: view:hr.employee:0
msgid "Timesheets"
-msgstr ""
+msgstr "Feuilles de présence"
#. module: hr_timesheet
#: wizard_button:hr_timesheet.si_so,sign_out,si_result:0
@@ -310,7 +295,7 @@ msgstr "Statistiques par mois"
#: model:ir.ui.menu,name:hr_timesheet.menu_act_hr_timesheet_line_evry1_all_form
#: model:ir.ui.menu,name:hr_timesheet.menu_act_hr_timesheet_line_today_form
msgid "Working Hours"
-msgstr ""
+msgstr "Heures de travail"
#. module: hr_timesheet
#: wizard_field:hr_timesheet.si_so,sign_in,account_id:0
@@ -371,14 +356,7 @@ msgstr "Total"
msgid "Change Work"
msgstr "Changer de travail"
-#. module: hr_timesheet
-#, python-format
-#: code:addons/hr_timesheet/hr_timesheet.py:0
-msgid "ValidateError"
-msgstr ""
-
#. module: hr_timesheet
#: view:account.analytic.account:0
msgid "To be invoiced"
msgstr "A facturer"
-
diff --git a/addons/hr_timesheet/security/ir.model.access.csv b/addons/hr_timesheet/security/ir.model.access.csv
index 6a9a08f28c0..a718d2bd4ae 100644
--- a/addons/hr_timesheet/security/ir.model.access.csv
+++ b/addons/hr_timesheet/security/ir.model.access.csv
@@ -1,2 +1,2 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_hr_analytic_timesheet,hr.analytic.timesheet,model_hr_analytic_timesheet,base.group_user,1,1,1,1
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_hr_analytic_timesheet","hr.analytic.timesheet","model_hr_analytic_timesheet","hr.group_hr_user",1,1,1,1
diff --git a/addons/hr_timesheet_invoice/hr_timesheet_invoice_report.xml b/addons/hr_timesheet_invoice/hr_timesheet_invoice_report.xml
index 2ae672635a5..794c38abc06 100644
--- a/addons/hr_timesheet_invoice/hr_timesheet_invoice_report.xml
+++ b/addons/hr_timesheet_invoice/hr_timesheet_invoice_report.xml
@@ -1,15 +1,29 @@
-
+
-
+
-
-
-
-
+
+
+
+
+
-
+
diff --git a/addons/hr_timesheet_invoice/i18n/fr_FR.po b/addons/hr_timesheet_invoice/i18n/fr_FR.po
index 44e5f0ada21..be09f6d127c 100644
--- a/addons/hr_timesheet_invoice/i18n/fr_FR.po
+++ b/addons/hr_timesheet_invoice/i18n/fr_FR.po
@@ -4,16 +4,17 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:42+0000"
-"PO-Revision-Date: 2008-09-11 15:41:42+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:22+0000\n"
+"PO-Revision-Date: 2008-10-13 12:01+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-13 12:20+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: hr_timesheet_invoice
#: wizard_field:account.analytic.profit,init,date_from:0
@@ -43,12 +44,6 @@ msgstr "Entrées non-facturées"
msgid "Invoicing"
msgstr "Facturation"
-#. module: hr_timesheet_invoice
-#, python-format
-#: code:addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create.py:0
-msgid "At least on line have no product !"
-msgstr ""
-
#. module: hr_timesheet_invoice
#: rml:account.analytic.profit:0
msgid "Income"
@@ -111,8 +106,11 @@ msgstr "Devise"
#. module: hr_timesheet_invoice
#: constraint:ir.model:0
-msgid "The Object name must start with x_ and not contain any special character !"
+msgid ""
+"The Object name must start with x_ and not contain any special character !"
msgstr ""
+"Le nom de l'objet doit commencer avec x_ et ne pas contenir de charactères "
+"spéciaux !"
#. module: hr_timesheet_invoice
#: field:account.analytic.account,pricelist_id:0
@@ -133,7 +131,7 @@ msgstr "Choisissez les comptes que vous désirez facturer"
#. module: hr_timesheet_invoice
#: rml:hr.timesheet.invoice.account.analytic.account.cost_ledger:0
msgid "Total ("
-msgstr "Total "
+msgstr "Total"
#. module: hr_timesheet_invoice
#: wizard_field:hr.timesheet.invoice.create,init,product:0
@@ -158,7 +156,7 @@ msgstr "Période de début"
#. module: hr_timesheet_invoice
#: rml:hr.timesheet.invoice.account.analytic.account.cost_ledger:0
msgid ")"
-msgstr ""
+msgstr ")"
#. module: hr_timesheet_invoice
#: rml:hr.timesheet.invoice.account.analytic.account.cost_ledger:0
@@ -189,18 +187,6 @@ msgstr "Choisir"
msgid "to"
msgstr "Ã "
-#. module: hr_timesheet_invoice
-#, python-format
-#: code:addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create.py:0
-msgid "Error"
-msgstr ""
-
-#. module: hr_timesheet_invoice
-#, python-format
-#: code:addons/hr_timesheet_invoice/wizard/hr_timesheet_final_invoice_create.py:0
-msgid "Balance product needed"
-msgstr ""
-
#. module: hr_timesheet_invoice
#: model:ir.actions.wizard,name:hr_timesheet_invoice.hr_timesheet_invoice_create
msgid "Invoice analytic lines"
@@ -216,7 +202,7 @@ msgstr "Date"
#. module: hr_timesheet_invoice
#: model:ir.ui.menu,name:hr_timesheet_invoice.menu_action_draft_analytic_accounts
msgid "Draft Analytic Accounts"
-msgstr "Comptes analytiques brouillon"
+msgstr "Compte analytique brouiilon"
#. module: hr_timesheet_invoice
#: rml:account.analytic.profit:0
@@ -248,7 +234,7 @@ msgstr "Créer des factures"
#: model:ir.actions.act_window,name:hr_timesheet_invoice.action_hr_timesheet_invoice_factor_form
#: model:ir.ui.menu,name:hr_timesheet_invoice.hr_timesheet_invoice_factor_view
msgid "Types of Invoicing"
-msgstr ""
+msgstr "Types de Facture"
#. module: hr_timesheet_invoice
#: wizard_field:hr.timesheet.final.invoice.create,init,time:0
@@ -269,30 +255,24 @@ msgstr "Types de facturation"
#. module: hr_timesheet_invoice
#: rml:account.analytic.profit:0
msgid "Theorical"
-msgstr ""
+msgstr "Théorique"
#. module: hr_timesheet_invoice
#: model:ir.actions.act_window,name:hr_timesheet_invoice.action_hr_analytic_timesheet_tree_invoiced_my
#: model:ir.ui.menu,name:hr_timesheet_invoice.menu_hr_analytic_timesheet_tree_invoiced_my
msgid "My Uninvoiced Entries"
-msgstr ""
+msgstr "Mes Entrées Non Facturées"
#. module: hr_timesheet_invoice
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "XML non valide pour l'architecture de la vue!"
#. module: hr_timesheet_invoice
#: view:hr_timesheet_invoice.factor:0
msgid "Type of invoicing"
msgstr "Type de facturation"
-#. module: hr_timesheet_invoice
-#, python-format
-#: code:addons/hr_timesheet_invoice/wizard/hr_timesheet_final_invoice_create.py:0
-msgid "Please fill a Balance product in the wizard"
-msgstr ""
-
#. module: hr_timesheet_invoice
#: model:ir.actions.act_window,name:hr_timesheet_invoice.action_pending_analytic_accounts
#: model:ir.ui.menu,name:hr_timesheet_invoice.menu_action_pending_analytic_accounts
@@ -319,13 +299,6 @@ msgstr "Code J."
msgid "Invoice rate"
msgstr "Taux de facture"
-#. module: hr_timesheet_invoice
-#, python-format
-#: code:addons/hr_timesheet_invoice/wizard/hr_timesheet_final_invoice_create.py:0
-#: code:addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create.py:0
-msgid "Analytic account incomplete"
-msgstr ""
-
#. module: hr_timesheet_invoice
#: wizard_field:hr.timesheet.invoice.account.analytic.account.cost_ledger.report,init,date2:0
msgid "End of period"
@@ -339,13 +312,7 @@ msgstr "Nom interne"
#. module: hr_timesheet_invoice
#: rml:hr.timesheet.invoice.account.analytic.account.cost_ledger:0
msgid "Balance"
-msgstr "Balance "
-
-#. module: hr_timesheet_invoice
-#, python-format
-#: code:addons/hr_timesheet_invoice/hr_timesheet_invoice.py:0
-msgid "Error !"
-msgstr ""
+msgstr "Balance"
#. module: hr_timesheet_invoice
#: wizard_view:hr.timesheet.invoice.account.analytic.account.cost_ledger.report,init:0
@@ -358,12 +325,6 @@ msgstr "Sélectionnez une période"
msgid "Name of entry"
msgstr "Nom de l'entrée"
-#. module: hr_timesheet_invoice
-#, python-format
-#: code:addons/hr_timesheet_invoice/hr_timesheet_invoice.py:0
-msgid "You can not modify an invoiced analytic line!"
-msgstr ""
-
#. module: hr_timesheet_invoice
#: rml:hr.timesheet.invoice.account.analytic.account.cost_ledger:0
msgid "Code"
@@ -378,7 +339,7 @@ msgstr "Ã "
#: model:ir.actions.act_window,name:hr_timesheet_invoice.action_open_invoice_analytic_accounts
#: model:ir.ui.menu,name:hr_timesheet_invoice.menu_action_open_invoice_analytic_accounts
msgid "Unclosed Invoiceable Accounts"
-msgstr ""
+msgstr "Comptes Facturables Non Cloturés"
#. module: hr_timesheet_invoice
#: wizard_view:hr.timesheet.invoice.create,init:0
@@ -429,7 +390,7 @@ msgstr "Factures finales"
#. module: hr_timesheet_invoice
#: rml:hr.timesheet.invoice.account.analytic.account.cost_ledger:0
msgid "Total"
-msgstr "Total "
+msgstr "Total"
#. module: hr_timesheet_invoice
#: wizard_field:account.analytic.profit,init,journal_ids:0
@@ -444,5 +405,4 @@ msgstr "Montant de la balance"
#. module: hr_timesheet_invoice
#: rml:account.analytic.profit:0
msgid "Invoice rate by user"
-msgstr ""
-
+msgstr "Taux Facturable par Utilisateur"
diff --git a/addons/hr_timesheet_invoice/security/ir.model.access.csv b/addons/hr_timesheet_invoice/security/ir.model.access.csv
index f849d88fbcb..c56f26ab3ee 100644
--- a/addons/hr_timesheet_invoice/security/ir.model.access.csv
+++ b/addons/hr_timesheet_invoice/security/ir.model.access.csv
@@ -1,3 +1,3 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_hr_timesheet_invoice_factor,hr_timesheet_invoice.factor,model_hr_timesheet_invoice_factor,base.group_user,1,0,0,0
-access_hr_timesheet_invoice_factor,hr_timesheet_invoice.factor,model_hr_timesheet_invoice_factor,account.group_account_invoice,1,1,1,1
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_hr_timesheet_invoice_factor","hr_timesheet_invoice.factor","model_hr_timesheet_invoice_factor","hr.group_hr_user",1,0,0,0
+"access_hr_timesheet_invoice_factor","hr_timesheet_invoice.factor","model_hr_timesheet_invoice_factor","account.group_account_invoice",1,1,1,1
diff --git a/addons/hr_timesheet_invoice/wizard/hr_timesheet_final_invoice_create.py b/addons/hr_timesheet_invoice/wizard/hr_timesheet_final_invoice_create.py
index fbf625be1be..7e8a9ff3887 100644
--- a/addons/hr_timesheet_invoice/wizard/hr_timesheet_final_invoice_create.py
+++ b/addons/hr_timesheet_invoice/wizard/hr_timesheet_final_invoice_create.py
@@ -108,15 +108,7 @@ class final_invoice_create(wizard.interface):
price = 0.0
taxes = product.taxes_id
- taxep = account.partner_id.property_account_tax
- if not taxep.id:
- tax = [x.id for x in taxes or []]
- else:
- tax = [taxep.id]
- for t in taxes:
- if not t.tax_group==taxep.tax_group:
- tax.append(t.id)
-
+ tax = self.pool.get('account.fiscal.position').map_tax(cr, uid, account.partner_id, taxes)
account_id = product.product_tmpl_id.property_account_income.id or product.categ_id.property_account_income_categ.id
curr_line = {
@@ -165,15 +157,8 @@ class final_invoice_create(wizard.interface):
taxes = product.taxes_id
else:
taxes = []
- taxep = account.partner_id.property_account_tax
- if not taxep.id:
- tax = [x.id for x in taxes or []]
- else:
- tax = [taxep.id]
- for t in taxes:
- if not t.tax_group==taxep.tax_group:
- tax.append(t.id)
+ tax = self.pool.get('account.fiscal.position').map_tax(cr, uid, account.partner_id, taxes)
curr_line = {
'price_unit': -amount,
'quantity': 1.0,
@@ -194,15 +179,7 @@ class final_invoice_create(wizard.interface):
product = pool.get('product.product').browse(cr, uid, data['form']['balance_product'], context2)
taxes = product.taxes_id
- taxep = account.partner_id.property_account_tax
- if not taxep.id:
- tax = [x.id for x in taxes or []]
- else:
- tax = [taxep.id]
- for t in taxes:
- if not t.tax_group==taxep.tax_group:
- tax.append(t.id)
-
+ tax = self.pool.get('account.fiscal.position').map_tax(cr, uid, account.partner_id, taxes)
account_id = product.product_tmpl_id.property_account_income.id or product.categ_id.property_account_income_categ.id
curr_line = {
diff --git a/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create.py b/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create.py
index 52cb8387aa4..1e7c328f9dd 100644
--- a/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create.py
+++ b/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create.py
@@ -113,15 +113,7 @@ class invoice_create(wizard.interface):
price = 0.0
taxes = product.taxes_id
- taxep = account.partner_id.property_account_tax
- if not taxep.id:
- tax = [x.id for x in taxes or []]
- else:
- tax = [taxep.id]
- for t in taxes:
- if not t.tax_group==taxep.tax_group:
- tax.append(t.id)
-
+ tax = self.pool.get('account.fiscal.position').map_tax(cr, uid, account.partner_id, taxes)
account_id = product.product_tmpl_id.property_account_income.id or product.categ_id.property_account_income_categ.id
curr_line = {
diff --git a/addons/hr_timesheet_project/__terp__.py b/addons/hr_timesheet_project/__terp__.py
index 06922784d56..e3c24de5ea0 100644
--- a/addons/hr_timesheet_project/__terp__.py
+++ b/addons/hr_timesheet_project/__terp__.py
@@ -34,7 +34,9 @@
"description": """Auto-complete timesheet based on tasks made on the project management module.""",
"website" : "http://tinyerp.com/module_hr.html",
"depends" : ["project", "hr_timesheet_sheet"],
- "update_xml" : ["hr_timesheet_project_view.xml", "process/hr_timesheet_project_process.xml"],
+ "update_xml" : ["hr_timesheet_project_view.xml",
+ "process/hr_timesheet_project_process.xml",
+ ],
"active": False,
"installable": True
}
diff --git a/addons/hr_timesheet_project/i18n/fr_FR.po b/addons/hr_timesheet_project/i18n/fr_FR.po
index 902bf0ae07c..f483483c7f5 100644
--- a/addons/hr_timesheet_project/i18n/fr_FR.po
+++ b/addons/hr_timesheet_project/i18n/fr_FR.po
@@ -4,24 +4,24 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:42+0000"
-"PO-Revision-Date: 2008-09-11 15:41:42+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:09+0000\n"
+"PO-Revision-Date: 2008-10-13 12:02+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-14 12:48+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: hr_timesheet_project
#: model:ir.actions.wizard,name:hr_timesheet_project.encode_hour_tss
msgid "Import Hours From Tasks"
-msgstr ""
+msgstr "Importer les Heures des Tâches"
#. module: hr_timesheet_project
#: model:ir.ui.menu,name:hr_timesheet_project.menu_act_hr_timesheet_line_me_today_project_form
msgid "Hours From Tasks"
-msgstr ""
-
+msgstr "Heures des Tâches"
diff --git a/addons/hr_timesheet_project/process/hr_timesheet_project_process.xml b/addons/hr_timesheet_project/process/hr_timesheet_project_process.xml
index d514b14bf17..0cc7032602d 100644
--- a/addons/hr_timesheet_project/process/hr_timesheet_project_process.xml
+++ b/addons/hr_timesheet_project/process/hr_timesheet_project_process.xml
@@ -58,7 +58,7 @@
-
+
diff --git a/addons/hr_timesheet_sheet/i18n/fr_FR.po b/addons/hr_timesheet_sheet/i18n/fr_FR.po
index d95a163341f..9b5c9328e75 100644
--- a/addons/hr_timesheet_sheet/i18n/fr_FR.po
+++ b/addons/hr_timesheet_sheet/i18n/fr_FR.po
@@ -4,21 +4,24 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:43+0000"
-"PO-Revision-Date: 2008-09-11 15:41:43+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:25+0000\n"
+"PO-Revision-Date: 2008-10-13 12:10+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-13 12:40+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
+#~ msgid "Configuration"
+#~ msgstr "Configuration"
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet.account:0
msgid "Timesheet by Accounts"
-msgstr ""
+msgstr "Feuille de Feuilles de Présence"
#. module: hr_timesheet_sheet
#: selection:hr_timesheet_sheet.sheet,state:0
@@ -32,8 +35,11 @@ msgstr "Présence"
#. module: hr_timesheet_sheet
#: constraint:ir.model:0
-msgid "The Object name must start with x_ and not contain any special character !"
+msgid ""
+"The Object name must start with x_ and not contain any special character !"
msgstr ""
+"Le nom de l'objet doit commencer avec x_ et ne pas contenir de charactères "
+"spéciaux !"
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet:0
@@ -66,13 +72,7 @@ msgstr "Feuilles de présence non-validées"
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet.day:0
msgid "Timesheet by Days"
-msgstr ""
-
-#. module: hr_timesheet_sheet
-#, python-format
-#: code:addons/hr_timesheet_sheet/hr_timesheet_sheet.py:0
-msgid "You can not sign out from an other date than today"
-msgstr ""
+msgstr "Feuille de Feuilles de Présence"
#. module: hr_timesheet_sheet
#: selection:hr_timesheet_sheet.sheet,state:0
@@ -80,10 +80,8 @@ msgid "Draft"
msgstr "Brouillon"
#. module: hr_timesheet_sheet
-#: model:ir.actions.act_window,name:hr_timesheet_sheet.act_hr_timesheet_sheet_form
#: model:ir.ui.menu,name:hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form
#: model:ir.ui.menu,name:hr_timesheet_sheet.next_id_60
-#: view:res.company:0
#: view:hr_timesheet_sheet.sheet:0
msgid "Timesheets"
msgstr "Timesheets"
@@ -92,7 +90,7 @@ msgstr "Timesheets"
#: model:ir.actions.act_window,name:hr_timesheet_sheet.act_hr_timesheet_sheet_form_all_confirm
#: model:ir.ui.menu,name:hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_all_confirm
msgid "Timesheets To Confirm"
-msgstr ""
+msgstr "Feuille de Feuilles de Présence"
#. module: hr_timesheet_sheet
#: model:ir.actions.act_window,name:hr_timesheet_sheet.act_hr_timesheet_sheet_form_my_confirm
@@ -106,7 +104,7 @@ msgstr "Mes feuilles de présence à confirmer"
#: field:hr_timesheet_sheet.sheet.account,sheet_id:0
#: field:hr_timesheet_sheet.sheet.day,sheet_id:0
msgid "Sheet"
-msgstr "Feuille "
+msgstr "Feuille"
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet:0
@@ -126,13 +124,7 @@ msgstr "Aujourd'hui"
#. module: hr_timesheet_sheet
#: field:hr_timesheet_sheet.sheet,state:0
msgid "Status"
-msgstr ""
-
-#. module: hr_timesheet_sheet
-#, python-format
-#: code:addons/hr_timesheet_sheet/hr_timesheet_sheet.py:0
-msgid "Please verify that the total difference of the sheet is lower than %.2f !"
-msgstr ""
+msgstr "État"
#. module: hr_timesheet_sheet
#: model:ir.actions.act_window,name:hr_timesheet_sheet.act_hr_timesheet_sheet_sheet_2_hr_attendance
@@ -142,11 +134,9 @@ msgid "Attendances"
msgstr "Présences"
#. module: hr_timesheet_sheet
-#, python-format
-#: code:addons/hr_timesheet_sheet/hr_timesheet_sheet.py:0
-#: code:addons/hr_timesheet_sheet/wizard/wizard_timesheet_current.py:0
-msgid "Error !"
-msgstr ""
+#: field:hr_timesheet_sheet.sheet.account,invoice_rate:0
+msgid "Invoice rate"
+msgstr "Taux de facturation"
#. module: hr_timesheet_sheet
#: field:hr_timesheet_sheet.sheet,name:0
@@ -166,18 +156,12 @@ msgstr "Accepter"
#. module: hr_timesheet_sheet
#: model:ir.actions.act_window,name:hr_timesheet_sheet.act_hr_timesheet_sheet_sheet_2_hr_analytic_timesheet
msgid "Timesheet Lines"
-msgstr ""
-
-#. module: hr_timesheet_sheet
-#, python-format
-#: code:addons/hr_timesheet_sheet/wizard/wizard_timesheet_current.py:0
-msgid "No employee defined for your user !"
-msgstr ""
+msgstr "Lignes des Feuilles de Présence"
#. module: hr_timesheet_sheet
#: field:hr_timesheet_sheet.sheet,state_attendance:0
msgid "Current Status"
-msgstr ""
+msgstr "État actuel"
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet:0
@@ -192,17 +176,17 @@ msgstr "Semaine"
#. module: hr_timesheet_sheet
#: field:hr_timesheet_sheet.sheet,date_to:0
msgid "Date to"
-msgstr "Date de "
+msgstr "Date de"
#. module: hr_timesheet_sheet
#: field:hr_timesheet_sheet.sheet,user_id:0
msgid "User"
-msgstr "Utilisateur "
+msgstr "Utilisateur"
#. module: hr_timesheet_sheet
#: model:ir.actions.act_window,name:hr_timesheet_sheet.act_hr_timesheet_sheet_sheet_by_day
msgid "Timesheet by Account"
-msgstr ""
+msgstr "Feuilles de Présence par Compte"
#. module: hr_timesheet_sheet
#: selection:hr_timesheet_sheet.sheet,state_attendance:0
@@ -218,7 +202,7 @@ msgstr "Date"
#: model:ir.actions.wizard,name:hr_timesheet_sheet.act_hr_timesheet_sheet_form_my_current
#: model:ir.ui.menu,name:hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_my_current
msgid "My Current Timesheet"
-msgstr ""
+msgstr "Ma Feuille de Présence actuelle"
#. module: hr_timesheet_sheet
#: field:hr_timesheet_sheet.sheet.day,total_difference:0
@@ -240,7 +224,7 @@ msgstr "Présent"
#. module: hr_timesheet_sheet
#: field:hr_timesheet_sheet.sheet,date_from:0
msgid "Date from"
-msgstr "Date de "
+msgstr "Date de"
#. module: hr_timesheet_sheet
#: model:ir.model,name:hr_timesheet_sheet.model_hr_timesheet_sheet_sheet
@@ -255,39 +239,22 @@ msgstr "Absent"
#. module: hr_timesheet_sheet
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
-
-#. module: hr_timesheet_sheet
-#, python-format
-#: code:addons/hr_timesheet_sheet/hr_timesheet_sheet.py:0
-msgid "UserError"
-msgstr ""
+msgstr "XML non valide pour l'architecture de la vue!"
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet:0
msgid "Daily View"
-msgstr ""
-
-#. module: hr_timesheet_sheet
-#: constraint:hr_timesheet_sheet.sheet:0
-msgid "You must select a Current date wich is in the timesheet dates !"
-msgstr ""
+msgstr "Vue Journalière"
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet:0
msgid "By Day"
-msgstr ""
-
-#. module: hr_timesheet_sheet
-#, python-format
-#: code:addons/hr_timesheet_sheet/hr_timesheet_sheet.py:0
-msgid "You can not sign in from an other date than today"
-msgstr ""
+msgstr "Par Jour"
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet.day:0
msgid "Total Difference"
-msgstr ""
+msgstr "Différence Totale"
#. module: hr_timesheet_sheet
#: model:ir.model,name:hr_timesheet_sheet.model_hr_timesheet_sheet_sheet_account
@@ -296,26 +263,16 @@ msgid "Timesheets by period"
msgstr "Feuilles de présence par période"
#. module: hr_timesheet_sheet
-#: view:hr_timesheet_sheet.sheet:0
-msgid "Go to:"
-msgstr "Aller à :"
-
-#. module: hr_timesheet_sheet
-#: field:hr_timesheet_sheet.sheet.account,invoice_rate:0
-msgid "Invoice rate"
-msgstr "Taux de facturation"
+#: model:ir.actions.act_window,name:hr_timesheet_sheet.act_hr_timesheet_sheet_form_all_valid
+#: model:ir.ui.menu,name:hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_all_valid
+msgid "Timesheets To Validate"
+msgstr "Feuilles de Présence à Valider"
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet:0
msgid "Sign In"
msgstr "Pointer l'entrée"
-#. module: hr_timesheet_sheet
-#, python-format
-#: code:addons/hr_timesheet_sheet/hr_timesheet_sheet.py:0
-msgid "You can not modify an entry in a confirmed timesheet !"
-msgstr ""
-
#. module: hr_timesheet_sheet
#: model:ir.actions.wizard,name:hr_timesheet_sheet.act_hr_timesheet_sheet_form_department_confirm
#: model:ir.actions.wizard,name:hr_timesheet_sheet.act_hr_timesheet_sheet_form_department_current
@@ -326,12 +283,6 @@ msgstr ""
msgid "My department's timesheet"
msgstr "Les feuilles de présence de mon département"
-#. module: hr_timesheet_sheet
-#, python-format
-#: code:addons/hr_timesheet_sheet/hr_timesheet_sheet.py:0
-msgid "Warning !"
-msgstr ""
-
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet.account:0
msgid "Timesheet by accounts"
@@ -339,8 +290,12 @@ msgstr "Feuille de présence par compte"
#. module: hr_timesheet_sheet
#: help:res.company,timesheet_max_difference:0
-msgid "Allowed difference between the sign in/out and the timesheet computation for one sheet. Set this to 0 if you do not want any control."
-msgstr "La différence permise entre le sign in/out and le calcul de la timesheet pour une feuille. Mettez cette valeur à 0 si vous ne voulez aucun contrôle."
+msgid ""
+"Allowed difference between the sign in/out and the timesheet computation for "
+"one sheet. Set this to 0 if you do not want any control."
+msgstr ""
+"La différence permise entre le sign in/out and le calcul de la timesheet "
+"pour une feuille. Mettez cette valeur à 0 si vous ne voulez aucun contrôle."
#. module: hr_timesheet_sheet
#: field:hr_timesheet_sheet.sheet,account_ids:0
@@ -348,9 +303,9 @@ msgid "Analytic accounts"
msgstr "Compte analytique"
#. module: hr_timesheet_sheet
-#: view:res.company:0
-msgid "Configuration"
-msgstr "Configuration"
+#: view:hr_timesheet_sheet.sheet:0
+msgid "Go to:"
+msgstr "Aller à :"
#. module: hr_timesheet_sheet
#: model:ir.actions.act_window,name:hr_timesheet_sheet.act_hr_timesheet_sheet_form_my
@@ -384,7 +339,7 @@ msgstr "Période"
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet:0
msgid "Timesheet"
-msgstr "Feuille de présence "
+msgstr "Feuille de présence"
#. module: hr_timesheet_sheet
#: selection:res.company,timesheet_range:0
@@ -411,12 +366,6 @@ msgstr "Fait"
msgid "Current date"
msgstr "Date actuelle"
-#. module: hr_timesheet_sheet
-#: model:ir.actions.act_window,name:hr_timesheet_sheet.act_hr_timesheet_sheet_form_all_valid
-#: model:ir.ui.menu,name:hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_all_valid
-msgid "Timesheets To Validate"
-msgstr ""
-
#. module: hr_timesheet_sheet
#: selection:res.company,timesheet_range:0
msgid "Year"
@@ -425,10 +374,9 @@ msgstr "Année"
#. module: hr_timesheet_sheet
#: view:hr_timesheet_sheet.sheet.account:0
msgid "Total"
-msgstr ""
+msgstr "Total"
#. module: hr_timesheet_sheet
#: model:ir.actions.act_window,name:hr_timesheet_sheet.act_hr_timesheet_sheet_sheet_by_account
msgid "Timesheet by Day"
-msgstr ""
-
+msgstr "Feuilles de Présence par Jour"
diff --git a/addons/hr_timesheet_sheet/process/hr_timesheet_sheet_process.xml b/addons/hr_timesheet_sheet/process/hr_timesheet_sheet_process.xml
index 24374c2a810..6917812bedb 100644
--- a/addons/hr_timesheet_sheet/process/hr_timesheet_sheet_process.xml
+++ b/addons/hr_timesheet_sheet/process/hr_timesheet_sheet_process.xml
@@ -89,6 +89,7 @@
+
@@ -140,6 +141,14 @@
+
+
+
+
+
+
+
+
@@ -166,6 +175,7 @@
+
@@ -222,5 +232,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/hr_timesheet_sheet/security/ir.model.access.csv b/addons/hr_timesheet_sheet/security/ir.model.access.csv
index be9d927f9a4..5b7cf40a379 100644
--- a/addons/hr_timesheet_sheet/security/ir.model.access.csv
+++ b/addons/hr_timesheet_sheet/security/ir.model.access.csv
@@ -1,4 +1,4 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_hr_timesheet_sheet_sheet,hr_timesheet_sheet.sheet,model_hr_timesheet_sheet_sheet,base.group_user,1,1,1,1
-access_hr_timesheet_sheet_sheet_day,hr_timesheet_sheet.sheet.day,model_hr_timesheet_sheet_sheet_day,base.group_user,1,1,1,1
-access_hr_timesheet_sheet_sheet_account,hr_timesheet_sheet.sheet.account,model_hr_timesheet_sheet_sheet_account,base.group_user,1,1,1,1
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_hr_timesheet_sheet_sheet","hr_timesheet_sheet.sheet","model_hr_timesheet_sheet_sheet","hr.group_hr_user",1,1,1,1
+"access_hr_timesheet_sheet_sheet_day","hr_timesheet_sheet.sheet.day","model_hr_timesheet_sheet_sheet_day","hr.group_hr_user",1,1,1,1
+"access_hr_timesheet_sheet_sheet_account","hr_timesheet_sheet.sheet.account","model_hr_timesheet_sheet_sheet_account","hr.group_hr_user",1,1,1,1
diff --git a/addons/idea/i18n/fr_FR.po b/addons/idea/i18n/fr_FR.po
index adca5caadee..78245fbe6c0 100644
--- a/addons/idea/i18n/fr_FR.po
+++ b/addons/idea/i18n/fr_FR.po
@@ -4,65 +4,69 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:42+0000"
-"PO-Revision-Date: 2008-09-11 15:41:42+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:29+0000\n"
+"PO-Revision-Date: 2008-10-13 16:48+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-13 17:12+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: idea
#: field:idea.category,name:0
#: field:idea.idea,category_id:0
msgid "Category"
-msgstr ""
+msgstr "Catégorie"
#. module: idea
#: selection:idea.idea,my_vote:0
#: selection:idea.vote,score:0
#: selection:idea.vote.stat,score:0
msgid "Very Good"
-msgstr ""
+msgstr "Très bien"
#. module: idea
#: field:idea.idea,stat_vote_ids:0
#: view:idea.idea:0
msgid "Statistics"
-msgstr ""
+msgstr "Statistiques"
#. module: idea
#: constraint:ir.model:0
-msgid "The Object name must start with x_ and not contain any special character !"
+msgid ""
+"The Object name must start with x_ and not contain any special character !"
msgstr ""
+"Le nom de l'objet doit commencer avec x_ et ne pas contenir de charactères "
+"spéciaux !"
#. module: idea
#: selection:idea.idea,state:0
msgid "Opened"
-msgstr ""
+msgstr "Ouvert"
#. module: idea
#: selection:idea.idea,my_vote:0
#: selection:idea.vote,score:0
#: selection:idea.vote.stat,score:0
msgid "Not Voted"
-msgstr ""
+msgstr "Pas de vote"
#. module: idea
#: model:ir.actions.act_window,name:idea.action_idea_idea_open_my
#: model:ir.ui.menu,name:idea.menu_idea_idea_open_my
msgid "My Open Ideas"
-msgstr ""
+msgstr "Mes Idées Ouvertes"
#. module: idea
#: model:ir.actions.act_window,name:idea.action_idea_idea
#: model:ir.ui.menu,name:idea.menu_ideas
#: model:ir.ui.menu,name:idea.menu_ideas1
msgid "Ideas"
-msgstr ""
+msgstr "Idées"
#. module: idea
#: model:ir.model,name:idea.model_idea_comment
@@ -70,82 +74,82 @@ msgstr ""
#: view:idea.comment:0
#: view:idea.idea:0
msgid "Comments"
-msgstr ""
+msgstr "Commentaires"
#. module: idea
#: selection:idea.idea,my_vote:0
#: selection:idea.vote,score:0
#: selection:idea.vote.stat,score:0
msgid "Very Bad"
-msgstr ""
+msgstr "Très mauvais"
#. module: idea
#: selection:idea.idea,my_vote:0
#: selection:idea.vote,score:0
#: selection:idea.vote.stat,score:0
msgid "Bad"
-msgstr ""
+msgstr "Mauvais"
#. module: idea
#: model:ir.actions.act_window,name:idea.action_idea_category_tree
#: model:ir.ui.menu,name:idea.menu_idea_category_tree
msgid "Ideas by Categories"
-msgstr ""
+msgstr "Idées par Catégorie"
#. module: idea
#: field:idea.vote,score:0
#: field:idea.vote.stat,score:0
msgid "Score"
-msgstr ""
+msgstr "Score"
#. module: idea
#: selection:idea.idea,state:0
msgid "Draft"
-msgstr ""
+msgstr "Brouillon"
#. module: idea
#: model:ir.actions.act_window,name:idea.action_idea_vote
msgid "Idea's vote"
-msgstr ""
+msgstr "Vote de l'Idée"
#. module: idea
#: model:ir.actions.act_window,name:idea.action_idea_vote_stat
msgid "Statistics on Votes"
-msgstr ""
+msgstr "Statistiques sur les Votes"
#. module: idea
#: model:ir.model,name:idea.model_idea_category
msgid "Category for an idea"
-msgstr ""
+msgstr "Catégorie d'une Idée"
#. module: idea
#: view:idea.category:0
msgid "Category of ideas"
-msgstr ""
+msgstr "Catégories d'Idée"
#. module: idea
#: field:idea.idea,state:0
msgid "Status"
-msgstr ""
+msgstr "État"
#. module: idea
#: selection:idea.idea,my_vote:0
#: selection:idea.vote,score:0
#: selection:idea.vote.stat,score:0
msgid "Good"
-msgstr ""
+msgstr "Bon"
#. module: idea
#: field:idea.idea,description:0
msgid "Description"
-msgstr ""
+msgstr "Description"
#. module: idea
#: selection:idea.idea,my_vote:0
#: selection:idea.vote,score:0
#: selection:idea.vote.stat,score:0
msgid "Normal"
-msgstr ""
+msgstr "Normal"
#. module: idea
#: model:ir.ui.menu,name:idea.menu_reporting
@@ -155,12 +159,12 @@ msgstr "Reporting"
#. module: idea
#: view:idea.idea:0
msgid "Close"
-msgstr ""
+msgstr "Fermer"
#. module: idea
#: model:ir.model,name:idea.model_idea_vote_stat
msgid "Idea Votes Statistics"
-msgstr ""
+msgstr "Statistiques des Votes d'Idée"
#. module: idea
#: model:ir.model,name:idea.model_idea_vote
@@ -171,17 +175,17 @@ msgstr ""
#: field:idea.comment,user_id:0
#: field:idea.vote,user_id:0
msgid "User"
-msgstr ""
+msgstr "Utilisateur"
#. module: idea
#: view:idea.idea:0
msgid "Your comment"
-msgstr ""
+msgstr "Votre commentaire"
#. module: idea
#: selection:idea.idea,state:0
msgid "Accepted"
-msgstr ""
+msgstr "Accepté"
#. module: idea
#: model:ir.ui.menu,name:idea.menu_idea_category
@@ -196,23 +200,23 @@ msgstr ""
#. module: idea
#: field:idea.idea,my_vote:0
msgid "My Vote"
-msgstr ""
+msgstr "Mes Votes"
#. module: idea
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "XML non valide pour l'architecture de la vue"
#. module: idea
#: view:idea.vote:0
msgid "Votes"
-msgstr ""
+msgstr "Votes"
#. module: idea
#: field:idea.comment,create_date:0
#: field:idea.idea,create_date:0
msgid "Creation date"
-msgstr ""
+msgstr "Date de création"
#. module: idea
#: field:idea.idea,count_votes:0
@@ -222,7 +226,7 @@ msgstr ""
#. module: idea
#: field:idea.vote.stat,nbr:0
msgid "Number of Votes"
-msgstr ""
+msgstr "Nombre de Votes"
#. module: idea
#: model:ir.model,name:idea.model_idea_idea
@@ -232,29 +236,29 @@ msgstr ""
#. module: idea
#: field:idea.category,summary:0
msgid "Summary"
-msgstr ""
+msgstr "Résumé"
#. module: idea
#: view:idea.idea:0
msgid "Cancel"
-msgstr ""
+msgstr "Annuler"
#. module: idea
#: model:ir.actions.act_window,name:idea.action_idea_idea_my_idea
#: model:ir.ui.menu,name:idea.menu_idea_idea_my_idea
msgid "My Ideas"
-msgstr ""
+msgstr "Mes Idées"
#. module: idea
#: model:ir.ui.menu,name:idea.menu_idea_idea
#: view:idea.idea:0
msgid "All Ideas"
-msgstr ""
+msgstr "Toutes les Idées"
#. module: idea
#: field:idea.category,child_ids:0
msgid "Child Categories"
-msgstr ""
+msgstr "Catégories filles"
#. module: idea
#: field:idea.idea,count_comments:0
@@ -264,22 +268,22 @@ msgstr ""
#. module: idea
#: field:idea.idea,title:0
msgid "Idea Summary"
-msgstr ""
+msgstr "Résumé de l'Idée"
#. module: idea
#: model:ir.ui.menu,name:idea.menu_idea_vote_stat
msgid "Vote Statistics"
-msgstr ""
+msgstr "Statistiques des Votes"
#. module: idea
#: view:idea.idea:0
msgid "New Idea"
-msgstr ""
+msgstr "Nouvelle Idée"
#. module: idea
#: field:idea.idea,vote_avg:0
msgid "Average Score"
-msgstr ""
+msgstr "Moyenne des scores"
#. module: idea
#: view:idea.idea:0
@@ -292,7 +296,7 @@ msgstr ""
#: view:idea.comment:0
#: view:idea.idea:0
msgid "Comment"
-msgstr ""
+msgstr "Commentaire"
#. module: idea
#: model:ir.ui.menu,name:idea.menu_config
@@ -302,17 +306,17 @@ msgstr "Configuration"
#. module: idea
#: field:idea.category,parent_id:0
msgid "Parent Categories"
-msgstr ""
+msgstr "Catégorie Parente"
#. module: idea
#: field:idea.idea,user_id:0
msgid "Creator"
-msgstr ""
+msgstr "Créateur"
#. module: idea
#: view:idea.idea:0
msgid "Open"
-msgstr ""
+msgstr "Ouvert"
#. module: idea
#: field:idea.comment,idea_id:0
@@ -320,43 +324,42 @@ msgstr ""
#: field:idea.vote.stat,idea_id:0
#: view:idea.idea:0
msgid "Idea"
-msgstr ""
+msgstr "Idée"
#. module: idea
#: selection:idea.idea,state:0
msgid "Canceled"
-msgstr ""
+msgstr "Annulée"
#. module: idea
#: model:ir.ui.menu,name:idea.menu_idea_vote
msgid "All Votes"
-msgstr ""
+msgstr "Tous les Votes"
#. module: idea
#: field:idea.idea,vote_ids:0
msgid "Vote"
-msgstr ""
+msgstr "Vote"
#. module: idea
#: model:ir.actions.act_window,name:idea.action_idea_idea_draft_my
#: model:ir.ui.menu,name:idea.menu_idea_idea_draft_my
msgid "My Draft Ideas"
-msgstr ""
+msgstr "Mes Idées Brouillon"
#. module: idea
#: model:ir.actions.act_window,name:idea.action_idea_idea_categ_open
#: model:ir.actions.act_window,name:idea.action_idea_idea_open
#: model:ir.ui.menu,name:idea.menu_idea_idea_open
msgid "Open Ideas"
-msgstr ""
+msgstr "Idées Ouvertes"
#. module: idea
#: model:ir.ui.menu,name:idea.menu_tools
msgid "Tools"
-msgstr ""
+msgstr "Outils"
#. module: idea
#: help:idea.idea,description:0
msgid "Content of the idea"
-msgstr ""
-
+msgstr "Contenu de l'Idée"
diff --git a/addons/l10n_be/account.report.report.csv b/addons/l10n_be/account.report.report.csv
index 0ae4993b5de..8bf965c741c 100644
--- a/addons/l10n_be/account.report.report.csv
+++ b/addons/l10n_be/account.report.report.csv
@@ -1,21 +1,21 @@
-expression,note,parent_id,sequence,expression_status,style,type,code,name
-0,,,,0,1,indicator,BILAN,Bilan
-"report('BIMMO','BSTOCK','BREAL','BDISPO')",,BILAN,,0,2,fiscal,Actif,Actif
-balance('2'),,Actif,,0,3,indicator,BIMMO,Valeurs immobilisées
-balance('3'),,Actif,2,0,3,indicator,BSTOCK,Stocks
-balance('4'),,Actif,3,0,3,indicator,BREAL,Réalisable
-balance('5'),,Actif,4,0,3,fiscal,BDISPO,Disponible
-report('BCAP') + report('BRESNET'),,BILAN,1,0,2,fiscal,PASSIF,Passif
-balance('1'),,PASSIF,1,0,5,indicator,BCAP,Capitaux propores
--balance('7')+balance('6'),,PASSIF,,0,3,fiscal,BRESNET,Résultat net
-0,,,,0,1,fiscal,CRES,Compte des résultats
-"report('CCHAR','CBENEF')",,CRES,,0,2,fiscal,CRESACTIF,Résultat Actif
-balance('6'),,CRESACTIF,,0,2,fiscal,CCHAR,Total des charges
-report('CRESPROD'),,CRES,,0,2,fiscal,CRESPASSIF,Résultat Passif
--balance('7'),,CRESPASSIF,,0,2,fiscal,CRESPROD,Total des produits
--balance('7')+balance('6'),,CRESACTIF,,0,2,fiscal,CBENEF,Résultat (Bénéfice)
-0,,,,0,3,indicator,IIMMO,Immobilisations
-"balance('1')/balance(map(str(range(21,29))))","Dans une entreprise normalement équilibrée, les valeurs immobilisées sont couvertes en premier lieu par les capitaux propres et, en second lieu, par tout ou partie du passif à long terme. Idéalement, ce ratio (rapport entre capitaux permanents et les valeurs immobilisées) doit être suppérieur à l'unité.",IIMMO,,"balance('1')/balance(map(str(range(21,29)))) - 1",3,indicator,CIMMO,Couverture des immobilisations
-0,,,,0,2,indicator,ITRE,Trésorerie
-"balance('3','4','5') / balance('101','13','15','16','17','18')",Détermine si l'entreprise a la possibilité de s'acquitter de ses dettes à court terme dans des conditions normales. Calculé comme suit: (Stocks + Réalisable + Disponible ) / Passif exigible à court terme,ITRE,,"balance('3','4','5') / balance('101','13','15','16','17','18')",3,indicator,IFR,Indice du fond de roulement
-"balance('4','5') / balance('101','13','15','16','17','18')",,ITRE,,"balance('4','5') / balance('101','13','15','16','17','18')",5,indicator,RTRE,Ratio de trésorerie
+"expression","note","parent_id","sequence","badness_limit","goodness_limit","type","code","name"
+0,,,,0,1,"indicator","BILAN","Bilan"
+"report('BIMMO','BSTOCK','BREAL','BDISPO')",,"BILAN",,0,1,"fiscal","Actif","Actif"
+"balance('2')",,"Actif",,0,1,"indicator","BIMMO","Valeurs immobilisées"
+"balance('3')",,"Actif",2,0,1,"indicator","BSTOCK","Stocks"
+"balance('4')",,"Actif",3,0,1,"indicator","BREAL","Réalisable"
+"balance('5')",,"Actif",4,0,1,"fiscal","BDISPO","Disponible"
+"report('BCAP') + report('BRESNET')",,"BILAN",1,0,1,"fiscal","PASSIF","Passif"
+"balance('1')",,"PASSIF",1,0,1,"indicator","BCAP","Capitaux propores"
+"-balance('7')+balance('6')",,"PASSIF",,0,1,"fiscal","BRESNET","Résultat net"
+0,,,,0,1,"fiscal","CRES","Compte des résultats"
+"report('CCHAR','CBENEF')",,"CRES",,0,1,"fiscal","CRESACTIF","Résultat Actif"
+"balance('6')",,"CRESACTIF",,0,1,"fiscal","CCHAR","Total des charges"
+"report('CRESPROD')",,"CRES",,0,1,"fiscal","CRESPASSIF","Résultat Passif"
+"-balance('7')",,"CRESPASSIF",,0,1,"fiscal","CRESPROD","Total des produits"
+"-balance('7')+balance('6')",,"CRESACTIF",,0,1,"fiscal","CBENEF","Résultat (Bénéfice)"
+0,,,,0,1,"indicator","IIMMO","Immobilisations"
+"balance('1')/balance(map(str(range(21,29))))","Dans une entreprise normalement équilibrée, les valeurs immobilisées sont couvertes en premier lieu par les capitaux propres et, en second lieu, par tout ou partie du passif à long terme. Idéalement, ce ratio (rapport entre capitaux permanents et les valeurs immobilisées) doit être suppérieur à l'unité.","IIMMO",,0,1,"indicator","CIMMO","Couverture des immobilisations"
+0,,,,0,1,"indicator","ITRE","Trésorerie"
+"balance('3','4','5') / balance('101','13','15','16','17','18')","Détermine si l'entreprise a la possibilité de s'acquitter de ses dettes à court terme dans des conditions normales. Calculé comme suit: (Stocks + Réalisable + Disponible ) / Passif exigible à court terme","ITRE",,0,1,"indicator","IFR","Indice du fond de roulement"
+"balance('4','5') / balance('101','13','15','16','17','18')",,"ITRE",,0,1,"indicator","RTRE","Ratio de trésorerie"
diff --git a/addons/l10n_be/account_pcmn_belgium.xml b/addons/l10n_be/account_pcmn_belgium.xml
index d7252313333..1951975d618 100644
--- a/addons/l10n_be/account_pcmn_belgium.xml
+++ b/addons/l10n_be/account_pcmn_belgium.xml
@@ -59,7 +59,6 @@
none
-
@@ -6434,7 +6433,7 @@
- Plan de Taxe Belge
+ Plan de Taxes Belge
I. Valeur des operations
diff --git a/addons/l10n_be/i18n/fr_FR.po b/addons/l10n_be/i18n/fr_FR.po
index e5438c16365..4968f890d53 100644
--- a/addons/l10n_be/i18n/fr_FR.po
+++ b/addons/l10n_be/i18n/fr_FR.po
@@ -4,79 +4,24 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@openerp.com"
-"POT-Creation-Date: 2008-09-11 15:41:43+0000"
-"PO-Revision-Date: 2008-09-11 15:41:43+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:24+0000\n"
+"PO-Revision-Date: 2008-10-13 12:11+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-13 12:44+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: l10n_be
-#: model:account.account.type,name:l10n_be.user_type_produit
-msgid "Produit"
-msgstr ""
-
-#. module: l10n_be
-#: model:account.account.type,name:l10n_be.user_type_tiers
-msgid "Tiers"
-msgstr ""
-
-#. module: l10n_be
-#: model:account.account.type,name:l10n_be.user_type_view
-msgid "Vue"
-msgstr ""
-
-#. module: l10n_be
-#: model:account.account.type,name:l10n_be.user_type_stock
-msgid "Stock et Encours"
-msgstr ""
-
-#. module: l10n_be
-#: model:account.account.type,name:l10n_be.user_type_immo
-msgid "Immobilisation"
-msgstr ""
-
-#. module: l10n_be
-#: model:account.account.type,name:l10n_be.user_type_tax
-msgid "Tax"
-msgstr "Impôts et taxes"
+#: constraint:account.tax.code:0
+msgid "Error ! You can not create recursive accounts."
+msgstr "Erreur! Vous ne pouvez pas créer de comptes récursifs."
#. module: l10n_be
#: model:ir.ui.menu,name:l10n_be.account_wizard_vat_declaration
msgid "VAT Declaration"
-msgstr ""
-
-#. module: l10n_be
-#: model:account.account.type,name:l10n_be.user_type_tiers_receiv
-msgid "Tiers - Recevable"
-msgstr ""
-
-#. module: l10n_be
-#: model:account.account.type,name:l10n_be.user_type_charge
-msgid "Charge"
-msgstr ""
-
-#. module: l10n_be
-#: model:account.account.type,name:l10n_be.user_type_financiers
-msgid "Financier"
-msgstr ""
-
-#. module: l10n_be
-#: model:account.account.type,name:l10n_be.user_type_capitaux
-msgid "Capital"
-msgstr ""
-
-#. module: l10n_be
-#: constraint:account.tax.code.template:0
-msgid "Error ! You can not create recursive Tax Codes."
-msgstr ""
-
-#. module: l10n_be
-#: model:account.account.type,name:l10n_be.user_type_tiers_payable
-msgid "Tiers - Payable"
-msgstr ""
-
+msgstr "Déclaration TVA"
diff --git a/addons/l10n_chart_uk_minimal/i18n/fr_FR.po b/addons/l10n_chart_uk_minimal/i18n/fr_FR.po
index 37b4a250448..e363fa287cd 100644
--- a/addons/l10n_chart_uk_minimal/i18n/fr_FR.po
+++ b/addons/l10n_chart_uk_minimal/i18n/fr_FR.po
@@ -4,19 +4,19 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@tinyerp.com"
-"POT-Creation-Date: 2008-09-04 08:35:53+0000"
-"PO-Revision-Date: 2008-09-04 08:35:53+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 16:31+0000\n"
+"PO-Revision-Date: 2008-10-14 13:30+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-14 14:00+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: l10n_chart_uk_minimal
#: constraint:account.tax.code:0
msgid "Error ! You can not create recursive accounts."
-msgstr ""
-
+msgstr "Erreur! Vous ne pouvez pas créer de comptes récursifs."
diff --git a/addons/l10n_fr/i18n/fr_FR.po b/addons/l10n_fr/i18n/fr_FR.po
index cb1f7eaaa9c..9124295c3a5 100644
--- a/addons/l10n_fr/i18n/fr_FR.po
+++ b/addons/l10n_fr/i18n/fr_FR.po
@@ -4,32 +4,33 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 4.3.0"
-"Report-Msgid-Bugs-To: support@tinyerp.com"
-"POT-Creation-Date: 2008-09-04 08:35:53+0000"
-"PO-Revision-Date: 2008-09-04 08:35:53+0000"
-"Last-Translator: <>"
-"Language-Team: "
-"MIME-Version: 1.0"
-"Content-Type: text/plain; charset=UTF-8"
-"Content-Transfer-Encoding: "
-"Plural-Forms: "
+"Project-Id-Version: OpenERP Server 4.3.0\n"
+"Report-Msgid-Bugs-To: support@openerp.com\n"
+"POT-Creation-Date: 2008-09-05 13:45+0000\n"
+"PO-Revision-Date: 2008-10-14 13:30+0000\n"
+"Last-Translator: Olivier Laurent \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2008-10-14 13:56+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
#. module: l10n_fr
#: model:account.account.type,name:l10n_fr.account_type_dettes
msgid "dettes long terme"
-msgstr ""
+msgstr "dettes long terme"
#. module: l10n_fr
#: model:ir.actions.wizard,name:l10n_fr.wizard_chart_report
#: model:ir.ui.menu,name:l10n_fr.menu_fr_chart_report
msgid "Account Report"
-msgstr ""
+msgstr "Rapport de compte"
#. module: l10n_fr
#: wizard_field:account.chart.report,init,company_id:0
msgid "Company"
-msgstr ""
+msgstr "Société"
#. module: l10n_fr
#: wizard_button:account.chart.report,init,pdf:0
@@ -39,45 +40,44 @@ msgstr ""
#. module: l10n_fr
#: wizard_field:account.chart.report,init,fiscalyear:0
msgid "Fiscal year"
-msgstr ""
+msgstr "Année fiscale"
#. module: l10n_fr
#: model:account.account.type,name:l10n_fr.account_type_immobilisations
msgid "immobilisations"
-msgstr ""
+msgstr "immobilisations"
#. module: l10n_fr
#: wizard_view:account.chart.report,init:0
msgid "Aged Trial Balance"
-msgstr ""
+msgstr "Echéancier"
#. module: l10n_fr
#: model:account.journal,name:l10n_fr.operations_journal
msgid "Journal des opérations diverses"
-msgstr ""
+msgstr "Journal des opérations diverses"
#. module: l10n_fr
#: model:account.journal,name:l10n_fr.bilan_journal
msgid "Journal d'ouverture"
-msgstr ""
+msgstr "Journal d'ouverture"
#. module: l10n_fr
#: wizard_button:account.chart.report,init,end:0
msgid "Cancel"
-msgstr ""
+msgstr "Annuler"
#. module: l10n_fr
#: model:account.account.type,name:l10n_fr.account_type_cloture
msgid "Cloture"
-msgstr ""
+msgstr "Cloture"
#. module: l10n_fr
#: model:account.account.type,name:l10n_fr.account_type_stocks
msgid "stocks"
-msgstr ""
+msgstr "stocks"
#. module: l10n_fr
#: wizard_field:account.chart.report,init,target_move:0
msgid "Target Moves"
-msgstr ""
-
+msgstr "Mouvements Cibles"
diff --git a/addons/l10n_lu/__init__.py b/addons/l10n_lu/__init__.py
new file mode 100644
index 00000000000..c185005c878
--- /dev/null
+++ b/addons/l10n_lu/__init__.py
@@ -0,0 +1,4 @@
+#
+# Generated by the Tiny ERP module recorder !
+#
+import wizard
diff --git a/addons/l10n_lu/__terp__.py b/addons/l10n_lu/__terp__.py
new file mode 100644
index 00000000000..49761b3fdb5
--- /dev/null
+++ b/addons/l10n_lu/__terp__.py
@@ -0,0 +1,24 @@
+{
+ "name" : "Luxembourg - Plan Comptable Minimum Normalise",
+ "version" : "1.0",
+ "author" : "Tiny",
+ "website" : "http://openerp.com",
+ "category" : "Localisation/Account Charts",
+ "description": """
+This module install:
+
+ *the KLUWER Chart of Accounts,
+ *the Tax Code Chart for Luxembourg
+ *the main taxes used in Luxembourg""",
+ "depends" : ["account","account_report","base_vat","base_iban"],
+ "init_xml" : [ ],
+ "demo_xml" : ["account.report.report.csv"],
+ "update_xml" : [
+ "account.tax.code.template.csv",
+ "l10n_lu_data.xml",
+ "account.tax.template.csv",
+ "l10n_lu_wizard.xml",
+ "l10n_lu_report.xml",
+ ],
+ "installable": True
+}
diff --git a/addons/l10n_lu/account.report.report.csv b/addons/l10n_lu/account.report.report.csv
new file mode 100644
index 00000000000..8bf965c741c
--- /dev/null
+++ b/addons/l10n_lu/account.report.report.csv
@@ -0,0 +1,21 @@
+"expression","note","parent_id","sequence","badness_limit","goodness_limit","type","code","name"
+0,,,,0,1,"indicator","BILAN","Bilan"
+"report('BIMMO','BSTOCK','BREAL','BDISPO')",,"BILAN",,0,1,"fiscal","Actif","Actif"
+"balance('2')",,"Actif",,0,1,"indicator","BIMMO","Valeurs immobilisées"
+"balance('3')",,"Actif",2,0,1,"indicator","BSTOCK","Stocks"
+"balance('4')",,"Actif",3,0,1,"indicator","BREAL","Réalisable"
+"balance('5')",,"Actif",4,0,1,"fiscal","BDISPO","Disponible"
+"report('BCAP') + report('BRESNET')",,"BILAN",1,0,1,"fiscal","PASSIF","Passif"
+"balance('1')",,"PASSIF",1,0,1,"indicator","BCAP","Capitaux propores"
+"-balance('7')+balance('6')",,"PASSIF",,0,1,"fiscal","BRESNET","Résultat net"
+0,,,,0,1,"fiscal","CRES","Compte des résultats"
+"report('CCHAR','CBENEF')",,"CRES",,0,1,"fiscal","CRESACTIF","Résultat Actif"
+"balance('6')",,"CRESACTIF",,0,1,"fiscal","CCHAR","Total des charges"
+"report('CRESPROD')",,"CRES",,0,1,"fiscal","CRESPASSIF","Résultat Passif"
+"-balance('7')",,"CRESPASSIF",,0,1,"fiscal","CRESPROD","Total des produits"
+"-balance('7')+balance('6')",,"CRESACTIF",,0,1,"fiscal","CBENEF","Résultat (Bénéfice)"
+0,,,,0,1,"indicator","IIMMO","Immobilisations"
+"balance('1')/balance(map(str(range(21,29))))","Dans une entreprise normalement équilibrée, les valeurs immobilisées sont couvertes en premier lieu par les capitaux propres et, en second lieu, par tout ou partie du passif à long terme. Idéalement, ce ratio (rapport entre capitaux permanents et les valeurs immobilisées) doit être suppérieur à l'unité.","IIMMO",,0,1,"indicator","CIMMO","Couverture des immobilisations"
+0,,,,0,1,"indicator","ITRE","Trésorerie"
+"balance('3','4','5') / balance('101','13','15','16','17','18')","Détermine si l'entreprise a la possibilité de s'acquitter de ses dettes à court terme dans des conditions normales. Calculé comme suit: (Stocks + Réalisable + Disponible ) / Passif exigible à court terme","ITRE",,0,1,"indicator","IFR","Indice du fond de roulement"
+"balance('4','5') / balance('101','13','15','16','17','18')",,"ITRE",,0,1,"indicator","RTRE","Ratio de trésorerie"
diff --git a/addons/l10n_lu/account.tax.code.template.csv b/addons/l10n_lu/account.tax.code.template.csv
new file mode 100644
index 00000000000..eea68172e6c
--- /dev/null
+++ b/addons/l10n_lu/account.tax.code.template.csv
@@ -0,0 +1,90 @@
+"parent_id:id","code","sign","id","name"
+,,1,"account_tax_code_template_1","Plan de Taxes Luxembourgeois"
+"account_tax_code_template_1",76,1,"account_tax_code_template_73","Solde à verser"
+"account_tax_code_template_1",10,-1,"account_tax_code_template_8","Prestations de services (art 26)"
+"account_tax_code_template_1",46,1,"account_tax_code_template_37","Total Base intracommunautaire"
+"account_tax_code_template_1",52,1,"account_tax_code_template_50","Acquisition triangulaire"
+"account_tax_code_template_1",61,1,"account_tax_code_template_63","Total Base Importation"
+"account_tax_code_template_1",74,1,"account_tax_code_template_71","Excédent de taxe"
+"account_tax_code_template_1",9,1,"account_tax_code_template_2","Total du chiffre d'affaires"
+"account_tax_code_template_2",5,1,"account_tax_code_template_5","Prélèvements privés de services (art 16)"
+"account_tax_code_template_2",4,1,"account_tax_code_template_4","Prélèvements privés de biens (art 13 a)"
+"account_tax_code_template_2",8,1,"account_tax_code_template_7","Point 5"
+"account_tax_code_template_2",3,1,"account_tax_code_template_3","1. Ventes ou recettes"
+"account_tax_code_template_2",6,1,"account_tax_code_template_6","Affectation de biens (art 13 b)"
+"account_tax_code_template_3","Exo",1,"account_tax_code_template_90","Total Exoneration"
+"account_tax_code_template_3",22,1,"account_tax_code_template_17","Chiffre d'affaires imposable (sans TVA)"
+"account_tax_code_template_8",422,1,"account_tax_code_template_87","Base des prestations de services (art.26/1/c et d)"
+"account_tax_code_template_8",92,1,"account_tax_code_template_78","Livraisons de biens (art. 26) 6%"
+"account_tax_code_template_17",33,1,"account_tax_code_template_28","Base CA 6%"
+"account_tax_code_template_17",32,1,"account_tax_code_template_27","Base CA 15%"
+"account_tax_code_template_17",82,1,"account_tax_code_template_31","Base CA au taux indéfini"
+"account_tax_code_template_17",35,1,"account_tax_code_template_30","Base CA 12%"
+"account_tax_code_template_17",34,1,"account_tax_code_template_29","Base CA 3%"
+"account_tax_code_template_37",44,1,"account_tax_code_template_40","Base intracom. 3%"
+"account_tax_code_template_37",85,1,"account_tax_code_template_42","Base intracom. exonérée"
+"account_tax_code_template_37",43,1,"account_tax_code_template_39","Base intracom. 6%"
+"account_tax_code_template_37",42,1,"account_tax_code_template_38","Base intracom. 15%"
+"account_tax_code_template_37",45,1,"account_tax_code_template_41","Base intracom. 12%"
+"account_tax_code_template_73",97,1,"account_tax_code_template_82","Taxe livraisons de biens (art. 26) 6%"
+"account_tax_code_template_90",19,1,"account_tax_code_template_16","Point 7"
+"account_tax_code_template_90",17,1,"account_tax_code_template_15","Autres opérations réalisées à l'étranger"
+"account_tax_code_template_90",13,1,"account_tax_code_template_11","Autres exonérations (art 43)"
+"account_tax_code_template_90",14,1,"account_tax_code_template_12","Autres exonérations (art 44)"
+"account_tax_code_template_90",11,1,"account_tax_code_template_9","Livraisons intracommunautaires de biens"
+"account_tax_code_template_90",12,1,"account_tax_code_template_10","Exportations (art 43)"
+"account_tax_code_template_90",15,1,"account_tax_code_template_13","Tabacs fabriqués"
+"account_tax_code_template_90",16,1,"account_tax_code_template_14","Livraisons / aquisitions intracom."
+"account_tax_code_template_71",73,-1,"account_tax_code_template_70","Taxe en amont déductible"
+"account_tax_code_template_71",98,1,"account_tax_code_template_83","Total de la taxe à payer"
+"account_tax_code_template_83",72,1,"account_tax_code_template_69","Total de la taxe"
+"account_tax_code_template_70",31,1,"account_tax_code_template_26","Taxe en amont déductible"
+"account_tax_code_template_26",27,1,"account_tax_code_template_22","Taxe déclarée comme débiteur"
+"account_tax_code_template_26",28,1,"account_tax_code_template_23","Taxe acquittée comme caution solidaire"
+"account_tax_code_template_26",29,-1,"account_tax_code_template_24","Taxe non déductible / op. exonérée"
+"account_tax_code_template_26",30,-1,"account_tax_code_template_25","Taxe non déductible (art 50)"
+"account_tax_code_template_26",23,1,"account_tax_code_template_18","Achat de B. et S. à l'intérieur du pays"
+"account_tax_code_template_26",24,1,"account_tax_code_template_19","Acquisitions intracom. de biens"
+"account_tax_code_template_26",26,1,"account_tax_code_template_21","Affectations de biens"
+"account_tax_code_template_26",25,1,"account_tax_code_template_20","Importations de biens"
+"account_tax_code_template_69",70,1,"account_tax_code_template_59","Total Taxe Importation (entr.)"
+"account_tax_code_template_69",219,1,"account_tax_code_template_88","Taxe des prestations de services (art.26/1/c et d)"
+"account_tax_code_template_69",87,1,"account_tax_code_template_44","Report"
+"account_tax_code_template_44",86,1,"account_tax_code_template_43","A reporter"
+"account_tax_code_template_43",51,1,"account_tax_code_template_49","Total Taxe intracom."
+"account_tax_code_template_49",47,1,"account_tax_code_template_45","Taxe intracom. 15%"
+"account_tax_code_template_49",81,1,"account_tax_code_template_53","Base à un taux exonéré"
+"account_tax_code_template_49",59,1,"account_tax_code_template_62","Base Importation (privées) 3%"
+"account_tax_code_template_49",50,1,"account_tax_code_template_48","Taxe intracom. 12%"
+"account_tax_code_template_49",48,1,"account_tax_code_template_46","taxe intracom. 6%"
+"account_tax_code_template_49",49,1,"account_tax_code_template_47","Taxe intracom. 3%"
+"account_tax_code_template_49",65,1,"account_tax_code_template_58","Taxe Importation (entr.) 12%"
+"account_tax_code_template_69",71,1,"account_tax_code_template_68","Total Taxe Importation (privées)"
+"account_tax_code_template_58",63,1,"account_tax_code_template_84","Taxe importation (entr.) 6%"
+"account_tax_code_template_58",64,1,"account_tax_code_template_57","Taxe Importation (entr.) 3%"
+"account_tax_code_template_58",62,1,"account_tax_code_template_56","Taxe Importation (entr.) 15%"
+"account_tax_code_template_63",58,1,"account_tax_code_template_61","Base Importation (privées) 6%"
+"account_tax_code_template_63",54,1,"account_tax_code_template_52","Base Importation (entr.) 6%"
+"account_tax_code_template_63",57,1,"account_tax_code_template_60","Base Importation (privées) 15%"
+"account_tax_code_template_63",56,1,"account_tax_code_template_55","Base Importation (entr.) 12%"
+"account_tax_code_template_63",55,1,"account_tax_code_template_54","Base Importation (entr.) 3%"
+"account_tax_code_template_63",53,1,"account_tax_code_template_51","Base importation (entr.) 15%"
+"account_tax_code_template_63",60,1,"account_tax_code_template_85","Base importation (privées.) 12%"
+"account_tax_code_template_68",68,1,"account_tax_code_template_66","Taxe Importation (privées) 3%"
+"account_tax_code_template_68",69,1,"account_tax_code_template_67","Taxe Importation (privées) 12%"
+"account_tax_code_template_68",67,1,"account_tax_code_template_65","Taxe Importation (privées) 6%"
+"account_tax_code_template_68",66,1,"account_tax_code_template_64","Taxe Importation (privées) 15%"
+"account_tax_code_template_87",89,1,"account_tax_code_template_75","Prestations de services (art. 26) 6%"
+"account_tax_code_template_87",88,1,"account_tax_code_template_74","Prestations de services (art. 26) 15%"
+"account_tax_code_template_87",91,1,"account_tax_code_template_77","Prestations de services (art. 26) 12%"
+"account_tax_code_template_87",90,1,"account_tax_code_template_76","Prestations de services (art. 26) 3%"
+"account_tax_code_template_88",94,1,"account_tax_code_template_79","Taxe prestations de services (art. 26) 6%"
+"account_tax_code_template_88",93,1,"account_tax_code_template_86","Taxe prestation de services (Art.26) 15%"
+"account_tax_code_template_88",96,1,"account_tax_code_template_81","Taxe prestations de services (art. 26) 12%"
+"account_tax_code_template_88",95,1,"account_tax_code_template_80","Taxe prestations de services (art. 26) 3%"
+"account_tax_code_template_43",41,1,"account_tax_code_template_89",41
+"account_tax_code_template_89",40,1,"account_tax_code_template_35","Taxes CA 12%"
+"account_tax_code_template_89",83,1,"account_tax_code_template_36","Taxe au taux indéfini"
+"account_tax_code_template_89",39,1,"account_tax_code_template_34","Taxe CA 3%"
+"account_tax_code_template_89",37,1,"account_tax_code_template_32","Taxe CA 15%"
+"account_tax_code_template_89",38,1,"account_tax_code_template_33","Taxe CA 6%"
diff --git a/addons/l10n_lu/account.tax.template.csv b/addons/l10n_lu/account.tax.template.csv
new file mode 100644
index 00000000000..93b4aaa28ea
--- /dev/null
+++ b/addons/l10n_lu/account.tax.template.csv
@@ -0,0 +1,35 @@
+"ref_base_code_id:id","ref_base_sign","name","ref_tax_code_id:id","account_collected_id:id","amount","chart_template_id:id","tax_code_id:id","child_depend","include_base_amount","parent_id:id","tax_sign","account_paid_id:id","base_code_id:id","id","ref_tax_sign"
+"account_tax_code_template_9",-1,"Intra Travail à façon 0%",,,"0.0000","l10nlu_chart_template",,0,0,,1,,"account_tax_code_template_9","account_tax_template_1",1
+"account_tax_code_template_9",-1,"Intra Livraison avec installation 0%",,,"0.0000","l10nlu_chart_template",,0,0,,1,,"account_tax_code_template_9","account_tax_template_2",1
+"account_tax_code_template_9",-1,"Intra transfert de biens 0%",,,"0.0000","l10nlu_chart_template",,0,0,,1,,"account_tax_code_template_9","account_tax_template_3",1
+"account_tax_code_template_13",-1,"Vente de tabacs 0%",,,"0.0000","l10nlu_chart_template",,0,0,,1,,"account_tax_code_template_13","account_tax_template_9",1
+"account_tax_code_template_10",-1,"Exportations 0%",,,"0.0000","l10nlu_chart_template",,0,0,,1,,"account_tax_code_template_10","account_tax_template_10",1
+,1,"Achats frais généraux 0%",,,"0.0000","l10nlu_chart_template",,0,0,,1,,,"account_tax_template_11",1
+"account_tax_code_template_29",-1,"Ventes 3%","account_tax_code_template_34","account_451000","0.0300","l10nlu_chart_template","account_tax_code_template_34",0,0,,1,"account_451000","account_tax_code_template_29","account_tax_template_5",-1
+"account_tax_code_template_28",-1,"Ventes 6%","account_tax_code_template_33","account_451000","0.0600","l10nlu_chart_template","account_tax_code_template_33",0,0,,1,"account_451000","account_tax_code_template_28","account_tax_template_6",-1
+"account_tax_code_template_30",-1,"Ventes 12%","account_tax_code_template_35","account_451000","0.1200","l10nlu_chart_template","account_tax_code_template_35",0,0,,1,"account_451000","account_tax_code_template_30","account_tax_template_7",-1
+"account_tax_code_template_27",-1,"Ventes 15%","account_tax_code_template_32","account_451000","0.1500","l10nlu_chart_template","account_tax_code_template_32",0,0,,1,"account_451000","account_tax_code_template_27","account_tax_template_8",-1
+,1,"Achats frais généraux 15%","account_tax_code_template_18","account_411000","0.1500","l10nlu_chart_template","account_tax_code_template_18",0,0,,1,"account_411000",,"account_tax_template_12",-1
+,1,"Achats Intra-Co",,,1,"l10nlu_chart_template",,1,0,,1,,"account_tax_code_template_38","account_tax_template_13",1
+,1,"Achats de Services Art.26",,,1,"l10nlu_chart_template",,1,0,,1,,"account_tax_code_template_38","account_tax_template_18",1
+,1,"Ventes de Services Art.26",,,1,"l10nlu_chart_template",,1,0,,1,,"account_tax_code_template_38","account_tax_template_21",1
+,1,"Livraison de Biens Triangulaire 1",,"account_411500","0.1500","l10nlu_chart_template","account_tax_code_template_45",0,0,,1,"account_411000","account_tax_code_template_38","account_tax_template_26",1
+,1,"Livraisons de biens triangulaire 2",,"account_411000","-0.1500","l10nlu_chart_template","account_tax_code_template_22",0,0,,-1,"account_451000",,"account_tax_template_25",1
+,1,"Importations a des fins de l'entreprise",,,1,"l10nlu_chart_template",,1,0,,1,,"account_tax_code_template_38","account_tax_template_30",1
+,1,"Importations a des fins privées",,,1,"l10nlu_chart_template",,1,0,,1,,"account_tax_code_template_38","account_tax_template_33",1
+,1,"Livraisons de Biens Art.26",,,1,"l10nlu_chart_template",,1,0,,1,,"account_tax_code_template_38","account_tax_template_36",1
+,1,"Livraison de Biens triangulaire",,,1,"l10nlu_chart_template",,1,0,,1,,"account_tax_code_template_38","account_tax_template_24",1
+,1,"Livraisons de biens triangulaire 2",,"account_411000","-0.1500","l10nlu_chart_template","account_tax_code_template_22",0,0,"account_tax_template_24",-1,"account_451000",,"account_tax_template_22",1
+,1,"Livraison de Biens Triangulaire 1",,"account_411500","0.1500","l10nlu_chart_template","account_tax_code_template_45",0,0,"account_tax_template_24",1,"account_411000","account_tax_code_template_38","account_tax_template_23",1
+,1,"Importations Intra-Co2",,"account_451000","-0.1500","l10nlu_chart_template","account_tax_code_template_56",0,0,"account_tax_template_30",-1,"account_411000","account_tax_code_template_51","account_tax_template_28",1
+,1,"Importations Intra-Co 1",,"account_411500","0.1500","l10nlu_chart_template","account_tax_code_template_20",0,0,"account_tax_template_30",1,"account_411000",,"account_tax_template_29",1
+,1,"Importations Fins Privées",,"account_451000","-0.1500","l10nlu_chart_template","account_tax_code_template_64",0,0,"account_tax_template_33",-1,"account_411000","account_tax_code_template_60","account_tax_template_31",1
+,1,"Importations Fins Privées",,"account_411500","0.1500","l10nlu_chart_template","account_tax_code_template_20",0,0,"account_tax_template_33",1,"account_411000",,"account_tax_template_32",1
+,1,"Livraison de Biens Art26",,"account_411000","-0.1500","l10nlu_chart_template","account_tax_code_template_22",0,0,"account_tax_template_36",-1,"account_451000",,"account_tax_template_34",1
+,1,"Livraisons de Biens Art26",,"account_411500","0.1500","l10nlu_chart_template","account_tax_code_template_82",0,0,"account_tax_template_36",1,"account_411000","account_tax_code_template_78","account_tax_template_35",1
+,1,"Achats Intra-Co 1",,"account_411500","0.1500","l10nlu_chart_template","account_tax_code_template_19",0,0,"account_tax_template_13",1,"account_411000","account_tax_code_template_38","account_tax_template_14",1
+,1,"Achats Intra-CO2",,"account_451000","-0.1500","l10nlu_chart_template","account_tax_code_template_45",0,0,"account_tax_template_13",-1,"account_411000",,"account_tax_template_15",1
+,1,"Services Intra-Co2",,"account_451000","-0.1500","l10nlu_chart_template","account_tax_code_template_45",0,0,"account_tax_template_18",-1,"account_411000",,"account_tax_template_17",1
+,1,"Services Intra-Co 1",,"account_411500","0.1500","l10nlu_chart_template","account_tax_code_template_22",0,0,"account_tax_template_18",1,"account_411000","account_tax_code_template_38","account_tax_template_16",1
+,1,"Services Intra-Co2",,"account_411000","-0.1500","l10nlu_chart_template","account_tax_code_template_22",0,0,"account_tax_template_21",-1,"account_451000",,"account_tax_template_19",1
+,1,"Services Intra-Co 1",,"account_411500","0.1500","l10nlu_chart_template","account_tax_code_template_86",0,0,"account_tax_template_21",1,"account_411000","account_tax_code_template_74","account_tax_template_20",1
diff --git a/addons/l10n_lu/l10n_lu_data.xml b/addons/l10n_lu/l10n_lu_data.xml
new file mode 100644
index 00000000000..ce071ad4cc5
--- /dev/null
+++ b/addons/l10n_lu/l10n_lu_data.xml
@@ -0,0 +1,3784 @@
+
+
+
+
+
+ View
+ view
+ none
+
+
+ Asset
+ asset
+ balance
+
+
+ Liability
+ liability
+ balance
+
+
+ Créances
+ creances
+ balance
+
+
+ Equity
+ equity
+ balance
+
+
+ Income
+ income
+ unreconciled
+
+
+ Expense
+ expense
+ unreconciled
+
+
+ Cash
+ cash
+ balance
+
+
+
+
+
+ 0
+ Plan KLUWER
+ view
+
+
+
+
+ 1
+ Fonds propres, prov. & dettes + d'1an
+
+
+
+ view
+
+
+ 2
+ Immobilis., dettes & créances à + d'1 an
+
+
+
+ view
+
+
+ 3
+ Stocks et commandes en cours d'exécution
+
+
+
+ view
+
+
+ 4
+ Créances et dettes à un an au plus
+
+
+
+ view
+
+
+ 5
+ Placements de trésorerie et disponible
+
+
+
+ view
+
+
+ 6
+ Charges
+
+
+
+ view
+
+
+ 7
+ Produits
+
+
+
+ view
+
+
+ 10
+ Capital
+
+
+
+ view
+
+
+ 12
+ Plus-values de réévaluation
+
+
+
+ view
+
+
+ 13
+ Réserves
+
+
+
+ view
+
+
+ 14
+ Résultat reporté
+
+
+
+ view
+
+
+ 15
+ Subsides en capital
+
+
+
+ view
+
+
+ 16
+ Provisions et impôts différés
+
+
+
+ view
+
+
+ 17
+ Dettes à plus d'un an
+
+
+
+ view
+
+
+ 20
+ Frais d'établissement
+
+
+
+ view
+
+
+ 21
+ Immobilisations incorporelles
+
+
+
+ view
+
+
+ 22
+ Terrains et constructions
+
+
+
+ view
+
+
+ 23
+ Installations, machines et outillages
+
+
+
+ view
+
+
+ 24
+ Mobilier et matériel roulant
+
+
+
+ view
+
+
+ 25
+ Immobilisation détenues en loc.-fin.
+
+
+
+ view
+
+
+ 27
+ Immobilis. corp. en cours & acptes versé
+
+
+
+ view
+
+
+ 28
+ Immobilisations financières
+
+
+
+ view
+
+
+ 30
+ Approvisionnements - matières premières
+
+
+
+ view
+
+
+ 31
+ Approvisionnements et fournitures
+
+
+
+ view
+
+
+ 32
+ En cours de fabrication
+
+
+
+ view
+
+
+ 33
+ Produits finis
+
+
+
+ view
+
+
+ 34
+ Marchandises
+
+
+
+ view
+
+
+ 36
+ Acomptes versés sur achats pour stocks
+
+
+
+ view
+
+
+ 40
+ Créances commerciales
+
+
+
+ view
+
+
+ 41
+ Autres créances à - d'un an
+
+
+
+ view
+
+
+ 42
+ Dettes à + d'1 an échéant dans l'année
+
+
+
+ view
+
+
+ 43
+ Dettes financières
+
+
+
+ view
+
+
+ 44
+ Dettes commerciales
+
+
+
+ view
+
+
+ 45
+ Dettes fiscales, salariales et sociales
+
+
+
+ view
+
+
+ 47
+ Dettes suite à l'affect. des résultats
+
+
+
+ view
+
+
+ 48
+ Dettes diverses
+
+
+
+ view
+
+
+ 49
+ Comptes de régularisation et cptes d'att
+
+
+
+ view
+
+
+ 51
+ Actions et parts
+
+
+
+ view
+
+
+ 52
+ Titres à revenu fixe
+
+
+
+ view
+
+
+ 53
+ Dépôts à terme
+
+
+
+ view
+
+
+ 55
+ Etablissements de crédit
+
+
+
+ view
+
+
+ 56
+ Ccp
+
+
+
+ view
+
+
+ 57
+ Caisses
+
+
+
+ view
+
+
+ 60
+ Approvisionnements et marchandises
+
+
+
+ view
+
+
+ 61
+ Services et biens divers
+
+
+
+ view
+
+
+ 62
+ Rémunérations, charges soc. et pensions
+
+
+
+ view
+
+
+ 64
+ Autres charges d'exploitation
+
+
+
+ view
+
+
+ 65
+ Charges financières
+
+
+
+ view
+
+
+ 66
+ Charges exceptionnelles
+
+
+
+ view
+
+
+ 67
+ Impôts sur le résultat
+
+
+
+ view
+
+
+ 70
+ Chiffre d'affaires
+
+
+
+ view
+
+
+ 71
+ Variation des stocks & comm. en cours
+
+
+
+ view
+
+
+ 74
+ Autres produits d'exploitation
+
+
+
+ view
+
+
+ 75
+ Produits financiers
+
+
+
+ view
+
+
+ 77
+ Régul. d'impôts & reprises prov. fisc.
+
+
+
+ view
+
+
+ 140
+ Bénéfice reporté
+
+
+
+ view
+
+
+ 175
+ Dettes commerciales
+
+
+
+ view
+
+
+ 200
+ Frais de constitution et d'augm. capital
+
+
+
+ view
+
+
+ 201
+ Frais d'augmentation de capital
+
+
+
+ view
+
+
+ 202
+ Fr.d'emission d'empr,prime remboursement
+
+
+
+ view
+
+
+ 203
+ Autres frais d'établissement
+
+
+
+ view
+
+
+ 204
+ Frais de restructuration
+
+
+
+ view
+
+
+ 210
+ Frais de recherche et de développement
+
+
+
+ view
+
+
+ 211
+ Concessions, brevets et licences
+
+
+
+ view
+
+
+ 212
+ Fonds de commerce
+
+
+
+ view
+
+
+ 220
+ Terrains
+
+
+
+ view
+
+
+ 221
+ Constructions
+
+
+
+ view
+
+
+ 222
+ Terrains bâtis
+
+
+
+ view
+
+
+ 223
+ Autres droits réels sur des immeubles
+
+
+
+ view
+
+
+ 230
+ Installations
+
+
+
+ view
+
+
+ 231
+ Machines
+
+
+
+ view
+
+
+ 240
+ Installation gen, agencements,..
+
+
+
+ view
+
+
+ 241
+ Mobilier
+
+
+
+ view
+
+
+ 242
+ Matériel roulant
+
+
+
+ view
+
+
+ 280
+ Participation dans des entreprises liées
+
+
+
+ view
+
+
+ 281
+ Créances sur des entreprises liées
+
+
+
+ view
+
+
+ 282
+ Participations entr. avec lien particip.
+
+
+
+ view
+
+
+ 283
+ Créances / entrepr. avec lien particip.
+
+
+
+ view
+
+
+ 290
+ Créances commerciales
+
+
+
+ view
+
+
+ 291
+ Autres créances
+
+
+
+ view
+
+
+ 411
+ T.v.a en amont
+
+
+
+ view
+
+
+ 425
+ Dettes commerciales échéant ds l'année
+
+
+
+ view
+
+
+ 451
+ T.v.a. en aval
+
+
+
+ view
+
+
+ 452
+ Impôts et taxes à payer
+
+
+
+ view
+
+
+ 512
+ Actions & parts - options acquises
+
+
+
+ view
+
+
+ 550
+ Comptes courants bancaires
+
+
+
+ view
+
+
+ 609
+ Variation des stocks
+
+
+
+ view
+
+
+ 610
+ Loyers et charges locatives
+
+
+
+ view
+
+
+ 612
+ Fournitures faites à l'entreprise
+
+
+
+ view
+
+
+ 613
+ Rétributions de tiers
+
+
+
+ view
+
+
+ 615
+ publicités
+
+
+
+ view
+
+
+ 620
+ Rémunérations et avantages soc. directs
+
+
+
+ view
+
+
+ 621
+ Charges sociales
+
+
+
+ view
+
+
+ 624
+ Pensions
+
+
+
+
+
+ 630
+ Dotations aux corrections de val./immob.
+
+
+
+ view
+
+
+ 631
+ Dotations aux correct. de val./stocks
+
+
+
+ view
+
+
+ 632
+ Dot. cor. val s/en-cours,pr fini
+
+
+
+ view
+
+
+ 633
+ Dotations correct. val./cr. comm. +1an
+
+
+
+ view
+
+
+ 634
+ Dotations correct. val./cr. comm. -1an
+
+
+
+ view
+
+
+ 635
+ Provisions pour pensions et oblig. sim.
+
+
+
+ view
+
+
+ 636
+ Provisions pour grosses réparations
+
+
+
+ view
+
+
+ 637
+ Provisions pour autres risques & charges
+
+
+
+ view
+
+
+ 640
+ Taxes et impôts directs
+
+
+
+ view
+
+
+ 651
+ Réductions de valeur / actifs circulants
+
+
+
+ view
+
+
+ 660
+ Dotations aux corrections de val. except
+
+
+
+ view
+
+
+ 661
+ Dotations aux corrections de val./financ
+
+
+
+ view
+
+
+ 662
+ Provisions pour risques & charges except
+
+
+
+ view
+
+
+ 750
+ Produits des immob. financières
+
+
+
+ view
+
+
+ 751
+ Produits des actifs circulants
+
+
+
+ view
+
+
+ 1750
+ Fournisseurs - dettes en compte
+
+
+
+ view
+
+
+ 1751
+ Effets à payer
+
+
+
+ view
+
+
+ 6120
+ Eau, gaz, électricité, carburants
+
+
+
+ view
+
+
+ 6123
+ Téléphone, télégrammes, frais post.
+
+
+
+ view
+
+
+ 100000
+ Capital souscrit
+
+
+
+ other
+
+
+ 101000
+ Capital non appelé (-)
+
+
+
+ other
+
+
+ 109000
+ Compte de l'exploitant
+
+
+
+ other
+
+
+ 110000
+ Primes d'émission
+
+
+
+ other
+
+
+ 120000
+ Plus-values de rééval. sur immob. incorp
+
+
+
+ other
+
+
+ 121000
+ Plus-values de rééval. sur immob. corp.
+
+
+
+ other
+
+
+ 122000
+ Plus-values de rééval. sur immob. fin.
+
+
+
+ other
+
+
+ 123000
+ Plus-values de réévaluation sur stocks
+
+
+
+ other
+
+
+ 124000
+ Reprises de réd. de val./plac. de très.
+
+
+
+ other
+
+
+ 130000
+ Réserve légale
+
+
+
+ other
+
+
+ 131000
+ Réserves indisponibles
+
+
+
+ other
+
+
+ 132000
+ Réserves immunisées
+
+
+
+ other
+
+
+ 133000
+ Réserves disponibles
+
+
+
+ other
+
+
+ 134000
+ Autres reserves
+
+
+
+ other
+
+
+ 140000
+ Résultats reportés
+
+
+
+ other
+
+
+ 140100
+ Bénéfice de l'exercice
+
+
+
+ other
+
+
+ 140200
+ Perte de l'exercice
+
+
+
+ other
+
+
+ 141000
+ Perte reportée
+
+
+
+ other
+
+
+ 150000
+ Subsides en cap. - montants obtenus
+
+
+
+ other
+
+
+ 151000
+ Subsides-montants transf. aux résultats
+
+
+
+ other
+
+
+ 160000
+ Provisions pour pensions
+
+
+
+ other
+
+
+ 161000
+ Provisions pour charges fiscales
+
+
+
+ other
+
+
+ 162000
+ Provisions pr grosses rép. & gros entr.
+
+
+
+ other
+
+
+ 163000
+ Provisions pour rente viagère
+
+
+
+ other
+
+
+ 164000
+ Provisions pr sûretés pers. et réelles
+
+
+
+ other
+
+
+ 165000
+ Provisions diverses
+
+
+
+ other
+
+
+ 165400
+ Provisions pour autres risques & charges
+
+
+
+ other
+
+
+ 166000
+ Provisions pour charges de commandes
+
+
+
+ other
+
+
+ 168000
+ Impôts différés
+
+
+
+ other
+
+
+ 169000
+ Autres provisions
+
+
+
+ other
+
+
+ 170000
+ Emprunts convertibles
+
+
+
+ other
+
+
+ 171000
+ Emprunts obligataires non convertibles
+
+
+
+ other
+
+
+ 172000
+ Dettes de loc. - financ. et assimilées
+
+
+
+ other
+
+
+ 173000
+ Etablissements de crédit
+
+
+
+ other
+
+
+ 174000
+ Autres emprunts
+
+
+
+ other
+
+
+ 175000
+ Fournisseurs - entreprises apparentées
+
+
+
+ other
+
+
+ 175010
+ Dettes en cpte - fourniss. ordinaires
+
+
+
+ other
+
+
+ 175100
+ Effets à payer - entreprises apparentées
+
+
+
+ other
+
+
+ 175110
+ Effets à payer - fournisseurs ordinaires
+
+
+
+ other
+
+
+ 176000
+ Acomptes reçus sur commandes
+
+
+
+ other
+
+
+ 177100
+ Entreprises liées
+
+
+
+ other
+
+
+ 177200
+ Lien de participation
+
+
+
+ other
+
+
+ 178000
+ Cautionnements reçus en numéraire
+
+
+
+ other
+
+
+ 179000
+ Dettes diverses
+
+
+
+ other
+
+
+ 180000
+ Comptes de liaison établiss. & succurs.
+
+
+
+ other
+
+
+ 200000
+ Frais de constitution
+
+
+
+ other
+
+
+ 200900
+ Amort s/fr de constitution
+
+
+
+ other
+
+
+ 201000
+ Frais d'augmentation de capital
+
+
+
+ other
+
+
+ 201900
+ Amort s/fr d'augmentation du capital
+
+
+
+ other
+
+
+ 202000
+ Fr.d'emission d'empr,prime remboursement
+
+
+
+ other
+
+
+ 202900
+ Amort s/fr d'émission d'emprunts
+
+
+
+ other
+
+
+ 203000
+ Autres frais d'établissement
+
+
+
+ other
+
+
+ 203900
+ Amort s/autres fr d'établissement
+
+
+
+ other
+
+
+ 204000
+ Frais de restructuration
+
+
+
+ other
+
+
+ 204900
+ Amort s/fr de restructuration
+
+
+
+ other
+
+
+ 210000
+ Frais de recherche et développement
+
+
+
+ other
+
+
+ 210900
+ Amort. s/fr de recherche et développemen
+
+
+
+ other
+
+
+ 211100
+ Concessions, brevet à titre onéreux
+
+
+
+ other
+
+
+ 211190
+ Amort. s/concession, brevet acquis
+
+
+
+ other
+
+
+ 211200
+ Conc., brevets créés par l'entr. même
+
+
+
+ other
+
+
+ 211290
+ Amort. s/concession, brevets créés
+
+
+
+ other
+
+
+ 212000
+ Fonds de commerce
+
+
+
+ other
+
+
+ 212900
+ Amort s/fonds de commerce
+
+
+
+ other
+
+
+ 213000
+ Acomptes versés s/immob. incorp
+
+
+
+ other
+
+
+ 214000
+ Surprix afférent à l'acquisit. d'1 part.
+
+
+
+ other
+
+
+ 220000
+ Terrains
+
+
+
+ other
+
+
+ 220800
+ Plus-values actées sur terrains
+
+
+
+ other
+
+
+ 220900
+ Réduction de valeur sur terrains
+
+
+
+ other
+
+
+ 221800
+ Plus-values actées sur constructions
+
+
+
+ other
+
+
+ 221900
+ Amort. sur constructions
+
+
+
+ other
+
+
+ 222800
+ Plus-values actées s/terrains bâtis
+
+
+
+ other
+
+
+ 222900
+ Amort. sur terrains bâtis
+
+
+
+ other
+
+
+ 223800
+ +values actées s/autres droits
+
+
+
+ other
+
+
+ 223900
+ Amort s/autres droits réels
+
+
+
+ other
+
+
+ 230000
+ Installations techniques
+
+
+
+ other
+
+
+ 230900
+ Amort s/installations techniques
+
+
+
+ other
+
+
+ 231000
+ Machines
+
+
+
+ other
+
+
+ 231900
+ Amortissement s/machines
+
+
+
+ other
+
+
+ 232000
+ Outillage
+
+
+
+ other
+
+
+ 233000
+ Pièces de rechange
+
+
+
+ other
+
+
+ 238000
+ Plus-values actées sur i./m./o.
+
+
+
+ other
+
+
+ 239000
+ Amortissements sur i./m./o.
+
+
+
+ other
+
+
+ 240000
+ Installation gen, agencements,..
+
+
+
+ other
+
+
+ 240900
+ Amort s/autres installations,outillage
+
+
+
+ other
+
+
+ 241000
+ Mobilier
+
+
+
+ other
+
+
+ 241900
+ Amort. sur mobilier
+
+
+
+ other
+
+
+ 242000
+ Matériel roulant
+
+
+
+ other
+
+
+ 242900
+ Amort. s/matériel roulant
+
+
+
+ other
+
+
+ 243000
+ Matériel de bureau
+
+
+
+ other
+
+
+ 243900
+ Amort. s/matériel de bureau
+
+
+
+ other
+
+
+ 250000
+ Terrains et constructions en loc.-fin.
+
+
+
+ other
+
+
+ 251000
+ Install., machines & out. en loc.-fin.
+
+
+
+ other
+
+
+ 252000
+ Mobilier et mat. roulant en loc.-fin.
+
+
+
+ other
+
+
+ 260000
+ Autres immobilisations corporelles
+
+
+
+ other
+
+
+ 270000
+ Immobilisations en cours
+
+
+
+ other
+
+
+ 271000
+ Avances & acptes versés / immob.en cours
+
+
+
+ other
+
+
+ 280000
+ Parts dans des entreprises liées
+
+
+
+ other
+
+
+ 280100
+ Montants non appelés
+
+
+
+ other
+
+
+ 280800
+ +values actées s/parts entreprises liées
+
+
+
+ other
+
+
+ 280900
+ Réduction de valeur s/parts
+
+
+
+ other
+
+
+ 281000
+ Créances s/des entreprises liées
+
+
+
+ other
+
+
+ 281100
+ Effets à recevoir
+
+
+
+ other
+
+
+ 281700
+ Créances douteuses (entreprises liées)
+
+
+
+ other
+
+
+ 281900
+ Réduction de valeur s/cré. entre. liées
+
+
+
+ other
+
+
+ 282000
+ Participations
+
+
+
+ other
+
+
+ 282100
+ Montants non appelés
+
+
+
+ other
+
+
+ 282800
+ +values actées s/participations
+
+
+
+ other
+
+
+ 282900
+ Réduction de valeur s/participations
+
+
+
+ other
+
+
+ 283000
+ Créances s/entrepr. lien de particip.
+
+
+
+ other
+
+
+ 283100
+ Effets à recevoir
+
+
+
+ other
+
+
+ 283200
+ Titres à revenu fixe
+
+
+
+ other
+
+
+ 283700
+ Créances douteuses (s/participations)
+
+
+
+ other
+
+
+ 283900
+ Réductions de valeur s/cr particip.
+
+
+
+ other
+
+
+ 284000
+ Titres à caractère d'immobilisation
+
+
+
+ other
+
+
+ 285000
+ Autres prêts
+
+
+
+ other
+
+
+ 286000
+ Actions ou parts propres
+
+
+
+ other
+
+
+ 288000
+ Cautionnements versés en numéraire
+
+
+
+ other
+
+
+ 290000
+ Créances commerciales
+
+
+
+ other
+
+
+ 290100
+ Effets à recevoir
+
+
+
+ other
+
+
+ 290600
+ Acomptes versés
+
+
+
+ other
+
+
+ 290700
+ Créances douteuses s/cr commerciales
+
+
+
+ other
+
+
+ 290900
+ Réduction de valeur s/cr commerciales
+
+
+
+ other
+
+
+ 291000
+ Autres créances
+
+
+
+ other
+
+
+ 291100
+ Effets à recevoir
+
+
+
+ other
+
+
+ 291700
+ Créances douteuses s/autres créances
+
+
+
+ other
+
+
+ 291900
+ Réduction de valeur s/autres créances
+
+
+
+ other
+
+
+ 300000
+ Stocks matières premières val. d'acquis.
+
+
+
+ other
+
+
+ 309000
+ Réduction de valeur s/mat. premières
+
+
+
+ other
+
+
+ 310000
+ Matières consommables
+
+
+
+ other
+
+
+ 310600
+ Emballages commerciaux
+
+
+
+ other
+
+
+ 319000
+ Réd. de val. - stocks fournitures (-)
+
+
+
+ other
+
+
+ 320000
+ En cours de fabrication - val. d'acquis.
+
+
+
+ other
+
+
+ 329000
+ Réductions de valeur / en cours (-)
+
+
+
+ other
+
+
+ 330000
+ Valeur d'acquisition des produits finis
+
+
+
+ other
+
+
+ 339000
+ Réduction de val. / produits finis (-)
+
+
+
+ other
+
+
+ 340000
+ Stocks marchandises - valeur d'acquis.
+
+
+
+ other
+
+
+ 349000
+ Réd. de val. / stocks marchandises (-)
+
+
+
+ other
+
+
+ 360000
+ Acomptes versés / achats pour stocks
+
+
+
+ other
+
+
+ 369000
+ Réd. de val. / acptes versés stocks (-)
+
+
+
+ other
+
+
+ 400000
+ Clients
+
+
+
+ other
+
+
+ 401000
+ Effets à recevoir - clients
+
+ True
+
+
+ receivable
+
+
+
+ 403000
+ Créances s/entreprises apparentées
+
+
+
+ receivable
+
+
+ 404000
+ Produits à recevoir (factures à établir)
+
+
+
+ other
+
+
+ 406000
+ Acomptes versés aux fournisseurs
+
+
+
+ payable
+
+
+ 407000
+ Créances commerciales douteuses
+
+
+
+ other
+
+
+ 408000
+ Ecarts de conversion de devises/créances
+
+
+
+ other
+
+
+ 409000
+ Réductions de valeur / créances comm.
+
+
+
+ other
+
+
+ 410000
+ Capital appelé, non versé
+
+
+
+ other
+
+
+ 411000
+ T.v.a en amont
+
+ True
+
+ other
+
+
+ 411100
+ T.v.a soumise à l'origine amont
+
+
+
+ other
+
+
+ 411500
+ Compte courant tva
+
+
+
+ other
+
+
+ 412000
+ Impots et vers. fiscaux à récupérer
+
+
+
+ other
+
+
+ 413100
+ Autres créances sur entrepr. liées
+
+
+
+ other
+
+
+ 413200
+ Autres créances / entrepr. apparentées
+
+
+
+ other
+
+
+ 414000
+ Produits à recevoir (non commerciaux)
+
+
+
+ other
+
+
+ 416000
+ Créances diverses
+
+
+
+ other
+
+
+ 417000
+ Créances douteuses
+
+
+
+ other
+
+
+ 418000
+ Cautionnements versés en numéraire
+
+
+
+ other
+
+
+ 419000
+ Réductions de val. / autres créances (-)
+
+
+
+ other
+
+
+ 420000
+ Emprunts obligataires convert.
+
+
+
+ other
+
+
+ 421000
+ Emprunts oblig. non convertibles
+
+
+
+ other
+
+
+ 422000
+ Dettes de location-financ. et assimilées
+
+
+
+ other
+
+
+ 423000
+ Etablissements de crédit
+
+
+
+ other
+
+
+ 424000
+ Autres emprunts
+
+
+
+ other
+
+
+ 425000
+ Fournisseurs
+
+
+
+ other
+
+
+ 425100
+ Effets à payer
+
+
+
+ other
+
+
+ 426000
+ Acomptes reçus / commandes éch. ds l'an
+
+
+
+ other
+
+
+ 427100
+ Entreprises liées
+
+
+
+ other
+
+
+ 427200
+ Lien de participation
+
+
+
+ other
+
+
+ 428000
+ Cautionnements reçus en numéraire
+
+
+
+ other
+
+
+ 429000
+ Dettes diverses échéant dans l'année
+
+
+
+ other
+
+
+ 430000
+ Banques-emprunts en compte à terme fixe
+
+
+
+ other
+
+
+ 431000
+ Banques-promesses
+
+
+
+ other
+
+
+ 432000
+ Banques-crédit d'acceptation
+
+
+
+ other
+
+
+ 433000
+ Banques-dettes en compte courant
+
+
+
+ other
+
+
+ 438000
+ Autres emprunts
+
+
+
+ other
+
+
+ 440000
+ Fournisseurs
+
+
+
+ other
+
+
+ 441000
+ Effets à payer
+
+ True
+
+
+ other
+
+
+ 442000
+ Factures à recevoir
+
+ True
+
+
+ other
+
+
+ 443100
+ Entreprises liées
+
+
+
+ other
+
+
+ 443200
+ Lien de participation
+
+
+
+ other
+
+
+ 450000
+ Dettes fiscales estimées
+
+
+
+ other
+
+
+ 451000
+ T.v.a en aval
+
+ True
+
+
+ other
+
+
+ 451100
+ T.v.a soumise à l'origine aval
+
+ True
+
+
+ other
+
+
+ 451200
+ T.v.a intracom
+
+ True
+
+
+ other
+
+
+ 451500
+ Compte courant tva
+
+
+
+ other
+
+
+ 452000
+ Impôts et taxes à payer à l'état
+
+
+
+ other
+
+
+ 452100
+ Impôts et taxes à payer aux adm commun
+
+
+
+ other
+
+
+ 453000
+ Retenues s/salaires
+
+
+
+ other
+
+
+ 454000
+ Cass (centre..de sécurite soc)
+
+
+
+ other
+
+
+ 455000
+ Personnel-rémuneration à payer
+
+
+
+ other
+
+
+ 456000
+ Personnel-avances et acomptes
+
+
+
+ other
+
+
+ 458000
+ Autres dettes sociales
+
+
+
+ other
+
+
+ 460000
+ Acomptes reçus sur commandes
+
+
+
+ other
+
+
+ 470000
+ Dividendes-tantièmes d'ex. ant. à payer
+
+
+
+ other
+
+
+ 471000
+ Dividendes de l'exercice à payer
+
+
+
+ other
+
+
+ 472000
+ Tantièmes de l'exercice à payer
+
+
+
+ other
+
+
+ 473000
+ Autres allocataires à payer
+
+
+
+ other
+
+
+ 480000
+ Obligations et coupons échus (dettes)
+
+
+
+ other
+
+
+ 487000
+ Cautionnements reçus en numeraire
+
+
+
+ other
+
+
+ 488000
+ Autres dettes diverses
+
+
+
+ other
+
+
+ 490000
+ Charges à reporter (payées d'avance)
+
+
+
+ other
+
+
+ 491000
+ Produits acquis
+
+
+
+ other
+
+
+ 492000
+ Charges à imputer
+
+
+
+ other
+
+
+ 493000
+ Produits à reporter
+
+
+
+ other
+
+
+ 499000
+ Comptes d'attente
+
+
+
+ other
+
+
+ 499800
+ Solde équilibre en devises (hors pc)
+
+
+
+ other
+
+
+ 500000
+ Actions propres
+
+
+
+ other
+
+
+ 510000
+ Actions et parts
+
+
+
+ other
+
+
+ 510100
+ Montant non appelé s/action.part
+
+
+
+ other
+
+
+ 510900
+ Réduction valeur s/action et parts
+
+
+
+ other
+
+
+ 512000
+ Parts dans entreprises liées
+
+
+
+ other
+
+
+ 512100
+ Montant non appelé s/parts
+
+
+
+ other
+
+
+ 512900
+ Réduction valeur s/part ent. liées
+
+
+
+ other
+
+
+ 520000
+ Titres à rev. fixes - valeur d'acquis.
+
+
+
+ other
+
+
+ 529000
+ Titres à rev. fixes - réd. de val.
+
+
+
+ other
+
+
+ 530000
+ Dépôts à terme
+
+
+
+ other
+
+
+ 539000
+ Réductions de valeur / dépôts à terme
+
+
+
+ other
+
+
+ 540000
+ Valeurs échues à l'encaissement
+
+
+
+ other
+
+
+ 541000
+ Coupons à encaisser
+
+
+
+ other
+
+
+ 550000
+ Ets de crédit-compte à vue
+
+
+
+ other
+
+
+ 550100
+ Chèques et virements émis
+
+
+
+ other
+
+
+ 550900
+ Réduction valeur s/cpte a vue
+
+
+
+ other
+
+
+ 560000
+ Ccp - compte courant
+
+
+
+ other
+
+
+ 561000
+ Ccp - chèques émis
+
+
+
+ other
+
+
+ 570000
+ Caisses
+
+
+
+ other
+
+
+ 570900
+ Réduction valeur s/caisse
+
+
+
+ other
+
+
+ 580000
+ Virements internes
+
+ True
+
+
+ other
+
+
+ 600000
+ Achats de matières premières
+
+
+
+ other
+
+
+ 601000
+ Achats de fournitures
+
+
+
+ other
+
+
+ 602000
+ Achats de services, travaux et études
+
+
+
+ other
+
+
+ 603000
+ Achats de sous-traitances générales
+
+
+
+ other
+
+
+ 604000
+ Achats de marchandises
+
+
+
+ other
+
+
+ 607000
+ Achats produits et demi-produits
+
+
+
+ other
+
+
+ 608000
+ Remises, ristournes et rabais sur achats
+
+
+
+ other
+
+
+ 609000
+ Variation de stock mat. premières
+
+
+
+ other
+
+
+ 609100
+ Variation stock mat. consommables
+
+
+
+ other
+
+
+ 609400
+ Variation stock marchandises
+
+
+
+ other
+
+
+ 610000
+ Loyers et charges locatives
+
+
+
+ other
+
+
+ 610100
+ Redevances de crédit bail
+
+
+
+ other
+
+
+ 611000
+ Entretiens et réparations des locaux
+
+
+
+ other
+
+
+ 612000
+ Consommation - eau
+
+
+
+ other
+
+
+ 612010
+ Consommation - gaz
+
+
+
+ other
+
+
+ 612020
+ Consommation - électricité
+
+
+
+ other
+
+
+ 612030
+ Consommation - carburants
+
+
+
+ other
+
+
+ 612040
+ Consommation - mazout
+
+
+
+ other
+
+
+ 612100
+ Documentation
+
+
+
+ other
+
+
+ 612200
+ Imprimés et fournitures de bureau
+
+
+
+ other
+
+
+ 612300
+ Téléphone
+
+
+
+ other
+
+
+ 612310
+ Frais postaux
+
+
+
+ other
+
+
+ 612320
+ Fax
+
+
+
+ other
+
+
+ 613000
+ Redevances et royalties
+
+
+
+ other
+
+
+ 613100
+ Honoraires
+
+
+
+ other
+
+
+ 613200
+ Organismes de services
+
+
+
+ other
+
+
+ 613300
+ Commissions
+
+
+
+ other
+
+
+ 614000
+ Assurance incendie
+
+
+
+ other
+
+
+ 615000
+ Annonces, publicité
+
+
+
+ other
+
+
+ 615100
+ Cotisations et abonnements
+
+
+
+ other
+
+
+ 615200
+ Dons et libéralités
+
+
+
+ other
+
+
+ 615300
+ Publications légales
+
+
+
+ other
+
+
+ 616000
+ Sous-traitants
+
+
+
+ other
+
+
+ 616100
+ Transports par tiers
+
+
+
+ other
+
+
+ 620000
+ Rémunératons administrat. ou gérants
+
+
+
+ other
+
+
+ 620100
+ Rémunérations personnel de direction
+
+
+
+ other
+
+
+ 620200
+ Rémunérations employés
+
+
+
+ other
+
+
+ 620300
+ Rémunérations ouvriers
+
+
+
+ other
+
+
+ 621000
+ Chg.soc.lég.administ.et gérant
+
+
+
+ other
+
+
+ 621100
+ Chg.soc.lég. personnel de direction
+
+
+
+ other
+
+
+ 621200
+ Chg.soc.lég. employés
+
+
+
+ other
+
+
+ 621300
+ Chg.soc.lég. ouvriers
+
+
+
+ other
+
+
+ 621400
+ Assurance accidents
+
+
+
+ other
+
+
+ 622000
+ Primes patr. pour ass. extra - légales
+
+
+
+ other
+
+
+ 623000
+ Autres frais de personnel
+
+
+
+ other
+
+
+ 624000
+ Pension administrat. ou gérant
+
+
+
+ other
+
+
+ 624100
+ Pension personnel
+
+
+
+ other
+
+
+ 630000
+ Dot. cor. val s/frais d'établissement
+
+
+
+ other
+
+
+ 630100
+ Dot. cor. val s/immob. incorporels
+
+
+
+ other
+
+
+ 630200
+ Dot. cor. val s/immob. corporels
+
+
+
+ other
+
+
+ 631000
+ Dot. cor. val s/stock mat.fourni
+
+
+
+ other
+
+
+ 631100
+ Reprises cor. val. s/stock mat. fourni
+
+
+
+ other
+
+
+ 632000
+ Dot. cor. val s/en-cours,pr fini
+
+
+
+ other
+
+
+ 632100
+ Reprises cor. val s/en-cours,pf
+
+
+
+ other
+
+
+ 633000
+ Dot. cor. val s/cr comm +1an
+
+
+
+ other
+
+
+ 633100
+ Reprises cor. val s/cr com +1an
+
+
+
+ other
+
+
+ 634000
+ Dot. cor. val. s/cr comm -1an
+
+
+
+ other
+
+
+ 634100
+ Reprises cor. val.s/cr com -1an
+
+
+
+ other
+
+
+ 635000
+ Dot. prov. pension et oblig. sim.
+
+
+
+ other
+
+
+ 635100
+ Reprises prov. s/pens.obli. sim.
+
+
+
+ other
+
+
+ 636000
+ Dot. prov-grosses réparation
+
+
+
+ other
+
+
+ 636100
+ Reprises prov. grosses réparation
+
+
+
+ other
+
+
+ 637000
+ Dot. prov-autres risques et chg
+
+
+
+ other
+
+
+ 637100
+ Reprises prov autres risq,chg
+
+
+
+ other
+
+
+ 640000
+ Taxe d'abonnement
+
+
+
+ other
+
+
+ 640100
+ Impôt foncier
+
+
+
+ other
+
+
+ 640200
+ Impôt commercial s/le capital
+
+
+
+ other
+
+
+ 640300
+ Impôt s/la fortune
+
+
+
+ other
+
+
+ 641000
+ Moins-val. sur réalis. d'immob. corp.
+
+
+
+ other
+
+
+ 642000
+ Moins-val. / réalis. de créances comm.
+
+
+
+ other
+
+
+ 643000
+ Charges d'exploitation diverses
+
+
+
+ other
+
+
+ 650000
+ Intérêts, commissions et frais / dettes
+
+
+
+ other
+
+
+ 651000
+ Dot. cor. val s/actif circ
+
+
+
+ other
+
+
+ 651100
+ Reprises cor. val s/actif circulants
+
+
+
+ other
+
+
+ 652000
+ Moins-values sur réalis. d'actifs circ.
+
+
+
+ other
+
+
+ 653000
+ Charges d'escompte de créances
+
+
+
+ other
+
+
+ 654000
+ Différences de change
+
+
+
+ other
+
+
+ 655000
+ Ecarts de conversion des devises
+
+
+
+ other
+
+
+ 656000
+ Frais de banque
+
+
+
+ other
+
+
+ 660000
+ Dot. cor. val exceptionnelles
+
+
+
+ other
+
+
+ 660100
+ Reprises cor. val. excep
+
+
+
+ other
+
+
+ 661000
+ Dot. cor. val s/immob. financières
+
+
+
+ other
+
+
+ 661100
+ Reprises cor val s/immob. fin.
+
+
+
+ other
+
+
+ 662000
+ Dot. prov-risques et chg except.
+
+
+
+ other
+
+
+ 662100
+ Reprises prov risq,chg except.
+
+
+
+ other
+
+
+ 663000
+ Moins-values sur réalis. d'actifs immob.
+
+
+
+ other
+
+
+ 665000
+ Différences de change exceptionnelles
+
+
+
+ other
+
+
+ 668000
+ Autres charges exceptionnelles
+
+
+
+ other
+
+
+ 670000
+ Impôts luxemb sur le résultat de l'ex.
+
+
+
+ other
+
+
+ 671000
+ Impôts luxemb /résultat d'ex. antérieurs
+
+
+
+ other
+
+
+ 672000
+ Impôts étrangers sur le résultat de l'ex
+
+
+
+ other
+
+
+ 673000
+ Impôts étrgs/résultat d'ex. antérieurs
+
+
+
+ other
+
+
+ 674000
+ Impôts sur résultats exceptionnels
+
+
+
+ other
+
+
+ 680000
+ Transfert aux réserves immunisées
+
+
+
+ other
+
+
+ 700000
+ Ventes et prestations de services
+
+
+
+ payable
+
+
+ 708000
+ R.r.r accordés sur ventes
+
+
+
+ payable
+
+
+ 712000
+ Variation de stocks des encours de fabr.
+
+
+
+ payable
+
+
+ 713000
+ Variation de stocks des produits finis
+
+
+
+ payable
+
+
+ 720000
+ Travaux effect. par entreprise elle-même
+
+
+
+ payable
+
+
+ 740000
+ Subsides d'exploitation
+
+
+
+ payable
+
+
+ 741000
+ Plus-values sur réal. d'immob. corp.
+
+
+
+ payable
+
+
+ 742000
+ Plus-values sur réalis. créances comm.
+
+
+
+ payable
+
+
+ 743000
+ Récupération de frais de personnel
+
+
+
+ payable
+
+
+ 744000
+ Commissions et courtages
+
+
+
+ payable
+
+
+ 745000
+ Redevances pour brevets et licences
+
+
+
+ payable
+
+
+ 746000
+ Loyers perçus
+
+
+
+ payable
+
+
+ 748000
+ Produits d'exploitation divers.
+
+
+
+ payable
+
+
+ 750000
+ Produits des participations
+
+
+
+ payable
+
+
+ 750100
+ Autres produits des immob. financières
+
+
+
+ payable
+
+
+ 751000
+ Produits des valeurs mobilières
+
+
+
+ payable
+
+
+ 751100
+ Autres produits des actifs circulants
+
+
+
+ payable
+
+
+ 752000
+ Plus-values sur réalis. d'actifs circula
+
+
+
+ payable
+
+
+ 753000
+ Subsides en capital et en intérêts
+
+
+
+ payable
+
+
+ 754000
+ Différences de change
+
+
+
+ payable
+
+
+ 754100
+ Amendes pour retards de paiement
+
+
+
+ payable
+
+
+ 754200
+ Intérêts retards de paiement
+
+
+
+ payable
+
+
+ 755000
+ Ecarts de conversion de devises
+
+
+
+ payable
+
+
+ 756000
+ Autres produits financiers
+
+
+
+ payable
+
+
+ 757000
+ Escomptes obtenus
+
+
+
+ payable
+
+
+ 763000
+ Plus-values sur réalis. d'actifs immob.
+
+
+
+ payable
+
+
+ 771000
+ Régularis. d'impôts luxemb sur résultat
+
+
+
+ payable
+
+
+ 773000
+ Régularis. d'impôts étrangers / résultat
+
+
+
+ payable
+
+
+
+
+
+ PCMN for Luxembourg
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/l10n_lu/l10n_lu_report.xml b/addons/l10n_lu/l10n_lu_report.xml
new file mode 100644
index 00000000000..192b603e1af
--- /dev/null
+++ b/addons/l10n_lu/l10n_lu_report.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
diff --git a/addons/l10n_lu/l10n_lu_wizard.xml b/addons/l10n_lu/l10n_lu_wizard.xml
new file mode 100644
index 00000000000..dd16b17d429
--- /dev/null
+++ b/addons/l10n_lu/l10n_lu_wizard.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+ Generate Chart of Accounts from a Chart Template
+ Generate Chart of Accounts from a Chart Template. You will be asked to select the company, the chart template, the no. of digits to generate the code for your accounts and Bank account, currency to create Journals. Thus,the pure copy of chart Template is generated.
+This is the same wizard that runs from Financial Managament/Configuration/Financial Accounting/Financial Accounts/Generate Chart of Accounts from a Chart Template.
+
+ open
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/l10n_lu/wizard/2008_DECL_F_M10.pdf b/addons/l10n_lu/wizard/2008_DECL_F_M10.pdf
new file mode 100755
index 00000000000..8e56cbbd703
--- /dev/null
+++ b/addons/l10n_lu/wizard/2008_DECL_F_M10.pdf
@@ -0,0 +1,1254 @@
+%PDF-1.4
+%âãÏÓ
+3 0 obj<>/T(info_name)/BS<>/V()/Ff 0/Rect[270 698 567.52 710.34]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+5 0 obj<>/T(info_address)/BS<>/V()/Ff 0/Rect[273.05 668.1 570.57 680.64]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+7 0 obj<>/T(info_address2)/BS<>/V()/Ff 0/Rect[274.83 642.68 572.35 655.03]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+9 0 obj<>/T(info_vatnum)/BS<>/V()/Ff 0/Rect[393.68 765.95 570.57 776.81]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+11 0 obj<>/T(case_03)/BS<>/V()/Ff 0/Q 2/Rect[354.7 567.83 446.09 578.69]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+13 0 obj<>/T(case_04)/BS<>/V()/Ff 0/Q 2/Rect[353.63 551.99 445.31 564.14]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+15 0 obj<>/T(case_05)/BS<>/V()/Ff 0/Q 2/Rect[352.78 538.71 443.89 549.58]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+17 0 obj<>/T(case_06)/BS<>/V()/Ff 0/Q 2/Rect[352.78 523.52 445.02 534.38]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+19 0 obj<>/T(case_08)/BS<>/V()/Ff 0/Q 2/Rect[352.99 509.6 443.6 519.9]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+21 0 obj<>/T(case_09)/BS<>/V()/Ff 0/Q 2/Rect[354.34 492.49 444.74 503.35]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+23 0 obj<>/T(case_11)/BS<>/V()/Ff 0/Q 2/Rect[355.55 461.32 445.87 472.18]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+25 0 obj<>/T(case_12)/BS<>/V()/Ff 0/Q 2/Rect[354.34 444.2 445.73 455.07]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+27 0 obj<>/T(case_13)/BS<>/V()/Ff 0/Q 2/Rect[354.34 429.64 446.23 440.51]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+29 0 obj<>/T(case_14)/BS<>/V()/Ff 0/Q 2/Rect[355.55 415.73 447.36 426.59]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+31 0 obj<>/T(case_15)/BS<>/V()/Ff 0/Q 2/Rect[354.34 401.17 445.3 412.04]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+33 0 obj<>/T(case_16)/BS<>/V()/Ff 0/Q 2/Rect[354.34 355.3 445.16 366.17]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+35 0 obj<>/T(case_17)/BS<>/V()/Ff 0/Q 2/Rect[353.63 338.19 445.01 350.97]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+37 0 obj<>/T(case_19)/BS<>/V()/Ff 0/Q 2/Rect[354.34 321.71 445.51 335.77]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+39 0 obj<>/T(case_22)/BS<>/V()/Ff 0/Q 2/Rect[354.7 303.96 446.01 317.38]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+41 0 obj<>/T(case_32)/BS<>/V()/Ff 0/Q 2/Rect[355.98 288.77 447.14 302]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+43 0 obj<>/T(case_33)/BS<>/V()/Ff 0/Q 2/Rect[355.98 274.21 447.64 288.77]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+45 0 obj<>/T(case_34)/BS<>/V()/Ff 0/Q 2/Rect[354.7 259.65 446.22 273.07]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+47 0 obj<>/T(case_35)/BS<>/V()/Ff 0/Q 2/Rect[354.7 245.1 446.07 257.88]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+49 0 obj<>/T(case_82)/BS<>/V()/Ff 0/Q 2/Rect[355.55 230.54 447.21 243.96]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+51 0 obj<>/T(case_37)/BS<>/V()/Ff 0/Q 2/Rect[482.13 289.48 565.8 299.63]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+53 0 obj<>/T(case_38)/BS<>/V()/Ff 0/Q 2/Rect[482.13 274.29 566.44 284]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+55 0 obj<>/T(case_39)/BS<>/V()/Ff 0/Q 2/Rect[482.13 259.09 565.01 269.88]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+57 0 obj<>/T(case_40)/BS<>/V()/Ff 0/Q 2/Rect[482.13 244.53 565.51 255.96]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+59 0 obj<>/T(case_83)/BS<>/V()/Ff 0/Q 2/Rect[482.13 229.34 566.01 241.41]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+61 0 obj<>/T(case_41)/BS<>/V()/Ff 0/Q 2/Rect[482.13 214.14 565.86 225.01]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+63 0 obj<>/T(case_47)/BS<>/V()/Ff 0/Q 2/Rect[482.13 179.77 565.72 193.96]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+65 0 obj<>/T(case_48)/BS<>/V()/Ff 0/Q 2/Rect[482.13 164.58 566.22 177.92]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+67 0 obj<>/T(case_49)/BS<>/V()/Ff 0/Q 2/Rect[482.13 150.66 566.07 163.57]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+69 0 obj<>/T(case_50)/BS<>/V()/Ff 0/Q 2/Rect[482.13 136.1 565.93 149.65]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+71 0 obj<>/T(case_51)/BS<>/V()/Ff 0/Q 2/Rect[482.13 104.93 565.79 118.48]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+73 0 obj<>/T(case_86)/BS<>/V()/Ff 0/Q 2/Rect[482.13 40.52 566.28 51.52]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+75 0 obj<>/T(case_42)/BS<>/V()/Ff 0/Q 2/Rect[353.63 180.2 445.15 190.77]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+77 0 obj<>/T(case_43)/BS<>/V()/Ff 0/Q 2/Rect[354.34 165 445.65 177.92]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+79 0 obj<>/T(case_44)/BS<>/V()/Ff 0/Q 2/Rect[354.7 149.8 446.14 163.57]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+81 0 obj<>/T(case_45)/BS<>/V()/Ff 0/Q 2/Rect[355.55 136.53 447.28 148.38]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+83 0 obj<>/T(case_85)/BS<>/V()/Ff 0/Q 2/Rect[354.7 120.69 446.5 132.83]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+85 0 obj<>/T(case_46)/BS<>/V()/Ff 0/Q 2/Rect[355.98 105.5 448.27 117.2]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+87 0 obj<>/T(case_52)/BS<>/V()/Ff 0/Q 2/Rect[354.7 64.1 446.21 74.96]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+91 0 obj<>
+endobj
+92 0 obj<>>>/Parent 91 0 R/BS<>/AS/Off/V/Off/Rect[102.89 569.1 108 574.22]/Subtype/Widget/DR<>>>/DA(/ZaDb 10 Tf 0 0 0 rg )/MK<>/FT/Btn>>
+endobj
+95 0 obj<>
+endobj
+96 0 obj<>>>/Parent 95 0 R/BS<>/AS/Off/V/Off/Rect[166.16 569.1 171.92 574.22]/Subtype/Widget/DR<>>>/DA(/ZaDb 10 Tf 0 0 0 rg )/MK<>/FT/Btn>>
+endobj
+98 0 obj<>/T(case_84)/BS<>/V()/Ff 0/Q 2/Rect[295.9 230.54 310.6 241.41]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+100 0 obj<>/T(case_07)/BS<>/V()/Ff 0/Rect[85 507.68 333.61 519.9]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+102 0 obj<>/T(case_18)/BS<>/V()/Ff 0/Rect[85 323.05 333.61 334.56]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+104 0 obj<>/T(case_53)/BS<>/V()/Ff 0/Q 2/Rect[331.69 760.83 421.02 773.62]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+106 0 obj<>/T(case_54)/BS<>/V()/Ff 0/Q 2/Rect[331.69 745.64 421.02 758.42]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+108 0 obj<>/T(case_55)/BS<>/V()/Ff 0/Q 2/Rect[331.69 731.72 422.16 743.86]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+110 0 obj<>/T(case_56)/BS<>/V()/Ff 0/Q 2/Rect[331.69 715.89 420.74 728.03]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+112 0 obj<>/T(case_81)/BS<>/V()/Ff 0/Q 2/Rect[331.69 699.41 420.59 712.2]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+114 0 obj<>/T(case_57)/BS<>/V()/Ff 0/Q 2/Rect[331.69 665.04 421.73 677.83]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+116 0 obj<>/T(case_58)/BS<>/V()/Ff 0/Q 2/Rect[331.69 650.49 420.95 663.27]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+118 0 obj<>/T(case_59)/BS<>/V()/Ff 0/Q 2/Rect[331.69 635.93 420.8 648.71]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+120 0 obj<>/T(case_60)/BS<>/V()/Ff 0/Q 2/Rect[331.69 621.38 421.94 634.8]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+122 0 obj<>/T(case_61)/BS<>/V()/Ff 0/Q 2/Rect[331.69 589.56 420.52 602.34]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+124 0 obj<>/T(case_88)/BS<>/V()/Ff 0/Q 2/Rect[331.69 550.72 421.01 563.5]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+126 0 obj<>/T(case_89)/BS<>/V()/Ff 0/Q 2/Rect[331.69 536.16 420.87 548.95]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+128 0 obj<>/T(case_90)/BS<>/V()/Ff 0/Q 2/Rect[331.69 520.97 420.73 533.75]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+130 0 obj<>/T(case_91)/BS<>/V()/Ff 0/Q 2/Rect[331.69 507.05 421.23 519.83]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+132 0 obj<>/T(case_422)/BS<>/V()/Ff 0/Q 2/Rect[331.69 490.58 421.08 503.36]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+134 0 obj<>/T(case_92)/BS<>/V()/Ff 0/Q 2/Rect[331.69 467.71 420.94 480.49]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+136 0 obj<>/T(case_10)/BS<>/V()/Ff 0/Q 2/Rect[331.69 449.96 420.8 462.74]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+138 0 obj<>/T(case_87)/BS<>/V()/Ff 0/Q 2/Rect[472.79 783.98 556.08 796.77]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+140 0 obj<>/T(case_62)/BS<>/V()/Ff 0/Q 2/Rect[472.79 760.48 555.94 773.62]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+142 0 obj<>/T(case_63)/BS<>/V()/Ff 0/Q 2/Rect[472.79 745.28 556.44 758.42]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+144 0 obj<>/T(case_64)/BS<>/V()/Ff 0/Q 2/Rect[472.79 730.73 556.29 743.86]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+146 0 obj<>/T(case_65)/BS<>/V()/Ff 0/Q 2/Rect[472.79 717.45 556.15 730.73]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+148 0 obj<>/T(case_70)/BS<>/V()/Ff 0/Q 2/Rect[472.79 685 556.65 698]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+150 0 obj<>/T(case_66)/BS<>/V()/Ff 0/Q 2/Rect[472.79 664.05 555.86 677.83]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+153 0 obj<>
+endobj
+154 0 obj<>/Parent 153 0 R/BS<>/Ff 0/Q 2/Rect[472.79 650.14 557.64 664.05]/Subtype/Widget/DR<>>>/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+155 0 obj<>/Parent 153 0 R/BS<>/Ff 0/Q 2/Rect[472.79 635.58 555.58 648.71]/Subtype/Widget/DR<>>>/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+156 0 obj<>
+endobj
+158 0 obj<>/T(case_69)/BS<>/V()/Ff 0/Q 2/Rect[472.79 621.66 556.08 634.8]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+160 0 obj<>/T(case_71)/BS<>/V()/Ff 0/Q 2/Rect[472.79 603.27 554.65 617.33]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+162 0 obj<>/T(case_93)/BS<>/V()/Ff 0/Q 2/Rect[472.79 550.37 555.15 564.43]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+164 0 obj<>/T(case_94)/BS<>/V()/Ff 0/Q 2/Rect[472.79 535.81 555.65 550.37]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+166 0 obj<>/T(case_95)/BS<>/V()/Ff 0/Q 2/Rect[472.79 521.89 555.5 535.81]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+168 0 obj<>/T(case_96)/BS<>/V()/Ff 0/Q 2/Rect[472.79 506.7 556 520.97]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+170 0 obj<>/T(case_219)/BS<>/V()/Ff 0/Q 2/Rect[472.79 490.23 555.22 505.42]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+172 0 obj<>/T(case_97)/BS<>/V()/Ff 0/Q 2/Rect[472.79 466.72 555.71 480.49]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+174 0 obj<>/T(case_72)/BS<>/V()/Ff 0/Q 2/Rect[472.79 428.52 555.57 442.58]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+176 0 obj<>/T(case_23)/BS<>/V()/Ff 0/Q 2/Rect[474.2 381.37 556.71 395.43]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+178 0 obj<>/T(case_24)/BS<>/V()/Ff 0/Q 2/Rect[474.2 365.53 557.2 379.59]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+180 0 obj<>/T(case_25)/BS<>/V()/Ff 0/Q 2/Rect[474.2 351.61 556.42 365.68]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+182 0 obj<>/T(case_26)/BS<>/V()/Ff 0/Q 2/Rect[474.2 337.06 556.92 351.61]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+184 0 obj<>/T(case_27)/BS<>/V()/Ff 0/Q 2/Rect[474.2 321.86 556.77 335.92]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+186 0 obj<>/T(case_28)/BS<>/V()/Ff 0/Q 2/Rect[474.2 307.95 557.27 321.86]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+188 0 obj<>/T(case_29)/BS<>/V()/Ff 0/Q 2/Rect[474.2 292.11 556.49 306.17]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+190 0 obj<>/T(case_30)/BS<>/V()/Ff 0/Q 2/Rect[474.2 277.56 556.34 292.11]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+192 0 obj<>/T(case_31)/BS<>/V()/Ff 0/Q 2/Rect[474.2 262.36 556.84 276.42]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+194 0 obj<>/T(case_98)/BS<>/V()/Ff 0/Q 2/Rect[474.2 224.16 556.06 238.22]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+196 0 obj<>/T(case_73)/BS<>/V()/Ff 0/Q 2/Rect[474.2 208.96 556.55 223.02]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+198 0 obj<>/T(case_74)/BS<>/V()/Ff 0/Q 2/Rect[474.2 191.85 555.86 205.91]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+200 0 obj<>/T(info_vatnum_p2)/BS<>/V()/Ff 0/Rect[120.15 799.82 254.36 813.88]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+202 0 obj<>/T(info_creator)/BS<>/V()/Ff 0/Rect[63.91 150.5 242.22 163.92]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+204 0 obj<>/T(info_date_creation)/BS<>/V()/Ff 0/Rect[261.39 150.5 373.23 163.92]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+206 0 obj<>/T(info_signature)/BS<>/V()/Ff 0/Rect[389.21 150.5 547.07 167.11]/Subtype/Widget/DR<>>>/DV()/DA(/TimesNewRomanPSMT 10 Tf 0 0 0 rg )/FT/Tx>>
+endobj
+207 0 obj<>
+endobj
+2 0 obj<>
+endobj
+89 0 obj<>
+endobj
+44 0 obj <>>>/Subtype/Form/BBox[0 0 91.52 13.42]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+139 0 obj <>>>/Subtype/Form/BBox[0 0 83.15 13.14]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+74 0 obj <>>>/Subtype/Form/BBox[0 0 91.52 10.57]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+82 0 obj <>>>/Subtype/Form/BBox[0 0 91.8 12.14]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+22 0 obj <>>>/Subtype/Form/BBox[0 0 90.32 10.86]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+66 0 obj <>>>/Subtype/Form/BBox[0 0 83.95 12.91]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+50 0 obj <>>>/Subtype/Form/BBox[0 0 83.67 10.15]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+201 0 obj <>>>/Subtype/Form/BBox[0 0 178.31 13.42]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+101 0 obj <>>>/Subtype/Form/BBox[0 0 248.61 11.5]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+193 0 obj <>>>/Subtype/Form/BBox[0 0 81.86 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+167 0 obj <>>>/Subtype/Form/BBox[0 0 83.21 14.27]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+88 0 obj <>>>/Subtype/Form/BBox[0 0 5.11 5.11]>>stream
+xœ+T0Bc=C(Q”ª®�§` †Eé
+N!
+úQ‰.I
+†
+!i@¥ qC]=c#eifab¡’« a¡’¥à¢¨ ùZ
+endstream
+endobj
+76 0 obj <>>>/Subtype/Form/BBox[0 0 91.31 12.92]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+26 0 obj <>>>/Subtype/Form/BBox[0 0 91.89 10.87]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+191 0 obj <>>>/Subtype/Form/BBox[0 0 82.64 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+24 0 obj <>>>/Subtype/Form/BBox[0 0 91.39 10.86]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+6 0 obj <>>>/Subtype/Form/BBox[0 0 297.52 12.35]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+30 0 obj <>>>/Subtype/Form/BBox[0 0 90.96 10.86]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+203 0 obj <>>>/Subtype/Form/BBox[0 0 111.84 13.42]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+94 0 obj <>/Subtype/Form/BBox[0 0 5.75 5.11]>>stream
+xœ
+endstream
+endobj
+99 0 obj <>>>/Subtype/Form/BBox[0 0 248.61 12.21]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+20 0 obj <>>>/Subtype/Form/BBox[0 0 90.4 10.86]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+105 0 obj <>>>/Subtype/Form/BBox[0 0 89.33 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+90 0 obj <>/Subtype/Form/BBox[0 0 5.11 5.11]>>stream
+xœ
+endstream
+endobj
+80 0 obj <>>>/Subtype/Form/BBox[0 0 91.73 11.85]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+161 0 obj <>>>/Subtype/Form/BBox[0 0 82.36 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+38 0 obj <>>>/Subtype/Form/BBox[0 0 91.31 13.42]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+125 0 obj <>>>/Subtype/Form/BBox[0 0 89.18 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+113 0 obj <>>>/Subtype/Form/BBox[0 0 90.04 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+46 0 obj <>>>/Subtype/Form/BBox[0 0 91.38 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+40 0 obj <>>>/Subtype/Form/BBox[0 0 91.17 13.23]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+177 0 obj <>>>/Subtype/Form/BBox[0 0 83 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+78 0 obj <>>>/Subtype/Form/BBox[0 0 91.44 13.77]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+4 0 obj <>>>/Subtype/Form/BBox[0 0 297.52 12.53]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+159 0 obj <>>>/Subtype/Form/BBox[0 0 81.86 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+34 0 obj <>>>/Subtype/Form/BBox[0 0 91.38 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+60 0 obj <>>>/Subtype/Form/BBox[0 0 83.74 10.87]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+32 0 obj <>>>/Subtype/Form/BBox[0 0 90.82 10.87]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+165 0 obj <>>>/Subtype/Form/BBox[0 0 82.71 13.92]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+179 0 obj <>>>/Subtype/Form/BBox[0 0 82.22 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+10 0 obj <>>>/Subtype/Form/BBox[0 0 91.39 10.86]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+119 0 obj <>>>/Subtype/Form/BBox[0 0 90.25 13.42]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+163 0 obj <>>>/Subtype/Form/BBox[0 0 82.86 14.56]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+70 0 obj <>>>/Subtype/Form/BBox[0 0 83.66 13.54]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+141 0 obj <>>>/Subtype/Form/BBox[0 0 83.65 13.14]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+197 0 obj <>>>/Subtype/Form/BBox[0 0 81.66 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+117 0 obj <>>>/Subtype/Form/BBox[0 0 89.11 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+145 0 obj <>>>/Subtype/Form/BBox[0 0 83.36 13.28]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+157 0 obj <>>>/Subtype/Form/BBox[0 0 83.29 13.14]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+151 0 obj <>>>/Subtype/Form/BBox[0 0 84.85 13.92]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+199 0 obj <>>>/Subtype/Form/BBox[0 0 134.21 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+84 0 obj <>>>/Subtype/Form/BBox[0 0 92.29 11.7]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+42 0 obj <>>>/Subtype/Form/BBox[0 0 91.66 14.56]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+68 0 obj <>>>/Subtype/Form/BBox[0 0 83.8 13.55]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+115 0 obj <>>>/Subtype/Form/BBox[0 0 89.26 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+173 0 obj <>>>/Subtype/Form/BBox[0 0 82.78 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+62 0 obj <>>>/Subtype/Form/BBox[0 0 83.59 14.19]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+14 0 obj <>>>/Subtype/Form/BBox[0 0 91.1 10.86]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+195 0 obj <>>>/Subtype/Form/BBox[0 0 82.35 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+127 0 obj <>>>/Subtype/Form/BBox[0 0 89.04 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+72 0 obj <>>>/Subtype/Form/BBox[0 0 84.16 11]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+152 0 obj <>>>/Subtype/Form/BBox[0 0 82.79 13.14]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+107 0 obj <>>>/Subtype/Form/BBox[0 0 90.47 12.14]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+103 0 obj <>>>/Subtype/Form/BBox[0 0 89.33 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+97 0 obj <>>>/Subtype/Form/BBox[0 0 14.7 10.87]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+86 0 obj <>>>/Subtype/Form/BBox[0 0 91.51 10.86]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+181 0 obj <>>>/Subtype/Form/BBox[0 0 82.71 14.56]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+133 0 obj <>>>/Subtype/Form/BBox[0 0 89.25 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+1 0 obj <>>>/Subtype/Form/BBox[0 0 297.52 12.34]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+189 0 obj <>>>/Subtype/Form/BBox[0 0 82.14 14.56]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+54 0 obj <>>>/Subtype/Form/BBox[0 0 82.89 10.79]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+8 0 obj <>>>/Subtype/Form/BBox[0 0 176.89 10.86]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+183 0 obj <>>>/Subtype/Form/BBox[0 0 82.57 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+48 0 obj <>>>/Subtype/Form/BBox[0 0 91.66 13.42]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+109 0 obj <>>>/Subtype/Form/BBox[0 0 89.05 12.14]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+149 0 obj <>>>/Subtype/Form/BBox[0 0 83.08 13.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+169 0 obj <>>>/Subtype/Form/BBox[0 0 82.43 15.2]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+129 0 obj <>>>/Subtype/Form/BBox[0 0 89.53 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+36 0 obj <>>>/Subtype/Form/BBox[0 0 91.17 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+123 0 obj <>>>/Subtype/Form/BBox[0 0 89.32 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+185 0 obj <>>>/Subtype/Form/BBox[0 0 83.07 13.92]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+175 0 obj <>>>/Subtype/Form/BBox[0 0 82.5 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+205 0 obj <>>>/Subtype/Form/BBox[0 0 157.86 16.62]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+18 0 obj <>>>/Subtype/Form/BBox[0 0 90.61 10.29]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+52 0 obj <>>>/Subtype/Form/BBox[0 0 84.31 9.71]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+58 0 obj <>>>/Subtype/Form/BBox[0 0 83.88 12.07]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+171 0 obj <>>>/Subtype/Form/BBox[0 0 82.92 13.77]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+121 0 obj <>>>/Subtype/Form/BBox[0 0 88.83 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+93 0 obj <>>>/Subtype/Form/BBox[0 0 5.75 5.11]>>stream
+xœ+T0Bc=sS ah¨P”ª®�§` †Eé
+N!
+úQ‰.I
+†
+!i@¥ qC]=SKKÃÒÌÂÄB!$WAÃB3$KÁ5D!P :qÖ
+endstream
+endobj
+135 0 obj <>>>/Subtype/Form/BBox[0 0 89.1 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+64 0 obj <>>>/Subtype/Form/BBox[0 0 84.09 13.34]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+56 0 obj <>>>/Subtype/Form/BBox[0 0 83.38 11.43]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+28 0 obj <>>>/Subtype/Form/BBox[0 0 91.81 10.86]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+147 0 obj <>>>/Subtype/Form/BBox[0 0 83.86 13]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+12 0 obj <>>>/Subtype/Form/BBox[0 0 91.68 12.14]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+137 0 obj <>>>/Subtype/Form/BBox[0 0 83.29 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+187 0 obj <>>>/Subtype/Form/BBox[0 0 82.29 14.06]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+16 0 obj <>>>/Subtype/Form/BBox[0 0 92.24 10.86]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+131 0 obj <>>>/Subtype/Form/BBox[0 0 89.39 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+111 0 obj <>>>/Subtype/Form/BBox[0 0 88.9 12.78]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+143 0 obj <>>>/Subtype/Form/BBox[0 0 83.5 13.14]>>stream
+xœÓ©PpòuVpb ª
+endstream
+endobj
+208 0 obj <>stream
+xœ+ä
+ä*ä ,R
+endstream
+endobj
+209 0 obj <>stream
+xœSä*ä
+ä �R
+endstream
+endobj
+210 0 obj <>stream
+xœ+ä
+ä*ä ,R
+endstream
+endobj
+211 0 obj <>stream
+xœSä*ä
+ä �R
+endstream
+endobj
+212 0 obj<>/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]/Font<>>>/CropBox[0 0 595.22 842]/Annots[104 0 R 106 0 R 108 0 R 110 0 R 112 0 R 114 0 R 116 0 R 118 0 R 120 0 R 122 0 R 124 0 R 126 0 R 128 0 R 130 0 R 132 0 R 134 0 R 136 0 R 138 0 R 140 0 R 142 0 R 144 0 R 146 0 R 148 0 R 150 0 R 154 0 R 155 0 R 158 0 R 160 0 R 162 0 R 164 0 R 166 0 R 168 0 R 170 0 R 172 0 R 174 0 R 176 0 R 178 0 R 180 0 R 182 0 R 184 0 R 186 0 R 188 0 R 190 0 R 192 0 R 194 0 R 196 0 R 198 0 R 200 0 R 202 0 R 204 0 R 206 0 R]/MediaBox[0 0 595.22 842]/Rotate 0>>
+endobj
+219 0 obj<>/ProcSet[/PDF/Text]/Font<>>>
+endobj
+213 0 obj <>stream
+hÞÌ[Í’ã8r¾×Sàb7å± œfí
Ç8&¼öNyö°åƒZŪцJª¦¤Ý^?Õ¾†ß¢�+¿‚/ÎL $H‚’XÓãpOŒŠ$þó_&ïÿéΞw¿º¿{¯g÷Ow&W¬€ÿð¯¨Êœkf¹Î•.JvÿrW°ç»¼ÀçõÝ
+Ëîÿt—-Œ-ÙâþØ—}UÖw¥Îd¶(s%]gÔ�À®ðAcO¿Ïþå/ìeul6ëÓ¶f‹%/E™—Ùý�ß.Ê"[üÇý?OÌ——L†àyaÝ*7VÓ…ëž-lÆXÛ‹Ÿ©�¹,ËKuÿ‘¦£ü¼¸¡þju¨Ùã»ÍËëþ°9nö»°V?›[-a®u©�¸tã>d?í›»_è\f?¯ξ¥ß‡Å~‡âVb]Ð
·6ZÃý�@•[èˆ#}ã_ß߉*7À.øÝ Aàÿ¦¾{êDQ™*óJL73U•Kí
+Jd$Ù
+E#]ƹɥ�(ôÃ¥Ac†J™’«ríåiË[á«O—B—ºÈ~»P +õb™›ìž«lO¿Í>Ù#½¸b¶]±ãêSýÍbY �Ï‘`)žs.Žc‘EË€ŒX¯i–šI]æBÓ$Ë¢›d…Õ3k¨noMƸùÊ„UYQL¬i*˜—Nr„
+&™jæT\ŽU¦4¹
+ÝNìth.�õb‰â–/–Uð;P‚Ÿmv„’låŠéyãêìw‡‘¢ÚN?„ˆ¨Ù#g),‘Ó «d°9D›¡m‰QªzŒW‘
Ô“‹\€µÜò°BŒÍÒŒƒ!„¼À¸iö|'
XN`3Ø:¼†1A!
+�åËÜðò®E^ŠÎÞö×ï$òÂDÒ‰"×eÎÛøÃ‚}f�õ�=mvx`ÛwõîØÔ¯Í¬šÁ%¶ÙêÊpú´à¨?X‘«¿!þulY©q��”;6ªòõV–XÕ569UKM"+Ÿä)|e^äÖȘcÝl—
+4AÀÐu(èû
Tïï„dŒÊÂ`•™NÓPÂÜŠ4
å
4„æVƒ˜\ !‡âކ_%‰˜šE¦Ë4qÌ"â[KIZñWíäÅ¿,y^‚>é7‰Jào¬ ^=\ñ|ý(a§*zúñ§ŸÉ©2Í)¨�iN©8Õ›çÛ9•šE¦ešSP¹”ó9%a+i{³í1ŠJŸºÒk|â6²á·ó‰ €=SžiÁʶ«E¾èøÒ›×Ûù
ñE¥ù•�ÏøD˜Ô W<Ö Ð�»±ÓÍ]ñ|, Ã70ÖàÂa‡í_ù…×´çÀçæ\’L8olR-¿�۽ɾ…ÛD³˜À0P1¨¼tUà\¨\;â"®\ü�^0MÇ-ìÐÖä:"PÂÎqË�Î~XhÄ6;Ñï�°Í–G÷í¸ÚB¶„�m‹�ýGׄ½Ò×b³€Ÿ�k¼(2¦¿f 9¾ ¿²ÃÙö0@_z¦/ó*S
+�Ü)¬)’Ü¤ÑÆP%ÉR¬äl€½&ꊤhla�·IÓ¦ê™Í,‰-5ˆ 8«³uWkÝR±ë}®}\ hò�9‚¦ÔRé›1%ÎhÄoÍÍ
bÑ[Лyr™ÖiáÀ1Å—•°cÇó›PaQI#&A¥w5 Â!í
DT€’ÅÏ'bj™N;Á8&׳·D%
+þVñųÁŠFOX_ÙÓæq*
*q 9ÿ«8Õ›çÛ9•šE¦mšS8æ|ø¯U‘zšS®x>§0 XÌçÁJQÁHÅX©…ˆ"ô®‹8Ó›×Û9
q¦JsÆóᾆ_`•Žù‘¸œníŠç³µÐCšŽ2ÿß"qÉÀŒ{Èòf$-õmH&9B2<-#PYÊ‘Ô-í ɾ£ÓJ�áUez|wŽvÅWø® ÃȽ¦eºê˜®t¥³ûª'qLµúúk÷gëz[õ:©{oìµ_ʶ¾|‚^ýÝ‚»“|9ÑKh²?±í»Uoä�§sjÐSh&úaã3ª¦±õ3_Ñ¿~r‡¡Ö”NË´p`†™�Δb鬉ÖWbÊŠ�xr°p€—‚N¯ÚžG@Ù*·©ÐÐ5sʵ?¿ù\‚ýë¶w2WŽ+Áß` 1$'‘UépL ”Ui¿ð™‰‹ðr˜XáM»µª´q8Ivƒ�„ÌÏGâñàÍÒ�w¬¬HÜî"WŠO†g±£<óôSHôäÛ‚î=–¤ýW…0¢s¯npŽúÓz;K¢Á#–¤cî8&·óYRj\ç”ã‹cnöoTQµÆü—9
Á¤èqæ†øx^oçL4xÄ™tüŒÆó9#0Â>ÍW<æLh^`H7V7ÞkîŠ#�ã71VB‡•í#4^„Ö91ðD‘ý°?0]‚gKD%â1ü³_pçfàËÊÕ çÄ^÷›�ÿÌŒûþ5‚ðU¸{…½ŒŠ'}ð̸¥yêˆC]FQ&…¸.(ýuÎ?¼W€ÌG“pb"x:¼ACŠ6Ý‚1H·h9«"Ôc«Š€w(󂥑먖Ïá½-£S‚ÛR5²T¾v$ô +^àE4ñx#ÚC
«SÐ>
,%xvZË|ñ|-ƒykùóÏ-¾g„ | | |