bzr revid: hmo@tinyerp.com-20100907054733-ga6vbk9di5a89qns
This commit is contained in:
Harry (OpenERP)
2010-09-07 11:17:33 +05:30
944 changed files with 64740 additions and 8890 deletions
+2 -2
View File
@@ -53,13 +53,14 @@ module named account_voucher.
'wizard/account_move_bank_reconcile_view.xml',
'wizard/account_use_model_view.xml',
'account_installer.xml',
'wizard/account_period_close_view.xml',
'account_view.xml',
'account_report.xml',
'wizard/account_report_common_view.xml',
'wizard/account_invoice_refund_view.xml',
'wizard/account_period_close_view.xml',
'wizard/account_fiscalyear_close_state.xml',
'wizard/account_chart_view.xml',
'wizard/account_tax_chart_view.xml',
'wizard/account_move_journal_view.xml',
'wizard/account_move_line_reconcile_select_view.xml',
'wizard/account_open_closed_fiscalyear_view.xml',
@@ -74,7 +75,6 @@ module named account_voucher.
'wizard/account_journal_select_view.xml',
'wizard/account_change_currency_view.xml',
'wizard/account_validate_move_view.xml',
'wizard/account_pay_invoice_view.xml',
'wizard/account_unreconcile_view.xml',
'wizard/account_report_general_ledger_view.xml',
'wizard/account_invoice_state_view.xml',
+107 -85
View File
@@ -18,6 +18,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import time
from datetime import datetime, timedelta
from dateutil.relativedelta import relativedelta
@@ -60,7 +61,7 @@ class account_payment_term(osv.osv):
'line_ids': fields.one2many('account.payment.term.line', 'payment_id', 'Terms'),
}
_defaults = {
'active': lambda *a: 1,
'active': 1,
}
_order = "name"
@@ -120,9 +121,9 @@ class account_payment_term_line(osv.osv):
'payment_id': fields.many2one('account.payment.term', 'Payment Term', required=True, select=True),
}
_defaults = {
'value': lambda *a: 'balance',
'sequence': lambda *a: 5,
'days2': lambda *a: 0,
'value': 'balance',
'sequence': 5,
'days2': 0,
}
_order = "sequence"
@@ -401,18 +402,14 @@ class account_account(osv.osv):
'manage this. So if you import from another software system you may have to use the rate at date. ' \
'Incoming transactions always use the rate at date.', \
required=True),
'check_history': fields.boolean('Display History',
help="Check this box if you want to print all entries when printing the General Ledger, "\
"otherwise it will only print its balance."),
'level': fields.function(_get_level, string='Level', method=True, store=True, type='integer'),
}
_defaults = {
'type': lambda *a : 'view',
'reconcile': lambda *a: False,
'active': lambda *a: True,
'check_history': lambda *a: True,
'currency_mode': lambda *a: 'current',
'type': 'view',
'reconcile': False,
'active': True,
'currency_mode': 'current',
'company_id': lambda s,cr,uid,c: s.pool.get('res.company')._company_default_get(cr, uid, 'account.account', context=c),
}
@@ -506,7 +503,7 @@ class account_account(osv.osv):
default['child_parent_ids'] = False
return super(account_account, self).copy(cr, uid, id, default, context=context)
def _check_moves(self, cr, uid, ids, method, context):
def _check_moves(self, cr, uid, ids, method, context=None):
line_obj = self.pool.get('account.move.line')
account_ids = self.search(cr, uid, [('id', 'child_of', ids)])
@@ -522,7 +519,7 @@ class account_account(osv.osv):
raise osv.except_osv(_('Warning !'), _('You cannot remove/deactivate an account which is set as a property to any Partner.'))
return True
def _check_allow_type_change(self, cr, uid, ids, new_type, context):
def _check_allow_type_change(self, cr, uid, ids, new_type, context=None):
group1 = ['payable', 'receivable', 'other']
group2 = ['consolidation','view']
line_obj = self.pool.get('account.move.line')
@@ -552,9 +549,9 @@ class account_account(osv.osv):
self._check_allow_type_change(cr, uid, ids, vals['type'], context=context)
return super(account_account, self).write(cr, uid, ids, vals, context=context)
def unlink(self, cr, uid, ids, context={}):
self._check_moves(cr, uid, ids, "unlink", context)
return super(account_account, self).unlink(cr, uid, ids, context)
def unlink(self, cr, uid, ids, context=None):
self._check_moves(cr, uid, ids, "unlink", context=context)
return super(account_account, self).unlink(cr, uid, ids, context=context)
account_account()
@@ -566,6 +563,7 @@ class account_journal_view(osv.osv):
'columns_id': fields.one2many('account.journal.column', 'view_id', 'Columns')
}
_order = "name"
account_journal_view()
@@ -591,6 +589,7 @@ class account_journal_column(osv.osv):
'readonly': fields.boolean('Readonly'),
}
_order = "sequence"
account_journal_column()
class account_journal(osv.osv):
@@ -599,7 +598,7 @@ class account_journal(osv.osv):
_columns = {
'name': fields.char('Journal Name', size=64, required=True, translate=True,help="Name of the journal"),
'code': fields.char('Code', size=16,required=True,help="Code of the journal"),
'type': fields.selection([('sale', 'Sale'),('sale_refund','Sale Refund'), ('purchase', 'Purchase'), ('purchase_refund','Purchase Refund'),('expense', 'Expense'), ('cash', 'Cash'), ('bank', 'Bank'), ('general', 'General'), ('situation', 'Situation')], 'Type', size=32, required=True,
'type': fields.selection([('sale', 'Sale'),('sale_refund','Sale Refund'), ('purchase', 'Purchase'), ('purchase_refund','Purchase Refund'),('expense', 'Expense'), ('cash', 'Cash'), ('bank', 'Bank and Cheques'), ('general', 'General'), ('situation', 'Situation')], 'Type', size=32, required=True,
help="Select 'Sale' for Sale journal to be used at the time of making invoice."\
" Select 'Purchase' for Purchase Journal to be used at the time of approving purchase order."\
" Select 'Cash' to be used at the time of making payment."\
@@ -618,7 +617,7 @@ class account_journal(osv.osv):
'user_id': fields.many2one('res.users', 'User', help="The user responsible for this journal"),
'groups_id': fields.many2many('res.groups', 'account_journal_group_rel', 'journal_id', 'group_id', 'Groups'),
'currency': fields.many2one('res.currency', 'Currency', help='The currency used to enter statement'),
'entry_posted': fields.boolean('Skip \'Draft\' State for Created Entries', help='Check this box if you don\'t want new account moves to pass through the \'draft\' state and instead goes directly to the \'posted state\' without any manual validation.'),
'entry_posted': fields.boolean('Skip \'Draft\' State for Manual Entries', help='Check this box if you don\'t want new journal entries to pass through the \'draft\' state and instead goes directly to the \'posted state\' without any manual validation. \nNote that journal entries that are automatically created by the system are always skipping that state.'),
'company_id': fields.many2one('res.company', 'Company', required=True, select=1, help="Company related to this journal"),
# 'invoice_sequence_id': fields.many2one('ir.sequence', 'Invoice Sequence', \
# help="The sequence used for invoice numbers in this journal."),
@@ -839,7 +838,7 @@ class account_period(osv.osv):
'company_id': fields.related('fiscalyear_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True, readonly=True)
}
_defaults = {
'state': lambda *a: 'draft',
'state': 'draft',
}
_order = "date_start"
@@ -887,13 +886,10 @@ class account_period(osv.osv):
return ids
def action_draft(self, cr, uid, ids, *args):
users_roles = self.pool.get('res.users').browse(cr, uid, uid).roles_id
for role in users_roles:
if role.name=='Period':
mode = 'draft'
for id in ids:
cr.execute('update account_journal_period set state=%s where period_id=%s', (mode, id))
cr.execute('update account_period set state=%s where id=%s', (mode, id))
mode = 'draft'
for id in ids:
cr.execute('update account_journal_period set state=%s where period_id=%s', (mode, id))
cr.execute('update account_period set state=%s where id=%s', (mode, id))
return True
def name_search(self, cr, user, name, args=None, operator='ilike', context={}, limit=80):
@@ -1004,13 +1000,13 @@ class account_move(osv.osv):
@param context: context arguments, like lang, time zone
@param limit: Returns first 'n' ids of complete result, default is 80.
@return: Returns a list of tupples containing id and name
@return: Returns a list of tuples containing id and name
"""
if not args:
args=[]
args = []
if not context:
context={}
context = {}
ids = []
if name:
ids += self.search(cr, user, [('name','ilike',name)]+args, limit=limit, context=context)
@@ -1026,7 +1022,7 @@ class account_move(osv.osv):
def name_get(self, cursor, user, ids, context=None):
if not len(ids):
return []
res=[]
res = []
data_move = self.pool.get('account.move').browse(cursor,user,ids)
for move in data_move:
if move.state=='draft':
@@ -1040,8 +1036,7 @@ class account_move(osv.osv):
periods = self.pool.get('account.period').find(cr, uid)
if periods:
return periods[0]
else:
return False
return False
def _amount_compute(self, cr, uid, ids, name, args, context, where =''):
if not ids: return {}
@@ -1055,21 +1050,25 @@ class account_move(osv.osv):
return result
def _search_amount(self, cr, uid, obj, name, args, context):
ids = []
cr.execute('select move_id,sum(debit) from account_move_line group by move_id')
result = dict(cr.fetchall())
for item in args:
if item[1] == '>=':
res = [('id', 'in', [k for k,v in result.iteritems() if v >= item[2]])]
ids = set()
for cond in args:
amount = cond[2]
if isinstance(cond[2],(list,tuple)):
if cond[1] in ['in','not in']:
amount = tuple(cond[2])
else:
continue
else:
res = [('id', 'in', [k for k,v in result.iteritems() if v <= item[2]])]
ids += res
if cond[1] in ['=like', 'like', 'not like', 'ilike', 'not ilike', 'in', 'not in', 'child_of']:
continue
if not ids:
return [('id', '>', '0')]
return ids
cr.execute("select move_id from account_move_line group by move_id having sum(debit) %s %%s" % (cond[1]) ,(amount,))
res_ids = set(id[0] for id in cr.fetchall())
ids = ids and (ids & res_ids) or res_ids
if ids:
return [('id','in',tuple(ids))]
else:
return [('id', '=', '0')]
_columns = {
'name': fields.char('Number', size=64, required=True),
@@ -1079,11 +1078,11 @@ class account_move(osv.osv):
'state': fields.selection([('draft','Draft'), ('posted','Posted')], 'State', required=True, readonly=True,
help='When new account move is created the state will be \'Draft\'. When all the payments are done it will be in \'Posted\' state.'),
'line_id': fields.one2many('account.move.line', 'move_id', 'Entries', states={'posted':[('readonly',True)]}),
'to_check': fields.boolean('To Be Verified'),
'to_check': fields.boolean('To Review', help='Check this box if you are unsure of that journal entry and if you want to note it as \'to be reviewed\' by an accounting expert.'),
'partner_id': fields.related('line_id', 'partner_id', type="many2one", relation="res.partner", string="Partner"),
'amount': fields.function(_amount_compute, method=True, string='Amount', digits_compute=dp.get_precision('Account'), type='float', fnct_search=_search_amount),
'date': fields.date('Date', required=True, states={'posted':[('readonly',True)]}),
'narration':fields.text('Narration', select=True),
'narration':fields.text('Narration'),
'company_id': fields.related('journal_id','company_id',type='many2one',relation='res.company',string='Company',store=True),
}
_defaults = {
@@ -1152,6 +1151,17 @@ class account_move(osv.osv):
return True
def button_validate(self, cursor, user, ids, context=None):
for move in self.browse(cursor, user, ids):
top = None
for line in move.line_id:
account = line.account_id
while account:
account2 = account
account = account.parent_id
if not top:
top = account2.id
elif top<>account2.id:
raise osv.except_osv(_('Error !'), _('You cannot validate a Journal Entry unless all journal items are in same chart of accounts !'))
return self.post(cursor, user, ids, context=context)
def button_cancel(self, cr, uid, ids, context={}):
@@ -1457,7 +1467,7 @@ class account_tax_code(osv.osv):
This code is used for some tax declarations.
"""
def _sum(self, cr, uid, ids, name, args, context,where ='', where_params=()):
def _sum(self, cr, uid, ids, name, args, context, where ='', where_params=()):
parent_ids = tuple(self.search(cr, uid, [('parent_id', 'child_of', ids)]))
if context.get('based_on', 'invoices') == 'payments':
cr.execute('SELECT line.tax_code_id, sum(line.tax_amount) \
@@ -1470,13 +1480,15 @@ class account_tax_code(osv.osv):
AND ((invoice.state = \'paid\') \
OR (invoice.id IS NULL)) \
GROUP BY line.tax_code_id',
(parent_ids,)+where_params)
(parent_ids,) + where_params)
else:
cr.execute('SELECT line.tax_code_id, sum(line.tax_amount) \
FROM account_move_line AS line \
FROM account_move_line AS line, \
account_move AS move \
WHERE line.tax_code_id IN %s '+where+' \
AND move.id = line.move_id \
GROUP BY line.tax_code_id',
(parent_ids,)+where_params)
(parent_ids,) + where_params)
res=dict(cr.fetchall())
for record in self.browse(cr, uid, ids, context):
def _rec_get(record):
@@ -1487,7 +1499,12 @@ class account_tax_code(osv.osv):
res[record.id] = round(_rec_get(record), self.pool.get('decimal.precision').precision_get(cr, uid, 'Account'))
return res
def _sum_year(self, cr, uid, ids, name, args, context):
def _sum_year(self, cr, uid, ids, name, args, context=None):
if context is None:
context = {}
move_state = ('posted', )
if 'state' in context and context['state'] == 'all':
move_state = ('draft', 'posted', )
if 'fiscalyear_id' in context and context['fiscalyear_id']:
fiscalyear_id = context['fiscalyear_id']
else:
@@ -1497,12 +1514,17 @@ class account_tax_code(osv.osv):
if fiscalyear_id:
pids = map(lambda x: str(x.id), self.pool.get('account.fiscalyear').browse(cr, uid, fiscalyear_id).period_ids)
if pids:
where = ' and period_id IN %s'
where_params = (tuple(pids),)
where = ' AND line.period_id IN %s AND move.state IN %s '
where_params = (tuple(pids), move_state)
return self._sum(cr, uid, ids, name, args, context,
where=where, where_params=where_params)
def _sum_period(self, cr, uid, ids, name, args, context):
if context is None:
context = {}
move_state = ('posted', )
if 'state' in context and context['state'] == 'all':
move_state = ('draft', 'posted', )
if 'period_id' in context and context['period_id']:
period_id = context['period_id']
else:
@@ -1511,7 +1533,7 @@ class account_tax_code(osv.osv):
return dict.fromkeys(ids, 0.0)
period_id = period_id[0]
return self._sum(cr, uid, ids, name, args, context,
where=' and line.period_id=%s', where_params=(period_id,))
where=' AND line.period_id=%s AND move.state IN %s', where_params=(period_id, move_state))
_name = 'account.tax.code'
_description = 'Tax Code'
@@ -1646,9 +1668,9 @@ class account_tax(osv.osv):
@return: Returns a list of tupples containing id and name
"""
if not args:
args=[]
args = []
if not context:
context={}
context = {}
ids = []
ids = self.search(cr, user, args, limit=limit, context=context)
return self.name_get(cr, user, ids, context=context)
@@ -1669,37 +1691,37 @@ class account_tax(osv.osv):
return super(account_tax, self).search(cr, uid, args, offset, limit, order, context, count)
def name_get(self, cr, uid, ids, context={}):
def name_get(self, cr, uid, ids, context=None):
if not len(ids):
return []
res = []
for record in self.read(cr, uid, ids, ['description','name'], context):
for record in self.read(cr, uid, ids, ['description','name'], context=context):
name = record['description'] and record['description'] or record['name']
res.append((record['id'],name ))
return res
def _default_company(self, cr, uid, context={}):
def _default_company(self, cr, uid, context=None):
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
if user.company_id:
return user.company_id.id
return self.pool.get('res.company').search(cr, uid, [('parent_id', '=', False)])[0]
_defaults = {
'python_compute': lambda *a: '''# price_unit\n# address : res.partner.address object or False\n# product : product.product object or None\n# partner : res.partner object or None\n\nresult = price_unit * 0.10''',
'python_compute_inv': lambda *a: '''# price_unit\n# address : res.partner.address object or False\n# product : product.product object or False\n\nresult = price_unit * 0.10''',
'applicable_type': lambda *a: 'true',
'type': lambda *a: 'percent',
'amount': lambda *a: 0,
'price_include': lambda *a: 0,
'active': lambda *a: 1,
'type_tax_use': lambda *a: 'all',
'sequence': lambda *a: 1,
'tax_group': lambda *a: 'vat',
'ref_tax_sign': lambda *a: 1,
'ref_base_sign': lambda *a: 1,
'tax_sign': lambda *a: 1,
'base_sign': lambda *a: 1,
'include_base_amount': lambda *a: False,
'python_compute': '''# price_unit\n# address : res.partner.address object or False\n# product : product.product object or None\n# partner : res.partner object or None\n\nresult = price_unit * 0.10''',
'python_compute_inv': '''# price_unit\n# address : res.partner.address object or False\n# product : product.product object or False\n\nresult = price_unit * 0.10''',
'applicable_type': 'true',
'type': 'percent',
'amount': 0,
'price_include': 0,
'active': 1,
'type_tax_use': 'all',
'sequence': 1,
'tax_group': 'vat',
'ref_tax_sign': 1,
'ref_base_sign': 1,
'tax_sign': 1,
'base_sign': 1,
'include_base_amount': False,
'company_id': _default_company,
}
_order = 'sequence'
@@ -1803,7 +1825,7 @@ class account_tax(osv.osv):
tin = self.compute_inv(cr, uid, tin, price_unit, quantity, address_id=address_id, product=product, partner=partner)
for r in tin:
totalex -= r['amount']
totlex_qty=0.0
totlex_qty = 0.0
try:
totlex_qty=totalex/quantity
except:
@@ -2017,7 +2039,7 @@ class account_model_line(osv.osv):
'currency_id': fields.many2one('res.currency', 'Currency'),
'partner_id': fields.many2one('res.partner', 'Partner'),
'date_maturity': fields.selection([('today','Date of the day'), ('partner','Partner Payment Term')], 'Maturity date', help="The maturity date of the generated entries for this model. You can choose between the creation date or the creation date of the entries plus the partner payment terms."),
'date_maturity': fields.selection([('today','Date of the day'), ('partner','Partner Payment Term')], 'Due date', help="The due date of the generated entries for this model. You can choose between the creation date or the creation date of the entries plus the partner payment terms."),
'date': fields.selection([('today','Date of the day'), ('partner','Partner Payment Term')], 'Current Date', required=True, help="The date of the generated entries"),
}
_defaults = {
@@ -2224,12 +2246,12 @@ class account_add_tmpl_wizard(osv.osv_memory):
}
def action_create(self,cr,uid,ids,context=None):
acc_obj=self.pool.get('account.account')
tmpl_obj=self.pool.get('account.account.template')
data= self.read(cr, uid, ids)
acc_obj = self.pool.get('account.account')
tmpl_obj = self.pool.get('account.account.template')
data = self.read(cr, uid, ids)
company_id = acc_obj.read(cr, uid, [data[0]['cparent_id']], ['company_id'])[0]['company_id'][0]
account_template = tmpl_obj.browse(cr, uid, context['tmpl_ids'])
vals={
vals = {
'name': account_template.name,
'currency_id': account_template.currency_id and account_template.currency_id.id or False,
'code': account_template.code,
@@ -2628,13 +2650,13 @@ class wizard_multi_charts_accounts(osv.osv_memory):
data_id = data_pool.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_journal_bank_view_multi')])
data = data_pool.browse(cr, uid, data_id[0])
ref_acc_bank = data.res_id
view_id_cur = data.res_id
ref_acc_bank = obj_multi.chart_template_id.bank_account_view_id
current_num = 1
for line in obj_multi.bank_accounts_id:
#create the account_account for this bank journal
tmp = self.pool.get('res.partner.bank').name_get(cr, uid, [line.acc_no.id])[0][1]
tmp = line.acc_name
dig = obj_multi.code_digits
if ref_acc_bank.code:
try:
@@ -2642,7 +2664,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
except Exception,e:
new_code = str(ref_acc_bank.code.ljust(dig-len(str(current_num)),'0')) + str(current_num)
vals = {
'name': line.acc_no.bank and line.acc_no.bank.name+' '+tmp or tmp,
'name': tmp,
'currency_id': line.currency_id and line.currency_id.id or False,
'code': new_code,
'type': 'other',
+1 -1
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<assert model="account.move" search="[]" string="For all Ledger Postings, the state is valid implies that the sum of credits equals the sum of debits">
<assert model="account.move" search="[]" string="For all Journal Items, the state is valid implies that the sum of credits equals the sum of debits">
<test expr="not len(line_id) or line_id[0].state != 'valid' or (sum([l.debit - l.credit for l in line_id]) &lt;= 0.00001)"/>
</assert>
</data>
+63 -30
View File
@@ -104,8 +104,7 @@ class account_bank_statement(osv.osv):
periods = self.pool.get('account.period').find(cr, uid)
if periods:
return periods[0]
else:
return False
return False
def _currency(self, cursor, user, ids, name, args, context=None):
res = {}
@@ -201,6 +200,7 @@ class account_bank_statement(osv.osv):
res_users_obj = self.pool.get('res.users')
account_move_obj = self.pool.get('account.move')
account_move_line_obj = self.pool.get('account.move.line')
account_analytic_line_obj = self.pool.get('account.analytic.line')
account_bank_statement_line_obj = self.pool.get('account.bank.statement.line')
obj_seq = self.pool.get('ir.sequence')
@@ -222,6 +222,11 @@ class account_bank_statement(osv.osv):
raise osv.except_osv(_('Configuration Error !'),
_('Please verify that an account is defined in the journal.'))
if not st.name == '/':
next_number = st.name
else:
next_number = obj_seq.get(cr, uid, 'account.bank.statement')
for line in st.move_line_ids:
if line.state <> 'valid':
raise osv.except_osv(_('Error !'),
@@ -230,14 +235,18 @@ class account_bank_statement(osv.osv):
# In line we get reconcile_id on bank.ste.rec.
# in bank stat.rec we get line_new_ids on bank.stat.rec.line
for move in st.line_ids:
context.update({'date':move.date})
if move.analytic_account_id:
if not st.journal_id.analytic_journal_id:
raise osv.except_osv(_('No Analytic Journal !'),_("You have to define an analytic journal on the '%s' journal!") % (st.journal_id.name,))
context.update({'date': move.date})
move_id = account_move_obj.create(cr, uid, {
'journal_id': st.journal_id.id,
'period_id': st.period_id.id,
'date': move.date,
}, context=context)
account_bank_statement_line_obj.write(cr, uid, [move.id], {
'move_ids': [(4,move_id, False)]
'move_ids': [(4, move_id, False)]
})
if not move.amount:
continue
@@ -268,6 +277,7 @@ class account_bank_statement(osv.osv):
'journal_id': st.journal_id.id,
'period_id': st.period_id.id,
'currency_id': st.currency.id,
'analytic_account_id': move.analytic_account_id and move.analytic_account_id.id or False
}
amount = res_currency_obj.compute(cr, uid, st.currency.id,
@@ -289,7 +299,28 @@ class account_bank_statement(osv.osv):
account=acc_cur)
val['amount_currency'] = amount_cur
torec.append(account_move_line_obj.create(cr, uid, val , context=context))
move_line_id = account_move_line_obj.create(cr, uid, val , context=context)
torec.append(move_line_id)
if move.analytic_account_id:
anal_val = {}
amt = (val['credit'] or 0.0) - (val['debit'] or 0.0)
anal_val = {
'name': val['name'],
'ref': val['ref'],
'date': val['date'],
'amount': amt,
'account_id': val['analytic_account_id'],
'currency_id': val['currency_id'],
'general_account_id': val['account_id'],
'journal_id': st.journal_id.analytic_journal_id.id,
'period_id': val['period_id'],
'user_id': uid,
'move_id': move_line_id
}
if val.get('amount_currency', False):
anal_val['amount_currency'] = val['amount_currency']
account_analytic_line_obj.create(cr, uid, anal_val, context=context)
if move.reconcile_id and move.reconcile_id.line_new_ids:
for newline in move.reconcile_id.line_new_ids:
@@ -338,7 +369,7 @@ class account_bank_statement(osv.osv):
context=context):
if line.state <> 'valid':
raise osv.except_osv(_('Error !'),
_('Ledger Posting line "%s" is not valid') % line.name)
_('Journal Item "%s" is not valid') % line.name)
if move.reconcile_id and move.reconcile_id.line_ids:
## Search if move has already a partial reconciliation
@@ -367,17 +398,11 @@ class account_bank_statement(osv.osv):
account_move_line_obj.reconcile(cr, uid, torec, 'statement', writeoff_acc_id=writeoff_acc_id, writeoff_period_id=st.period_id.id, writeoff_journal_id=st.journal_id.id, context=context)
else:
account_move_line_obj.reconcile_partial(cr, uid, torec, 'statement', context)
if st.journal_id.entry_posted:
account_move_obj.write(cr, uid, [move_id], {'state': 'posted'})
move_name = next_number + ' - ' + str(move.sequence)
account_move_obj.write(cr, uid, [move_id], {'name': move_name, 'state': 'posted'}) # Bank statements will not consider boolean on journal entry_posted
self.log(cr, uid, st.id, 'Statement %s is confirmed and entries are created.' % st.name)
done.append(st.id)
next_number = obj_seq.get(cr, uid, 'account.bank.statement')
if not st.name == '/':
next_number = st.name + '/' + next_number[-1:]
account_move_obj.write(cr, uid, [move_id], {'state': 'posted', 'name': next_number})
self.write(cr, uid, [st.id], {'name': next_number}, context=context)
self.write(cr, uid, done, {'state':'confirm'}, context=context)
@@ -397,28 +422,15 @@ class account_bank_statement(osv.osv):
return True
def onchange_journal_id(self, cursor, user, statement_id, journal_id, context=None):
if not journal_id:
return {'value': {'currency': False}}
account_journal_obj = self.pool.get('account.journal')
res_users_obj = self.pool.get('res.users')
res_currency_obj = self.pool.get('res.currency')
cursor.execute('SELECT balance_end_real \
FROM account_bank_statement \
WHERE journal_id = %s \
ORDER BY date DESC,id DESC LIMIT 1', (journal_id,))
WHERE journal_id = %s AND NOT state = %s \
ORDER BY date DESC,id DESC LIMIT 1', (journal_id, 'draft'))
res = cursor.fetchone()
balance_start = res and res[0] or 0.0
currency_id = account_journal_obj.browse(cursor, user, journal_id,
context=context).currency.id
if not currency_id:
currency_id = res_users_obj.browse(cursor, user, user,
context=context).company_id.currency_id.id
currency = res_currency_obj.name_get(cursor, user, [currency_id],
context=context)[0]
return {'value': {'balance_start': balance_start, 'currency': currency}}
return {'value': {'balance_start': balance_start}}
def unlink(self, cr, uid, ids, context=None):
stat = self.read(cr, uid, ids, ['state'])
@@ -629,6 +641,26 @@ class account_bank_statement_line(osv.osv):
else:
account_id = part.property_account_receivable.id
res['value']['account_id'] = account_id
if not line or (line and not line[0].amount):
res_users_obj = self.pool.get('res.users')
res_currency_obj = self.pool.get('res.currency')
company_currency_id = res_users_obj.browse(cursor, user, user,
context=context).company_id.currency_id.id
if not currency_id:
currency_id = company_currency_id
cursor.execute('SELECT sum(debit-credit) \
FROM account_move_line \
WHERE (reconcile_id is null) \
AND partner_id = %s \
AND account_id=%s', (partner_id, account_id))
pgres = cursor.fetchone()
balance = pgres and pgres[0] or 0.0
balance = res_currency_obj.compute(cursor, user, company_currency_id,
currency_id, balance, context=context)
res['value']['amount'] = balance
return res
def _reconcile_amount(self, cursor, user, ids, name, args, context=None):
@@ -669,6 +701,7 @@ class account_bank_statement_line(osv.osv):
select=True, required=True, ondelete='cascade'),
'reconcile_id': fields.many2one('account.bank.statement.reconcile',
'Reconcile'),
'analytic_account_id': fields.many2one('account.analytic.account', 'Analytic Account'),
'move_ids': fields.many2many('account.move',
'account_bank_statement_line_move_rel', 'move_id','statement_id',
'Moves'),
+33 -10
View File
@@ -77,7 +77,7 @@ class account_cash_statement(osv.osv):
"""
res ={}
for statement in self.browse(cr, uid, ids):
amount_total=0.0
amount_total = 0.0
if statement.journal_id.type not in('cash'):
continue
@@ -232,7 +232,7 @@ class account_cash_statement(osv.osv):
'starting_details_ids':False
})
res_id = super(account_cash_statement, self).create(cr, uid, vals, context=context)
self.write(cr, uid, [res_id], {})
#self.write(cr, uid, [res_id], {})
return res_id
def write(self, cr, uid, ids, vals, context=None):
@@ -273,8 +273,6 @@ class account_cash_statement(osv.osv):
'balance_start': balance_start
})
return res
res = super(account_cash_statement, self).onchange_journal_id(cr, uid, statement_id, journal_id, context)
return res
@@ -304,7 +302,7 @@ class account_cash_statement(osv.osv):
if statement.name and statement.name == '/':
number = self.pool.get('ir.sequence').get(cr, uid, 'account.cash.statement')
vals.update({
'name':number
'name': number
})
cr.execute("select id from account_bank_statement where journal_id=%s and user_id=%s and state=%s order by id desc limit 1", (statement.journal_id.id, uid, 'confirm'))
@@ -346,6 +344,7 @@ class account_cash_statement(osv.osv):
res_users_obj = self.pool.get('res.users')
account_move_obj = self.pool.get('account.move')
account_move_line_obj = self.pool.get('account.move.line')
account_analytic_line_obj = self.pool.get('account.analytic.line')
account_bank_statement_line_obj = self.pool.get('account.bank.statement.line')
company_currency_id = res_users_obj.browse(cr, uid, uid, context=context).company_id.currency_id.id
@@ -374,6 +373,10 @@ class account_cash_statement(osv.osv):
# In line we get reconcile_id on bank.ste.rec.
# in bank stat.rec we get line_new_ids on bank.stat.rec.line
for move in st.line_ids:
if move.analytic_account_id:
if not st.journal_id.analytic_journal_id:
raise osv.except_osv(_('No Analytic Journal !'),_("You have to define an analytic journal on the '%s' journal!") % (st.journal_id.name,))
context.update({'date':move.date})
move_id = account_move_obj.create(cr, uid, {
'journal_id': st.journal_id.id,
@@ -412,6 +415,7 @@ class account_cash_statement(osv.osv):
'journal_id': st.journal_id.id,
'period_id': st.period_id.id,
'currency_id': st.currency.id,
'analytic_account_id': move.analytic_account_id and move.analytic_account_id.id or False
}
amount = res_currency_obj.compute(cr, uid, st.currency.id,
@@ -432,8 +436,28 @@ class account_cash_statement(osv.osv):
move.account_id.currency_id.id, amount, context=context,
account=acc_cur)
val['amount_currency'] = amount_cur
move_line_id = account_move_line_obj.create(cr, uid, val , context=context)
torec.append(move_line_id)
torec.append(account_move_line_obj.create(cr, uid, val , context=context))
if move.analytic_account_id:
anal_val = {}
amt = (val['credit'] or 0.0) - (val['debit'] or 0.0)
anal_val = {
'name': val['name'],
'ref': val['ref'],
'date': val['date'],
'amount': amt,
'account_id': val['analytic_account_id'],
'currency_id': val['currency_id'],
'general_account_id': val['account_id'],
'journal_id': st.journal_id.analytic_journal_id.id,
'period_id': val['period_id'],
'user_id': uid,
'move_id': move_line_id
}
if val.get('amount_currency', False):
anal_val['amount_currency'] = val['amount_currency']
account_analytic_line_obj.create(cr, uid, anal_val, context=context)
if move.reconcile_id and move.reconcile_id.line_new_ids:
for newline in move.reconcile_id.line_new_ids:
@@ -482,7 +506,7 @@ class account_cash_statement(osv.osv):
context=context):
if line.state <> 'valid':
raise osv.except_osv(_('Error !'),
_('Ledger Posting line "%s" is not valid') % line.name)
_('Journal Item "%s" is not valid') % line.name)
if move.reconcile_id and move.reconcile_id.line_ids:
torec += map(lambda x: x.id, move.reconcile_id.line_ids)
@@ -498,9 +522,8 @@ class account_cash_statement(osv.osv):
account_move_line_obj.reconcile(cr, uid, torec, 'statement', writeoff_acc_id=writeoff_acc_id, writeoff_period_id=st.period_id.id, writeoff_journal_id=st.journal_id.id, context=context)
else:
account_move_line_obj.reconcile_partial(cr, uid, torec, 'statement', context)
if st.journal_id.entry_posted:
account_move_obj.write(cr, uid, [move_id], {'state':'posted'})
move_name = st.name + ' - ' + str(move.sequence)
account_move_obj.write(cr, uid, [move_id], {'state':'posted', 'name': move_name})
done.append(st.id)
vals = {
+11 -25
View File
@@ -8,13 +8,13 @@
<field name="arch" type="xml">
<data>
<form position="attributes">
<attribute name="string">Accounting System Configuration</attribute>
<attribute name="string">Accounting Modules Configuration</attribute>
</form>
<separator string="title" position="attributes">
<attribute name="string">Configure Your Accounting System</attribute>
</separator>
<xpath expr="//label[@string='description']" position="attributes">
<attribute name="string">From this screen, you can configure your accounting system. Choose a Chart of Account matched to your accounting system or the Generic Chart of Account which allows you to configure which suit your needs.</attribute>
<attribute name="string">Configure your accounting system. By default, Chart of Account is matching to your country. If there are not chart of account certified for your county, you can install the generic chart of account.</attribute>
</xpath>
<xpath expr="//button[@string='Install Modules']" position="attributes">
<attribute name="string">Configure</attribute>
@@ -66,28 +66,24 @@
<field name="arch" type="xml">
<data>
<form position="attributes">
<attribute name="string">Extra Accounting Modules Installation</attribute>
<attribute name="string">Accounting Modules Configuration</attribute>
</form>
<separator string="title" position="attributes">
<attribute name="string">Install Extra Accounting Modules In Your Accounting System</attribute>
<attribute name="string">Extra Accounting Modules</attribute>
</separator>
<xpath expr="//label[@string='description']" position="attributes">
<attribute name="string">From this screen, you can install extra accounting modules in your accounting system. Select the modules to directly install them. If you do not think you need any of these right now, you can easily install them later.</attribute>
</xpath>
<xpath expr='//separator[@string="vsep"]' position='attributes'>
<attribute name='rowspan'>23</attribute>
<attribute name='string'></attribute>
</xpath>
<group colspan="8">
<group colspan="4" height="450" width="600">
<group colspan="4">
<field name="account_analytic_plans"/>
<field name="account_payment"/>
<field name="account_followup"/>
<field name="account_voucher"/>
<!-- <field name="account_voucher_payment"/>-->
</group>
</group>
<field name="account_voucher"/>
<field name="account_followup"/>
<field name="account_payment"/>
<field name="account_analytic_plans"/>
<field name="account_anglo_saxon"/>
<!-- <field name="account_voucher_payment"/>-->
</group>
</data>
</field>
@@ -123,18 +119,8 @@
<field name="action_id" ref="action_account_installer"/>
<field name="sequence">5</field>
<field name="restart">always</field>
<field eval="[(6,0,[ref('base.group_extended')])]" name="groups_id"/>
</record>
<record id="account_ir_actions_todo_tree" model="ir.ui.view">
<field name="model">ir.actions.todo</field>
<field name="name">account_installer_action_replace</field>
<field name="type">tree</field>
<field name="inherit_id" ref="base.ir_actions_todo_tree"/>
<field name="arch" type="xml">
<xpath expr="//button[@string='Launch']" position="replace">
<button name="%(action_account_configuration_installer)d" states="open,skip" string="Launch" type="action" icon="gtk-execute" help="Launch Configuration Wizard"/>
</xpath>
</field>
</record>
</data>
</openerp>
+15 -18
View File
@@ -65,9 +65,8 @@
<field domain="[('type','&lt;&gt;','view'), ('company_id', '=', parent.company_id), ('parent_id', '!=', False)]" name="account_analytic_id" groups="base.group_extended"/>
<newline/>
<field name="price_subtotal"/>
<field name="company_id" groups="base.group_multi_company" widget="selection"/>
<field colspan="4" name="invoice_line_tax_id" context="{'type':parent.type}" domain="[('parent_id','!=',False),('company_id', '=', parent.company_id)]"/>
<field name="company_id" groups="base.group_multi_company" readonly="1"/>
<field colspan="4" name="invoice_line_tax_id" context="{'type':parent.type}" domain="[('parent_id','=',False),('company_id', '=', parent.company_id)]"/>
</page>
<page string="Notes">
<field colspan="4" name="note" nolabel="1"/>
@@ -137,7 +136,6 @@
<field name="state"/>
<button name="invoice_open" states="draft,proforma2" string="Approve" icon="terp-camera_test"/>
<button name="%(action_account_invoice_pay)d" type='action' string='Pay Invoice' states='open' icon="terp-dolar_ok!"/>
</tree>
</field>
</record>
@@ -211,7 +209,6 @@
<group col="6" colspan="4">
<button name="invoice_open" states="draft,proforma2" string="Approve" icon="terp-camera_test"/>
<button name="%(action_account_invoice_refund)d" type='action' string='Refund' states='open,paid' icon="gtk-execute"/>
<button name="%(action_account_invoice_pay)d" type='action' string='Pay Invoice' states='open' icon="terp-dolar_ok!"/>
<button name="%(action_account_state_open)d" type='action' string='Re-Open' states='paid' icon="gtk-convert" groups="base.group_no_one"/>
<button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="gtk-cancel"/>
<button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="terp-stock_effects-object-colorize"/>
@@ -302,13 +299,13 @@
<field name="state"/>
<field name="residual"/>
<group col="7" colspan="4" groups="base.group_user">
<button name="invoice_proforma2" states="draft" string="PRO-FORMA" icon="terp-check" groups="account.group_account_user"/>
<button name="invoice_open" states="draft,proforma2" string="Create" icon="terp-document-new"/>
<button name="%(action_account_invoice_refund)d" type='action' string='Refund' states='open,paid' icon="gtk-execute"/>
<button name="%(action_account_invoice_pay)d" type='action' string='Pay Invoice' states='open' icon="terp-dolar_ok!"/>
<button name='%(action_account_state_open)d' type='action' string='Re-Open' states='paid' icon="gtk-convert" groups="base.group_no_one"/>
<button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="gtk-cancel"/>
<button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="terp-stock_effects-object-colorize"/>
<button name="action_cancel_draft" states="cancel" string="Reset to Draft" type="object" icon="terp-stock_effects-object-colorize"/>
<button name="invoice_proforma2" states="draft" string="PRO-FORMA" icon="terp-gtk-media-pause" groups="account.group_account_user"/>
<button name="invoice_open" states="draft,proforma2" string="Create" icon="terp-camera_test"/>
<button name="%(action_account_invoice_refund)d" type='action' string='Refund' states='open,paid' icon="gtk-execute"/>
<button name='%(action_account_state_open)d' type='action' string='Re-Open' states='paid' icon="gtk-convert" groups="base.group_no_one"/>
</group>
</group>
</page>
@@ -354,15 +351,15 @@
<search string="Search Invoice">
<group col="10" colspan="4">
<filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Invoices"/>
<filter icon="terp-check" string="Proforma" domain="[('state','=','proforma2')]" help="Proforma Invoices"/>
<filter icon="terp-check" string="Invoices" domain="[('state','not in',['draft','cancel'])]" help="Invoices"/>
<filter icon="terp-gtk-media-pause" string="Proforma" domain="[('state','=','proforma2')]" help="Proforma Invoices"/>
<filter icon="terp-camera_test" string="Invoices" domain="[('state','not in',['draft','cancel'])]" help="Invoices"/>
<separator orientation="vertical"/>
<filter icon="terp-dolar_ok!" string="Unpaid" domain="[('state','=','open')]" help="Unpaid Invoices"/>
<separator orientation="vertical"/>
<field name="number"/>
<field name="partner_id"/>
<field name="user_id" select="1" default="uid" widget="selection" string="Responsible">
<filter domain="[('user_id','=',uid)]" help="Responsible" icon="terp-partner" separator="1"/>
<field name="user_id" select="1" default="uid" widget="selection" string="Salesman">
<filter domain="[('user_id','=',uid)]" help="My invoices" icon="terp-personal" separator="1"/>
</field>
<field name="origin"/>
<field name="amount_total"/>
@@ -370,14 +367,14 @@
<newline/>
<group col="10" colspan="4">
<field name="journal_id" widget="selection" select='1'/>
<field name="period_id" select='1'/>
<field name="period_id" select='1' string="Period"/>
</group>
<newline/>
<group expand="0" string="Group By...">
<filter string="Journal" icon="terp-folder-orange" domain="[]" context="{'group_by':'journal_id'}"/>
<filter string="Period" icon="terp-go-month" domain="[]" context="{'group_by':'period_id'}"/>
<separator orientation="vertical"/>
<filter string="Partner" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
<filter string="Partner" icon="terp-partner" domain="[]" context="{'group_by':'partner_id'}"/>
<filter string="Responsible" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
<filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
<separator orientation="vertical"/>
@@ -500,7 +497,7 @@
</record>
<menuitem action="action_invoice_tree4" id="menu_action_invoice_tree4" parent="menu_finance_payables"/>
<act_window domain="[('partner_id','=',active_id)]" id="act_res_partner_2_account_invoice_opened" name="Invoices" res_model="account.invoice" src_model="res.partner"/>
<act_window context="{'search_default_partner_id':[active_id]}" id="act_res_partner_2_account_invoice_opened" name="Invoices" res_model="account.invoice" src_model="res.partner"/>
<act_window domain="[('journal_id','=',active_id),('state','!=','draft'),('reconciled','=',False)]" id="act_account_journal_2_account_invoice_opened" name="Unpaid invoices" res_model="account.invoice" src_model="account.journal"/>
+6 -8
View File
@@ -1,6 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="res_roles_invoice0" model="res.roles">
<field eval="&quot;&quot;&quot;Invoice&quot;&quot;&quot;" name="name"/>
<field name="description">Assign this role to the persons that should have the rights to confirm a draft invoice.</field>
</record>
<record id="wkf" model="workflow">
<field name="name">account.invoice.basic</field>
<field name="osv">account.invoice</field>
@@ -105,14 +111,6 @@ write({'state':'cancel'})</field>
<field name="signal">invoice_open</field>
</record>
<record id="pro2_to_paid" model="workflow.transition">
<field name="act_from" ref="act_proforma2"/>
<field name="act_to" ref="account.act_paid"/>
<field name="trigger_model">account.move.line</field>
<field name="trigger_expr_id">move_line_id_payment_get()</field>
<field name="condition">test_paid()</field>
</record>
<record id="pro2_to_cancel" model="workflow.transition">
<field name="act_from" ref="act_proforma2"/>
<field name="act_to" ref="account.act_cancel"/>
+4 -2
View File
@@ -3,10 +3,12 @@
<data>
<menuitem icon="terp-account" id="menu_finance" name="Accounting" sequence="13"/>
<menuitem id="menu_finance_receivables" name="Receivables" parent="menu_finance" sequence="1" groups="group_account_user,group_account_manager,base.group_system"/>
<menuitem id="menu_finance_payables" name="Payables" parent="menu_finance" sequence="2" groups="group_account_user,group_account_manager,base.group_system"/>
<menuitem id="menu_finance_receivables" name="Customers" parent="menu_finance" sequence="1" groups="group_account_user,group_account_manager,base.group_system"/>
<menuitem id="menu_finance_payables" name="Vendors" parent="menu_finance" sequence="2" groups="group_account_user,group_account_manager,base.group_system"/>
<menuitem id="menu_finance_bank_and_cash" name="Bank and Cash" parent="menu_finance" sequence="3"/>
<menuitem id="menu_finance_periodical_processing" name="Periodical Processing" parent="menu_finance" sequence="8" groups="group_account_user,group_account_manager,base.group_system,group_account_invoice"/>
<menuitem id="menu_finance_periodical_processing_bank" name="Bank Reconciliation" parent="menu_finance_periodical_processing" sequence="8" groups="group_account_user,group_account_manager,base.group_system,group_account_invoice"/>
<menuitem id="periodical_processing_journal_entries_validation" name="Draft Entries" parent="menu_finance_periodical_processing" groups="group_account_user,group_account_manager,base.group_system"/>
<menuitem id="periodical_processing_reconciliation" name="Reconciliation" parent="menu_finance_periodical_processing"/>
<menuitem id="periodical_processing_invoicing" name="Invoicing" parent="menu_finance_periodical_processing"/>
+21 -16
View File
@@ -305,6 +305,7 @@ class account_move_line(osv.osv):
ml = self.browse(cr, uid, id, context)
return map(lambda x: x.id, ml.move_id.line_id)
# TODO: this is false, it does not uses draft and closed periods
def _balance(self, cr, uid, ids, prop, unknow_none, unknow_dict):
res={}
# TODO group the foreach in sql
@@ -344,9 +345,9 @@ class account_move_line(osv.osv):
result = []
for line in self.browse(cr, uid, ids, context):
if line.ref:
result.append((line.id, (line.name or '')+' ('+line.ref+')'))
result.append((line.id, (line.move_id.name or '')+' ('+line.ref+')'))
else:
result.append((line.id, line.name))
result.append((line.id, line.move_id.name))
return result
def _balance_search(self, cursor, user, obj, name, args, domain=None, context=None):
@@ -424,9 +425,9 @@ class account_move_line(osv.osv):
'debit': fields.float('Debit', digits_compute=dp.get_precision('Account')),
'credit': fields.float('Credit', digits_compute=dp.get_precision('Account')),
'account_id': fields.many2one('account.account', 'Account', required=True, ondelete="cascade", domain=[('type','<>','view'), ('type', '<>', 'closed')], select=2),
'move_id': fields.many2one('account.move', 'Move', ondelete="cascade", help="The move of this entry line.", select=2),
'move_id': fields.many2one('account.move', 'Move', ondelete="cascade", help="The move of this entry line.", select=2, required=True),
'narration': fields.related('move_id','narration', type='text', relation='account.move', string='Narration'),
'ref': fields.char('Ref.', size=64),
'ref': fields.related('move_id', 'ref', string='Reference', type='char', size=64, store=True),
'statement_id': fields.many2one('account.bank.statement', 'Statement', help="The bank statement used for bank reconciliation", select=1),
'reconcile_id': fields.many2one('account.move.reconcile', 'Reconcile', readonly=True, ondelete='set null', select=2),
'reconcile_partial_id': fields.many2one('account.move.reconcile', 'Partial Reconcile', readonly=True, ondelete='set null', select=2),
@@ -435,10 +436,10 @@ class account_move_line(osv.osv):
'period_id': fields.many2one('account.period', 'Period', required=True, select=2),
'journal_id': fields.many2one('account.journal', 'Journal', required=True, select=1),
'blocked': fields.boolean('Litigation', help="You can check this box to mark the entry line as a litigation with the associated partner"),
'blocked': fields.boolean('Litigation', help="You can check this box to mark this journal item as a litigation with the associated partner"),
'partner_id': fields.many2one('res.partner', 'Partner'),
'date_maturity': fields.date('Maturity date', help="This field is used for payable and receivable entries. You can put the limit date for the payment of this entry line."),
'date_maturity': fields.date('Due date', help="This field is used for payable and receivable journal entries. You can put the limit date for the payment of this line."),
'date': fields.related('move_id','date', string='Effective date', type='date', required=True,
store={
'account.move': (_get_move_lines, ['date'], 20)
@@ -447,7 +448,7 @@ class account_move_line(osv.osv):
'analytic_lines': fields.one2many('account.analytic.line', 'move_id', 'Analytic lines'),
'centralisation': fields.selection([('normal','Normal'),('credit','Credit Centralisation'),('debit','Debit Centralisation')], 'Centralisation', size=6),
'balance': fields.function(_balance, fnct_search=_balance_search, method=True, string='Balance'),
'state': fields.selection([('draft','Draft'), ('valid','Valid')], 'State', readonly=True,
'state': fields.selection([('draft','Unbalanced'), ('valid','Valid')], 'State', readonly=True,
help='When new move line is created the state will be \'Draft\'.\n* When all the payments are done it will be in \'Valid\' state.'),
'tax_code_id': fields.many2one('account.tax.code', 'Tax Account', help="The Account can either be a base tax code or a tax code account."),
'tax_amount': fields.float('Tax/Base Amount', digits_compute=dp.get_precision('Account'), select=True, help="If the Tax account is a tax code account, this field will contain the taxed amount.If the tax account is base tax code, "\
@@ -456,8 +457,8 @@ class account_move_line(osv.osv):
type='many2one', relation='account.invoice', fnct_search=_invoice_search),
'account_tax_id':fields.many2one('account.tax', 'Tax'),
'analytic_account_id': fields.many2one('account.analytic.account', 'Analytic Account'),
#TODO: remove this
'amount_taxed':fields.float("Taxed Amount", digits_compute=dp.get_precision('Account')),
#TODO: remove this
#'amount_taxed':fields.float("Taxed Amount", digits_compute=dp.get_precision('Account')),
'company_id': fields.related('account_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True)
}
@@ -864,7 +865,7 @@ class account_move_line(osv.osv):
fields = {}
flds = []
title = "Accounting Entries" #self.view_header_get(cr, uid, view_id, view_type, context)
xml = '''<?xml version="1.0"?>\n<tree string="%s" editable="top" refresh="5" on_write="on_create_write">\n\t''' % (title)
xml = '''<?xml version="1.0"?>\n<tree string="%s" editable="top" refresh="5" on_write="on_create_write" colors="red:state==\'draft\';black:state==\'valid\'">\n\t''' % (title)
ids = journal_pool.search(cr, uid, [])
journals = journal_pool.browse(cr, uid, ids)
@@ -907,8 +908,8 @@ class account_move_line(osv.osv):
if common_fields.get(field) == total:
fields.get(field).append(None)
if field=='state':
state = 'colors="red:state==\'draft\'"'
# if field=='state':
# state = 'colors="red:state==\'draft\'"'
attrs = []
if field == 'debit':
@@ -917,6 +918,9 @@ class account_move_line(osv.osv):
elif field == 'credit':
attrs.append('sum="Total credit"')
elif field == 'move_id':
attrs.append('required="False"')
elif field == 'account_tax_id':
attrs.append('domain="[(\'parent_id\',\'=\',False)]"')
attrs.append("context=\"{'journal_id':journal_id}\"")
@@ -982,9 +986,10 @@ class account_move_line(osv.osv):
if 'period_id' in vals and 'period_id' not in context:
period_id = vals['period_id']
elif 'journal_id' not in context and 'move_id' in vals:
m = self.pool.get('account.move').browse(cr, uid, vals['move_id'])
journal_id = m.journal_id.id
period_id = m.period_id.id
if vals['move_id']:
m = self.pool.get('account.move').browse(cr, uid, vals['move_id'])
journal_id = m.journal_id.id
period_id = m.period_id.id
else:
journal_id = context.get('journal_id',False)
period_id = context.get('period_id',False)
@@ -993,7 +998,7 @@ class account_move_line(osv.osv):
if journal.allow_date and period_id:
period = self.pool.get('account.period').browse(cr, uid, [period_id])[0]
if not time.strptime(vals['date'][:10],'%Y-%m-%d')>=time.strptime(period.date_start,'%Y-%m-%d') or not time.strptime(vals['date'][:10],'%Y-%m-%d')<=time.strptime(period.date_stop,'%Y-%m-%d'):
raise osv.except_osv(_('Error'),_('The date of your Ledger Posting is not in the defined period !'))
raise osv.except_osv(_('Error'),_('The date of your Journal Entry is not in the defined period!'))
else:
return True
+108 -69
View File
@@ -85,26 +85,22 @@
Period
-->
<record id="res_role_period" model="res.roles">
<field eval="&quot;&quot;&quot;Period&quot;&quot;&quot;" name="name"/>
</record>
<record id="view_account_period_form" model="ir.ui.view">
<field name="name">account.period.form</field>
<field name="model">account.period</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Period">
<field name="name" select="1"/>
<field name="code" select="1"/>
<field name="name"/>
<field name="code"/>
<field name="date_start"/>
<field name="date_stop"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="fiscalyear_id"/>
<field name="special"/>
<separator colspan="4" string="States"/>
<field name="state" select="1"/>
<button name="action_draft" states="done" string="Set to Draft" type="object" icon="gtk-convert"/>
<field name="state"/>
<button name="action_draft" states="done" string="Set to Draft" type="object" icon="gtk-convert" groups="account.group_account_manager"/>
</form>
</field>
</record>
@@ -114,20 +110,40 @@
<field name="type">tree</field>
<field name="arch" type="xml">
<tree colors="blue:state in ('draft');gray:state in ('done') " string="Period">
<field name="code"/>
<field name="name"/>
<field name="code"/>
<field name="date_start"/>
<field name="date_stop"/>
<field name="special"/>
<field name="state"/>
<button name="action_draft" states="done" string="Set to Draft" type="object" icon="gtk-convert" groups="account.group_account_manager"/>
<button name="%(action_account_period_close)d" states="draft" string="Close Period" type="action" icon="gtk-convert"/>
</tree>
</field>
</record>
<record id="view_account_period_search" model="ir.ui.view">
<field name="name">account.period.search</field>
<field name="model">account.period</field>
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Search Period">
<group>
<filter string="Draft" name="draft" domain="[('state','=','draft')]" icon="terp-document-new"/>
<separator orientation="vertical"/>
<field name="code"/>
<field name="name"/>
</group>
</search>
</field>
</record>
<record id="action_account_period_form" model="ir.actions.act_window">
<field name="name">Periods</field>
<field name="res_model">account.period</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="view_mode">tree,form,search</field>
<field name="context">{'search_default_draft': 1}</field>
</record>
<menuitem action="action_account_period_form" id="menu_action_account_period_form" parent="account.next_id_23"/>
@@ -242,8 +258,8 @@
<field name="debit"/>
<field name="credit"/>
<field name="balance"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="company_currency_id"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="type"/>
</tree>
</field>
@@ -449,10 +465,9 @@
<field name="journal_id"/>
<field name="balance_start"/>
<field name="balance_end_real"/>
<field name="balance_end"/>
<field name="balance_end" invisible="1"/>
<field name="state"/>
<button type="object" string="Open" name="button_open" states="draft" icon="terp-camera_test"/>
<button type="object" string="Confirm" name="button_confirm_cash" states="open" icon="terp-gtk-go-back-rtl"/>
<button type="object" string="Confirm" name="button_confirm_bank" states="draft" icon="terp-camera_test"/>
<button type="object" string="Cancel" name="button_cancel" states="confirm" icon="gtk-cancel"/>
</tree>
</field>
@@ -496,7 +511,7 @@
<field name="balance_end_real"/>
<field name="currency" invisible="1"/>
<button name="%(action_view_account_statement_from_invoice_lines)d"
string="Import Invoices" type="action" icon="gtk-dnd"
string="Import Invoices" type="action" icon="gtk-execute"
attrs="{'invisible':[('state','=','confirm')]}"/>
</group>
<notebook colspan="4">
@@ -520,6 +535,7 @@
<field name="type"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id, type, parent.currency)"/>
<field domain="[('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view')]" name="account_id"/>
<field name="analytic_account_id" groups="base.group_extended" />
<field name="amount"/>
<field context="{'partner_id':partner_id,'amount':amount,'account_id':account_id,'currency_id': parent.currency,'journal_id':parent.journal_id, 'date':date}" name="reconcile_id"/>
<field name="ref"/>
@@ -529,7 +545,7 @@
</form>
</field>
</page>
<page string="Accounting Entries">
<page string="Journal Entries">
<field colspan="4" name="move_line_ids" nolabel="1"/>
</page>
</notebook>
@@ -564,6 +580,8 @@
<field name="act_window_id" ref="action_bank_statement_tree"/>
</record>
<menuitem string="Bank Statements" action="action_bank_statement_tree" id="menu_bank_statement_tree" parent="menu_finance_bank_and_cash" sequence="7"/>
<menuitem name="Statements Reconciliation" action="action_bank_statement_tree" id="menu_menu_Bank_process" parent="menu_finance_periodical_processing_bank" sequence="7"/>
<record id="action_bank_statement_draft_tree" model="ir.actions.act_window">
<field name="name">Draft statements</field>
@@ -661,14 +679,13 @@
<field name="model">account.move</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree colors="blue:state in ('draft');black:state in ('posted')" string="Accounting Entries">
<tree colors="blue:state in ('draft');black:state in ('posted')" string="Journal Entries">
<field name="name"/>
<field name="date"/>
<field name="ref"/>
<field name="date"/>
<field name="period_id"/>
<field name="journal_id"/>
<field name="partner_id"/>
<field name="reconcile_id"/>
<field name="amount" sum="Total Amount"/>
<field name="state"/>
</tree>
@@ -684,7 +701,7 @@
<field name="model">account.move.reconcile</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Account Entry Reconcile">
<form string="Journal Entry Reconcile">
<group col="6" colspan="4">
<field name="name" select="1"/>
<field name="create_date" select="1"/>
@@ -711,9 +728,9 @@
<tree string="Account Tax Code" toolbar="1">
<field name="name"/>
<field name="code"/>
<field name="sum"/>
<field name="sum_period"/>
<field name="company_id"/>
<field name="sum"/>
<field name="company_id" groups="base.group_multi_company"/>
</tree>
</field>
</record>
@@ -858,11 +875,13 @@
<field name="view_id" ref="view_tax_code_tree"/>
<field name="help">Chart of Taxes is a tree view reflecting the structure of the Tax Cases (or tax codes) and shows the current tax situation. The tax chart represents the amount of each area of the tax declaration for your country. It’s presented in a hierarchical structure, which can be modified to fit your needs.</field>
</record>
<!--
<menuitem
action="action_tax_code_tree"
id="menu_action_tax_code_tree"
parent="menu_finance_charts"
sequence="12"/>
sequence="12"/> --> <!-- move to wizard -->
<!--
Entries lines
@@ -874,7 +893,7 @@
<field name="type">tree</field>
<field eval="4" name="priority"/>
<field name="arch" type="xml">
<tree colors="blue:state in ('draft');black:state in ('valid')" string="Account Entry Line" editable="top" on_write="on_create_write">
<tree colors="red:state in ('draft');black:state in ('valid')" string="Journal Items" editable="top" on_write="on_create_write">
<field name="date"/>
<field name="period_id"/>
<field name="move_id"/>
@@ -903,7 +922,7 @@
<field name="type">form</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<form string="Account Entry Line">
<form string="Journal Item">
<group col="6" colspan="4">
<field name="name" select="1"/>
<field name="ref"/>
@@ -925,16 +944,16 @@
<group col="2" colspan="2">
<separator colspan="2" string="Accounting Documents"/>
<field name="invoice"/>
<field name="invoice" readonly="True"/>
<field name="move_id" required="False"/>
<field name="statement_id"/>
<field name="statement_id" readonly="True"/>
</group>
<group col="2" colspan="2">
<separator colspan="2" string="Dates"/>
<field name="date" select="1"/>
<field name="date_maturity"/>
<field name="date_created"/>
<field name="date_created" readonly="True"/>
</group>
<group col="2" colspan="2">
@@ -983,7 +1002,7 @@
<field name="type">form</field>
<field eval="9" name="priority"/>
<field name="arch" type="xml">
<form string="Account Entry Line">
<form string="Journal Item">
<notebook colspan="4">
<page string="Information">
<separator colspan="4" string="General Information"/>
@@ -1038,19 +1057,19 @@
</record>
<record id="view_account_move_line_filter" model="ir.ui.view">
<field name="name">Entry Lines</field>
<field name="name">Journal Items</field>
<field name="model">account.move.line</field>
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Search Entry Lines">
<search string="Search Journal Items">
<group col='10' colspan='4'>
<filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Entry Lines"/>
<filter icon="terp-document-new" string="Unbalanced" domain="[('state','=','draft')]" help="Unbalanced Journal Items"/>
<separator orientation="vertical"/>
<filter icon="terp-camera_test" string="Posted" domain="[('state','=','valid')]" help="Posted Entry Lines"/>
<filter icon="terp-stock_symbol-selection" string="Unposted" domain="[('move_id.state','=','draft')]" help="Unposted Entry Lines"/>
<filter icon="terp-camera_test" string="Posted" domain="[('move_id.state','=','posted')]" help="Posted Journal Items"/>
<filter icon="terp-stock_symbol-selection" string="Unposted" domain="[('move_id.state','=','draft')]" help="Unposted Journal Items"/>
<separator orientation="vertical"/>
<filter
icon="terp-stock_symbol-selection"
icon="terp-dolar_ok!"
string="Unreconciled"
domain="[('reconcile_id','=',False), ('account_id.type','in',['receivable', 'payable'])]" help="Unreconciled Journal Items"
name="unreconciled"/>
@@ -1059,7 +1078,7 @@
<field name="date" select='1'/>
<field name="account_id" select='1'/>
<field name="partner_id" select='1'>
<filter help="Next Partner Entries to reconcile" name="next_partner" string="Next Partner to reconcile" context="{'next_partner_only': 1}" icon="terp-partner" domain="[('account_id.reconcile','=',True),('reconcile_id','=',False)]"/>
<filter help="Next Partner Entries to reconcile" name="next_partner" string="Next Partner to reconcile" context="{'next_partner_only': 1}" icon="terp-gtk-jump-to-ltr" domain="[('account_id.reconcile','=',True),('reconcile_id','=',False)]"/>
</field>
</group>
<newline/>
@@ -1070,8 +1089,11 @@
<newline/>
<group expand="0" string="Group By..." colspan="12" col="10">
<filter string="Journal" icon="terp-folder-orange" domain="[]" context="{'group_by':'journal_id'}"/>
<filter string="Account" icon="terp-folder-orange" context="{'group_by':'account_id'}"/>
<separator orientation="vertical"/>
<filter string="Partner" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
<separator orientation="vertical"/>
<filter string="Period" icon="terp-go-month" domain="[]" context="{'group_by':'period_id'}"/>
<filter string="States" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
</group>
<newline/>
<group expand="0" string="Extended options...">
@@ -1085,8 +1107,25 @@
</field>
</record>
<record id="action_account_moves_all_a" model="ir.actions.act_window">
<field name="name">Journal Items</field>
<field name="res_model">account.move.line</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="search_view_id" ref="view_account_move_line_filter"/>
</record>
<menuitem
action="action_account_moves_all_a"
icon="STOCK_JUSTIFY_FILL"
id="menu_action_account_moves_all"
parent="account.menu_finance_entries"
sequence="1"
groups="group_account_user,group_account_manager,base.group_system"
/>
<record id="action_move_line_select" model="ir.actions.act_window">
<field name="name">Entry Lines</field>
<field name="name">Journal Items</field>
<field name="res_model">account.move.line</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
@@ -1141,16 +1180,15 @@
<field name="model">account.move</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree colors="blue:state in ('draft');black:state in ('posted')" string="Account Entry">
<tree colors="blue:state in ('draft');black:state in ('posted')" string="Journal Entries">
<field name="name"/>
<field name="date"/>
<field name="ref"/>
<field name="journal_id"/>
<field name="date"/>
<field name="period_id"/>
<field name="journal_id"/>
<field name="partner_id"/>
<field name="line_id"/>
<field name="to_check" groups="base.group_extended"/>
<field name="amount" sum="Total Amount"/>
<field name="to_check" groups="base.group_extended"/>
<field name="state"/>
<button name="button_validate" states="draft" string="Approve" type="object" icon="terp-camera_test"/>
</tree>
@@ -1174,9 +1212,9 @@
<field name="amount" invisible="1" select="1"/>
</group>
<notebook colspan="4">
<page string="Journal Entries Lines">
<page string="Journal Items">
<field colspan="4" name="line_id" nolabel="1" height="250" widget="one2many_list" default_get="{'lines':line_id ,'journal':journal_id }">
<form string="Account Entry Line">
<form string="Journal Item">
<group col="6" colspan="4">
<field name="name" select="1"/>
<field name="ref"/>
@@ -1247,7 +1285,7 @@
</page>
</notebook>
</form>
<tree colors="blue:state in ('draft');black:state in ('posted')" editable="top" string="Account Entry Line">
<tree colors="blue:state in ('draft');black:state in ('posted')" editable="top" string="Journal Items">
<field name="ref"/>
<field name="invoice"/>
<field name="name"/>
@@ -1286,16 +1324,15 @@
<field name="arch" type="xml">
<search string="Search Move">
<group col='8' colspan='4'>
<filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Entries"/>
<filter icon="terp-camera_test" string="Posted" domain="[('state','=','posted')]" help="Posted Entries"/>
<filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Journal Entries"/>
<filter icon="terp-camera_test" string="Posted" domain="[('state','=','posted')]" help="Posted Journal Entries"/>
<separator orientation="vertical"/>
<filter icon="terp-stock_effects-object-colorize" string="To Review" domain="[('to_check','=',True)]" groups="base.group_extended" help="To Review"/>
<filter icon="terp-stock_zoom" string="To Review" domain="[('to_check','=',True)]" groups="base.group_extended" help="Journal Entries to Review"/>
<separator orientation="vertical"/>
<field name="ref" select="1"/>
<field name="name" select="1"/>
<field name="ref" select="1"/>
<field name="partner_id" select='1'/>
<field name="date" select='1'/>
<field name="narration" select="1"/>
</group>
<newline/>
<group col='8' colspan='4'>
@@ -1348,12 +1385,12 @@
res_model="account.move.line"
src_model="account.move"/>
<record id="account.act_account_move_to_account_move_line_open" model="ir.actions.act_window">
<field eval="[(6,0,[ref('account.group_accounting_accountant')])]" name="groups_id"/>
</record>
<record id="account.act_account_move_to_account_move_line_open" model="ir.actions.act_window">
<field eval="[(6,0,[ref('account.group_accounting_accountant')])]" name="groups_id"/>
</record>
<record id="action_move_line_search" model="ir.actions.act_window">
<field name="name">Entry Lines</field>
<field name="name">Journal Items</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">account.move.line</field>
<field name="view_type">form</field>
@@ -1413,6 +1450,7 @@
<field name="type"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id, type, parent.currency)"/>
<field domain="[('journal_id', '=', parent.journal_id)]" name="account_id"/>
<field name="analytic_account_id" groups="base.group_extended" />
<field name="amount"/>
<field context="{'partner_id': partner_id, 'amount': amount, 'account_id': account_id, 'date':date}" name="reconcile_id"/>
</form>
@@ -1439,10 +1477,10 @@
<act_window
context="{'search_default_next_partner':1,'view_mode':True}"
id="action_account_manual_reconcile" name="Entry Lines"
id="action_account_manual_reconcile" name="Journal Items"
res_model="account.move.line"
view_id="view_move_line_tree"/>
/>
<menuitem
name="Manual Reconcilication" icon="STOCK_EXECUTE"
@@ -1506,7 +1544,7 @@
<field name="model">account.model.line</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Entry Model Line" editable="bottom">
<tree string="Journal Entry Model Line" editable="bottom">
<field name="sequence"/>
<field name="ref"/>
<field name="name"/>
@@ -1526,7 +1564,7 @@
<field name="model">account.model.line</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Entry Model Line">
<form string="Journal Entry Model Line">
<field colspan="4" name="name" select="1"/>
<field name="sequence"/>
<field name="ref" select="1"/>
@@ -1547,7 +1585,7 @@
<field name="model">account.model</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Entry Model">
<form string="Journal Entry Model">
<field name="name" select="1"/>
<field name="ref" select="1"/>
<field name="journal_id" select="1"/>
@@ -1566,7 +1604,7 @@
<field name="model">account.model</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Entry Model">
<tree string="Journal Entry Model">
<field name="name"/>
<field name="journal_id"/>
<field name="company_id"/>
@@ -1762,7 +1800,7 @@
</record>
<record id="action_move_line_tree1" model="ir.actions.act_window">
<field name="name">Entry Lines</field>
<field name="name">Journal Items</field>
<field name="res_model">account.move.line</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
@@ -1776,7 +1814,7 @@
<field name="type">tree</field>
<field eval="4" name="priority"/>
<field name="arch" type="xml">
<tree colors="blue:state in ('draft');black:state in ('valid')" string="Account Entry Line">
<tree colors="red:state in ('draft');black:state in ('valid')" string="Journal Items">
<field name="date"/>
<field name="move_id"/>
<field name="statement_id" string="St."/>
@@ -1795,7 +1833,7 @@
</record>
<record id="action_tax_code_line_open" model="ir.actions.act_window">
<field name="name">Account Entry Lines</field>
<field name="name">Journal Items</field>
<field name="res_model">account.move.line</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
@@ -1819,9 +1857,9 @@
<act_window domain="[('journal_id', '=', active_id)]" id="act_account_journal_2_account_move_line" name="Journal Items" res_model="account.move.line" src_model="account.journal"/>
<act_window context="{'search_default_reconcile_id':False}" domain="[('partner_id', '=', active_id),('reconcile_id','=',False),('account_id.reconcile', '=', True),('account_id.type', 'in', ['receivable', 'payable'])]" id="act_account_partner_account_move_all" name="Receivables &amp; Payables" res_model="account.move.line" src_model="res.partner"/>
<act_window context="{'search_default_reconcile_id':False, 'search_default_partner_id':[active_id]}" domain="[('account_id.reconcile', '=', True),('account_id.type', 'in', ['receivable', 'payable'])]" id="act_account_partner_account_move_all" name="Receivables &amp; Payables" res_model="account.move.line" src_model="res.partner" groups="base.group_extended"/>
<act_window domain="[('partner_id', '=', active_id)]" id="act_account_partner_account_move" name="Journal Items" res_model="account.move.line" src_model="res.partner"/>
<act_window context="{'search_default_partner_id':[active_id]}" id="act_account_partner_account_move" name="Journal Items" res_model="account.move.line" src_model="res.partner"/>
<record id="view_account_addtmpl_wizard_form" model="ir.ui.view">
<field name="name">Create Account</field>
@@ -2365,6 +2403,7 @@
<field name="type"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id, type, parent.currency)"/>
<field domain="[('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view')]" name="account_id"/>
<field name="analytic_account_id" groups="base.group_extended" />
<field name="amount"/>
<field context="{'partner_id':partner_id,'amount':amount,'account_id':account_id,'currency_id': parent.currency,'journal_id':parent.journal_id, 'date':date}" name="reconcile_id"/>
<field name="ref"/>
@@ -2404,8 +2443,8 @@
</field>
</group>
</page>
<page string="Accounting Entries" attrs="{'invisible': [('state','!=','confirm')]}">
<field colspan="4" name="move_line_ids" nolabel="1" string="Accounting Entries"/>
<page string="Journal Entries" attrs="{'invisible': [('state','!=','confirm')]}">
<field colspan="4" name="move_line_ids" nolabel="1" string="Journal Entries"/>
</page>
</notebook>
<group col="6" colspan="4">
@@ -2416,7 +2455,7 @@
</group>
<group col="2" colspan="2">
<separator string="Opening Balance" colspan="4"/>
<field name="balance_start" readonly="1" string="Opening Balance"/>
<field name="balance_start" attrs="{'readonly':[('state','in',('open','confirm'))]}" string="Opening Balance"/>
<field name="total_entry_encoding"/>
</group>
<group col="2" colspan="2">
+20 -12
View File
@@ -177,7 +177,7 @@
<record id="conf_ova" model="account.account.template">
<field name="code">1103</field>
<field name="name">Output VAT</field>
<field name="name">Tax Paid</field>
<field ref="conf_cas" name="parent_id"/>
<field name="type">other</field>
<field name="user_type" ref="conf_account_type_asset"/>
@@ -210,7 +210,7 @@
<record id="conf_iva" model="account.account.template">
<field name="code">1112</field>
<field name="name">Input VAT</field>
<field name="name">Tax Received</field>
<field ref="conf_cli" name="parent_id"/>
<field name="type">other</field>
<field name="user_type" ref="conf_account_type_liability"/>
@@ -308,55 +308,55 @@
<!-- Input TAX -->
<record id="tax_code_input" model="account.tax.code.template">
<field name="name">Input TAX</field>
<field name="name">Tax Received</field>
<field name="parent_id" ref="tax_code_balance_net"/>
<field eval="-1" name="sign"/>
</record>
<record id="tax_code_input_S" model="account.tax.code.template">
<field name="name">Input TAX Rate S (15%)</field>
<field name="name">Tax Received Rate S (15%)</field>
<field name="parent_id" ref="tax_code_input"/>
</record>
<record id="tax_code_input_R" model="account.tax.code.template">
<field name="name">Input TAX Rate R (5%)</field>
<field name="name">Tax Received Rate R (5%)</field>
<field name="parent_id" ref="tax_code_input"/>
</record>
<record id="tax_code_input_X" model="account.tax.code.template">
<field name="name">Input TAX Rate X (Exempt)</field>
<field name="name">Tax Received Rate X (Exempt)</field>
<field name="parent_id" ref="tax_code_input"/>
</record>
<record id="tax_code_input_O" model="account.tax.code.template">
<field name="name">Input TAX Rate O (Out of scope)</field>
<field name="name">Tax Received Rate O (Out of scope)</field>
<field name="parent_id" ref="tax_code_input"/>
</record>
<!-- Output TAX -->
<record id="tax_code_output" model="account.tax.code.template">
<field name="name">Output TAX</field>
<field name="name">Tax Paid</field>
<field name="parent_id" ref="tax_code_balance_net"/>
</record>
<record id="tax_code_output_S" model="account.tax.code.template">
<field name="name">Output TAX Rate S (15%)</field>
<field name="name">Tax Paid Rate S (15%)</field>
<field name="parent_id" ref="tax_code_output"/>
</record>
<record id="tax_code_output_R" model="account.tax.code.template">
<field name="name">Output TAX Rate R (5%)</field>
<field name="name">Tax Paid Rate R (5%)</field>
<field name="parent_id" ref="tax_code_output"/>
</record>
<record id="tax_code_output_X" model="account.tax.code.template">
<field name="name">Output TAX Rate X (Exempt)</field>
<field name="name">Tax Paid Rate X (Exempt)</field>
<field name="parent_id" ref="tax_code_output"/>
</record>
<record id="tax_code_output_O" model="account.tax.code.template">
<field name="name">Output TAX Rate O (Out of scope)</field>
<field name="name">Tax Paid Rate O (Out of scope)</field>
<field name="parent_id" ref="tax_code_output"/>
</record>
@@ -470,6 +470,8 @@
<field name="name">OTAX X</field>
<field eval="0.0" name="amount"/>
<field name="type">percent</field>
<field name="account_collected_id" ref="conf_ova"/>
<field name="account_paid_id" ref="conf_ova"/>
<field name="base_code_id" ref="tax_code_purch_X"/>
<field name="tax_code_id" ref="tax_code_output_X"/>
<field name="ref_base_code_id" ref="tax_code_purch_X"/>
@@ -482,6 +484,8 @@
<field name="name">OTAX O</field>
<field eval="0.0" name="amount"/>
<field name="type">percent</field>
<field name="account_collected_id" ref="conf_ova"/>
<field name="account_paid_id" ref="conf_ova"/>
<field name="base_code_id" ref="tax_code_purch_O"/>
<field name="tax_code_id" ref="tax_code_output_O"/>
<field name="ref_base_code_id" ref="tax_code_purch_O"/>
@@ -524,6 +528,8 @@
<field name="name">ITAX X</field>
<field eval="0.0" name="amount"/>
<field name="type">percent</field>
<field name="account_collected_id" ref="conf_iva"/>
<field name="account_paid_id" ref="conf_iva"/>
<field name="base_code_id" ref="tax_code_sales_X"/>
<field name="tax_code_id" ref="tax_code_input_X"/>
<field name="ref_base_code_id" ref="tax_code_sales_X"/>
@@ -536,6 +542,8 @@
<field name="name">ITAX O</field>
<field eval="0.0" name="amount"/>
<field name="type">percent</field>
<field name="account_collected_id" ref="conf_iva"/>
<field name="account_paid_id" ref="conf_iva"/>
<field name="base_code_id" ref="tax_code_sales_O"/>
<field name="tax_code_id" ref="tax_code_input_O"/>
<field name="ref_base_code_id" ref="tax_code_sales_O"/>
+39 -36
View File
@@ -27,20 +27,20 @@
<field name="name">Date</field>
<field name="field">date</field>
<field eval="True" name="required"/>
<field eval="1" name="sequence"/>
<field eval="3" name="sequence"/>
</record>
<record id="bank_col2" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view"/>
<field name="name">N. Piece</field>
<field name="name">Journal Entry</field>
<field name="field">move_id</field>
<field eval="False" name="required"/>
<field eval="2" name="sequence"/>
<field eval="1" name="sequence"/>
</record>
<record id="bank_col7" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view"/>
<field name="name">Name</field>
<field name="field">name</field>
<field eval="3" name="sequence"/>
<field eval="7" name="sequence"/>
<field eval="True" name="required"/>
</record>
<record id="bank_col4" model="account.journal.column">
@@ -78,7 +78,7 @@
<field name="view_id" ref="account_journal_bank_view"/>
<field name="name">Ref</field>
<field name="field">ref</field>
<field eval="7" name="sequence"/>
<field eval="2" name="sequence"/>
</record>
<record id="bank_col23" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view"/>
@@ -93,6 +93,7 @@
<field eval="20" name="sequence"/>
</record>
<record id="account_journal_bank_view_multi" model="account.journal.view">
<field name="name">Bank/Cash Journal (Multi-Currency) View</field>
</record>
@@ -101,20 +102,20 @@
<field name="name">Date</field>
<field name="field">date</field>
<field eval="True" name="required"/>
<field eval="1" name="sequence"/>
<field eval="3" name="sequence"/>
</record>
<record id="bank_col2_multi" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view_multi"/>
<field name="name">N. Piece</field>
<field name="name">Journal Entry</field>
<field name="field">move_id</field>
<field eval="False" name="required"/>
<field eval="2" name="sequence"/>
<field eval="1" name="sequence"/>
</record>
<record id="bank_col7_multi" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view_multi"/>
<field name="name">Name</field>
<field name="field">name</field>
<field eval="3" name="sequence"/>
<field eval="7" name="sequence"/>
<field eval="True" name="required"/>
</record>
<record id="bank_col4_multi" model="account.journal.column">
@@ -164,7 +165,7 @@
<field name="view_id" ref="account_journal_bank_view_multi"/>
<field name="name">Ref</field>
<field name="field">ref</field>
<field eval="7" name="sequence"/>
<field eval="2" name="sequence"/>
</record>
<record id="bank_col23_multi" model="account.journal.column">
<field name="view_id" ref="account_journal_bank_view_multi"/>
@@ -188,39 +189,39 @@
<field name="name">Date</field>
<field name="field">date</field>
<field eval="True" name="required"/>
<field eval="1" name="sequence"/>
<field eval="3" name="sequence"/>
</record>
<record id="journal_col2" model="account.journal.column">
<field name="view_id" ref="account_journal_view"/>
<field name="name">N. Piece</field>
<field name="name">Journal Entry</field>
<field name="field">move_id</field>
<field eval="False" name="required"/>
<field eval="2" name="sequence"/>
<field eval="1" name="sequence"/>
</record>
<record id="journal_col3" model="account.journal.column">
<field name="view_id" ref="account_journal_view"/>
<field name="name">Ref</field>
<field name="field">ref</field>
<field eval="3" name="sequence"/>
<field eval="2" name="sequence"/>
</record>
<record id="journal_col5" model="account.journal.column">
<field name="view_id" ref="account_journal_view"/>
<field name="name">Partner</field>
<field name="field">partner_id</field>
<field eval="4" name="sequence"/>
<field eval="5" name="sequence"/>
</record>
<record id="journal_col4" model="account.journal.column">
<field name="view_id" ref="account_journal_view"/>
<field name="name">Account</field>
<field name="field">account_id</field>
<field eval="True" name="required"/>
<field eval="5" name="sequence"/>
<field eval="6" name="sequence"/>
</record>
<record id="journal_col6" model="account.journal.column">
<field name="view_id" ref="account_journal_view"/>
<field name="name">Name</field>
<field name="field">name</field>
<field eval="6" name="sequence"/>
<field eval="7" name="sequence"/>
<field eval="True" name="required"/>
</record>
<record id="journal_col8" model="account.journal.column">
@@ -247,8 +248,8 @@
<field name="field">state</field>
<field eval="14" name="sequence"/>
</record>
<record id="account_sp_journal_view" model="account.journal.view">
<field name="name">Sale/Purchase Journal View</field>
</record>
@@ -257,20 +258,20 @@
<field name="name">Date</field>
<field name="field">date</field>
<field eval="True" name="required"/>
<field eval="1" name="sequence"/>
<field eval="3" name="sequence"/>
</record>
<record id="sp_journal_col2" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">N. Piece</field>
<field name="name">Journal Entry</field>
<field name="field">move_id</field>
<field eval="False" name="required"/>
<field eval="2" name="sequence"/>
<field eval="1" name="sequence"/>
</record>
<record id="sp_journal_col3" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">Ref</field>
<field name="field">ref</field>
<field eval="3" name="sequence"/>
<field eval="2" name="sequence"/>
</record>
<record id="sp_journal_col4" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
@@ -294,7 +295,7 @@
</record>
<record id="sp_journal_col7" model="account.journal.column">
<field name="view_id" ref="account_sp_journal_view"/>
<field name="name">Maturity Date</field>
<field name="name">Due Date</field>
<field name="field">date_maturity</field>
<field eval="7" name="sequence"/>
</record>
@@ -346,7 +347,7 @@
<field name="field">reconcile_id</field>
<field eval="20" name="sequence"/>
</record>
<record id="account_sp_refund_journal_view" model="account.journal.view">
<field name="name">Sale/Purchase Refund Journal View</field>
</record>
@@ -355,20 +356,20 @@
<field name="name">Date</field>
<field name="field">date</field>
<field eval="True" name="required"/>
<field eval="1" name="sequence"/>
<field eval="3" name="sequence"/>
</record>
<record id="sp_refund_journal_col2" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">N. Piece</field>
<field name="name">Journal Entry</field>
<field name="field">move_id</field>
<field eval="False" name="required"/>
<field eval="2" name="sequence"/>
<field eval="1" name="sequence"/>
</record>
<record id="sp_refund_journal_col3" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">Ref</field>
<field name="field">ref</field>
<field eval="3" name="sequence"/>
<field eval="2" name="sequence"/>
</record>
<record id="sp_refund_journal_col4" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
@@ -392,7 +393,7 @@
</record>
<record id="sp_refund_journal_col7" model="account.journal.column">
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="name">Maturity Date</field>
<field name="name">Due Date</field>
<field name="field">date_maturity</field>
<field eval="7" name="sequence"/>
</record>
@@ -444,7 +445,7 @@
<field name="field">reconcile_id</field>
<field eval="20" name="sequence"/>
</record>
<!--
Account Journal Sequences
-->
@@ -461,12 +462,14 @@
<record id="sequence_sale_journal" model="ir.sequence">
<field name="name">Sale Journal</field>
<field name="code">account.journal</field>
<field name="prefix"/>
<field eval="3" name="padding"/>
<field name="prefix">%(year)s/</field>
</record>
<record id="sequence_purchase_journal" model="ir.sequence">
<field name="name">Purchase Journal</field>
<field name="code">account.journal</field>
<field name="prefix"/>
<field eval="3" name="padding"/>
<field name="prefix">%(year)s/</field>
</record>
<!--
@@ -493,10 +496,10 @@
<field name="name">Account Bank Statement</field>
<field name="code">account.bank.statement</field>
<field name="prefix">St. %(month)s/%(day)s/</field>
<field eval="0" name="number_next"/>
<field eval="1" name="number_next"/>
<field eval="1" name="number_increment"/>
</record>
<record id="cash_sequence_statement_type" model="ir.sequence.type">
<field name="name">Cash Statement</field>
<field name="code">account.cash.statement</field>
@@ -505,7 +508,7 @@
<field name="name">Account Cash Statement</field>
<field name="code">account.cash.statement</field>
<field name="prefix">Cr. %(month)s/%(day)s/</field>
<field eval="0" name="number_next"/>
<field eval="1" name="number_next"/>
<field eval="1" name="number_increment"/>
</record>
</data>
+6 -2
View File
@@ -346,7 +346,7 @@
<field name="type">sale</field>
<field name="view_id" ref="account_sp_journal_view"/>
<field name="sequence_id" ref="sequence_sale_journal"/>
<field name="invoice_sequence_id" ref="seq_type_out_invoice"/>
<field name="invoice_sequence_id" ref="seq_out_invoice"/>
<field model="account.account" name="default_credit_account_id" ref="a_sale"/>
<field model="account.account" name="default_debit_account_id" ref="a_sale"/>
<field name="user_id" ref="base.user_root"/>
@@ -355,8 +355,10 @@
<field name="name">Sales Credit Note Journal - (test)</field>
<field name="code">SCNJ</field>
<field name="type">sale_refund</field>
<field eval="True" name="refund_journal"/>
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="sequence_id" ref="sequence_sale_journal"/>
<field name="invoice_sequence_id" ref="seq_out_refund"/>
<field model="account.account" name="default_credit_account_id" ref="a_sale"/>
<field model="account.account" name="default_debit_account_id" ref="a_sale"/>
<field name="user_id" ref="base.user_root"/>
@@ -368,7 +370,7 @@
<field name="type">purchase</field>
<field name="view_id" ref="account_sp_journal_view"/>
<field name="sequence_id" ref="sequence_purchase_journal"/>
<field name="invoice_sequence_id" ref="seq_type_in_invoice"/>
<field name="invoice_sequence_id" ref="seq_in_invoice"/>
<field model="account.account" name="default_debit_account_id" ref="a_expense"/>
<field model="account.account" name="default_credit_account_id" ref="a_expense"/>
<field name="user_id" ref="base.user_root"/>
@@ -377,8 +379,10 @@
<field name="name">Expenses Credit Notes Journal - (test)</field>
<field name="code">ECNJ</field>
<field name="type">purchase_refund</field>
<field eval="True" name="refund_journal"/>
<field name="view_id" ref="account_sp_refund_journal_view"/>
<field name="sequence_id" ref="sequence_purchase_journal"/>
<field name="invoice_sequence_id" ref="seq_in_refund"/>
<field model="account.account" name="default_debit_account_id" ref="a_expense"/>
<field model="account.account" name="default_credit_account_id" ref="a_expense"/>
<field name="user_id" ref="base.user_root"/>
+2 -2
View File
@@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-20 06:28+0000\n"
"PO-Revision-Date: 2010-09-06 14:19+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"Language-Team: Danish <da@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-21 03:57+0000\n"
"X-Launchpad-Export-Date: 2010-09-07 04:50+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
+12 -9
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-20 06:31+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"PO-Revision-Date: 2010-08-29 10:43+0000\n"
"Last-Translator: Ferdinand-chricar <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-21 03:57+0000\n"
"X-Launchpad-Export-Date: 2010-08-30 03:57+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
@@ -272,6 +272,9 @@ msgid ""
"in which order. You can create your own view for a faster encoding in each "
"journal."
msgstr ""
"Definiert Felder (sichtbar, zwingend, nur lesen) für die Sicht für dieses "
"Journal. Für jedes Journal können eingene Sichten erzeugt wrden um scheller "
"erfassen zu können"
#. module: account
#: help:account.invoice,date_due:0
@@ -1033,7 +1036,7 @@ msgstr "Position"
#: field:account.analytic.line,product_uom_id:0
#: field:account.move.line,product_uom_id:0
msgid "UoM"
msgstr "UoM"
msgstr "ME"
#. module: account
#: wizard_field:account.third_party_ledger.report,init,page_split:0
@@ -1144,7 +1147,7 @@ msgstr "Summen- & Saldenliste Vorlagen"
#: rml:account.invoice:0
#: field:account.invoice.line,price_unit:0
msgid "Unit Price"
msgstr "Preis/UoM"
msgstr "Preis/ME"
#. module: account
#: rml:account.analytic.account.journal:0
@@ -1504,7 +1507,7 @@ msgstr "Beende Jahr"
#. module: account
#: model:ir.model,name:account.model_wizard_company_setup
msgid "wizard.company.setup"
msgstr ""
msgstr "wizard.company.setup"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_analytic_account_line_extended_form
@@ -5386,7 +5389,7 @@ msgstr "Teilbuchung"
#. module: account
#: help:account.move.line,statement_id:0
msgid "The bank statement used for bank reconciliation"
msgstr ""
msgstr "Der Bankauszug für den Bankausgleich"
#. module: account
#: view:account.fiscalyear:0
@@ -5477,7 +5480,7 @@ msgstr "Berechne"
#. module: account
#: help:account.invoice.line,account_id:0
msgid "The income or expense account related to the selected product."
msgstr "Aufwand- und Ertragskonto des Produktes"
msgstr "Aufwand- und Erlöskonto des Produktes"
#. module: account
#: field:account.tax,type_tax_use:0
@@ -5795,7 +5798,7 @@ msgstr "5"
#: field:product.category,property_account_income_categ:0
#: field:product.template,property_account_income:0
msgid "Income Account"
msgstr "Ertragskonto"
msgstr "Erlöskonto"
#. module: account
#: field:account.period,special:0
+4 -4
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-08 05:46+0000\n"
"Last-Translator: lyyser <logard.1961@gmail.com>\n"
"PO-Revision-Date: 2010-08-28 08:23+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-12 03:51+0000\n"
"X-Launchpad-Export-Date: 2010-08-29 03:46+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
@@ -637,7 +637,7 @@ msgstr "Kooskõlasta konto kirjet"
#. module: account
#: wizard_button:account.move.bank.reconcile,init,open:0
msgid "Open for bank reconciliation"
msgstr ""
msgstr "Avatud panga võrdlevaks kooskõlastamiseks"
#. module: account
#: field:account.invoice.line,discount:0
+37 -17
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-02 19:46+0000\n"
"Last-Translator: mga (Open ERP) <Unknown>\n"
"PO-Revision-Date: 2010-09-03 08:02+0000\n"
"Last-Translator: Quentin THEURET <quentin@theuret.net>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-12 03:51+0000\n"
"X-Launchpad-Export-Date: 2010-09-04 04:45+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
@@ -1764,7 +1764,7 @@ msgstr "Coûts & Revenus"
#. module: account
#: constraint:account.account:0
msgid "Error ! You can not create recursive accounts."
msgstr "Erreur ! Vous ne pouvez pas créer d'écritures récursives."
msgstr "Erreur ! Vous ne pouvez pas créer des compte récursifs"
#. module: account
#: rml:account.tax.code.entries:0
@@ -3765,7 +3765,7 @@ msgstr "Avoir"
#. module: account
#: model:ir.actions.todo,note:account.config_fiscalyear
msgid "Define Fiscal Years and Select Charts of Account"
msgstr "Définir l'exercice fiscal et le plan comptable"
msgstr "Définir l'exercice fiscal et choisir le plan comptable"
#. module: account
#: wizard_field:account.move.line.reconcile,addendum,period_id:0
@@ -6202,7 +6202,7 @@ msgstr "Sélectionner le COmpte Référence (pour la comparaison en %)"
#. module: account
#: model:ir.actions.wizard,name:account.wizard_account_balance_report
msgid "Account balance-Compare Years"
msgstr ""
msgstr "Balance des Comptes - Comparer les Années"
#. module: account
#: model:ir.module.module,description:account.module_meta_information
@@ -6225,6 +6225,21 @@ msgid ""
" 5. You have an option to print the desired report in Landscape format.\n"
" "
msgstr ""
"Le module de Balance des Comptes est une fonctionnalité additionnelle du "
"module de Gestion Financière.\n"
"\n"
" Ce module vous offre plusieurs options d'impression du bilan.\n"
"\n"
" 1. Comparaison des bilans de différentes années.\n"
"\n"
" 2. Affichage des écarts entre deux années en pourcentage ou en valeur.\n"
"\n"
" 3. Définition d'une valeur de référence à comparer à une seule année.\n"
"\n"
" 4. Affichage jusqu'à la date actuelle ou depuis la date de création.\n"
"\n"
" 5. Impression au format portrait ou paysage.\n"
" "
#. module: account
#: wizard_view:account.balance.account.balance.report,backtoinit:0
@@ -6240,7 +6255,7 @@ msgstr "Afficher le Rapport au Format Paysage"
#: rml:account.account.balance.landscape:0
#: rml:account.balance.account.balance:0
msgid "Total :"
msgstr ""
msgstr "Total :"
#. module: account
#: wizard_field:account.balance.account.balance.report,init,format_perc:0
@@ -6275,13 +6290,13 @@ msgstr "1. Vous avez sélectionner plus de 3 années dans tous les cas."
#. module: account
#: model:ir.module.module,shortdesc:account.module_meta_information
msgid "Accounting and financial management-Compare Accounts"
msgstr ""
msgstr "Gestion financière et comptable - Comparez les comptes"
#. module: account
#: rml:account.account.balance.landscape:0
#: rml:account.balance.account.balance:0
msgid "Year :"
msgstr ""
msgstr "Année :"
#. module: account
#: wizard_view:account.balance.account.balance.report,backtoinit:0
@@ -6332,6 +6347,10 @@ msgid ""
"credit/debit columns and % option.This can lead contents to be printed out "
"of the paper.Please try again."
msgstr ""
"Vous avez choisi de comparer avec l’option supérieure à 1 an sur les "
"colonnes de crédit/ débit et des %.\r\n"
"Cela peut conduire le contenu à être imprimé en dehors de la plage du format "
"de papier. Veuillez essayer à nouveau."
#. module: account
#: wizard_view:account.balance.account.balance.report,zero_years:0
@@ -6346,22 +6365,22 @@ msgstr "Personnaliser le Rapport"
#. module: account
#: field:report.aged.receivable,name:0
msgid "Month Range"
msgstr ""
msgstr "Plage mensuelle"
#. module: account
#: model:ir.actions.act_window,name:report_account.action_view_created_invoice_dashboard
msgid "Invoices Created Within Past 15 Days"
msgstr ""
msgstr "Factures créées depuis 15 jours"
#. module: account
#: model:ir.model,name:report_account.model_report_invoice_created
msgid "Report of Invoices Created within Last 15 days"
msgstr ""
msgstr "Rapport des factures créées depuis 15 jours"
#. module: account
#: view:report.invoice.created:0
msgid "Total Amount"
msgstr ""
msgstr "Montant Total"
#. module: account
#: view:report.account.receivable:0
@@ -6381,17 +6400,18 @@ msgstr "Comptes recevables"
#. module: account
#: field:temp.range,name:0
msgid "Range"
msgstr ""
msgstr "Intervalle"
#. module: account
#: model:ir.module.module,description:report_account.module_meta_information
msgid "A module that adds new reports based on the account module."
msgstr ""
"Un module qui ajoute de nouveaux rapports basé sur le module account."
#. module: account
#: model:ir.module.module,shortdesc:report_account.module_meta_information
msgid "Account Reporting - Reporting"
msgstr ""
msgstr "Rapports financiers et de comptabilité - Rapports"
#. module: account
#: model:ir.actions.act_window,name:report_account.action_account_receivable_graph
@@ -6407,7 +6427,7 @@ msgstr "Semaine de l'année"
#. module: account
#: field:report.invoice.created,create_date:0
msgid "Create Date"
msgstr ""
msgstr "Date de Création"
#. module: account
#: model:ir.actions.act_window,name:report_account.action_aged_receivable_graph
@@ -6418,7 +6438,7 @@ msgstr ""
#. module: account
#: view:report.invoice.created:0
msgid "Untaxed Amount"
msgstr ""
msgstr "Montant HT"
#~ msgid "account.config.wizard"
#~ msgstr "account.config.wizard"
+919 -854
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-20 06:30+0000\n"
"PO-Revision-Date: 2010-09-06 13:59+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-21 03:57+0000\n"
"X-Launchpad-Export-Date: 2010-09-07 04:50+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
+5 -5
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-20 08:17+0000\n"
"Last-Translator: eLBati - albatos.com <lorenzo.battistini@albatos.com>\n"
"PO-Revision-Date: 2010-09-06 14:20+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-21 03:57+0000\n"
"X-Launchpad-Export-Date: 2010-09-07 04:50+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
@@ -55,7 +55,7 @@ msgstr "Attività"
#. module: account
#: constraint:ir.actions.act_window:0
msgid "Invalid model name in the action definition."
msgstr "Nome di modulo non valido nella definizione dell'azione."
msgstr "Nome modello non valido nella definizione dell'azione."
#. module: account
#: help:account.journal,currency:0
@@ -65,7 +65,7 @@ msgstr "La valuta usata per inserire rendiconto"
#. module: account
#: wizard_view:account_use_models,init_form:0
msgid "Select Message"
msgstr "Seleziona Messaggio"
msgstr "Seleziona il Messaggio"
#. module: account
#: help:product.category,property_account_income_categ:0
+2 -2
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-20 06:24+0000\n"
"PO-Revision-Date: 2010-09-06 13:57+0000\n"
"Last-Translator: Giedrius Slavinskas <giedrius.slavinskas@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-21 03:57+0000\n"
"X-Launchpad-Export-Date: 2010-09-07 04:50+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
+2 -2
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-20 06:24+0000\n"
"PO-Revision-Date: 2010-09-06 13:56+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-21 03:57+0000\n"
"X-Launchpad-Export-Date: 2010-09-07 04:50+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
+46 -27
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-02 20:11+0000\n"
"Last-Translator: mga (Open ERP) <Unknown>\n"
"PO-Revision-Date: 2010-09-01 06:55+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-12 03:54+0000\n"
"X-Launchpad-Export-Date: 2010-09-02 03:53+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
@@ -6073,107 +6073,107 @@ msgstr "Processar Datas de Lançamento"
#. module: account
#: view:board.board:0
msgid "Analytic accounts to close"
msgstr ""
msgstr "Contas analíticas em aberto"
#. module: account
#: view:board.board:0
msgid "Draft invoices"
msgstr ""
msgstr "Faturas provisórias"
#. module: account
#: model:ir.actions.act_window,name:account.open_board_account
#: model:ir.ui.menu,name:account.menu_board_account
msgid "Accounting Dashboard"
msgstr ""
msgstr "Painel contábil"
#. module: account
#: view:board.board:0
#: model:ir.actions.act_window,name:account.act_my_account
msgid "Accounts to invoice"
msgstr ""
msgstr "Contas a serem faturadas"
#. module: account
#: view:board.board:0
#: model:ir.actions.act_window,name:account.action_account_analytic_line_to_invoice
msgid "Costs to invoice"
msgstr ""
msgstr "Custos a faturar"
#. module: account
#: view:board.board:0
msgid "Aged receivables"
msgstr ""
msgstr "Recebíveis vencidos"
#. module: account
#: model:ir.module.module,shortdesc:account.module_meta_information
msgid "Board for accountant"
msgstr ""
msgstr "Painel de Contabilização"
#. module: account
#: model:ir.actions.act_window,name:account.action_aged_income
msgid "Income Accounts"
msgstr ""
msgstr "Contas de Receitas"
#. module: account
#: view:board.board:0
msgid "My indicators"
msgstr ""
msgstr "Meus indicadores"
#. module: account
#: view:board.board:0
msgid "Account Board"
msgstr ""
msgstr "Painel Contábil"
#. module: account
#: view:board.board:0
msgid "Aged income"
msgstr ""
msgstr "Receita vencida"
#. module: account
#: wizard_field:account.balance.account.balance.report,init,show_columns:0
msgid "Show Debit/Credit Information"
msgstr ""
msgstr "Exibir Informações de Débito/Crédito"
#. module: account
#: selection:account.balance.account.balance.report,init,account_choice:0
msgid "All accounts"
msgstr ""
msgstr "Todas as contas"
#. module: account
#: wizard_field:account.balance.account.balance.report,init,period_manner:0
msgid "Entries Selection Based on"
msgstr ""
msgstr "Lançamentos escolhidos com base em"
#. module: account
#: wizard_view:account.balance.account.balance.report,backtoinit:0
#: wizard_view:account.balance.account.balance.report,zero_years:0
msgid "Notification"
msgstr ""
msgstr "Alerta"
#. module: account
#: selection:account.balance.account.balance.report,init,period_manner:0
msgid "Financial Period"
msgstr ""
msgstr "Período Financeiro"
#. module: account
#: model:ir.actions.report.xml,name:account.account_account_balance
#: model:ir.actions.report.xml,name:account.account_account_balance_landscape
msgid "Account balance"
msgstr ""
msgstr "Saldo da Conta"
#. module: account
#: wizard_view:account.balance.account.balance.report,init:0
msgid "Select Period(s)"
msgstr ""
msgstr "Selecione o(s) Período(s)"
#. module: account
#: selection:account.balance.account.balance.report,init,compare_pattern:0
msgid "Percentage"
msgstr ""
msgstr "Porcentagem"
#. module: account
#: wizard_field:account.balance.account.balance.report,init,compare_pattern:0
msgid "Compare Selected Years In Terms Of"
msgstr ""
msgstr "Comparar os Anos Escolhidos em Termos de"
#. module: account
#: wizard_view:account.balance.account.balance.report,init:0
@@ -6188,7 +6188,7 @@ msgstr "Selecione conta de referência (para comparação de %)"
#. module: account
#: model:ir.actions.wizard,name:account.wizard_account_balance_report
msgid "Account balance-Compare Years"
msgstr ""
msgstr "Balanço de Contas - Comparação Anual"
#. module: account
#: model:ir.module.module,description:account.module_meta_information
@@ -6211,6 +6211,25 @@ msgid ""
" 5. You have an option to print the desired report in Landscape format.\n"
" "
msgstr ""
"O Módulo de Saldo da Conta é uma funcionalidade adicional ao Módulo de "
"Gestão Financeira.\n"
"\n"
" Este módulo oferece diversas opções para impressão.\n"
"\n"
" 1. Você pode comparar o balanço de diferentes anos.\n"
"\n"
" 2. Você pode configurar uma comparação por dinheiro ou percentual para "
"comparação entre dois anos.\n"
"\n"
" 3. Você pode configurar a conta de referência para a comparação "
"percentual para os anos específicos.\n"
"\n"
" 4. Você pode selecionar períodos como data atual ou períodos por data de "
"criação.\n"
"\n"
" 5. Você tem a opção de imprimir o relatório desejado em formato "
"paisagem.\n"
" "
#. module: account
#: wizard_view:account.balance.account.balance.report,backtoinit:0
@@ -6359,7 +6378,7 @@ msgstr "Contas por tipo"
#. module: account
#: model:ir.model,name:report_account.model_report_aged_receivable
msgid "Aged Receivable Till Today"
msgstr ""
msgstr "Recebíveis Vencidos até Hoje"
#. module: account
#: model:ir.model,name:report_account.model_report_account_receivable
@@ -6379,7 +6398,7 @@ msgstr "Um módulo que adiciona novos relatórios com base no módulo de conta."
#. module: account
#: model:ir.module.module,shortdesc:report_account.module_meta_information
msgid "Account Reporting - Reporting"
msgstr ""
msgstr "Relatório de Contas"
#. module: account
#: model:ir.actions.act_window,name:report_account.action_account_receivable_graph
@@ -6401,7 +6420,7 @@ msgstr "Criar data"
#: model:ir.actions.act_window,name:report_account.action_aged_receivable_graph
#: view:report.aged.receivable:0
msgid "Aged Receivable"
msgstr ""
msgstr "A Receber"
#. module: account
#: view:report.invoice.created:0
+2 -2
View File
@@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: ASTRIT BOKSHI <astritbokshi@gmail.com>\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-20 06:05+0000\n"
"PO-Revision-Date: 2010-09-06 13:17+0000\n"
"Last-Translator: bokshas <astritbokshi@gmail.com>\n"
"Language-Team: Albanian <sq@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-21 03:56+0000\n"
"X-Launchpad-Export-Date: 2010-09-07 04:50+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
+5 -5
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-20 06:29+0000\n"
"PO-Revision-Date: 2010-09-06 14:03+0000\n"
"Last-Translator: OpenERP Administrators <Unknown>\n"
"Language-Team: <> <>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-21 03:57+0000\n"
"X-Launchpad-Export-Date: 2010-09-07 04:50+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
@@ -124,7 +124,7 @@ msgstr "Kvarvarande"
#: field:account.tax.template,base_sign:0
#: field:account.tax.template,ref_base_sign:0
msgid "Base Code Sign"
msgstr "Baskodsbelopp"
msgstr "Baskodstecken"
#. module: account
#: model:ir.actions.wizard,name:account.wizard_unreconcile_select
@@ -1505,7 +1505,7 @@ msgstr ""
#. module: account
#: model:account.account.type,name:account.account_type_income
msgid "Income"
msgstr "Intäkt"
msgstr "Intäkter"
#. module: account
#: selection:account.bank.statement.line,type:0
@@ -2636,7 +2636,7 @@ msgstr "Skapa faktura"
#. module: account
#: model:account.account.type,name:account.account_type_cash_equity
msgid "Equity"
msgstr "Värdeökning"
msgstr "Eget kapital"
#. module: account
#: field:wizard.company.setup,overdue_msg:0
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-20 06:23+0000\n"
"PO-Revision-Date: 2010-09-06 14:16+0000\n"
"Last-Translator: Omer Barlas <omer@barlas.com.tr>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-21 03:57+0000\n"
"X-Launchpad-Export-Date: 2010-09-07 04:50+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
+3 -3
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2010-08-20 06:10+0000\n"
"PO-Revision-Date: 2010-09-06 13:32+0000\n"
"Last-Translator: Jeff Wang <wjfonhand@hotmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-08-21 03:57+0000\n"
"X-Launchpad-Export-Date: 2010-09-07 04:51+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
@@ -1040,7 +1040,7 @@ msgstr "新的供应商发票"
#. module: account
#: wizard_field:account.invoice.pay,init,amount:0
msgid "Amount paid"
msgstr "已付金额"
msgstr "支付金额"
#. module: account
#: selection:account.invoice,type:0
+33 -11
View File
@@ -53,7 +53,7 @@ class account_installer(osv.osv_memory):
_columns = {
# Accounting
'charts':fields.selection(_get_charts, 'Chart of Accounts',
required=False,
required=True,
help="Installs localized accounting charts to match as closely as "
"possible the accounting needs of your company based on your "
"country."),
@@ -84,7 +84,7 @@ class account_installer(osv.osv_memory):
}
def on_change_tax(self, cr, uid, id, tax):
return{'value':{'purchase_tax':tax}}
return {'value':{'purchase_tax':tax}}
def on_change_start_date(self, cr, uid, id, start_date):
if start_date:
@@ -319,15 +319,15 @@ class account_installer(osv.osv_memory):
seq_sale = {
'name': 'Sale Journal',
'code': 'account.journal',
'prefix': 'INV/',
'padding': 4
'prefix': '%(year)s/',
'padding': 3
}
seq_id_sale = obj_sequence.create(cr, uid, seq_sale)
seq_purchase = {
'name': 'Purchase Journal',
'code': 'account.journal',
'prefix': 'VEN/',
'padding': 4
'prefix': '%(year)s/',
'padding': 3
}
seq_id_purchase = obj_sequence.create(cr, uid, seq_purchase)
else:
@@ -374,6 +374,7 @@ class account_installer(osv.osv_memory):
#Sales Refund Journal
vals_journal['name'] = _('Sales Refund Journal')
vals_journal['type'] = 'sale_refund'
vals_journal['refund_journal'] = True
vals_journal['code'] = _('SCNJ')
vals_journal['sequence_id'] = seq_id_sale_refund
@@ -386,6 +387,7 @@ class account_installer(osv.osv_memory):
# Purchase Refund Journal
vals_journal['name'] = _('Purchase Refund Journal')
vals_journal['type'] = 'purchase_refund'
vals_journal['refund_journal'] = True
vals_journal['code'] = _('ECNJ')
vals_journal['sequence_id'] = seq_id_purchase_refund
@@ -495,6 +497,8 @@ class account_installer(osv.osv_memory):
sal_tax_parent_id = mod_obj.read(cr, uid, [sal_tax_parent], ['res_id'])[0]['res_id']
if s_tax*100 > 0.0:
tax_account_ids = obj_acc.search(cr, uid, [('name','=','Tax Received')], context=context)
sales_tax_account_id = tax_account_ids and tax_account_ids[0] or False
vals_tax_code = {
'name': 'TAX%s%%'%(s_tax*100),
'code': 'TAX%s%%'%(s_tax*100),
@@ -509,11 +513,18 @@ class account_installer(osv.osv_memory):
'amount':s_tax,
'base_code_id':new_tax_code,
'tax_code_id':new_tax_code,
'type_tax_use':'sale'
'type_tax_use':'sale',
'account_collected_id':sales_tax_account_id,
'account_paid_id':sales_tax_account_id
})
default_account_ids = obj_acc.search(cr, uid, [('name','=','Product Sales')],context=context)
if default_account_ids:
obj_acc.write(cr, uid, default_account_ids, {'tax_ids':[(6,0,[sales_tax])]})
tax_val.update({'taxes_id':[(6,0,[sales_tax])]})
default_tax.append(('taxes_id',sales_tax))
if p_tax*100 > 0.0:
tax_account_ids = obj_acc.search(cr, uid, [('name','=','Tax Paid')], context=context)
purchase_tax_account_id = tax_account_ids and tax_account_ids[0] or False
vals_tax_code = {
'name': 'TAX%s%%'%(p_tax*100),
'code': 'TAX%s%%'%(p_tax*100),
@@ -528,8 +539,13 @@ class account_installer(osv.osv_memory):
'amount':p_tax,
'base_code_id':new_tax_code,
'tax_code_id':new_tax_code,
'type_tax_use':'purchase'
'type_tax_use':'purchase',
'account_collected_id':purchase_tax_account_id,
'account_paid_id':purchase_tax_account_id
})
default_account_ids = obj_acc.search(cr, uid, [('name','=','Expenses')], context=context)
if default_account_ids:
obj_acc.write(cr, uid, default_account_ids, {'tax_ids':[(6,0,[purchase_tax])]})
tax_val.update({'supplier_taxes_id':[(6,0,[purchase_tax])]})
default_tax.append(('supplier_taxes_id',purchase_tax))
if len(tax_val):
@@ -583,8 +599,8 @@ class account_bank_accounts_wizard(osv.osv_memory):
_columns = {
'acc_name': fields.char('Account Name.', size=64, required=True),
'bank_account_id': fields.many2one('wizard.multi.charts.accounts', 'Bank Account', required=True),
'currency_id': fields.many2one('res.currency', 'Currency'),
'account_type': fields.selection([('cash','Cash'),('check','Check'),('bank','Bank')], 'Type', size=32),
'currency_id': fields.many2one('res.currency', 'Secondary Currency', help="Forces all moves for this account to have this secondary currency."),
'account_type': fields.selection([('cash','Cash'),('check','Check'),('bank','Bank')], 'Account Type', size=32),
}
_defaults = {
'currency_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.currency_id.id,
@@ -609,12 +625,18 @@ class account_installer_modules(osv.osv_memory):
"per-partner policies."),
'account_voucher':fields.boolean('Voucher Management',
help="Account Voucher module includes all the basic requirements of "
"Voucher Entries for Bank, Cash, Sales, Purchase, Expanse, Contra, etc... "),
"Voucher Entries for Bank, Cash, Sales, Purchase, Expenses, Contra, etc... "),
'account_anglo_saxon': fields.boolean('Anglo-Saxon Accounting',
help="This module will support the Anglo-Saxons accounting methodology by "
"changing the accounting logic with stock transactions."),
# 'account_voucher_payment':fields.boolean('Voucher and Reconcile Management',
# help="Extension Account Voucher module includes allows to link payment / receipt "
# "entries with voucher, also automatically reconcile during the payment and receipt entries."),
}
_defaults = {
'account_voucher': True,
}
account_installer_modules()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+34 -23
View File
@@ -219,7 +219,7 @@ class account_invoice(osv.osv):
_name = "account.invoice"
_description = 'Invoice'
_order = "id"
_order = "id desc"
_columns = {
'name': fields.char('Description', size=64, select=True, readonly=True, states={'draft':[('readonly',False)]}),
@@ -268,7 +268,7 @@ class account_invoice(osv.osv):
'invoice_line': fields.one2many('account.invoice.line', 'invoice_id', 'Invoice Lines', readonly=True, states={'draft':[('readonly',False)]}),
'tax_line': fields.one2many('account.invoice.tax', 'invoice_id', 'Tax Lines', readonly=True, states={'draft':[('readonly',False)]}),
'move_id': fields.many2one('account.move', 'Invoice Movement', readonly=True, help="Links to the automatically generated Ledger Postings."),
'move_id': fields.many2one('account.move', 'Journal Entry', readonly=True, help="Link to the automatically generated Journal Items."),
'amount_untaxed': fields.function(_amount_all, method=True, digits_compute=dp.get_precision('Account'), string='Untaxed',
store={
'account.invoice': (lambda self, cr, uid, ids, c={}: ids, ['invoice_line'], 20),
@@ -299,7 +299,7 @@ class account_invoice(osv.osv):
'account.invoice': (lambda self, cr, uid, ids, c={}: ids, None, 50), # Check if we can remove ?
'account.move.line': (_get_invoice_from_line, None, 50),
'account.move.reconcile': (_get_invoice_from_reconcile, None, 50),
}, help="The Ledger Postings of the invoice have been reconciled with Ledger Postings of the payment(s)."),
}, help="The Journal Entry of the invoice have been totally reconciled with one or several Journal Entries of payment."),
'partner_bank_id': fields.many2one('res.partner.bank', 'Bank Account',
help='Bank Account Number, Company bank account if Invoice is customer or supplier refund, otherwise Partner bank account number.', readonly=True, states={'draft':[('readonly',False)]}),
'move_lines':fields.function(_get_lines , method=True, type='many2many', relation='account.move.line', string='Entry Lines'),
@@ -313,7 +313,7 @@ class account_invoice(osv.osv):
},
help="Remaining amount due."),
'payment_ids': fields.function(_compute_lines, method=True, relation='account.move.line', type="many2many", string='Payments'),
'move_name': fields.char('Ledger Posting', size=64, readonly=True, states={'draft':[('readonly',False)]}),
'move_name': fields.char('Journal Entry', size=64, readonly=True, states={'draft':[('readonly',False)]}),
'user_id': fields.many2one('res.users', 'Salesman', readonly=True, states={'draft':[('readonly',False)]}),
'fiscal_position': fields.many2one('account.fiscal.position', 'Fiscal Position', readonly=True, states={'draft':[('readonly',False)]})
}
@@ -455,9 +455,9 @@ class account_invoice(osv.osv):
def onchange_payment_term_date_invoice(self, cr, uid, ids, payment_term_id, date_invoice):
if not payment_term_id:
return {}
res={}
pt_obj= self.pool.get('account.payment.term')
if not date_invoice :
res = {}
pt_obj = self.pool.get('account.payment.term')
if not date_invoice:
date_invoice = time.strftime('%Y-%m-%d')
pterm_list = pt_obj.compute(cr, uid, payment_term_id, value=1, date_ref=date_invoice)
@@ -465,7 +465,7 @@ class account_invoice(osv.osv):
if pterm_list:
pterm_list = [line[0] for line in pterm_list]
pterm_list.sort()
res= {'value':{'date_due': pterm_list[-1]}}
res = {'value':{'date_due': pterm_list[-1]}}
else:
raise osv.except_osv(_('Data Insufficient !'), _('The Payment Term of Supplier does not have Payment Term Lines(Computation) defined !'))
@@ -523,12 +523,16 @@ class account_invoice(osv.osv):
obj_l = account_obj.browse(cr, uid, inv_line[2]['account_id'])
if obj_l.company_id.id != company_id:
raise osv.except_osv(_('Configuration Error !'),
_('invoice line account company is not match with invoice company.'))
_('Invoice line account company does not match with invoice company.'))
else:
continue
if company_id and type:
if type in ('out_invoice', 'out_refund'):
if type in ('out_invoice'):
journal_type = 'sale'
elif type in ('out_refund'):
journal_type = 'sale_refund'
elif type in ('in_refund'):
journal_type = 'purchase_refund'
else:
journal_type = 'purchase'
journal_ids = obj_journal.search(cr, uid, [('company_id','=',company_id), ('type', '=', journal_type)])
@@ -630,7 +634,7 @@ class account_invoice(osv.osv):
context.update({'lang': partner.lang})
for taxe in ait_obj.compute(cr, uid, id, context=context).values():
ait_obj.create(cr, uid, taxe)
# Update the stored value (fields.function), so we write to trigger recompute
# Update the stored value (fields.function), so we write to trigger recompute
self.pool.get('account.invoice').write(cr, uid, ids, {'invoice_line':[]}, context=context)
return True
@@ -801,7 +805,7 @@ class account_invoice(osv.osv):
# one move line per tax line
iml += ait_obj.move_line_get(cr, uid, inv.id)
entry_type=''
entry_type = ''
if inv.type in ('in_invoice', 'in_refund'):
ref = inv.reference
entry_type = 'journal_pur_voucher'
@@ -874,7 +878,7 @@ class account_invoice(osv.osv):
line = self.group_lines(cr, uid, iml, line, inv)
journal_id = inv.journal_id.id
journal_id = inv.journal_id.id
journal = self.pool.get('account.journal').browse(cr, uid, journal_id)
if journal.centralisation:
raise osv.except_osv(_('UserError'),
@@ -883,18 +887,18 @@ class account_invoice(osv.osv):
line = self.finalize_invoice_move_lines(cr, uid, inv, line)
move = {
'ref': inv.number,
'ref': inv.reference and inv.reference or inv.name,
'line_id': line,
'journal_id': journal_id,
'date': date,
'type': entry_type,
'narration':inv.comment
}
period_id=inv.period_id and inv.period_id.id or False
period_id = inv.period_id and inv.period_id.id or False
if not period_id:
period_ids= self.pool.get('account.period').search(cr, uid, [('date_start','<=',inv.date_invoice or time.strftime('%Y-%m-%d')),('date_stop','>=',inv.date_invoice or time.strftime('%Y-%m-%d'))])
period_ids = self.pool.get('account.period').search(cr, uid, [('date_start','<=',inv.date_invoice or time.strftime('%Y-%m-%d')),('date_stop','>=',inv.date_invoice or time.strftime('%Y-%m-%d'))])
if len(period_ids):
period_id=period_ids[0]
period_id = period_ids[0]
if period_id:
move['period_id'] = period_id
for i in line:
@@ -1017,9 +1021,9 @@ class account_invoice(osv.osv):
def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100):
if not args:
args=[]
args = []
if context is None:
context={}
context = {}
ids = []
if name:
ids = self.search(cr, user, [('number','=',name)]+ args, limit=limit, context=context)
@@ -1486,7 +1490,7 @@ class account_invoice_tax(osv.osv):
def base_change(self, cr, uid, ids, base, currency_id=False, company_id=False, date_invoice=False):
cur_obj = self.pool.get('res.currency')
company_obj = self.pool.get('res.company')
company_currency=False
company_currency = False
if company_id:
company_currency = company_obj.read(cr, uid, [company_id], ['currency_id'])[0]['currency_id'][0]
if currency_id and company_currency:
@@ -1496,12 +1500,19 @@ class account_invoice_tax(osv.osv):
def amount_change(self, cr, uid, ids, amount, currency_id=False, company_id=False, date_invoice=False):
cur_obj = self.pool.get('res.currency')
company_obj = self.pool.get('res.company')
company_currency=False
company_currency = False
tax_sign = 1
if ids:
tax_amount = self.read(cr, uid, ids[0], ['tax_amount'])['tax_amount']
if tax_amount < 0:
tax_sign = -1
elif tax_amount == 0:
tax_sign = 0
if company_id:
company_currency = company_obj.read(cr, uid, [company_id], ['currency_id'])[0]['currency_id'][0]
if currency_id and company_currency:
amount = cur_obj.compute(cr, uid, currency_id, company_currency, amount, context={'date': date_invoice or time.strftime('%Y-%m-%d')}, round=False)
return {'value': {'tax_amount':amount}}
amount = cur_obj.compute(cr, uid, currency_id, company_currency, amount*tax_sign, context={'date': date_invoice or time.strftime('%Y-%m-%d')}, round=False)
return {'value': {'tax_amount': amount}}
_order = 'sequence'
_defaults = {
+3 -3
View File
@@ -55,7 +55,7 @@ class account_fiscal_position(osv.osv):
if not fposition_id :
return account_id
for pos in fposition_id.account_ids:
if pos.account_src_id.id==account_id:
if pos.account_src_id.id == account_id:
account_id = pos.account_dest_id.id
break
return account_id
@@ -187,8 +187,8 @@ class res_partner(osv.osv):
help="This payment term will be used instead of the default one for the current partner"),
'ref_companies': fields.one2many('res.company', 'partner_id',
'Companies that refers to partner'),
'last_reconciliation_date': fields.datetime('Last Reconciliation Date', help='Date on which partner account entries reconciled last time')
'last_reconciliation_date': fields.datetime('Last Reconciliation Date', help='Date on which the partner accounting entries were reconciled last time')
}
res_partner()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+6 -5
View File
@@ -76,13 +76,13 @@
<page string="Accounting">
<group col="2" colspan="2">
<separator string="Customer Accounting Properties" colspan="2"/>
<field name="property_account_receivable" groups="account.group_account_user" />
<field name="property_account_receivable" groups="base.group_extended" />
<field name="property_account_position" widget="selection"/>
<field name="property_payment_term" widget="selection"/>
</group>
<group col="2" colspan="2">
<separator string="Supplier Accounting Properties" colspan="2"/>
<field name="property_account_payable" groups="account.group_account_user"/>
<field name="property_account_payable" groups="base.group_extended"/>
</group>
<group col="2" colspan="2">
<separator string="Customer Credit" colspan="2"/>
@@ -130,11 +130,12 @@
<act_window
id="action_analytic_open"
name="Analytic Accounts"
res_model="account.analytic.account"
domain="[('partner_id','=',active_id)]"
res_model="account.analytic.account"
context="{'search_default_partner_id':[active_id]}"
src_model="res.partner"
view_type="form"
view_mode="tree,form,graph,calendar"/>
view_mode="tree,form,graph,calendar"
groups="base.group_extended"/>
<record id="view_res_partner_reconcile" model="ir.ui.view">
<field name="name">res.partner.form.reconcile</field>
@@ -121,10 +121,6 @@
Process Transition
-->
<record id="res_roles_invoice0" model="res.roles">
<field eval="&quot;&quot;&quot;Invoice&quot;&quot;&quot;" name="name"/>
</record>
<record id="process_transition_confirmstatementfromdraft0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
+1 -2
View File
@@ -48,6 +48,7 @@ product_category()
#----------------------------------------------------------
# Products
#----------------------------------------------------------
class product_template(osv.osv):
_inherit = "product.template"
_columns = {
@@ -76,5 +77,3 @@ class product_template(osv.osv):
}
product_template()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+18 -12
View File
@@ -51,16 +51,15 @@
<field name="type">tree</field>
<field name="field_parent">child_ids</field>
<field name="arch" type="xml">
<tree toolbar="True" colors="red:(date&lt;=current_date);black:(date&gt;current_date)" string="Analytic account">
<tree toolbar="True" string="Analytic Account">
<field name="name"/>
<field name="code"/>
<field name="partner_id"/>
<field name="quantity"/>
<field name="quantity_max"/>
<field name="debit"/>
<field name="credit"/>
<field name="balance"/>
<field name="company_currency_id"/>
<field name="date" invisible="1"/>
</tree>
</field>
</record>
@@ -188,22 +187,29 @@
<field name="arch" type="xml">
<search string="Search Analytic Lines">
<group col='6' colspan='4'>
<filter string="Sale" domain="[('journal_id.type','=','sale')]" icon="terp-sale"/>
<filter string="Purchase" domain="[('journal_id.type','=','purchase')]" icon="terp-purchase"/>
<separator orientation="vertical"/>
<separator orientation="vertical"/>
<field name="name" select="1"/>
<field name="account_id" select="1" groups="base.group_extended"/>
<field name="amount" select="1"/>
<field name="date" select="1"/>
<field name="account_id" select="1" groups="base.group_extended"/>
<field name="user_id" widget="selection"/>
</group>
<newline/>
<group col='6' colspan='4'>
<field name="journal_id" select="1" widget="selection"/>
<group string="Group By..." expand="0">
<filter string="Analytic Account" context="{'group_by':'account_id'}" groups="base.group_extended" icon="terp-folder-blue"/>
<filter string="Analytic Journal" context="{'group_by':'journal_id'}" icon="terp-folder-orange"/>
<separator orientation="vertical"/>
<filter string="General Account" context="{'group_by':'general_account_id'}" icon="terp-folder-green"/>
<separator orientation="vertical"/>
<filter string="Product" context="{'group_by':'product_id'}" icon="terp-accessories-archiver"/>
</group>
<newline/>
<group string="Group By..." expand="0">
<filter string="General Account" context="{'group_by':'general_account_id'}"/>
<filter string="Analytic Account" context="{'group_by':'account_id'}" groups="base.group_extended"/>
<filter string="Analytic Journal" context="{'group_by':'journal_id'}"/>
<filter string="Product" context="{'group_by':'product_id'}"/>
<group expand="0" string="Extended options...">
<field name="journal_id" widget="selection"/>
<field name="product_id" widget="selection"/>
<field name="amount" select="1"/>
</group>
</search>
</field>
@@ -154,7 +154,7 @@ class account_analytic_balance(report_sxw.rml_parse):
report_sxw.report_sxw('report.account.analytic.account.balance',
'account.analytic.account', 'addons/account/project/report/analytic_balance.rml',
parser=account_analytic_balance, header=False)
parser=account_analytic_balance, header="internal")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Analytic Balance" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
<header>
@@ -18,22 +18,22 @@
<!--COL 1-->
<drawString x="1.0cm" y="28.1cm">[[ company.name ]]</drawString>
<drawRightString x="20cm" y="28.1cm">Analytic Balance - [[ company.currency_id.name ]]</drawRightString>
<!-- Header -->
<setFont name="Helvetica" size="9"/>
<drawString x="1.0cm" y="1cm"> [[ time.strftime("%Y-%m-%d %H:%M", time.localtime()) ]]</drawString>
<drawString x="19.0cm" y="1cm">Page <pageNumber/></drawString>
<!--<drawRightString x="19.8cm" y="28cm">[[ company.rml_header1 ]]</drawRightString>-->
<lineMode width="0.7"/>
<lines>1cm 27.7cm 20cm 27.7cm</lines>
<setFont name="Helvetica" size="8"/>
</pageGraphics>
</header>
</header>
</pageTemplate>
</template>
<stylesheet>
@@ -51,12 +51,12 @@
<blockTableStyle id="Table2">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="tbl_content">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="tbl_data">
<blockAlignment value="LEFT"/>
@@ -186,7 +186,7 @@
<td>
<para style="terp_default_Right_8">[[ formatLang(move_g['quantity']) ]]</para>
</td>
</tr>
</tr>
</blockTable>
</section>
<para style="terp_default_8">
@@ -95,6 +95,6 @@ class account_analytic_analytic_check(report_sxw.rml_parse):
def _delta_cred(self, date1, date2):
return (self._gen_cred(date1,date2)-self._ana_cred(date1,date2))
report_sxw.report_sxw('report.account.analytic.account.analytic.check', 'account.analytic.account', 'addons/account/project/report/analytic_check.rml',parser=account_analytic_analytic_check, header=False)
report_sxw.report_sxw('report.account.analytic.account.analytic.check', 'account.analytic.account', 'addons/account/project/report/analytic_check.rml',parser=account_analytic_analytic_check, header="internal")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Analytic Check" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
<header>
@@ -57,7 +57,7 @@ class account_analytic_journal(report_sxw.rml_parse):
res = self.cr.dictfetchone()
return res['sum'] or 0
report_sxw.report_sxw('report.account.analytic.journal', 'account.analytic.journal', 'addons/account/project/report/analytic_journal.rml',parser=account_analytic_journal,header=False)
report_sxw.report_sxw('report.account.analytic.journal', 'account.analytic.journal', 'addons/account/project/report/analytic_journal.rml',parser=account_analytic_journal,header="internal")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Analytic Journal" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="28.0" width="539" height="786"/>
</pageTemplate>
@@ -64,6 +64,34 @@
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="5,-1" stop="5,-1"/>
</blockTableStyle>
<blockTableStyle id="Table5">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
</blockTableStyle>
<blockTableStyle id="Table6">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="1,0" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#e6e6e6" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEAFTER" colorName="#e6e6e6" start="2,0" stop="2,-1"/>
<lineStyle kind="LINEABOVE" colorName="#e6e6e6" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
</blockTableStyle>
<initialize>
<paraStyle name="all" alignment="justify"/>
</initialize>
@@ -116,16 +144,36 @@
<images/>
<story>
<para style="P12">[[ repeatIn(objects,'o') ]]</para>
<blockTable colWidths="539.0" style="Table_Tilte">
<para style="terp_default_8">
<font color="white"> </font>
</para>
<para style="terp_header_Centre">Analytic Journal</para>
<para style="terp_default_8">
<font color="white"> </font>
</para>
<blockTable colWidths="180.0,180.0,180.0" style="Table5">
<tr>
<td>
<para style="terp_header_Centre">Analytic Journal - [[ company.currency_id.name ]]</para>
<para style="terp_tblheader_Details_Centre">Period from</para>
</td>
<td>
<para style="terp_tblheader_Details_Centre">Period to</para>
</td>
<td>
<para style="terp_tblheader_Details_Centre">Currency</para>
</td>
</tr>
</blockTable>
<blockTable colWidths="180.0,180.0,180.0" style="Table6">
<tr>
<td>
<para style="terp_header_Centre">Period from : [[ data['form']['date1'] ]]</para>
<para style="terp_header_Centre">to : [[ data['form']['date2'] ]]</para>
<para style="terp_default_Centre_8">[[ formatLang(data['form']['date1'],date=True) ]]</para>
</td>
<td>
<para style="terp_default_Centre_8">[[ formatLang(data['form']['date2'],date=True) ]]</para>
</td>
<td>
<para style="terp_default_Centre_8">[[ company.currency_id.name ]]</para>
</td>
</tr>
</blockTable>
+1 -1
View File
@@ -108,7 +108,7 @@ class account_analytic_cost_ledger(report_sxw.rml_parse):
credit = self._sum_credit(accounts, date1, date2) or 0.0
return (debit-credit)
report_sxw.report_sxw('report.account.analytic.account.cost_ledger', 'account.analytic.account', 'addons/account/project/report/cost_ledger.rml',parser=account_analytic_cost_ledger, header=False)
report_sxw.report_sxw('report.account.analytic.account.cost_ledger', 'account.analytic.account', 'addons/account/project/report/cost_ledger.rml',parser=account_analytic_cost_ledger, header="internal")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+19 -28
View File
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Cost Ledger" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
</pageTemplate>
@@ -10,7 +10,7 @@
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
<blockTableStyle id="Table_Heading_Content">
<blockTableStyle id="Table1">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
@@ -82,16 +82,16 @@
<initialize>
<paraStyle name="all" alignment="justify"/>
</initialize>
<paraStyle name="Standard" fontName="Times-Roman"/>
<paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="List" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Table Contents" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="Caption" fontName="Times-Roman" fontSize="10.0" leading="13" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="Index" fontName="Times-Roman"/>
<paraStyle name="Standard" fontName="Helvetica"/>
<paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="List" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Table Contents" fontName="Helvetica" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="Table Heading" fontName="Helvetica" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="Caption" fontName="Helvetica" fontSize="10.0" leading="13" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="Index" fontName="Helvetica"/>
<paraStyle name="Heading" fontName="Helvetica" fontSize="12.0" leading="15" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Footer" fontName="Times-Roman"/>
<paraStyle name="Horizontal Line" fontName="Times-Roman" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
<paraStyle name="Footer" fontName="Helvetica"/>
<paraStyle name="Horizontal Line" fontName="Helvetica" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
<paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="12.0" leading="15" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="Heading 9" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="terp_tblheader_General" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
@@ -115,12 +115,12 @@
<paraStyle name="terp_Default_Bold_Right_9" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_Default_Bold_Right_9_U" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_Default_Right_9_U" fontName="Helvetica" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_9_Italic" fontName="Times-Italic" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_9_italic_Rignt" fontName="Times-Italic" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_9_Italic" fontName="Helvetica-Oblique" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_9_italic_Rignt" fontName="Helvetica-Oblique" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<images/>
</stylesheet>
<images/>
<story>
<blockTable colWidths="161.0,161.0,161.0" repeatRows="1" style="Table_Heading_Content">
<blockTable colWidths="161.0,161.0,161.0" repeatRows="1" style="Table1">
<tr>
<td>
<para style="terp_default_9">
@@ -137,15 +137,6 @@
</td>
</tr>
</blockTable>
<para style="terp_default_8">
<font color="white"> </font>
</para>
<para style="terp_default_8">
<font color="white"> </font>
</para>
<para style="terp_default_8">
<font color="white"> </font>
</para>
<blockTable colWidths="161.0,161.0,161.0" style="Table_Date_Sub_detail">
<tr>
<td>
@@ -162,13 +153,13 @@
<blockTable colWidths="161.0,161.0,161.0" style="Table_Sub_Content">
<tr>
<td>
<para style="terp_tblheader_General_Centre">[[ formatLang(data['form']['date1'],date = True) ]]</para>
<para style="terp_default_Centre_8">[[ formatLang(data['form']['date1'],date = True) ]]</para>
</td>
<td>
<para style="terp_tblheader_General_Centre">[[ formatLang(data['form']['date2'],date = True) ]]</para>
<para style="terp_default_Centre_8">[[ formatLang(data['form']['date2'],date = True) ]]</para>
</td>
<td>
<para style="terp_tblheader_General_Centre">[[ formatLang(time.strftime('%Y-%m-%d %H:%M:%S'),date_time = True) ]]</para>
<para style="terp_default_Centre_8">[[ formatLang(time.strftime('%Y-%m-%d %H:%M:%S'),date_time = True) ]]</para>
</td>
</tr>
</blockTable>
@@ -306,4 +297,4 @@
<font color="white"> </font>
</para>
</story>
</document>
</document>
@@ -120,7 +120,7 @@ class account_inverted_analytic_balance(report_sxw.rml_parse):
WHERE account_id IN %s AND date>=%s AND date<=%s", (tuple(ids),date1, date2,))
return self.cr.fetchone()[0] or 0.0
report_sxw.report_sxw('report.account.analytic.account.inverted.balance', 'account.analytic.account', 'addons/account/project/report/inverted_analytic_balance.rml',parser=account_inverted_analytic_balance, header=False)
report_sxw.report_sxw('report.account.analytic.account.inverted.balance', 'account.analytic.account', 'addons/account/project/report/inverted_analytic_balance.rml',parser=account_inverted_analytic_balance, header="internal")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Inverted Analytic Balance" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="28.0" width="539" height="786"/>
</pageTemplate>
@@ -120,6 +120,6 @@ class account_analytic_quantity_cost_ledger(report_sxw.rml_parse):
report_sxw.report_sxw('report.account.analytic.account.quantity_cost_ledger',
'account.analytic.account',
'addons/account/project/report/quantity_cost_ledger.rml',
parser=account_analytic_quantity_cost_ledger, header=False)
parser=account_analytic_quantity_cost_ledger, header="internal")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Quantity Cost Ledger" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
</pageTemplate>
@@ -28,195 +28,195 @@ from common_report_header import common_report_header
class aged_trial_report(rml_parse.rml_parse, common_report_header):
def __init__(self, cr, uid, name, context):
super(aged_trial_report, self).__init__(cr, uid, name, context=context)
self.query_line = ''
self.total_account = []
self.localcontext.update({
'time': time,
'get_lines': self._get_lines,
'get_total': self._get_total,
'get_direction': self._get_direction,
'get_for_period': self._get_for_period,
'get_company': self._get_company,
'get_currency': self._get_currency,
'get_partners':self._get_partners,
'get_account': self._get_account,
'get_fiscalyear': self._get_fiscalyear,
})
def __init__(self, cr, uid, name, context):
super(aged_trial_report, self).__init__(cr, uid, name, context=context)
self.query_line = ''
self.total_account = []
self.localcontext.update({
'time': time,
'get_lines': self._get_lines,
'get_total': self._get_total,
'get_direction': self._get_direction,
'get_for_period': self._get_for_period,
'get_company': self._get_company,
'get_currency': self._get_currency,
'get_partners':self._get_partners,
'get_account': self._get_account,
'get_fiscalyear': self._get_fiscalyear,
})
def set_context(self, objects, data, ids, report_type=None):
self.query = data['form'].get('query_line', '')
self.direction_selection = data['form'].get('direction_selection', 'past')
self.date_from = data['form'].get('date_from', time.strftime('%Y-%m-%d'))
if (data['form']['result_selection'] == 'customer' ):
self.ACCOUNT_TYPE = ['receivable']
elif (data['form']['result_selection'] == 'supplier'):
self.ACCOUNT_TYPE = ['payable']
else:
self.ACCOUNT_TYPE = ['payable','receivable']
return super(aged_trial_report, self).set_context(objects, data, ids, report_type=report_type)
def set_context(self, objects, data, ids, report_type=None):
self.query = data['form'].get('query_line', '')
self.direction_selection = data['form'].get('direction_selection', 'past')
self.date_from = data['form'].get('date_from', time.strftime('%Y-%m-%d'))
if (data['form']['result_selection'] == 'customer' ):
self.ACCOUNT_TYPE = ['receivable']
elif (data['form']['result_selection'] == 'supplier'):
self.ACCOUNT_TYPE = ['payable']
else:
self.ACCOUNT_TYPE = ['payable','receivable']
return super(aged_trial_report, self).set_context(objects, data, ids, report_type=report_type)
def _get_lines(self, form):
res = []
account_move_line_obj = pooler.get_pool(self.cr.dbname).get('account.move.line')
self.cr.execute('SELECT DISTINCT res_partner.id AS id,\
res_partner.name AS name \
FROM res_partner,account_move_line AS l, account_account\
WHERE (l.account_id=account_account.id)\
AND ((reconcile_id IS NULL)\
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))\
AND (l.partner_id=res_partner.id)\
AND ' + self.query + ' \
ORDER BY res_partner.name' , (self.date_from,))
partners = self.cr.dictfetchall()
## mise a 0 du total
for i in range(7):
self.total_account.append(0)
#
# Build a string like (1,2,3) for easy use in SQL query
partner_ids = [x['id'] for x in partners]
def _get_lines(self, form):
res = []
account_move_line_obj = pooler.get_pool(self.cr.dbname).get('account.move.line')
self.cr.execute('SELECT DISTINCT res_partner.id AS id,\
res_partner.name AS name \
FROM res_partner,account_move_line AS l, account_account\
WHERE (l.account_id=account_account.id)\
AND ((reconcile_id IS NULL)\
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))\
AND (l.partner_id=res_partner.id)\
AND ' + self.query + ' \
ORDER BY res_partner.name' , (self.date_from,))
partners = self.cr.dictfetchall()
## mise a 0 du total
for i in range(7):
self.total_account.append(0)
#
# Build a string like (1,2,3) for easy use in SQL query
partner_ids = [x['id'] for x in partners]
# This dictionary will store the debit-credit for all partners, using partner_id as key.
totals = {}
self.cr.execute('SELECT partner_id, SUM(debit-credit) \
FROM account_move_line AS l, account_account\
WHERE (l.account_id = account_account.id)\
AND (account_account.type IN %s)\
AND (partner_id IN %s)\
AND ((reconcile_id IS NULL)\
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))\
AND ' + self.query + '\
AND account_account.active\
GROUP BY partner_id ' , (tuple(self.ACCOUNT_TYPE), tuple(partner_ids), self.date_from,))
t = self.cr.fetchall()
for i in t:
totals[i[0]] = i[1]
# This dictionary will store the debit-credit for all partners, using partner_id as key.
totals = {}
self.cr.execute('SELECT partner_id, SUM(debit-credit) \
FROM account_move_line AS l, account_account\
WHERE (l.account_id = account_account.id)\
AND (account_account.type IN %s)\
AND (partner_id IN %s)\
AND ((reconcile_id IS NULL)\
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))\
AND ' + self.query + '\
AND account_account.active\
GROUP BY partner_id ' , (tuple(self.ACCOUNT_TYPE), tuple(partner_ids), self.date_from,))
t = self.cr.fetchall()
for i in t:
totals[i[0]] = i[1]
# This dictionary will store the future or past of all partners
future_past = {}
if self.direction_selection == 'future':
self.cr.execute('SELECT partner_id, SUM(debit-credit) \
FROM account_move_line AS l, account_account\
WHERE (l.account_id=account_account.id)\
AND (account_account.type IN %s)\
AND (COALESCE(date_maturity, date) < %s)\
AND (partner_id IN %s)\
AND ((reconcile_id IS NULL)\
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))\
AND '+ self.query + '\
AND account_account.active\
GROUP BY partner_id', (tuple(self.ACCOUNT_TYPE), self.date_from, tuple(partner_ids),self.date_from,))
t = self.cr.fetchall()
for i in t:
future_past[i[0]] = i[1]
elif self.direction_selection == 'past': # Using elif so people could extend without this breaking
self.cr.execute('SELECT partner_id, SUM(debit-credit) \
FROM account_move_line AS l, account_account\
WHERE (l.account_id=account_account.id)\
AND (account_account.type IN %s)\
AND (COALESCE(date_maturity,date) > %s)\
AND (partner_id IN %s)\
AND ((reconcile_id IS NULL)\
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))\
AND '+ self.query + '\
AND account_account.active\
GROUP BY partner_id' , (tuple(self.ACCOUNT_TYPE), self.date_from, tuple(partner_ids), self.date_from,))
t = self.cr.fetchall()
for i in t:
future_past[i[0]] = i[1]
# This dictionary will store the future or past of all partners
future_past = {}
if self.direction_selection == 'future':
self.cr.execute('SELECT partner_id, SUM(debit-credit) \
FROM account_move_line AS l, account_account\
WHERE (l.account_id=account_account.id)\
AND (account_account.type IN %s)\
AND (COALESCE(date_maturity, date) < %s)\
AND (partner_id IN %s)\
AND ((reconcile_id IS NULL)\
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))\
AND '+ self.query + '\
AND account_account.active\
GROUP BY partner_id', (tuple(self.ACCOUNT_TYPE), self.date_from, tuple(partner_ids),self.date_from,))
t = self.cr.fetchall()
for i in t:
future_past[i[0]] = i[1]
elif self.direction_selection == 'past': # Using elif so people could extend without this breaking
self.cr.execute('SELECT partner_id, SUM(debit-credit) \
FROM account_move_line AS l, account_account\
WHERE (l.account_id=account_account.id)\
AND (account_account.type IN %s)\
AND (COALESCE(date_maturity,date) > %s)\
AND (partner_id IN %s)\
AND ((reconcile_id IS NULL)\
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))\
AND '+ self.query + '\
AND account_account.active\
GROUP BY partner_id' , (tuple(self.ACCOUNT_TYPE), self.date_from, tuple(partner_ids), self.date_from,))
t = self.cr.fetchall()
for i in t:
future_past[i[0]] = i[1]
# Use one query per period and store results in history (a list variable)
# Each history will contain : history[1] = {'<partner_id>': <partner_debit-credit>}
history = []
for i in range(5):
self.cr.execute('SELECT partner_id, SUM(debit-credit)\
FROM account_move_line AS l, account_account\
WHERE (l.account_id = account_account.id)\
AND (account_account.type IN %s)\
AND (COALESCE(date_maturity,date) BETWEEN %s AND %s)\
AND (partner_id IN %s)\
AND ((reconcile_id IS NULL)\
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))\
AND '+ self.query + '\
AND account_account.active\
GROUP BY partner_id' , (tuple(self.ACCOUNT_TYPE), form[str(i)]['start'], form[str(i)]['stop'], tuple(partner_ids) ,self.date_from,))
t = self.cr.fetchall()
d = {}
for i in t:
d[i[0]] = i[1]
history.append(d)
# Use one query per period and store results in history (a list variable)
# Each history will contain : history[1] = {'<partner_id>': <partner_debit-credit>}
history = []
for i in range(5):
self.cr.execute('SELECT partner_id, SUM(debit-credit)\
FROM account_move_line AS l, account_account\
WHERE (l.account_id = account_account.id)\
AND (account_account.type IN %s)\
AND (COALESCE(date_maturity,date) BETWEEN %s AND %s)\
AND (partner_id IN %s)\
AND ((reconcile_id IS NULL)\
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))\
AND '+ self.query + '\
AND account_account.active\
GROUP BY partner_id' , (tuple(self.ACCOUNT_TYPE), form[str(i)]['start'], form[str(i)]['stop'], tuple(partner_ids) ,self.date_from,))
t = self.cr.fetchall()
d = {}
for i in t:
d[i[0]] = i[1]
history.append(d)
for partner in partners:
values = {}
## If choise selection is in the future
if self.direction_selection == 'future':
# Query here is replaced by one query which gets the all the partners their 'before' value
before = False
if future_past.has_key(partner['id']):
before = [ future_past[partner['id']] ]
self.total_account[6] = self.total_account[6] + (before and before[0] or 0.0)
values['direction'] = before and before[0] or 0.0
elif self.direction_selection == 'past': # Changed this so people could in the future create new direction_selections
# Query here is replaced by one query which gets the all the partners their 'after' value
after = False
if future_past.has_key(partner['id']): # Making sure this partner actually was found by the query
after = [ future_past[partner['id']] ]
for partner in partners:
values = {}
## If choise selection is in the future
if self.direction_selection == 'future':
# Query here is replaced by one query which gets the all the partners their 'before' value
before = False
if future_past.has_key(partner['id']):
before = [ future_past[partner['id']] ]
self.total_account[6] = self.total_account[6] + (before and before[0] or 0.0)
values['direction'] = before and before[0] or 0.0
elif self.direction_selection == 'past': # Changed this so people could in the future create new direction_selections
# Query here is replaced by one query which gets the all the partners their 'after' value
after = False
if future_past.has_key(partner['id']): # Making sure this partner actually was found by the query
after = [ future_past[partner['id']] ]
self.total_account[6] = self.total_account[6] + (after and after[0] or 0.0)
values['direction'] = after and after[0] or ""
self.total_account[6] = self.total_account[6] + (after and after[0] or 0.0)
values['direction'] = after and after[0] or ""
for i in range(5):
during = False
if history[i].has_key(partner['id']):
during = [ history[i][partner['id']] ]
# Ajout du compteur
self.total_account[(i)] = self.total_account[(i)] + (during and during[0] or 0)
values[str(i)] = during and during[0] or ""
for i in range(5):
during = False
if history[i].has_key(partner['id']):
during = [ history[i][partner['id']] ]
# Ajout du compteur
self.total_account[(i)] = self.total_account[(i)] + (during and during[0] or 0)
values[str(i)] = during and during[0] or ""
total = False
if totals.has_key( partner['id'] ):
total = [ totals[partner['id']] ]
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)
values['name'] = partner['name']
total = False
if totals.has_key( partner['id'] ):
total = [ totals[partner['id']] ]
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)
values['name'] = partner['name']
if values['total']:
res.append(values)
if values['total']:
res.append(values)
total = 0.0
totals = {}
for r in res:
total += float(r['total'] or 0.0)
for i in range(5)+['direction']:
totals.setdefault(str(i), 0.0)
totals[str(i)] += float(r[str(i)] or 0.0)
return res
total = 0.0
totals = {}
for r in res:
total += float(r['total'] or 0.0)
for i in range(5)+['direction']:
totals.setdefault(str(i), 0.0)
totals[str(i)] += float(r[str(i)] or 0.0)
return res
def _get_total(self,pos):
period = self.total_account[int(pos)]
return period
def _get_total(self,pos):
period = self.total_account[int(pos)]
return period
def _get_direction(self,pos):
period = self.total_account[int(pos)]
return period
def _get_direction(self,pos):
period = self.total_account[int(pos)]
return period
def _get_for_period(self,pos):
period = self.total_account[int(pos)]
return period
def _get_for_period(self,pos):
period = self.total_account[int(pos)]
return period
def _get_partners(self,data):
if data['form']['result_selection'] == 'customer':
return 'Receivable Accounts'
elif data['form']['result_selection'] == 'supplier':
return 'Payable Accounts'
elif data['form']['result_selection'] == 'customer_supplier':
return 'Receivable and Payable Accounts'
return ''
def _get_partners(self,data):
if data['form']['result_selection'] == 'customer':
return 'Receivable Accounts'
elif data['form']['result_selection'] == 'supplier':
return 'Payable Accounts'
elif data['form']['result_selection'] == 'customer_supplier':
return 'Receivable and Payable Accounts'
return ''
report_sxw.report_sxw('report.account.aged_trial_balance', 'res.partner',
'addons/account/report/account_aged_partner_balance.rml',parser=aged_trial_report, header=False)
'addons/account/report/account_aged_partner_balance.rml',parser=aged_trial_report, header="internal landscape")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(1120.0,770.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(1120.0,770.0)" title="Aged Trial balance" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="20.0" y1="35.0" width="1080" height="650"/>
</pageTemplate>
@@ -23,7 +23,7 @@
<blockTableStyle id="Table_header_Content">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
</blockTableStyle>
<blockTableStyle id="Tableau1">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -33,7 +33,7 @@
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,1" stop="-1,1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,2" stop="-1,-1"/>
<blockValign value="TOP"/>
<blockAlignment value="LEFT" start="2,1" stop="-1,-1"/>
</blockTableStyle>
@@ -68,7 +68,7 @@
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="4,1" stop="4,1"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="4,-1" stop="4,-1"/>
</blockTableStyle>
<blockTableStyle id="Tableau3">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -107,7 +107,7 @@
<paraStyle name="terp_tblheader_General_Centre" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="12.0" leading="15" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="15.0" leading="15" alignment="CENTER" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="15.0" leading="15" alignment="CENTER" spaceBefore="12.0" spaceAfter="6.0"/>
</stylesheet>
<story>
<para style="P9">
@@ -147,7 +147,7 @@
<para style="terp_default_Centre_8">[[ get_fiscalyear(data) or '' ]]</para>
</td>
<td>
<para style="terp_default_Centre_8">[[ data['form']['date_from'] ]]</para>
<para style="terp_default_Centre_8">[[ formatLang(data['form']['date_from'],date=True) ]]</para>
</td>
<td>
<para style="terp_default_Centre_8">[[ get_partners(data) ]]</para>
@@ -155,13 +155,13 @@
<td>
<para style="terp_default_Centre_8">[[ formatLang(time.strftime('%Y-%m-%d %H:%M:%S'), date_time = True)]]</para>
</td>
</tr>
</tr>
</blockTable>
<para style="P9">
<font color="white"> </font>
</para> <para style="P9">
<font color="white"> </font>
</para>
</para>
<blockTable colWidths="300.0,100.0,100.0,100.0,100.0,105.0,105.0,125.0" style="Table2" repeatRows="1">
<tr>
<td>
@@ -189,9 +189,9 @@
<para style="P8">Total</para>
</td>
</tr>
<tr>
<td>
<para style="P3"> <font color="white">[[ (get_lines(data['form']), 'partner') == False or removeParentNode('para') ]]</font></para>
<para style="P9"><font color="white"> </font></para>
@@ -226,7 +226,7 @@
<para style="Total_right">[[ formatLang(get_total('5') or 0.00) ]]</para>
</td>
</tr>
<tr>
<td>
<para style="P3">[[ repeatIn(get_lines(data['form']), 'partner') ]]</para>
@@ -255,7 +255,7 @@
</td>
</tr>
</blockTable>
<para style="P9">
<font color="white"> </font>
</para>
+5 -5
View File
@@ -57,10 +57,10 @@ class account_balance(report_sxw.rml_parse, common_report_header):
self.query_get_clause = data['form'].get('query_line', False) or ''
return super(account_balance, self).set_context(objects, data, new_ids, report_type=report_type)
def _add_header(self, node, header=1):
if header == 0:
self.rml_header = ""
return True
#def _add_header(self, node, header=1):
# if header == 0:
# self.rml_header = ""
# return True
def _get_account(self, data):
if data['model']=='account.account':
@@ -121,4 +121,4 @@ class account_balance(report_sxw.rml_parse, common_report_header):
report_sxw.report_sxw('report.account.account.balance', 'account.account', 'addons/account/report/account_balance.rml', parser=account_balance, header="internal")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+15 -15
View File
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Account Balance" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="35.0" y1="35.0" width="525" height="772"/>
</pageTemplate>
@@ -20,7 +20,7 @@
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,1" stop="-1,-1"/>
</blockTableStyle>
<blockTableStyle id="Table8">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -116,7 +116,7 @@
<blockTableStyle id="Table6">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
</blockTableStyle>
<blockTableStyle id="Table_Account_Balance_Content">
<blockAlignment value="LEFT"/>
@@ -208,11 +208,11 @@
</para>
<para style="P11">
<font color="white"> </font>
</para>
</para>
<blockTable colWidths="130.0,80.0,100.0,140.0,90.0" style="Table8">
<tr>
<td><para style="terp_tblheader_General_Centre">[[ data['model']=='account.account' and 'Company'or removeParentNode('para') ]]</para>
<para style="terp_tblheader_General_Centre"> [[ data['model']=='ir.ui.menu' and 'Chart of Account' or removeParentNode('para') ]]</para></td>
<td><para style="terp_tblheader_General_Centre">[[ data['model']=='account.account' and 'Company'or removeParentNode('para') ]]</para>
<para style="terp_tblheader_General_Centre"> [[ data['model']=='ir.ui.menu' and 'Chart of Account' or removeParentNode('para') ]]</para></td>
<td>
<para style="terp_tblheader_General_Centre">Fiscal Year</para>
</td>
@@ -246,10 +246,10 @@
</tr>
<tr>
<td>
<para style="terp_default_Centre_8">[[ get_start_date(data) ]]</para>
<para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para>
</td>
<td>
<para style="terp_default_Centre_8">[[ get_end_date(data) ]]</para>
<para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para>
</td>
</tr>
</blockTable>
@@ -287,16 +287,16 @@
<tr noRowsplits="1">
<td><para style="P12a">Code</para></td>
<td><para style="P12a">Account</para></td>
<td><para style="P10">Debit</para></td>
<td><para style="P10">Credit</para></td>
<td><para style="P10">Balance</para></td>
<td><para style="P10">Debit([[ company.currency_id.code]])</para></td>
<td><para style="P10">Credit([[ company.currency_id.code]])</para></td>
<td><para style="P10">Balance([[ company.currency_id.code]])</para></td>
</tr>
<tr>
<td><para style="P14">[[ repeatIn(lines(data['form']), 'a') ]]<font>[[ (a['level']&gt;2 and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font><i>[[ a['code'] or removeParentNode('tr') ]]</i></para></td>
<td><para style="P14"><font>[[ (a['level']&gt;2 and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font><font color="white">[[ '..'*(a['level']-1) ]]</font><font>[[ a['name'] ]]</font></para></td>
<td><para style="P3"><font>[[ (a['level']&gt;2 and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font><font>[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['debit']) ]]</font><font>[[ a['type']&lt;&gt;'view' and removeParentNode('font') ]] [[formatLang(a['debit']) ]]</font></para></td>
<td><para style="P3"><font>[[ (a['level']&gt;2 and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font')]]</font><font>[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['credit']) ]]</font><font>[[ a['type']&lt;&gt;'view' and removeParentNode('font') ]] [[ formatLang(a['credit']) ]]</font></para></td>
<td><para style="P3"><font>[[ (a['level']&gt;2 and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font><font>[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['balance']) ]]</font><font>[[ a['type']&lt;&gt;'view' and removeParentNode('font') ]] [[ formatLang(a['balance']) ]]</font></para></td>
<td><para style="P14"><font>[[ (a['level']&gt;2 and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font><font color="white">[[ '..'*(a['level']-1) ]]</font><font>[[ a['name'] ]]</font> </para></td>
<td><para style="P3"><font>[[ (a['level']&gt;2 and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font><font>[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['debit']) ]] [[ company.currency_id.symbol ]]</font><font>[[ a['type']&lt;&gt;'view' and removeParentNode('font') ]] [[formatLang(a['debit']) ]] [[ company.currency_id.symbol ]]</font></para></td>
<td><para style="P3"><font>[[ (a['level']&gt;2 and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font')]]</font><font>[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['credit']) ]] [[ company.currency_id.symbol ]]</font><font>[[ a['type']&lt;&gt;'view' and removeParentNode('font') ]] [[ formatLang(a['credit']) ]] [[ company.currency_id.symbol ]]</font> </para></td>
<td><para style="P3"><font>[[ (a['level']&gt;2 and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]]</font><font>[[ a['type']=='view' and removeParentNode('font') ]][[ formatLang(a['balance']) ]] [[ company.currency_id.symbol ]]</font><font>[[ a['type']&lt;&gt;'view' and removeParentNode('font') ]] [[ formatLang(a['balance']) ]] [[ company.currency_id.symbol ]]</font> </para></td>
</tr>
</blockTable>
<para style="P11">
@@ -395,6 +395,6 @@ class account_balance_landscape(rml_parse.rml_parse):
def total_cr(self):
return self.cr_total
report_sxw.report_sxw('report.account.account.balance.landscape', 'account.account', 'addons/account/report/account_balance_landscape.rml', parser=account_balance_landscape, header=False)
report_sxw.report_sxw('report.account.account.balance.landscape', 'account.account', 'addons/account/report/account_balance_landscape.rml', parser=account_balance_landscape, header="internal landscape")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(842.0,595.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(842.0,595.0)" title="Account Balance" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="28.0" width="786" height="539"/>
</pageTemplate>
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(1120.0,770.0)" title="Test" author="Martin Simon" allowSplitting="20" >
<template pageSize="(1120.0,770.0)" title="Account balance" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20" >
<pageTemplate id="first">
<frame id="first" x1="22.0" y1="31.0" width="1080" height="680"/>
</pageTemplate>
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(635.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(635.0,842.0)" title="Account balance" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="15.0" y1="15.0" width="615" height="772"/>
</pageTemplate>
@@ -24,7 +24,7 @@
<blockBackground colorName="#e6e6e6" start="1,0" stop="-1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,0" stop="-1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,0" stop="-1,-1"/>
</blockTableStyle>
<blockTableStyle id="Table61">
<blockAlignment value="LEFT"/>
@@ -196,10 +196,10 @@ class report_balancesheet_horizontal(rml_parse.rml_parse, common_report_header):
report_sxw.report_sxw('report.account.balancesheet.horizontal', 'account.account',
'addons/account/report/account_balance_sheet_horizontal.rml',parser=report_balancesheet_horizontal,
header='internal')
header='internal landscape')
report_sxw.report_sxw('report.account.balancesheet', 'account.account',
'addons/account/report/account_balance_sheet.rml',parser=report_balancesheet_horizontal,
header='internal')
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+20 -20
View File
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Balance sheet" author="Openerp" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Balance sheet" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="28.0" width="539" height="786"/>
</pageTemplate>
@@ -107,9 +107,9 @@
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<blockTableStyle id="Table2">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -178,13 +178,13 @@
<para style="terp_default_8">[[ get_data(data) or removeParentNode('para') ]]</para>
<para style="terp_default_9">
<font color="white"> </font>
</para>
</para>
<blockTable colWidths="120.0,100.0,140.0,90.0,90.0" style="Table2_header" >
<tr>
<td><para style="terp_tblheader_General_Centre">Chart of Account </para></td>
<td><para style="terp_tblheader_General_Centre">Fiscal Year</para></td>
<td><para style="terp_tblheader_General_Centre">Filter By <font>[[ get_filter(data)!='No Filter' and '' or removeParentNode('font') ]]</font></para></td>
<td><para style="terp_tblheader_General_Centre">Display Account</para></td>
<td><para style="terp_tblheader_General_Centre">Display Account</para></td>
<td><para style="terp_tblheader_General_Centre">Printing Date</para></td>
</tr>
<tr>
@@ -194,25 +194,25 @@
<blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Date' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_Details_Centre">Start Date</para></td>
<td><para style="terp_tblheader_Details_Centre">End Date</para></td>
</tr>
<td><para style="terp_tblheader_Details_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_date(data)]]</para></td>
<td><para style="terp_default_Centre_8">[[get_end_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="65.0,60.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_Details_Centre">Start Period</para></td>
<td><para style="terp_tblheader_Details_Centre">End Period</para></td>
</tr>
<td><para style="terp_tblheader_Details_Centre">End Period</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_period(data) or removeParentNode('para') ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_period(data) or removeParentNode('para') ]]</para></td>
</tr>
</blockTable>
</blockTable>
</td>
<td><para style="terp_default_Centre_8">[[ (data['form']['display_account']=='bal_all' and 'All') or (data['form']['display_account']=='bal_movement' and 'With movements') or 'With balance is not equal to 0']]</para></td>
<td><para style="terp_default_Centre_8">[[ (data['form']['display_account']=='bal_all' and 'All') or (data['form']['display_account']=='bal_movement' and 'With movements') or 'With balance is not equal to 0']]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(time.strftime('%Y-%m-%d %H:%M:%S'), date_time = True) ]] </para></td>
</tr>
</blockTable>
@@ -224,7 +224,7 @@
</para>
<para style="terp_default_9">
<font color="white"> </font>
</para>
</para>
<blockTable colWidths="100.0,326.0,113.0" style="Table_Account_Line_Title" repeatRows="1">
<tr>
<td>
@@ -239,13 +239,13 @@
</tr>
<tr>
<td>
<para style="terp_default_9"><font face="Times-Roman">[[ repeatIn(get_lines_another('liability'), 'a') ]]</font>[[ a['code'] ]]<font>[[ a['level']&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]</font></para>
<para style="terp_default_9"><font face="Times-Roman">[[ repeatIn(get_lines_another('liability'), 'a') ]]</font>[[ a['code'] ]]<font>[[ a['level']&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]] </font></para>
</td>
<td>
<para style="terp_default_9"><font color="white">[[ '. '*(a['level']-1) ]]</font><font>[[ a['level']&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name'] ]]</font></para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ a['balance'] and formatLang(abs(a['balance'])) or 0.0 ]]</para>
<para style="terp_default_Right_9_Bold">[[ a['balance'] and formatLang(abs(a['balance'])) or 0.0 ]] [[ company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
@@ -255,7 +255,7 @@
<para style="terp_default_Bold_9">Balance:([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_dr())) or 0.0 ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_dr())) or 0.0 ]] [[ company.currency_id.symbol ]]</u></para>
</td>
</tr>
</blockTable>
@@ -283,7 +283,7 @@
<para style="terp_default_9">[[ a['code'] ]]<font>[[ a['level']&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name'] ]]</font></para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ a['balance'] and formatLang(abs(a['balance'])) or 0.0 ]]</para>
<para style="terp_default_Right_9_Bold">[[ a['balance'] and formatLang(abs(a['balance'])) or 0.0 ]] [[ company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
@@ -293,7 +293,7 @@
<para style="terp_default_Bold_9">Balance:([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_cr())) or 0.0 ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_cr())) or 0.0 ]] [[ company.currency_id.symbol ]]</u></para>
</td>
</tr>
</blockTable>
@@ -1,9 +1,9 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(1120.0,770.0)" title="Balance sheet" author="Openerp" allowSplitting="20" >
<template pageSize="(1120.0,770.0)" title="Balance sheet" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20" >
<pageTemplate id="first">
<frame id="first" x1="22.0" y1="15.0" width="1080" height="680"/>
</pageTemplate>
</template>
<stylesheet>
@@ -123,14 +123,14 @@
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<blockTableStyle id="Table3">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
</blockTableStyle>
<initialize>
<paraStyle name="all" alignment="justify"/>
</initialize>
@@ -198,13 +198,13 @@
<font color="white"> </font>
</para>
<para style="terp_default_8">[[ get_data(data) or removeParentNode('para') ]]</para>
<blockTable colWidths="210.0,210.0,200.0,200.0,200.0" style="Table2_header" >
<tr>
<td><para style="terp_tblheader_General_Centre">Chart of Account </para></td>
<td><para style="terp_tblheader_General_Centre">Fiscal Year</para></td>
<td><para style="terp_tblheader_General_Centre">Filter By [[ get_filter(data)!='No Filter' and get_filter(data) ]]</para></td>
<td><para style="terp_tblheader_General_Centre">Display Account</para></td>
<td><para style="terp_tblheader_General_Centre">Display Account</para></td>
<td><para style="terp_tblheader_General_Centre">Printing Date</para></td>
</tr>
<tr>
@@ -214,28 +214,28 @@
<blockTable colWidths="85.0,85.0" style="Table3">[[ get_filter(data)=='Date' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_Details_Centre">Start Date</para></td>
<td><para style="terp_tblheader_Details_Centre">End Date</para></td>
</tr>
<td><para style="terp_tblheader_Details_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_date(data)]]</para></td>
<td><para style="terp_default_Centre_8">[[get_end_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="85.0,85.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_Details_Centre">Start Period</para></td>
<td><para style="terp_tblheader_Details_Centre">End Period</para></td>
</tr>
<td><para style="terp_tblheader_Details_Centre">End Period</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_period(data) or removeParentNode('para') ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_period(data) or removeParentNode('para') ]]</para></td>
</tr>
</blockTable>
</blockTable>
</td>
<td><para style="terp_default_Centre_8">[[ (data['form']['display_account']=='bal_all' and 'All') or (data['form']['display_account']=='bal_movement' and 'With movements') or 'With balance is not equal to 0']]</para></td>
<td><para style="terp_default_Centre_8">[[ (data['form']['display_account']=='bal_all' and 'All') or (data['form']['display_account']=='bal_movement' and 'With movements') or 'With balance is not equal to 0']]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(time.strftime('%Y-%m-%d %H:%M:%S'), date_time = True) ]] </para></td>
</tr>
</blockTable>
</blockTable>
<para style="Standard">
<font color="white"> </font>
</para>
@@ -260,7 +260,7 @@
<para style="terp_default_Bold_9">Assets</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Total Amount([[ get_currency(data) ]])</para>
<para style="terp_tblheader_Details_Right">Total Amount([[ get_currency(data) ]]) </para>
</td>
</tr>
<tr>
@@ -272,7 +272,7 @@
<para style="terp_default_9"><font color="white">[[ '. '*(a['level']-1) ]]</font><font>[[ a['level']&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name'] ]]</font></para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ a['balance'] and formatLang(abs(a['balance'])) or '' ]]</para>
<para style="terp_default_Right_9_Bold">[[ a['balance'] and formatLang(abs(a['balance'])) or 0.0 ]] [[ company.currency_id.symbol ]]</para>
</td>
<td>
<para style="terp_default_9"><font>[[ a['level']&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]</font><font>[[ a['code1'] ]]</font></para>
@@ -281,24 +281,24 @@
<para style="terp_default_9"><font color="white">[[ '. '*(a['level1']-1) ]]</font><font>[[ a['level1']&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name1'] ]]</font></para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ a['balance1'] and formatLang(abs(a['balance1'])) or 0.0 ]]</para>
<para style="terp_default_Right_9_Bold">[[ a['balance1'] and formatLang(abs(a['balance1'])) or 0.0 ]] [[ company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
<blockTable colWidths="408.16,116.32,408.16,116.32" style="Table_Net_Profit_Loss">
<tr>
<td>
<para style="terp_default_Bold_9">Balance:([[ get_currency(data) ]])</para>
<para style="terp_default_Bold_9">Balance:([[ get_currency(data) ]]) </para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_dr())) or 0.0 ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_dr())) or 0.0 ]] [[ company.currency_id.symbol ]]</u></para>
</td>
<td>
<para style="terp_default_Bold_9">Balance:([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_cr())) or 0.0 ]]</u></para>
</td>
<para style="terp_default_Right_9_Bold"><u>[[ formatLang(abs(sum_cr())) or 0.0 ]] [[ company.currency_id.symbol ]]</u></para>
</td>
</tr>
</blockTable>
<para style="terp_default_Right_9">
@@ -1,11 +1,11 @@
<?xml version="1.0"?>
<document filename="central_journal.pdf">
<template pageSize="(595.0,842.0)" title="Central Journal" author="OpenERP" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Centralized Journal" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="42.0" width="539" height="758"/>
<pageGraphics>
</pageGraphics>
</pageGraphics>
</pageTemplate>
</template>
<stylesheet>
@@ -97,8 +97,8 @@
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
</blockTableStyle>
<blockTableStyle id="Table_Account_detail_Title_Currency">
<blockAlignment value="LEFT"/>
@@ -107,14 +107,14 @@
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/>
</blockTableStyle>
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/>
</blockTableStyle>
<blockTableStyle id="Table3">
<blockAlignment value="LEFT"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
</blockTableStyle>
</blockTableStyle>
<blockTableStyle id="Table_Final_Total">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -122,8 +122,8 @@
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
</blockTableStyle>
<blockTableStyle id="Table_Final_Total_currency">
<blockAlignment value="LEFT"/>
@@ -133,8 +133,8 @@
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/>
</blockTableStyle>
<blockTableStyle id="Table_Journal_Line_Content">
<blockAlignment value="LEFT"/>
@@ -143,8 +143,8 @@
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
</blockTableStyle>
<blockTableStyle id="Table_Journal_Line_Content_currency">
<blockAlignment value="LEFT"/>
@@ -154,8 +154,8 @@
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
</blockTableStyle>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
</blockTableStyle>
<blockTableStyle id="Table2">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -186,9 +186,9 @@
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<initialize>
<paraStyle name="all" alignment="justify"/>
</initialize>
@@ -235,7 +235,7 @@
<tr>
<td><para style="terp_header"><font color="white"> </font></para>
</td>
<td><para style="terp_header_Centre">Central Journal</para></td>
<td><para style="terp_header_Centre">Centralized Journal</para></td>
<td><para style="terp_header"><font color="white"> </font></para></td>
</tr>
</blockTable>
@@ -244,10 +244,10 @@
</para>
<blockTable colWidths="90.0,80.0,100.0,130.0,100.0" style="Table2">
<tr>
<td><para style="terp_tblheader_General_Centre">[[ data['model']=='account.journal.period' and 'Company' or removeParentNode('para') ]]</para>
<para style="terp_tblheader_General_Centre"> [[ data['model']=='ir.ui.menu' and 'Chart of Account' or removeParentNode('para') ]]</para></td>
<td><para style="terp_tblheader_General_Centre">[[ data['model']=='account.journal.period' and 'Company' or removeParentNode('para') ]]</para>
<para style="terp_tblheader_General_Centre"> [[ data['model']=='ir.ui.menu' and 'Chart of Account' or removeParentNode('para') ]]</para></td>
<td><para style="terp_tblheader_General_Centre">Fiscal Year</para></td>
<td><para style="terp_tblheader_General_Centre">Journal</para></td>
<td><para style="terp_tblheader_General_Centre">Journal</para></td>
<td><para style="terp_tblheader_General_Centre">Filter By [[get_filter(data)!='No Filter' and get_filter(data) ]]</para></td>
<td><para style="terp_tblheader_General_Centre">Printing Date</para></td>
</tr>
@@ -259,37 +259,37 @@
<blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Date' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_Details_Centre">Start Date</para></td>
<td><para style="terp_tblheader_Details_Centre">End Date</para></td>
</tr>
<td><para style="terp_tblheader_Details_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="65.0,65.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_Details_Centre">Start Period</para></td>
<td><para style="terp_tblheader_Details_Centre">End Period</para></td>
</tr>
<td><para style="terp_tblheader_Details_Centre">End Period</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_period(data) or removeParentNode('para') ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_period(data) or removeParentNode('para') ]]</para></td>
</tr>
</blockTable>
</blockTable>
</td>
<td><para style="terp_default_Centre_8">[[ formatLang(time.strftime('%Y-%m-%d %H:%M:%S'), date_time = True) ]] </para></td>
</tr>
</blockTable>
</blockTable>
<para style="P9">
<font color="white"> </font>
</para>
</para>
<blockTable colWidths="50.0,200.0,95.0,92.0,69.0" style="Table_Account_detail_Title">[[ display_currency(data) == False or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_Details">A/C No.</para></td>
<td><para style="terp_tblheader_Details">Account Name</para></td>
<td><para style="terp_tblheader_Details_Right">Debit</para></td>
<td><para style="terp_tblheader_Details_Right">Credit</para></td>
<td><para style="terp_tblheader_Details_Right">Balance</para></td>
<td><para style="terp_tblheader_Details_Right">Debit([[ company.currency_id.code]])</para></td>
<td><para style="terp_tblheader_Details_Right">Credit([[ company.currency_id.code]])</para></td>
<td><para style="terp_tblheader_Details_Right">Balance([[ company.currency_id.code]])</para></td>
</tr>
</blockTable>
<blockTable colWidths="50.0,150.0,95.0,92.0,69.0,80.0" style="Table_Account_detail_Title_Currency">[[ display_currency(data) or removeParentNode('blockTable') ]]
@@ -298,50 +298,50 @@
<td><para style="terp_tblheader_Details">Account Name</para></td>
<td><para style="terp_tblheader_Details_Right">Debit</para></td>
<td><para style="terp_tblheader_Details_Right">Credit</para></td>
<td><para style="terp_tblheader_Details_Right">Balance</para></td>
<td><para style="terp_tblheader_Details_Right">Currency</para></td>
<td><para style="terp_tblheader_Details_Right">Balance</para></td>
<td><para style="terp_tblheader_Details_Right">Currency</para></td>
</tr>
</blockTable>
</blockTable>
<blockTable colWidths="50.0,200.0,94.0,92.0,69.0" style="Table_Final_Total">[[ display_currency(data) == False or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_default_Bold_9">Total:</para></td>
<td><para style="terp_default_Bold_9">Total:([[ company.currency_id.code]])</para></td>
<td><para style="terp_default_Bold_9"><font color="white"> </font></para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_debit(o.period_id.id, o.journal_id.id)) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)-sum_debit(o.period_id.id, o.journal_id.id) ) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_debit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)-sum_debit(o.period_id.id, o.journal_id.id) ) ]] [[ company.currency_id.symbol ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="50.0,150.0,95.0,92.0,69.0,80.0" style="Table_Final_Total_currency">[[ display_currency(data) or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_default_Bold_9">Total:</para></td>
<td><para style="terp_default_Bold_9">Total:([[ company.currency_id.code]])</para></td>
<td><para style="terp_default_Bold_9"><font color="white"> </font></para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_debit(o.period_id.id, o.journal_id.id)) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)-sum_debit(o.period_id.id, o.journal_id.id) ) ]]</para></td>
<td><para style="terp_default_Bold_9"><font color="white"> </font></para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_debit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit(o.period_id.id, o.journal_id.id)-sum_debit(o.period_id.id, o.journal_id.id) ) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9"><font color="white"> </font></para></td>
</tr>
</blockTable>
</blockTable>
<section>
<para style="terp_default_8">[[ repeatIn(lines(o.period_id.id,o.journal_id.id),'line') ]]</para>
<blockTable colWidths="50.0,200.0,94.0,92.0,69.0" style="Table_Journal_Line_Content">[[ display_currency(data) == False or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_default_9">[[ line['code'] ]]</para></td>
<td><para style="terp_default_9">[[ line['name'] ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['debit']) ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit'])]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit']) ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['debit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit'])]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit']) ]] [[ company.currency_id.symbol ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="50.0,150.0,95.0,92.0,69.0,80.0" style="Table_Journal_Line_Content_currency">[[ display_currency(data) or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_default_9">[[ line['code'] ]]</para></td>
<td><para style="terp_default_9">[[ line['name'] ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['debit']) ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit'])]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit']) ]]</para></td>
<td><para style="terp_default_Right_9">[[ line['currency_id'] and formatLang(line['amount_currency'] or '') ]] [[ line['currency_id'] and line['currency_code'] or '']]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['debit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit'])]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Right_9">[[ line['currency_id'] and formatLang(line['amount_currency'] or '') ]] [[ line['currency_id'] and line['currency_code'] or '']]</para></td>
</tr>
</blockTable>
</blockTable>
<para style="terp_default_2">
<font color="white"> </font>
</para>
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="general_journal.pdf">
<template pageSize="(596.0,842.0)" title="General Journal" author="OpenERP" allowSplitting="20">
<template pageSize="(596.0,842.0)" title="General Journal" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="42.0" width="540" height="758"/>
<pageGraphics>
@@ -242,8 +242,8 @@
<td><para style="terp_tblheader_Details_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_date(data)]]</para></td>
<td><para style="terp_default_Centre_8">[[get_end_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True)]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
@@ -268,16 +268,16 @@
<tr>
<td><para style="terp_tblheader_Details">Code</para></td>
<td><para style="terp_tblheader_Details">Journal Name</para></td>
<td><para style="terp_tblheader_Details_Right">Debit</para></td>
<td><para style="terp_tblheader_Details_Right">Credit</para></td>
<td><para style="terp_tblheader_Details_Right">Balance</para></td>
<td><para style="terp_tblheader_Details_Right">Debit([[ company.currency_id.code]])</para></td>
<td><para style="terp_tblheader_Details_Right">Credit([[ company.currency_id.code]])</para></td>
<td><para style="terp_tblheader_Details_Right">Balance([[ company.currency_id.code]])</para></td>
</tr>
<tr>
<td><para style="terp_default_Bold_9">Total:</para></td>
<td><para style="terp_default_Bold_9">Total:([[ company.currency_id.code]])</para></td>
<td><para style="terp_default_Bold_9"><font color="white"> </font></para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang(sum_debit()) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit()) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_debit()- sum_credit()) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang(sum_debit()) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit()) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_debit()- sum_credit()) ]] [[ company.currency_id.symbol ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="100.0,100.0,73.0,80.0,80.0,80.0" style="Table_Journal_Title" repeatRows="1">[[ display_currency(data) or removeParentNode('blockTable') ]]
@@ -290,11 +290,11 @@
<td><para style="terp_tblheader_Details_Right">Currency</para></td>
</tr>
<tr>
<td><para style="terp_default_Bold_9">Total:</para></td>
<td><para style="terp_default_Bold_9">Total:([[ company.currency_id.code]])</para></td>
<td><para style="terp_default_Bold_9"><font color="white"> </font></para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang(sum_debit()) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit()) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit()- sum_debit()) ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang(sum_debit()) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit()) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Bold_9_Right">[[ formatLang( sum_credit()- sum_debit()) ]] [[ company.currency_id.symbol ]]</para></td>
</tr>
</blockTable>
@@ -309,13 +309,13 @@
</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_debit_period(o.id)) ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_debit_period(o.id)) ]] [[ company.currency_id.symbol ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)) ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)) ]] [[ company.currency_id.symbol ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)-sum_debit_period(o.id)) ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)-sum_debit_period(o.id)) ]] [[ company.currency_id.symbol ]]</para>
</td>
<td>
@@ -335,13 +335,13 @@
</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_debit_period(o.id)) ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_debit_period(o.id)) ]] [[ company.currency_id.symbol ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)) ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)) ]] [[ company.currency_id.symbol ]]</para>
</td>
<td>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)-sum_debit_period(o.id)) ]]</para>
<para style="terp_default_Bold_9_Right">[[ formatLang(sum_credit_period(o.id)-sum_debit_period(o.id)) ]] [[ company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
@@ -356,13 +356,13 @@
<para style="terp_default_9">[[ line['name'] ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(line['debit'] )]]</para>
<para style="terp_default_Right_9">[[ formatLang(line['debit'] )]] [[ company.currency_id.symbol ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(line['credit']) ]]</para>
<para style="terp_default_Right_9">[[ formatLang(line['credit']) ]] [[ company.currency_id.symbol ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit'] ) ]]</para>
<para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit'] ) ]] [[ company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
@@ -373,9 +373,9 @@
<tr>
<td><para style="terp_default_9"><font>[[ repeatIn(lines(o.id),'line')]]</font> [[ line['code'] ]]</para></td>
<td><para style="terp_default_9">[[ line['name'] ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['debit'] )]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']) ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit'] ) ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['debit'] )]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Right_9">[[ formatLang(line['credit']-line['debit'] ) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="terp_default_Right_9">[[ line['currency_id'] and formatLang(line['amount_currency'] ) ]] [[ line['currency_code'] or '' ]]</para></td>
</tr>
</blockTable>
@@ -240,6 +240,6 @@ class general_ledger(rml_parse.rml_parse, common_report_header):
return 'Date'
report_sxw.report_sxw('report.account.general.ledger', 'account.account', 'addons/account/report/account_general_ledger.rml', parser=general_ledger, header='internal')
report_sxw.report_sxw('report.account.general.ledger_landscape', 'account.account', 'addons/account/report/account_general_ledger_landscape.rml', parser=general_ledger, header='internal')
report_sxw.report_sxw('report.account.general.ledger_landscape', 'account.account', 'addons/account/report/account_general_ledger_landscape.rml', parser=general_ledger, header='internal landscape')
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="General Ledger" author="OpenERP" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="General Ledger" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
<pageGraphics>
@@ -146,7 +146,7 @@
<paraStyle name="P3" fontName="Helvetica" fontSize="8.3" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P3_centre" fontName="Helvetica" fontSize="8.3" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P3_content" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P4" fontName="Helvetica" fontSize="8.3" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P4" fontName="Helvetica" fontSize="8.3" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="P4_content" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P5" fontName="Helvetica" fontSize="10.0" leading="13" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P6" fontName="Helvetica" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
@@ -212,8 +212,8 @@
<td><para style="terp_tblheader_Details_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[get_end_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="50.0,50.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
@@ -246,9 +246,9 @@
<td><para style="P3">Ref</para></td>
<td><para style="P3">Move</para></td>
<td><para style="P3">Entry Label</para></td>
<td><para style="P4">Debit</para></td>
<td><para style="P4">Crebit</para></td>
<td><para style="P9">Balance</para></td>
<td><para style="P4">Debit([[ company.currency_id.code]])</para></td>
<td><para style="P4">Crebit([[ company.currency_id.code]])</para></td>
<td><para style="P9">Balance([[ company.currency_id.code]])</para></td>
</tr>
</blockTable>
<section>
@@ -260,9 +260,9 @@
<tr>
<td><para style="Standard">[[ o.code or '']] [[ o.name or '']]</para></td>
<td><para style="Standard"></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_debit_account(o, data['form'])) ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_credit_account(o, data['form'])) ]]</u></para></td>
<td><para style="P9b"><u>[[formatLang(sum_balance_account(o, data['form'])) ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_debit_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_credit_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P9b"><u>[[formatLang(sum_balance_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
</tr>
</blockTable>
</td>
@@ -280,9 +280,9 @@
<td><para style="P3">[[ line['lref'] or '']]</para></td>
<td><para style="P3">[[ line['move'] or '']]</para></td>
<td><para style="P3">[[ line['lname'] or '' ]]</para></td>
<td><para style="P4">[[ formatLang(line['debit']) ]]</para></td>
<td><para style="P4">[[ formatLang(line['credit']) ]]</para></td>
<td><para style="P4">[[ formatLang(line['progress']) ]]</para></td>
<td><para style="P4">[[ formatLang(line['debit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4">[[ formatLang(line['credit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4">[[ formatLang(line['progress']) ]] [[ company.currency_id.symbol ]]</para></td>
</tr>
</blockTable>
</section>
@@ -296,9 +296,9 @@
<td><para style="P3">Ref</para></td>
<td><para style="P3">Move</para></td>
<td><para style="P3">Entry Label</para></td>
<td><para style="P4">Debit</para></td>
<td><para style="P4">Crebit</para></td>
<td><para style="P4">Balance</para></td>
<td><para style="P4">Debit([[ company.currency_id.code]])</para></td>
<td><para style="P4">Credit([[ company.currency_id.code]])</para></td>
<td><para style="P4">Balance([[ company.currency_id.code]])</para></td>
<td><para style="P4">Currency</para></td>
</tr>
</blockTable>
@@ -311,9 +311,9 @@
<tr>
<td><para style="Standard">[[ o.code or '' ]] [[ o.name or '' ]]</para></td>
<td><para style="Standard"></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_debit_account(o, data['form'])) ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_credit_account(o, data['form'])) ]]</u></para></td>
<td><para style="P9b"><u>[[formatLang(sum_balance_account(o, data['form'])) ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_debit_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_credit_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P9b"><u>[[formatLang(sum_balance_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P9b"><u>[[ o.currency_id and sum_currency_amount_account(o, data['form']) +o.currency_id.code or '' ]]</u></para></td>
</tr>
</blockTable>
@@ -333,9 +333,9 @@
<td><para style="P3">[[ line['lref'] or '']]</para></td>
<td><para style="P3">[[ line['move'] or '' ]]</para></td>
<td><para style="P3">[[ line['lname'] or '' ]]</para></td>
<td><para style="P4">[[ formatLang(line['debit']) ]]</para></td>
<td><para style="P4">[[ formatLang(line['credit']) ]]</para></td>
<td><para style="P4">[[ formatLang(line['progress']) ]]</para></td>
<td><para style="P4">[[ formatLang(line['debit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4">[[ formatLang(line['credit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4">[[ formatLang(line['progress']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4">[[ formatLang(line['amount_currency'] or '') ]] [[ line['currency_code'] or '']]</para></td>
</tr>
</blockTable>
@@ -1,10 +1,10 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(1120.5,767.8)" title="General Ledger" author="Openerp" allowSplitting="20" >
<template pageSize="(1120.5,767.8)" title="General Ledger" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20" >
<pageTemplate id="first">
<frame id="first" x1="22.0" y1="31.0" width="1080" height="680"/>
<pageGraphics>
</pageGraphics>
</pageTemplate>
</template>
@@ -128,12 +128,12 @@
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<blockTableStyle id="Table3">
<blockAlignment value="LEFT"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
</blockTableStyle>
</blockTableStyle>
<blockTableStyle id="Table_Company_Name">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -142,12 +142,12 @@
<paraStyle name="all" alignment="justify"/>
</initialize>
<paraStyle name="P1" fontName="Helvetica" fontSize="20.0" leading="25" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P2" fontName="Helvetica" fontSize="8.3" leading="10" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="date" fontName="Helvetica" fontSize="8.3" leading="10" spaceBefore="0.0" spaceAfter="6.0" alignment="CENTER"/>
<paraStyle name="P2" fontName="Helvetica-Bold" fontSize="9.0" leading="10" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="date" fontName="Helvetica-Bold" fontSize="9.0" leading="10" spaceBefore="0.0" spaceAfter="6.0" alignment="CENTER"/>
<paraStyle name="P2_content" fontName="Helvetica" fontSize="8.0" leading="10" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P3" fontName="Helvetica" fontSize="8.3" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P3" fontName="Helvetica-Bold" fontSize="9.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P3_content" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P4" fontName="Helvetica" fontSize="8.3" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P4" fontName="Helvetica-Bold" fontSize="9.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P4_content" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P5" fontName="Helvetica" fontSize="10.0" leading="13" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P6" fontName="Helvetica" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
@@ -160,7 +160,7 @@
<paraStyle name="terp_default_Centre_8a" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_tblheader_General_Centre" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="P11" fontName="Helvetica" fontSize="11.0" leading="14"/>
<paraStyle name="P12" fontName="Helvetica" fontSize="14.0" leading="17"/>
<paraStyle name="P12" fontName="Helvetica-Bold" fontSize="9.0" leading="0"/>
<paraStyle name="P13" fontName="Helvetica-Bold" fontSize="10.0" leading="8" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P14" fontName="Helvetica" fontSize="8.0" leading="10" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P15" fontName="Helvetica-Bold" spaceBefore="0.0" spaceAfter="6.0"/>
@@ -194,19 +194,16 @@
</para>
<para>[[ repeatIn(objects, 'a') ]]</para>
<para style="terp_default_8">
<font color="white"> </font>
</para>
<para style="terp_default_8">
<font color="white"> </font>
</para>
<blockTable colWidths="200.0,130.0,200.0,150.0,150.0,100.0,110.0" style="Table2">
<tr>
<td><para style="terp_tblheader_General_Centre">[[ data['model']=='account.account' and 'Company' or removeParentNode('para') ]]</para>
<para style="terp_tblheader_General_Centre"> [[ data['model']=='ir.ui.menu' and 'Chart of Account' or removeParentNode('para') ]]</para></td>
<td><para style="terp_tblheader_General_Centre">[[ data['model']=='account.account' and 'Company' or removeParentNode('para') ]]</para>
<para style="terp_tblheader_General_Centre"> [[ data['model']=='ir.ui.menu' and 'Chart of Account' or removeParentNode('para') ]]</para></td>
<td><para style="terp_tblheader_General_Centre">Fiscal Year</para></td>
<td><para style="terp_tblheader_General_Centre">Journals</para></td>
<td><para style="terp_tblheader_General_Centre">Display Account</para></td>
<td><para style="terp_tblheader_General_Centre">Display Account</para></td>
<td><para style="terp_tblheader_General_Centre">Filter By [[ get_filter(data)!='No Filter' and get_filter(data) ]]</para></td>
<td><para style="terp_tblheader_General_Centre">Entries Sorted By</para></td>
<td><para style="terp_tblheader_General_Centre">Printing Date</para></td>
@@ -216,28 +213,28 @@
<td><para style="terp_default_Centre_8">[[ get_fiscalyear(data) or '' ]]</para></td>
<td> <para style="terp_default_Centre_8">[[', '.join([ lt or '' for lt in get_journal(data) ]) ]] </para></td>
<td><para style="terp_default_Centre_8">[[ (data['form']['display_account']=='bal_all' and 'All') or (data['form']['display_account']=='bal_movement' and 'With movements') or 'With balance is not equal to 0']]</para></td>
<td><para style="terp_default_Centre_8">[[ get_filter(data)=='No Filter' and get_filter(data) or removeParentNode('para') ]] </para>
<blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Date' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_General_Centre">Start Date</para></td>
<td><para style="terp_tblheader_General_Centre">End Date</para></td>
</tr>
<td><para style="terp_tblheader_General_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[get_end_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_General_Centre">Start Period</para></td>
<td><para style="terp_tblheader_General_Centre">End Period</para></td>
</tr>
<td><para style="terp_tblheader_General_Centre">End Period</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_period(data) or removeParentNode('para') ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_period(data) or removeParentNode('para') ]]</para></td>
</tr>
</blockTable>
</blockTable>
</td>
<td><para style="terp_default_Centre_8">[[ get_sortby(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(time.strftime('%Y-%m-%d %H:%M:%S'), date_time = True) ]] </para></td>
@@ -246,9 +243,6 @@
<para style="terp_default_8">
<font color="white"> </font>
</para>
<para style="terp_default_8">
<font color="white"> </font>
</para>
<para style="terp_default_8">
<font color="white"> </font>
</para>
@@ -256,16 +250,16 @@
<blockTable colWidths="66.0,35.0,150.0, 90.0,60.0,330.0,50.0,69.0,72.0,64.0,58.0" style="tbl_header" repeatRows="1">[[data['form']['amount_currency'] == True or removeParentNode('blockTable')]]
<tr>
<td><para style="date">Date</para></td>
<td><para style="P12"></para><para style="P2">JNRL</para></td>
<td><para style="P12"></para><para style="P2">Partner</para></td>
<td><para style="P12"></para><para style="P2">Ref</para></td>
<td><para style="P12"></para><para style="P2">Move</para></td>
<td><para style="P12"></para><para style="P3">Entry Label</para></td>
<td><para style="P12"></para><para style="P3">Counterpart</para></td>
<td><para style="P12"></para><para style="P4">Debit</para></td>
<td><para style="P12"></para><para style="P4">Credit</para></td>
<td><para style="P12"></para><para style="P4">Balance</para></td>
<td><para style="P12"></para><para style="P4">Currency</para></td>
<td><para style="P2">JNRL</para></td>
<td><para style="P2">Partner</para></td>
<td><para style="P2">Ref</para></td>
<td><para style="P2">Move</para></td>
<td><para style="P3">Entry Label</para></td>
<td><para style="P3">Counterpart</para></td>
<td><para style="P4">Debit([[ company.currency_id.code]])</para></td>
<td><para style="P4">Credit([[ company.currency_id.code]])</para></td>
<td><para style="P4">Balance([[ company.currency_id.code]])</para></td>
<td><para style="P4">Currency</para></td>
</tr>
</blockTable>
<section>
@@ -279,10 +273,10 @@
<tr>
<td><para style="Standard">[[ o.code ]] [[ o.name ]]</para></td>
<td><para style="Standard"></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_debit_account(o, data['form'])) ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_credit_account(o, data['form'])) ]]</u></para></td>
<td><para style="P9b"><u>[[formatLang(sum_balance_account(o, data['form'])) ]]</u></para></td>
<td><para style="P9b"><u>[[ o.currency_id and sum_currency_amount_account(o, data['form']) +o.currency_id.code or '' ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_debit_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_credit_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P9b"><u>[[formatLang(sum_balance_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P9b"><u>[[ o.currency_id and sum_currency_amount_account(o, data['form']) +o.currency_id.code or '' ]]</u></para></td>
</tr>
</blockTable>
</td>
@@ -305,9 +299,9 @@
<td><para style="P2_content">[[ line['move'] ]]</para></td>
<td><para style="P3_content">[[ line['lname'] ]]</para></td>
<td><para style="P3_content">[[ strip_name(line['line_corresp'],15) ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['debit']) ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['credit']) ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['progress']) ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['debit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['credit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['progress']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['amount_currency'] or '')]] [[ line['currency_code'] or '' ]]</para></td>
</tr>
</blockTable>
@@ -316,16 +310,16 @@
<blockTable colWidths="66.0,35.0,166.0,90.0,60.0,378.0,50.0,69.0,72.0,64.0" style="tbl_header" repeatRows="1">[[ data['form']['amount_currency'] == False or removeParentNode('blockTable') ]]
<tr>
<td><para style="P12"><font color="white"> </font></para><para style="P2">JNRL</para></td>
<td><para style="P12"><font color="white"> </font></para><para style="date">Date</para></td>
<td><para style="P12"><font color="white"> </font></para><para style="P2">Partner</para></td>
<td><para style="P12"><font color="white"> </font></para><para style="P2">Ref</para></td>
<td><para style="P12"><font color="white"> </font></para><para style="P2">Move</para></td>
<td><para style="P12"><font color="white"> </font></para><para style="P3">Entry Label</para></td>
<td><para style="P12"><font color="white"> </font></para><para style="P3">Counterpart</para></td>
<td><para style="P12"><font color="white"> </font></para><para style="P4">Debit</para></td>
<td><para style="P12"><font color="white"> </font></para><para style="P4">Credit</para></td>
<td><para style="P12"><font color="white"> </font></para><para style="P4">Balance</para></td>
<td><para style="P2">Date</para></td>
<td><para style="date">JNRL</para></td>
<td><para style="P2">Partner</para></td>
<td><para style="P2">Ref</para></td>
<td><para style="P2">Move</para></td>
<td><para style="P3">Entry Label</para></td>
<td><para style="P3">Counterpart</para></td>
<td><para style="P4">Debit([[ company.currency_id.code]])</para></td>
<td><para style="P4">Credit([[ company.currency_id.code]])</para></td>
<td><para style="P4">Balance([[ company.currency_id.code]])</para></td>
</tr>
</blockTable>
@@ -340,9 +334,9 @@
<tr>
<td><para style="Standard">[[ o.code ]] [[ o.name ]]</para></td>
<td><para style="Standard"></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_debit_account(o, data['form'])) ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_credit_account(o, data['form'])) ]]</u></para></td>
<td><para style="P9b"><u>[[formatLang(sum_balance_account(o, data['form'])) ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_debit_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td alignment="right"><para style="P9b"><u>[[formatLang(sum_credit_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P9b"><u>[[formatLang(sum_balance_account(o, data['form'])) ]] [[ company.currency_id.symbol ]]</u></para></td>
</tr>
</blockTable>
</td>
@@ -365,12 +359,15 @@
<td><para style="P2_content">[[ line['move'] ]]</para></td>
<td><para style="P3_content">[[ line['lname'] ]]</para></td>
<td><para style="P3_content">[[ strip_name(line['line_corresp'],15) ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['debit']) ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['credit']) ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['progress']) ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['debit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['credit']) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P4_content">[[ formatLang(line['progress']) ]] [[ company.currency_id.symbol ]]</para></td>
</tr>
</blockTable>
</section>
<para style="terp_default_8">
<font color="white"> </font>
</para>
</story>
</document>
@@ -48,7 +48,7 @@ class account_invoice_report(osv.osv):
'user_id': fields.many2one('res.users', 'Salesman', readonly=True),
'price_total': fields.float('Total Without Tax', readonly=True),
'price_total_tax': fields.float('Total With Tax', readonly=True),
'price_average': fields.float('Average Price', readonly=True),
'price_average': fields.float('Average Price', readonly=True, group_operator="avg"),
'nbr':fields.integer('# of Lines', readonly=True),
'type': fields.selection([
('out_invoice','Customer Invoice'),
@@ -116,7 +116,15 @@ class account_invoice_report(osv.osv):
else
ai.amount_total
end) as price_total_tax,
sum(ail.quantity*ail.price_unit)/sum(ail.quantity*u.factor)*count(ail.product_id)::decimal(16,2) as price_average,
(case when ai.type in ('out_refund','in_invoice') then
sum(ail.quantity*ail.price_unit*-1)
else
sum(ail.quantity*ail.price_unit)
end)/(case when ai.type in ('out_refund','in_invoice') then
sum(ail.quantity*u.factor*-1)
else
sum(ail.quantity*u.factor)
end) as price_average,
sum((select extract(epoch from avg(date_trunc('day',aml.date_created)-date_trunc('day',l.create_date)))/(24*60*60)::decimal(16,2)
from account_move_line as aml
left join account_invoice as a ON (a.move_id=aml.move_id)
@@ -156,10 +156,9 @@
<menuitem action="action_account_invoice_report_all" id="menu_action_account_invoice_report_all" parent="account.menu_finance_statistic_report_statement" sequence="0"/>
<act_window
domain="[('partner_id', '=', active_id)]"
id="act_account_invoice_partner_relation"
name="Monthly Turnover"
context="{'search_default_month':1,'search_default_user':1,'group_by_no_leaf':1,'group_by':[]}"
context="{'search_default_partner_id':[active_id], 'search_default_month':1,'search_default_user':1,'group_by_no_leaf':1,'group_by':[]}"
res_model="account.invoice.report"
src_model="res.partner"/>
+27 -27
View File
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="print_journal.pdf">
<template pageSize="(595.0,842.0)" title="Print Journal" author="OpenERP" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Journal" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
</pageTemplate>
@@ -189,7 +189,7 @@
<blockTable colWidths="539.0" style="Table_Company_Name">
<tr>
<td>
<para style="terp_header_Centre">Print Journal</para>
<para style="terp_header_Centre">Journal</para>
</td>
</tr>
</blockTable>
@@ -221,8 +221,8 @@
<td><para style="terp_tblheader_Details_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
@@ -246,16 +246,16 @@
<para style="P9">
<font color="white"> </font>
</para>
<blockTable colWidths="40.0,65.0,50.0,62.0,174.0,57.0,61.0,40.0" style="Table1" repeatRows="1">[[ display_currency(data) == False or removeParentNode('blockTable') ]]
<blockTable colWidths="40.0,65.0,50.0,62.0,154.0,58.0,60.0,60.0" style="Table1" repeatRows="1">[[ display_currency(data) == False or removeParentNode('blockTable') ]]
<tr>
<td><para style="P10a">Date</para></td>
<td><para style="P10">Voucher No</para></td>
<td><para style="P10">Entry No</para></td>
<td><para style="P10">A/c No.</para></td>
<td><para style="P10a">Third party</para></td>
<td><para style="P10a">Partner</para></td>
<td><para style="P10a">Entry label</para></td>
<td><para style="P10b">Debit</para></td>
<td><para style="P10b">Credit</para></td>
<td><para style="P10b">Balance</para></td>
<td><para style="P10b">Debit([[ company.currency_id.code]])</para></td>
<td><para style="P10b">Credit([[ company.currency_id.code]])</para></td>
<td><para style="P10b">Balance([[ company.currency_id.code]])</para></td>
</tr>
<tr>
<td><para style="P11">[[o.period_id.name ]]</para></td>
@@ -263,9 +263,9 @@
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P12"><u>[[ formatLang(sum_debit(o.period_id.id, o.journal_id.id)) ]]</u></para></td>
<td><para style="P12"><u>[[ formatLang(sum_credit(o.period_id.id, o.journal_id.id)) ]]</u></para></td>
<td> <para style="P12"><u>[[ formatLang((sum_credit(o.period_id.id, o.journal_id.id) - sum_debit(o.period_id.id, o.journal_id.id))) ]]</u></para></td>
<td><para style="P12"><u>[[ formatLang(sum_debit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P12"><u>[[ formatLang(sum_credit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td> <para style="P12"><u>[[ formatLang((sum_credit(o.period_id.id, o.journal_id.id) - sum_debit(o.period_id.id, o.journal_id.id))) ]] [[ company.currency_id.symbol ]]</u></para></td>
</tr>
<para style="Standard"><font color="white">[[lines(o.period_id.id, o.journal_id.id) or removeParentNode('story') ]]</font></para>
<tr>
@@ -274,9 +274,9 @@
<td><para style="terp_default_Centre_8">[[ line.account_id.code ]]</para></td>
<td><para style="terp_default_8">[[ line.partner_id and line.partner_id.name ]]</para></td>
<td><para style="terp_default_8">[[ line.name ]]</para></td>
<td><para style="P8">[[ formatLang(line.debit) ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit) ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit - line.debit) ]]</para></td>
<td><para style="P8">[[ formatLang(line.debit) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit - line.debit) ]] [[ company.currency_id.symbol ]]</para></td>
</tr>
</blockTable>
@@ -284,13 +284,13 @@
<blockTable colWidths="50.0,65.0,50.0,60.0,89.0,40.0,60.0,50.0,60.0" style="Table1" repeatRows="1">[[ display_currency(data) or removeParentNode('blockTable') ]]
<tr>
<td><para style="P10a">Date</para></td>
<td><para style="P10">Voucher No</para></td>
<td><para style="P10">Entry No</para></td>
<td><para style="P10">A/c No.</para></td>
<td><para style="P10a">Third party</para></td>
<td><para style="P10a">Partner</para></td>
<td><para style="P10a">Entry label</para></td>
<td><para style="P10b">Debit</para></td>
<td><para style="P10b">Credit</para></td>
<td><para style="P10b">Balance</para></td>
<td><para style="P10b">Debit([[ company.currency_id.code]])</para></td>
<td><para style="P10b">Credit([[ company.currency_id.code]])</para></td>
<td><para style="P10b">Balance([[ company.currency_id.code]])</para></td>
<td><para style="P10b">Currency</para></td>
</tr>
<tr>
@@ -299,9 +299,9 @@
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P11"><font color="white"></font></para></td>
<td><para style="P12"><u>[[ formatLang(sum_debit(o.period_id.id, o.journal_id.id)) ]]</u></para></td>
<td><para style="P12"><u>[[ formatLang(sum_credit(o.period_id.id, o.journal_id.id)) ]]</u></para></td>
<td> <para style="P12"><u>[[ formatLang((sum_debit(o.period_id.id, o.journal_id.id) - sum_credit(o.period_id.id, o.journal_id.id))) ]]</u></para></td>
<td><para style="P12"><u>[[ formatLang(sum_debit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P12"><u>[[ formatLang(sum_credit(o.period_id.id, o.journal_id.id)) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td> <para style="P12"><u>[[ formatLang((sum_debit(o.period_id.id, o.journal_id.id) - sum_credit(o.period_id.id, o.journal_id.id))) ]] [[ company.currency_id.symbol ]]</u></para></td>
</tr>
<para style="Standard"><font color="white">[[lines(o.period_id.id, o.journal_id.id) or removeParentNode('story') ]]</font></para>
<tr>
@@ -310,9 +310,9 @@
<td><para style="terp_default_Centre_8">[[ line.account_id.code ]]</para></td>
<td><para style="terp_default_8">[[ line.partner_id and line.partner_id.name ]]</para></td>
<td><para style="terp_default_8">[[ line.name ]]</para></td>
<td><para style="P8">[[ formatLang(line.debit) ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit) ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit - line.debit) ]]</para></td>
<td><para style="P8">[[ formatLang(line.debit) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P8">[[ formatLang(line.credit - line.debit) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P8">[[ line.currency_id and formatLang(line.amount_currency) or '' ]] [[ line.currency_id.code or '']]</para></td>
</tr>
@@ -100,10 +100,11 @@ class partner_balance(report_sxw.rml_parse, common_report_header):
## Compute Code
#
self.initial_balance = data['form'].get('initial_balance', True)
self.display_partner = data['form'].get('display_partner', 'non-zero_balance')
self.query = data['form'].get('query_line', '')
self.init_query = data['form'].get('initial_bal_query', '')
self.result_selection = data['form'].get('result_selection')
if (self.result_selection == 'customer' ):
self.ACCOUNT_TYPE = ('receivable',)
elif (self.result_selection == 'supplier'):
@@ -205,9 +206,12 @@ class partner_balance(report_sxw.rml_parse, common_report_header):
res_init['enlitige'] = 0.0 # fix me
res_init['account_id'] = r['account_id']
final_init[r['account_id']] = res_init
for r in res:
full_account.append(r)
if self.display_partner == 'non-zero_balance':
full_account = [r for r in res if r['sdebit'] > 0 or r['scredit'] > 0]
else:
full_account = [r for r in res]
## We will now compute Total
subtotal_row = self._add_subtotal(full_account)
if not self.initial_balance:
@@ -1,9 +1,8 @@
<?xml version="1.0"?>
<document filename="HipHop.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Partner Balance" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
</pageTemplate>
</template>
<stylesheet>
@@ -152,7 +151,7 @@
<paraStyle name="P10" fontName="Helvetica" alignment="CENTER"/>
<paraStyle name="P11" fontName="Helvetica" fontSize="8.0" leading="10"/>
<paraStyle name="P12" fontName="Helvetica-Bold" fontSize="9.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P12a" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="P12a" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="P12b" fontName="Helvetica-Bold" fontSize="9.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P13" fontName="Helvetica" fontSize="8.0" leading="10" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="P14" rightIndent="17.0" leftIndent="-0.0" fontName="Times-Bold" fontSize="8.0" leading="10" spaceBefore="0.0" spaceAfter="6.0"/>
@@ -210,8 +209,8 @@
<td><para style="terp_tblheader_General_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
@@ -238,24 +237,24 @@
<tr>
<td><para style="P12a">Code</para></td>
<td><para style="P12a">(Account/Partner) Name</para></td>
<td><para style="P12b">Debit</para></td>
<td><para style="P12b">Credit</para></td>
<td><para style="P12b">Balance</para></td>
<td><para style="P12b">In dispute</para></td>
<td><para style="P12b">Debit([[ company.currency_id.code]])</para></td>
<td><para style="P12b">Credi([[ company.currency_id.code]])</para></td>
<td><para style="P12b">Balance([[ company.currency_id.code]])</para></td>
<td><para style="P12b">In dispute([[ company.currency_id.code]])</para></td>
</tr>
<tr>
<td><para style="P7">Grand total</para></td>
<td><para style="P7">Grand total([[ company.currency_id.code]])</para></td>
<td><para style="P8"></para></td>
<td><para style="P8"><u>[[ formatLang(sum_debit()) ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang(sum_credit()) ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang((solde_debit()-solde_credit())) ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang(sum_litige()) ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang(sum_debit()) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang(sum_credit()) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang((solde_debit()-solde_credit())) ]] [[ company.currency_id.symbol ]]</u></para></td>
<td><para style="P8"><u>[[ formatLang(sum_litige()) ]] [[ company.currency_id.symbol ]]</u></para></td>
</tr>
<tr>
<td><para style="P7">Balance</para></td>
<td><para style="P7">Balance([[ company.currency_id.code]])</para></td>
<td><para style="P8"></para></td>
<td><para style="P8">[[ formatLang(solde_debit()) ]]</para></td>
<td><para style="P8">[[ formatLang(solde_credit()) ]]</para></td>
<td><para style="P8">[[ formatLang(solde_debit()) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P8">[[ formatLang(solde_credit()) ]] [[ company.currency_id.symbol ]]</para></td>
<td><para style="P8"></para></td>
<td><para style="P8"></para></td>
</tr>
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Partner Ledger" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="28.0" width="539" height="786"/>
</pageTemplate>
@@ -68,8 +68,8 @@
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<blockTableStyle id="Table3">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -84,7 +84,7 @@
<blockTableStyle id="Table3_header">
<blockAlignment value="LEFT"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
</blockTableStyle>
</blockTableStyle>
<blockTableStyle id="Table4">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -100,9 +100,9 @@
<blockTableStyle id="Table6">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="1,-1"/>
</blockTableStyle>
</blockTableStyle>
<blockTableStyle id="Table5">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -123,7 +123,7 @@
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="5,-1" stop="5,-1"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="7,-1" stop="7,-1"/>
</blockTableStyle>
</blockTableStyle>
<initialize>
<paraStyle name="all" alignment="justify"/>
</initialize>
@@ -174,7 +174,7 @@
<blockTable colWidths="539.0" style="Table_header">
<tr>
<td>
<para style="terp_header_Centre">Third Party Ledger</para>
<para style="terp_header_Centre">Partner Ledger</para>
</td>
<tr>
<td>
@@ -193,34 +193,34 @@
</para>
<para style="P4">
<font color="white"> </font>
</para>
</para>
<para style="P4">
<font color="white"> </font>
</para>
<para style="P4">
<font color="white"> </font>
</para>
<para style="P4">
<font color="white"> </font>
</para>
</para>
<para style="P4">
<font color="white"> </font>
</para>
<para style="P4">
<font color="white"> </font>
</para>
</para>
<para style="P4">
<font color="white"> </font>
</para>
<para style="P4">
<font color="white"> </font>
</para>
</para>
<para style="P4">
<font color="white"> </font>
</para>
<para style="P4">
<font color="white"> </font>
</para>
<para style="P3">[[ repeatIn(objects, 'p') ]] [[ setLang(p.lang) ]]</para>
<blockTable colWidths="80.0,80.0,80.0,130.0,70.0,80.0" style="Table2_header">
<tr>
<td><para style="terp_tblheader_General_Centre">Chart of Account </para></td>
<td><para style="terp_tblheader_General_Centre">Fiscal Year</para></td>
<td><para style="terp_tblheader_General_Centre">Journal</para></td>
<td><para style="terp_tblheader_General_Centre">Journal</para></td>
<td><para style="terp_tblheader_General_Centre">Filter By [[ get_filter(data)!='No Filter' and get_filter(data) ]]</para></td>
<td><para style="terp_tblheader_General_Centre">Partner's</para></td>
<td><para style="terp_tblheader_General_Centre">Printing Date</para></td>
@@ -233,28 +233,28 @@
<blockTable colWidths="60.0,60.0" style="Table3_header">[[ get_filter(data)=='Date' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_General_Centre">Start Date</para></td>
<td><para style="terp_tblheader_General_Centre">End Date</para></td>
</tr>
<td><para style="terp_tblheader_General_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="65.0,65.0" style="Table3_header">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_General_Centre">Start Period</para></td>
<td><para style="terp_tblheader_General_Centre">End Period</para></td>
</tr>
<td><para style="terp_tblheader_General_Centre">End Period</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_period(data) or removeParentNode('para') ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_period(data) or removeParentNode('para') ]]</para></td>
</tr>
</blockTable>
</blockTable>
</td>
<td><para style="terp_default_Centre_8">[[ get_partners() ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_partners() ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(time.strftime('%Y-%m-%d %H:%M:%S'), date_time = True) ]] </para></td>
</tr>
</blockTable>
</blockTable>
<para style="P4">
<font color="white"> </font>
</para>
@@ -285,13 +285,13 @@
<para style="terp_tblheader_Details">Entry Label</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Debit</para>
<para style="terp_tblheader_Details_Right">Debit([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Credit</para>
<para style="terp_tblheader_Details_Right">Credit([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Balance</para>
<para style="terp_tblheader_Details_Right">Balance([[ get_currency(data) ]])</para>
</td>
</tr>
</blockTable>
@@ -397,16 +397,16 @@
<para style="terp_tblheader_Details">Entry Label</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Debit</para>
<para style="terp_tblheader_Details_Right">Debit([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Credit</para>
<para style="terp_tblheader_Details_Right">Credit([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Balance</para>
<para style="terp_tblheader_Details_Right">Balance ([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Currency</para>
<para style="terp_tblheader_Details_Right">Currency ([[ get_currency(data) ]])</para>
</td>
</tr>
</blockTable>
@@ -435,7 +435,7 @@
<font color="white"> </font>
</para>
<blockTable colWidths="276.0,67.0,66.0,65.0,65.0" style="Table6">[[ display_currency(data) == True or removeParentNode('blockTable') ]]
<tr>
<td>
<para style="P2">[[ p.ref ]] - [[ p.name ]]</para>
@@ -448,7 +448,7 @@
</td>
<td>
<para style="P5">[[ formatLang((sum_debit_partner(p) - sum_credit_partner(p))) ]]</para>
</td>
</td>
<td>
<para style="P5">
<font color="white"> </font>
@@ -470,7 +470,7 @@
</td>
<td>
<para style="P5"></para>
</td>
</td>
</tr>
</blockTable>
<para style="terp_default_2">
@@ -510,9 +510,9 @@
<font color="white"> </font>
</para>
</section>
<para style="terp_default_9">
<font color="white"> </font>
</para>
</story>
</document>
</document>
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Partner Ledger" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="28.0" width="539" height="786"/>
</pageTemplate>
@@ -180,7 +180,7 @@
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<blockTableStyle id="Table9">
@@ -196,7 +196,7 @@
<blockTableStyle id="Table_header">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
</blockTableStyle>
</blockTableStyle>
<blockTableStyle id="Table_header_1">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -320,7 +320,7 @@
<paraStyle name="Table index 1" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica"/>
<paraStyle name="Table" fontName="Helvetica" fontSize="10.0" leading="13" spaceBefore="6.0" spaceAfter="6.0"/>
<paraStyle name="Table index heading" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica-Bold" fontSize="16.0" leading="20" spaceBefore="12.0" spaceAfter="6.0"/>
<paraStyle name="terp_default_Right_1" fontName="Helvetica" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<paraStyle name="terp_default_Right_1" fontName="Helvetica" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
<images/>
</stylesheet>
<story>
@@ -333,7 +333,7 @@
<blockTable colWidths="539.0" style="Table_header">
<tr>
<td>
<para style="terp_header_Centre">Third Party Ledger</para>
<para style="terp_header_Centre">Partner Ledger</para>
</td>
<tr>
<td>
@@ -391,10 +391,10 @@
</tr>
<tr>
<td>
<para style="terp_default_Centre_8">[[ get_start_date(data) ]]</para>
<para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para>
</td>
<td>
<para style="terp_default_Centre_8">[[ get_end_date(data) ]]</para>
<para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para>
</td>
</tr>
</blockTable>
@@ -446,13 +446,13 @@
<para style="terp_tblheader_Details">Entry Label</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Debit</para>
<para style="terp_tblheader_Details_Right">Debit([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Credit</para>
<para style="terp_tblheader_Details_Right">Credit([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Balance</para>
<para style="terp_tblheader_Details_Right">Balance([[ get_currency(data) ]])</para>
</td>
</tr>
</blockTable>
@@ -472,11 +472,11 @@
</td>
</tr>
</blockTable>
<section>
<para style="P3">[[ repeatIn(objects, 'p') ]] [[ setLang(p.lang) ]]</para>
<blockTable colWidths="314.0,77.0,75.0,74.0" style="Table2">[[ display_currency(data) == False or removeParentNode('blockTable') ]]
<tr>
<td>
<para style="P2">[[ p.ref ]] - [[ p.name ]]</para>
@@ -535,7 +535,7 @@
</blockTable>
</section>
</section>
<blockTable colWidths="57.0,25.0,40.0,154.0,67.0,66.0,65.0,65.0" style="Table4">[[ display_currency(data) == True or removeParentNode('blockTable') ]]
<blockTable colWidths="57.0,25.0,40.0,154.0,67.0,66.0,65.0,65.0" style="Table4">[[ display_currency(data) == True or removeParentNode('blockTable') ]]
<tr>
<td>
<para style="terp_tblheader_Details">Date</para>
@@ -550,21 +550,21 @@
<para style="terp_tblheader_Details">Entry Label</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Debit</para>
<para style="terp_tblheader_Details_Right">Debit([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Credit</para>
<para style="terp_tblheader_Details_Right">Credit([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Balance</para>
<para style="terp_tblheader_Details_Right">Balance([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Currency</para>
<para style="terp_tblheader_Details_Right">Currency ([[ get_currency(data) ]])</para>
</td>
</tr>
</blockTable>
<para style="P4"/>
<blockTable colWidths="276.0,67.0,66.0,65.0,65.0" style="Table5">[[ display_currency(data) == True or removeParentNode('blockTable') ]]
<blockTable colWidths="276.0,67.0,66.0,65.0,65.0" style="Table5">[[ display_currency(data) == True or removeParentNode('blockTable') ]]
<tr>
<td>
<para style="terp_default_Bold_9">Balance Brought Forward</para>
@@ -588,7 +588,7 @@
<section>
<para style="P3">[[ repeatIn(objects, 'p') ]] [[ setLang(p.lang) ]]</para>
<blockTable colWidths="276.0,67.0,66.0,65.0,65.0" style="Table6">[[ display_currency(data) == True or removeParentNode('blockTable') ]]
<tr>
<td>
<para style="P2">[[ p.ref ]] - [[ p.name ]]</para>
@@ -623,8 +623,8 @@
</td>
<td>
<para style="terp_default_Right_9"></para>
</td>
</tr>
</td>
</tr>
</blockTable>
<section>
<para style="P1">[[ repeatIn(lines(p), 'line') ]]</para>
@@ -1,9 +1,8 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(1120.0,770.0)" title="Profit and Loss" author="Openerp" allowSplitting="20" >
<template pageSize="(1120.0,770.0)" title="Profit and Loss" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20" >
<pageTemplate id="first">
<frame id="first" x1="22.0" y1="15.0" width="1080" height="680"/>
</pageTemplate>
</template>
<stylesheet>
@@ -71,7 +70,7 @@
<blockTableStyle id="Table3">
<blockAlignment value="LEFT"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
</blockTableStyle>
</blockTableStyle>
<blockTableStyle id="Table_Net_Profit_Loss">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -142,9 +141,9 @@
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<initialize>
<paraStyle name="all" alignment="justify"/>
</initialize>
@@ -184,33 +183,26 @@
</stylesheet>
<images/>
<story>
<para style="Standard">
<para style="terp_header_Centre">
<font color="white"> </font>
</para>
<blockTable colWidths="539.0" style="Table_Heading">
<tr>
<td>
<para style="terp_header_Centre">[[ get_company(data) ]]</para>
</td>
</tr>
</blockTable>
<blockTable colWidths="539.0" style="Table_Company_Name">
<tr>
<td>
<para style="terp_header_Centre">Profit And Loss Account</para>
<para style="terp_header_Centre">Profit And Loss</para>
</td>
</tr>
</blockTable>
<para style="Standard">
<font color="white"> </font>
</para>
<para style="P2">[[ get_data(data) or removeParentNode('para')]]</para>
<para style="P2">[[ get_data(data) or removeParentNode('para')]]</para>
<blockTable colWidths="250.0,200.0,200.0,200.0,200.0" style="Table2_header">
<tr>
<td><para style="terp_tblheader_General_Centre">Chart of Account </para></td>
<td><para style="terp_tblheader_General_Centre">Fiscal Year</para></td>
<td><para style="terp_tblheader_General_Centre">Filter By [[ get_filter(data)!='No Filter' and get_filter(data) ]]</para></td>
<td><para style="terp_tblheader_General_Centre">Display Account</para></td>
<td><para style="terp_tblheader_General_Centre">Display Account</para></td>
<td><para style="terp_tblheader_General_Centre">Printing Date</para></td>
</tr>
<tr>
@@ -220,25 +212,25 @@
<blockTable colWidths="90.0,90.0" style="Table3">[[ get_filter(data)=='Date' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_General_Centre">Start Date</para></td>
<td><para style="terp_tblheader_General_Centre">End Date</para></td>
</tr>
<td><para style="terp_tblheader_General_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_date(data)]]</para></td>
<td><para style="terp_default_Centre_8">[[get_end_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="90.0,90.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_General_Centre">Start Period</para></td>
<td><para style="terp_tblheader_General_Centre">End Period</para></td>
</tr>
<td><para style="terp_tblheader_General_Centre">End Period</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_period(data) or removeParentNode('para') ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_period(data) or removeParentNode('para') ]]</para></td>
</tr>
</blockTable>
</blockTable>
</td>
<td><para style="terp_default_Centre_8">[[ (data['form']['display_account']=='bal_all' and 'All') or (data['form']['display_account']=='bal_movement' and 'With movements') or 'With balance is not equal to 0']]</para></td>
<td><para style="terp_default_Centre_8">[[ (data['form']['display_account']=='bal_all' and 'All') or (data['form']['display_account']=='bal_movement' and 'With movements') or 'With balance is not equal to 0']]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(time.strftime('%Y-%m-%d %H:%M:%S'), date_time = True) ]] </para></td>
</tr>
</blockTable>
@@ -273,29 +265,29 @@
<td>
<para style="terp_default_9">
<font face="Times-Roman">[[ repeatIn(get_lines(),'a' ) ]] </font>[[ a['code'] ]]<font>[[ a['level']&lt;3 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]</font>
<font face="Times-Roman">[[ repeatIn(get_lines(),'a' ) ]] </font>[[ a['code'] ]]<font>[[ a['level']&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]</font>
</para>
</td>
<td>
<para style="terp_default_9">
<font color="white">[[ '. '*(a['level']-1) ]]</font><font>[[ a['level']&lt;3 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name'] ]]</font>
<font color="white">[[ '. '*(a['level']-1) ]]</font><font>[[ a['level']&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name'] ]]</font>
</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ a['balance'] and formatLang(abs(a['balance'])) or 0.0 ]]</para>
<para style="terp_default_Right_9_Bold">[[ a['balance'] and formatLang(abs(a['balance'])) or 0.0 ]] [[ company.currency_id.symbol ]]</para>
</td>
<td>
<para style="terp_default_9">
[[ a['code1'] ]]<font>[[ a['level1']&lt;3 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]</font>
[[ a['code1'] ]]<font>[[ a['level1']&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]</font>
</para>
</td>
<td>
<para style="terp_default_9">
<font color="white">[[ '. '*(a['level1']-1) ]]</font><font>[[ a['level1']&lt;3 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name1'] ]]</font>
<font color="white">[[ '. '*(a['level1']-1) ]]</font><font>[[ a['level1']&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name1'] ]]</font>
</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ a['balance1'] and formatLang(abs(a['balance1'])) or '' ]]</para>
<para style="terp_default_Right_9_Bold">[[ a['balance1'] and formatLang(abs(a['balance1'])) or 0.0 ]] [[ company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
@@ -308,7 +300,7 @@
<para style="terp_default_Bold_9">[[ final_result()['type'] == 'Net Profit C.F.B.L.' and final_result()['type'] or '' ]]</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Profit C.F.B.L.' and formatLang(abs(final_result()['balance'])) or 0.0 ]]</para>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Profit C.F.B.L.' and formatLang(abs(final_result()['balance'])) or 0.0 ]] [[ company.currency_id.symbol ]]</para>
</td>
<td>
<para style="terp_default_Bold_9"></para>
@@ -317,7 +309,7 @@
<para style="terp_default_Bold_9">[[ final_result()['type'] == 'Net Loss C.F.B.L.' and final_result()['type'] or '' ]]</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Loss C.F.B.L.' and formatLang(abs(final_result()['balance'])) or 0.0 ]]</para>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Loss C.F.B.L.' and formatLang(abs(final_result()['balance'])) or 0.0 ]] [[ company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
@@ -325,16 +317,16 @@
<blockTable colWidths="408.16,116.32,408.16,116.32" style="Table_Net_Profit_Loss">
<tr>
<td>
<para style="terp_default_Bold_9">Total:([[ get_currency(data['form']) ]])</para>
<para style="terp_default_Bold_9">Total:([[ get_currency(data['form']) ]] [[ company.currency_id.code]] )</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ sum_dr() and formatLang(abs(sum_dr())) or 0.0 ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ sum_dr() and formatLang(abs(sum_dr())) or 0.0 ]] [[ company.currency_id.symbol ]]</u></para>
</td>
<td>
<para style="terp_default_Bold_9">Total:([[ get_currency(data['form']) ]])</para>
<para style="terp_default_Bold_9">Total:([[ get_currency(data['form']) ]] [[ company.currency_id.code]])</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ sum_cr() and formatLang(abs(sum_cr())) or 0.0 ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ sum_cr() and formatLang(abs(sum_cr())) or 0.0 ]] [[ company.currency_id.symbol ]]</u></para>
</td>
</tr>
</blockTable>
+2 -2
View File
@@ -170,9 +170,9 @@ class report_pl_account_horizontal(rml_parse.rml_parse, common_report_header):
return self.result.get(group, [])
report_sxw.report_sxw('report.pl.account.horizontal', 'account.account',
'addons/account/report/account_profit_horizontal.rml',parser=report_pl_account_horizontal, header='internal')
'addons/account/report/account_profit_horizontal.rml',parser=report_pl_account_horizontal, header='internal landscape')
report_sxw.report_sxw('report.pl.account', 'account.account',
'addons/account/report/account_profit_loss.rml',parser=report_pl_account_horizontal, header='internal')
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+24 -31
View File
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Profit and Loss" author="Openerp" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Profit and Loss" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="28.0" y1="28.0" width="539" height="786"/>
</pageTemplate>
@@ -42,7 +42,7 @@
<blockTableStyle id="Table3">
<blockAlignment value="LEFT"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
</blockTableStyle>
</blockTableStyle>
<blockTableStyle id="Table6">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
@@ -144,8 +144,8 @@
<lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEAFTER" colorName="#cccccc" start="7,0" stop="7,-1"/>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
</blockTableStyle>
<initialize>
<paraStyle name="all" alignment="justify"/>
</initialize>
@@ -185,20 +185,13 @@
</stylesheet>
<images/>
<story>
<para style="Standard">
<para style="terp_header_Centre">
<font color="white"> </font>
</para>
<blockTable colWidths="539.0" style="Table_Heading">
<tr>
<td>
<para style="terp_header_Centre">[[ get_company(data) ]]</para>
</td>
</tr>
</blockTable>
<blockTable colWidths="539.0" style="Table_Company_Name">
<tr>
<td>
<para style="terp_header_Centre">Profit And Loss Account</para>
<para style="terp_header_Centre">Profit And Loss</para>
</td>
</tr>
</blockTable>
@@ -212,7 +205,7 @@
<td><para style="terp_tblheader_General_Centre">Chart of Account </para></td>
<td><para style="terp_tblheader_General_Centre">Fiscal Year</para></td>
<td><para style="terp_tblheader_General_Centre">Filter By [[ get_filter(data)!='No Filter' and get_filter(data) ]]</para></td>
<td><para style="terp_tblheader_General_Centre">Display Account</para></td>
<td><para style="terp_tblheader_General_Centre">Display Account</para></td>
<td><para style="terp_tblheader_General_Centre">Printing Date</para></td>
</tr>
<tr>
@@ -222,25 +215,25 @@
<blockTable colWidths="60.0,60.0" style="Table3">[[ get_filter(data)=='Date' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_General_Centre">Start Date</para></td>
<td><para style="terp_tblheader_General_Centre">End Date</para></td>
</tr>
<td><para style="terp_tblheader_General_Centre">End Date</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_date(data)]]</para></td>
<td><para style="terp_default_Centre_8">[[get_end_date(data) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_start_date(data),date=True) ]]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(get_end_date(data),date=True) ]]</para></td>
</tr>
</blockTable>
<blockTable colWidths="65.0,60.0" style="Table3">[[ get_filter(data)=='Periods' or removeParentNode('blockTable') ]]
<tr>
<td><para style="terp_tblheader_General_Centre">Start Period</para></td>
<td><para style="terp_tblheader_General_Centre">End Period</para></td>
</tr>
<td><para style="terp_tblheader_General_Centre">End Period</para></td>
</tr>
<tr>
<td><para style="terp_default_Centre_8">[[ get_start_period(data) or removeParentNode('para') ]]</para></td>
<td><para style="terp_default_Centre_8">[[ get_end_period(data) or removeParentNode('para') ]]</para></td>
</tr>
</blockTable>
</blockTable>
</td>
<td><para style="terp_default_Centre_8">[[ (data['form']['display_account']=='bal_all' and 'All') or (data['form']['display_account']=='bal_movement' and 'With movements') or 'With balance is not equal to 0']]</para></td>
<td><para style="terp_default_Centre_8">[[ (data['form']['display_account']=='bal_all' and 'All') or (data['form']['display_account']=='bal_movement' and 'With movements') or 'With balance is not equal to 0']]</para></td>
<td><para style="terp_default_Centre_8">[[ formatLang(time.strftime('%Y-%m-%d %H:%M:%S'), date_time = True) ]] </para></td>
</tr>
</blockTable>
@@ -265,16 +258,16 @@
<tr>
<td>
<para style="terp_default_9">
<font face="Times-Roman">[[ repeatIn(get_lines_another('expense'),'a' ) ]] </font>[[ a.code ]]<font>[[ a.level&lt;3 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]</font>
<font face="Times-Roman">[[ repeatIn(get_lines_another('expense'),'a' ) ]] </font>[[ a.code ]]<font>[[ a.level&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]</font>
</para>
</td>
<td>
<para style="terp_default_9">
<font color="white">[[ '. '*(a.level-1) ]]</font><font>[[ a.level&lt;3 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a.name ]]</font>
<font color="white">[[ '. '*(a.level-1) ]]</font><font>[[ a.level&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a.name ]]</font>
</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ a.balance and formatLang(abs(a.balance)) or 0.0 ]]</para>
<para style="terp_default_Right_9_Bold">[[ a.balance and formatLang(abs(a.balance)) or 0.0 ]] [[ company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
@@ -287,7 +280,7 @@
<para style="terp_default_Bold_9">[[ final_result()['type'] == 'Net Profit C.F.B.L.' and final_result()['type'] or removeParentNode('blockTable') ]]</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Profit C.F.B.L.' and formatLang(abs(final_result()['balance'])) or 0.0 ]]</para>
<para style="terp_default_Right_9_Bold">[[ final_result()['balance'] and final_result()['type'] == 'Net Profit C.F.B.L.' and formatLang(abs(final_result()['balance'])) or 0.0 ]] [[ company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
@@ -297,7 +290,7 @@
<para style="terp_default_Bold_9">Total:([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ sum_dr() and formatLang(abs(sum_dr())) or 0.0 ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ sum_dr() and formatLang(abs(sum_dr())) or 0.0 ]] [[ company.currency_id.symbol ]]</u></para>
</td>
</tr>
</blockTable>
@@ -320,16 +313,16 @@
<tr>
<td>
<para style="terp_default_9">
<font face="Times-Roman">[[ repeatIn(get_lines_another('income'),'a') ]] </font>[[ a.code ]]<font>[[ a.level&lt;3 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]</font>
<font face="Times-Roman">[[ repeatIn(get_lines_another('income'),'a') ]] </font>[[ a.code ]]<font>[[ a.level&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]</font>
</para>
</td>
<td>
<para style="terp_default_9">
<font color="white">[[ '. '*(a.level-1) ]]</font><font>[[ a.level&lt;3 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a.name ]]</font>
<font color="white">[[ '. '*(a.level-1) ]]</font><font>[[ a.level&lt;4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a.name ]]</font>
</para>
</td>
<td>
<para style="terp_default_Right_9_Bold">[[ a.balance and formatLang(abs(a.balance)) or 0.0 ]]</para>
<para style="terp_default_Right_9_Bold">[[ a.balance and formatLang(abs(a.balance)) or 0.0 ]] [[ company.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
@@ -352,7 +345,7 @@
<para style="terp_default_Bold_9">Total:([[ get_currency(data) ]])</para>
</td>
<td>
<para style="terp_default_Right_9_Bold"><u>[[ sum_cr() and formatLang(abs(sum_cr())) or 0.0 ]]</u></para>
<para style="terp_default_Right_9_Bold"><u>[[ sum_cr() and formatLang(abs(sum_cr())) or 0.0 ]] [[ company.currency_id.symbol ]]</u></para>
</td>
</tr>
</blockTable>
+1 -1
View File
@@ -63,6 +63,6 @@ class account_tax_code_report(rml_parse.rml_parse):
.browse(self.cr, self.uid, line_ids))
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)
'addons/account/report/account_tax_code.rml', parser=account_tax_code_report, header="internal")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+9 -9
View File
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Tax Code" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="57.0" y1="57.0" width="481" height="700"/>
<header>
@@ -11,22 +11,22 @@
<!--COL 1-->
<drawString x="1.0cm" y="28.1cm">[[ company.name ]]</drawString>
<drawRightString x="20cm" y="28.1cm">Accounting Entries-[[ company.currency_id.name ]]</drawRightString>
<!-- Header -->
<setFont name="Helvetica" size="9"/>
<drawString x="1.0cm" y="1cm"> [[ formatLang(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()),date_time = True) ]]</drawString>
<drawString x="19.0cm" y="1cm">Page <pageNumber/></drawString>
<!--<drawRightString x="19.8cm" y="28cm">[[ company.rml_header1 ]]</drawRightString>-->
<lineMode width="0.7"/>
<lines>1cm 27.7cm 20cm 27.7cm</lines>
<setFont name="Helvetica" size="8"/>
</pageGraphics>
</header>
</header>
</pageTemplate>
</template>
<stylesheet>
@@ -48,7 +48,7 @@
<lineStyle kind="LINEBELOW" colorName="#000000" start="4,0" stop="4,0"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="5,0" stop="5,0"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="6,0" stop="6,0"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,1" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,1" stop="2,-1"/>
@@ -119,7 +119,7 @@
<para style="terp_tblheader_Details">
<font color="white"></font>
</para>
<para style="terp_tblheader_Details">[[ o.name ]]</para>
<para style="terp_tblheader_Details">[[ o.name ]]</para>
<para style="terp_tblheader_Details">
<font color="white"></font>
</para>
@@ -392,6 +392,6 @@ class account_balance(report_sxw.rml_parse):
def total_cr(self):
return self.cr_total
report_sxw.report_sxw('report.account.balance.account.balance', 'account.account', 'addons/account/report/account_balance.rml', parser=account_balance, header=False)
report_sxw.report_sxw('report.account.balance.account.balance', 'account.account', 'addons/account/report/account_balance.rml', parser=account_balance, header="internal")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Account Balance" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
</pageTemplate>
+19 -87
View File
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Invoice" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="34.0" y1="28.0" width="530" height="786"/>
</pageTemplate>
@@ -61,8 +61,6 @@
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="4,-1" stop="4,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="5,-1" stop="5,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="6,-1" stop="6,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="7,-1" stop="7,-1"/>
</blockTableStyle>
<blockTableStyle id="Table_Format_2">
<blockAlignment value="LEFT"/>
@@ -82,10 +80,8 @@
<lineStyle kind="LINEBELOW" colorName="#ffffff" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="4,0" stop="4,0"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="5,0" stop="5,0"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="6,0" stop="6,0"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="10,0" stop="10,0"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="11,0" stop="11,0"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="12,0" stop="12,0"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="8,0" stop="8,0"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="9,0" stop="9,0"/>
<lineStyle kind="LINEBEFORE" colorName="#ffffff" start="0,1" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#ffffff" start="0,1" stop="0,1"/>
<lineStyle kind="LINEBELOW" colorName="#ffffff" start="0,-1" stop="0,-1"/>
@@ -94,10 +90,8 @@
<lineStyle kind="LINEBELOW" colorName="#ffffff" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="0,2" stop="0,2"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="1,2" stop="1,2"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="2,2" stop="2,2"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="0,4" stop="0,4"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="1,4" stop="1,4"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="2,4" stop="2,4"/>
</blockTableStyle>
<blockTableStyle id="Table_format_Table_Line_total">
<blockAlignment value="LEFT"/>
@@ -114,7 +108,6 @@
<blockValign value="TOP"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="0,0" stop="0,0"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="1,0" stop="1,0"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="2,0" stop="2,0"/>
</blockTableStyle>
<blockTableStyle id="Table_Taxes_Total">
<blockAlignment value="LEFT"/>
@@ -125,33 +118,10 @@
<blockValign value="TOP"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="0,0" stop="0,0"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="1,0" stop="1,0"/>
<lineStyle kind="LINEABOVE" colorName="#000000" start="2,0" stop="2,0"/>
</blockTableStyle>
<blockTableStyle id="Table4">
<blockAlignment value="LEFT"/>
<blockValign value="TOP"/>
<!--lineStyle kind="LINEBEFORE" colorName="#ffffff" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEAFTER" colorName="#ffffff" start="0,0" stop="0,-1"/>
<lineStyle kind="LINEABOVE" colorName="#ffffff" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#ffffff" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#ffffff" start="0,2" stop="0,-1"/>
<lineStyle kind="LINEAFTER" colorName="#ffffff" start="0,2" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#ffffff" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,-1" stop="3,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,-1" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,-1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,-1" stop="2,-1"/>
<lineStyle kind="LINEBEFORE" colorName="#ffffff" start="0,4" stop="0,-1"/>
<lineStyle kind="LINEAFTER" colorName="#ffffff" start="0,4" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#ffffff" start="0,-1" stop="0,-1"/-->
</blockTableStyle>
<blockTableStyle id="Table6">
<blockAlignment value="LEFT"/>
@@ -230,11 +200,10 @@
</td>
<td>
<para style="terp_default_8">[[ o.partner_id.title or '' ]] [[ o.partner_id.name ]]</para>
<para style="terp_default_8">[[ o.address_invoice_id.title or '' ]] [[ o.address_invoice_id.name ]]</para>
<para style="terp_default_8">[[ o.address_invoice_id.street ]]</para>
<para style="terp_default_8">[[ o.address_invoice_id.street2 or '' ]]</para>
<para style="terp_default_8">[[ o.address_invoice_id.street2 or removeParentNode('para') ]]</para>
<para style="terp_default_8">[[ o.address_invoice_id.zip or '' ]] [[ o.address_invoice_id.city or '' ]]</para>
<para style="terp_default_8">[[ o.address_invoice_id.state_id and o.address_invoice_id.state_id.name or '' ]]</para>
<para style="terp_default_8">[[ o.address_invoice_id.state_id and o.address_invoice_id.state_id.name or removeParentNode('para') ]]</para>
<para style="terp_default_8">[[ o.address_invoice_id.country_id and o.address_invoice_id.country_id.name or '' ]]</para>
<para style="terp_default_8">
<font color="white"> </font>
@@ -271,20 +240,20 @@
<blockTable colWidths="177.0,177.0,177.0" style="Table_General_Detail_Content">
<tr>
<td>
<para style="terp_default_Centre_9">[[ o.name ]]</para>
<para style="terp_default_Centre_9">[[ o.name or ' ' ]]</para>
</td>
<td>
<para style="terp_default_Centre_9">[[ formatLang(o.date_invoice,date=True) ]]</para>
</td>
<td>
<para style="terp_default_Centre_9">[[ o.address_invoice_id.partner_id.ref or '' ]]</para>
<para style="terp_default_Centre_9">[[ o.address_invoice_id.partner_id.ref or ' ' ]]</para>
</td>
</tr>
</blockTable>
<para style="terp_default_8">
<font color="white"> </font>
</para>
<blockTable colWidths="211.0,62.0,63.0,63.0,43.0,83.0" style="Table_Header_Invoice_Line">
<blockTable colWidths="211.0,74.0,62.0,59.0,51.0,68.0" style="Table_Header_Invoice_Line">
<tr>
<td>
<para style="terp_tblheader_Details">Description</para>
@@ -308,7 +277,7 @@
</blockTable>
<section>
<para style="terp_default_8">[[ repeatIn(o.invoice_line,'l') ]]</para>
<blockTable colWidths="211.0,62.0,41.0,22.0,63.0,42.0,59.0,23.0" style="Table_Invoice_Line_Content">
<blockTable colWidths="211.0,70.0,60.0,58.0,49.0,74.0" style="Table_Invoice_Line_Content">
<tr>
<td>
<para style="terp_default_9">[[ l.name ]]</para>
@@ -317,10 +286,7 @@
<para style="terp_default_9">[[ ', '.join([ lt.name or '' for lt in l.invoice_line_tax_id ]) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(l.quantity)]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ (l.uos_id and l.uos_id.name) or '' ]]</para>
<para style="terp_default_Right_9">[[ formatLang(l.quantity)]] [[ (l.uos_id and l.uos_id.name) or '' ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(l.price_unit) ]]</para>
@@ -329,10 +295,7 @@
<para style="terp_default_Right_9">[[ formatLang(l.discount) ]] </para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(l.price_subtotal) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ o.currency_id.code ]]</para>
<para style="terp_default_Right_9">[[ formatLang(l.price_subtotal) ]] [[ o.currency_id.symbol ]]</para>
</td>
</tr>
<tr>
@@ -367,16 +330,6 @@
<font color="white"> </font>
</para>
</td>
<td>
<para style="terp_default_Note">
<font color="white"> </font>
</para>
</td>
<td>
<para style="terp_default_Note">
<font color="white"> </font>
</para>
</td>
</tr>
</blockTable>
</section>
@@ -399,48 +352,39 @@
</blockTable>
</td>
<td>
<blockTable colWidths="62.0,62.0,22.0" style="Table_eclu_Taxes_Total">
<blockTable colWidths="62.0,84.0" style="Table_eclu_Taxes_Total">
<tr>
<td>
<para style="terp_default_9">Net Total:</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(o.amount_untaxed) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ o.currency_id.code ]]</para>
<para style="terp_default_Right_9">[[ formatLang(o.amount_untaxed) ]] [[ o.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
<para style="terp_default_2">
<font color="white"> </font>
</para>
<blockTable colWidths="63.0,61.0,23.0" style="Table_Taxes_Total">
<blockTable colWidths="63.0,84.0" style="Table_Taxes_Total">
<tr>
<td>
<para style="terp_default_9">Taxes:</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(o.amount_tax) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ o.currency_id.code ]]</para>
<para style="terp_default_Right_9">[[ formatLang(o.amount_tax) ]] [[ o.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
<para style="terp_default_2">
<font color="white"> </font>
</para>
<blockTable colWidths="63.0,61.0,23.0" style="Table_Total_Include_Taxes">
<blockTable colWidths="63.0,84.0" style="Table_Total_Include_Taxes">
<tr>
<td>
<para style="terp_default_Bold_9">Total:</para>
</td>
<td>
<para style="terp_default_Right_9">[[ formatLang(o.amount_total) ]]</para>
</td>
<td>
<para style="terp_default_Right_9">[[ o.currency_id.code ]]</para>
<para style="terp_default_Bold_Right_9">[[ formatLang(o.amount_total) ]] [[ o.currency_id.symbol ]]</para>
</td>
</tr>
</blockTable>
@@ -463,9 +407,6 @@
</td>
</tr>
</blockTable>
<para style="terp_default_2">
<font color="white"> </font>
</para>
</td>
</tr>
<tr>
@@ -486,13 +427,6 @@
</blockTable>
</td>
</tr>
<tr>
<td>
<para style="terp_default_2">
<font color="white"> </font>
</para>
</td>
</tr>
</blockTable>
<blockTable colWidths="530.0" style="Table3">
<tr>
@@ -518,8 +452,6 @@
</td>
</tr>
</blockTable>
<para style="terp_default_2">
<font color="white"> </font>
</para>
</story>
</document>
</document>
+2 -2
View File
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Overdue" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="42.0" y1="28.0" width="511" height="786"/>
</pageTemplate>
@@ -147,7 +147,7 @@
<para style="terp_tblheader_Details_Centre">Ref</para>
</td>
<td>
<para style="terp_tblheader_Details_Centre">Maturity date</para>
<para style="terp_tblheader_Details_Centre">Due date</para>
</td>
<td>
<para style="terp_tblheader_Details_Right">Due</para>
-10
View File
@@ -150,13 +150,3 @@ class rml_parse(report_sxw.rml_parse):
else:
return Stringer
def _add_header(self, node, header=1):
if header==2:
rml_head = self.rml_header2
else:
rml_head = self.rml_header
rml_head = rml_head.replace('<pageGraphics>','''<pageGraphics> <image x="10" y="26cm" height="770.0" width="1120.0" >[[company.logo]] </image> ''')
return True
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+1 -1
View File
@@ -217,6 +217,6 @@ class tax_report(rml_parse.rml_parse):
report_sxw.report_sxw('report.account.vat.declaration', 'account.tax.code',
'addons/account/report/tax_report.rml', parser=tax_report, header=True)
'addons/account/report/tax_report.rml', parser=tax_report, header="internal")
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+18 -18
View File
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Taxes" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="42.0" y1="62.0" width="511" height="728"/>
<pageGraphics>
@@ -17,19 +17,19 @@
<!--COL 1-->
<drawString x="1.0cm" y="28.1cm">[[ company.name ]]</drawString>
<drawRightString x="20cm" y="28.1cm">Tax Report</drawRightString>
<setFont name="Helvetica" size="9"/>
<drawString x="1.0cm" y="1cm"> [[ formatLang(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()),date_time = True) ]]</drawString>
<drawString x="19.0cm" y="1cm">Page <pageNumber/></drawString>
<!--<drawRightString x="19.8cm" y="28cm">[[ company.rml_header1 ]]</drawRightString>-->
<lineMode width="0.7"/>
<lines>1cm 27.7cm 20cm 27.7cm</lines>
<setFont name="Helvetica" size="8"/>
</pageGraphics>
</pageTemplate>
</template>
<stylesheet>
@@ -47,19 +47,19 @@
<blockBackground colorName="#e6e6e6" start="1,1" stop="1,1"/>
<blockBackground colorName="#e6e6e6" start="2,1" stop="2,1"/>
</blockTableStyle>
<blockTableStyle id="Table2">
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="0,0"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="1,0" stop="1,0"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="2,0" stop="2,0"/>
<lineStyle kind="LINEBELOW" colorName="#000000" start="3,0" stop="3,0"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,1" stop="0,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="1,1" stop="1,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="2,1" stop="2,-1"/>
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="3,1" stop="3,-1"/>
<blockValign value="TOP"/>
<blockAlignment value="RIGHT" start="2,1" stop="-1,-1"/>
</blockTableStyle>
@@ -101,28 +101,28 @@
<paraStyle name="Table Heading" fontName="Helvetica" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
<paraStyle name="Caption" fontName="Helvetica" fontSize="1.0" leading="1" spaceBefore="0" spaceAfter="0"/>
<paraStyle name="Index" fontName="Helvetica"/>
<blockTableStyle id="TrLevel">
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
</blockTableStyle>
<paraStyle name="Level"
fontSize="8.0"
fontName="Helvetica-Bold"
fontName="Helvetica-Bold"
/>
</stylesheet>
<story>
<para style="P2"><font color="white"> </font></para>
<blockTable colWidths="347.0,64.0,59.0,71.0" style="Table2" repeatRows="1">
<tr>
<td><para style="P12">Tax Name</para></td>
<td><para style="P12a">Debit</para></td>
<td><para style="P12a">Credit</para></td>
<td><para style="P12a">Tax Amount</para></td>
<td><para style="P12a">Debit([[ company.currency_id.code]])</para></td>
<td><para style="P12a">Credit([[ company.currency_id.code]])</para></td>
<td><para style="P12a">Tax Amount([[ company.currency_id.code]])</para></td>
</tr>
<tr>
<td><para style="P5"><font>[[ repeatIn(get_lines(data['form']['based_on'],data['form']['periods'],data['form']['company_id']), 'o') ]]</font><font color="white">[[ (o['level']) ]]</font> <font>[[o['type']==1 and ( setTag('para','para',{'fontName':'Helvetica-Bold'}))]]</font><font>[[ o['code'] ]] [[ o['name'] ]]</font></para></td>
+1 -1
View File
@@ -58,5 +58,5 @@ report_sxw.report_sxw(
'report.account.move.voucher',
'account.move',
'addons/account/report/voucher_print.rml',
parser=report_voucher_move,header=False
parser=report_voucher_move,header="external"
)
+3 -10
View File
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<document filename="test.pdf">
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
<template pageSize="(595.0,842.0)" title="Voucher" author="OpenERP S.A. (sales@openerp.com)" allowSplitting="20">
<pageTemplate id="first">
<frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
</pageTemplate>
@@ -142,16 +142,9 @@
<para style="P7">
<font color="white"> </font>
</para>
<para style="P21">Cash Receipt Voucher [[ (voucher.type == 'rec_voucher' or removeParentNode('para')) and '' ]]</para>
<para style="P2">Cash Payment Voucher [[ (voucher.type == 'pay_voucher' or removeParentNode('para')) and '' ]]</para>
<para style="P21">Bank Receipt Voucher [[ (voucher.type == 'bank_rec_voucher' or removeParentNode('para')) and '' ]]</para>
<para style="P2">Bank Payment Voucher [[ (voucher.type == 'bank_pay_voucher' or removeParentNode('para')) and '' ]]</para>
<para style="P2">Contra Voucher [[ (voucher.type == 'cont_voucher' or removeParentNode('para')) and '' ]]</para>
<para style="P2">Journal Sale Voucher [[ (voucher.type == 'journal_sale_vou' or removeParentNode('para')) and '' ]]</para>
<para style="P2">Journal Purchase Voucher [[ (voucher.type == 'journal_pur_voucher' or removeParentNode('para')) and '' ]]</para>
<para style="P2">Journal Voucher [[ (voucher.type == 'journal_voucher' or removeParentNode('para')) and '' ]]</para>
<para style="P21">[[ voucher.journal_id.name ]]</para>
<para style="P20">
<font color="white"> </font>
<font color="white"> </font>
</para>
<blockTable colWidths="49.0,143.0,116.0,69.0,106.0" style="Table1">
<tr>
@@ -37,7 +37,7 @@
-
!python {model: account.invoice}: |
acc_id=self.browse(cr, uid, ref("account_invoice_customer0"))
assert acc_id.move_id, "Move not created"
assert (not acc_id.move_id), "Move falsely created at pro-forma"
-
I create invoice by clicking on Create button
-
@@ -47,90 +47,20 @@
-
!assert {model: account.invoice, id: account_invoice_customer0}:
- state == 'open'
-
I check that now there is a move attached to the invoice
-
!python {model: account.invoice}: |
acc_id=self.browse(cr, uid, ref("account_invoice_customer0"))
assert acc_id.move_id, "Move created"
assert acc_id.move_id, "Move not created for open invoice"
-
I create a record for partial payment of 1000 EUR.
-
!record {model: account.invoice.pay, id: account_invoice_pay_first0}:
amount: 1000.0
date: '2010-05-26'
journal_id: account.sales_journal
name: First payment for [PC3] Medium PC to Distrib PC
period_id: account.period_5
-
I make partial payment by clicking on Partial Payment button
-
!python {model: account.invoice.pay}: |
self.pay_and_reconcile(cr, uid, [ref("account_invoice_pay_first0")], {"lang":
'en_US', "active_model": "account.invoice", "tz": False, "record_id": 3, "active_ids":
[ref("account_invoice_customer0")], "type": "out_invoice", "active_id": ref("account_invoice_customer0"),
})
-
I check that the invoice state is still open
-
!assert {model: account.invoice, id: account_invoice_customer0}:
- state == 'open'
-
I make second partial payment of 6000 EUR.
-
!record {model: account.invoice.pay, id: account_invoice_pay_second0}:
amount: 6000.0
date: '2010-05-28'
journal_id: account.sales_journal
name: Second payment for [PC3] Medium PC to Distrib PC
period_id: account.period_5
-
I make partial payment by clicking on Partial Payment button
-
!python {model: account.invoice.pay}: |
self.pay_and_reconcile(cr, uid, [ref("account_invoice_pay_second0")], {"lang":
'en_US', "active_model": "account.invoice", "tz": False, "record_id": 3, "active_ids":
[ref("account_invoice_customer0")], "type": "out_invoice", "active_id": ref("account_invoice_customer0"),
})
-
I make final partial payment of 2000 EUR
-
!record {model: account.invoice.pay, id: account_invoice_pay_final0}:
amount: 2000.0
date: '2010-05-30'
journal_id: account.sales_journal
name: Final payment for [PC3] Medium PC to Distrib PC
period_id: account.period_5
-
I make partial payment by clicking on Partial Payment button
-
!python {model: account.invoice.pay}: |
self.pay_and_reconcile(cr, uid, [ref("account_invoice_pay_final0")], {"lang":
'en_US', "active_model": "account.invoice", "tz": False, "record_id": 3, "active_ids":
[ref("account_invoice_customer0")], "type": "out_invoice", "active_id": ref("account_invoice_customer0"),
})
-
I check that the invoice state is now Done
-
!assert {model: account.invoice, id: account_invoice_customer0}:
- state == 'paid'
-
I check that an payment entry gets created in the account.move.line
-
!python {model: account.invoice}: |
acc_id=self.browse(cr, uid, ref("account_invoice_customer0"))
assert(acc_id.move_id)
-
I refund the invoice Using Credit Note
I refund the invoice Using Refund Button
-
!record {model: account.invoice.refund, id: account_invoice_refund_0}:
description: Refund To China Export
period: account.period_5
filter_refund: refund
-
I clicked on refund button
-
@@ -32,55 +32,4 @@
I check that the invoice state is now "Open"
-
!assert {model: account.invoice, id: account_invoice_supplier0}:
- state == 'open'
-
I make a partial payment of 2000 EUR
-
!record {model: account.invoice.pay, id: account_invoice_pay_firstpaymenttoaxelorforbasicpc0}:
amount: 2000.0
date: '2010-05-29'
journal_id: account.sales_journal
name: First Payment to Axelor for Basic PC
period_id: account.period_5
-
I make partial payment by clicking on Partial Payment button
-
!python {model: account.invoice.pay}: |
self.pay_and_reconcile(cr, uid, [ref("account_invoice_pay_firstpaymenttoaxelorforbasicpc0")],
{"lang": 'en_US', "active_model": "account.invoice", "tz": False, "record_id":
25, "active_ids": [ref("account_invoice_supplier0")], "type": "in_invoice", "active_id":
ref("account_invoice_supplier0"), })
-
I check that the invoice state is still "Open"
-
!assert {model: account.invoice, id: account_invoice_supplier0}:
- state == 'open'
-
I make final partial payment of 1000 EUR
-
!record {model: account.invoice.pay, id: account_invoice_pay_finalpaymenttoaxelorforbasicpc0}:
amount: 1000.0
date: '2010-06-17'
journal_id: account.sales_journal
name: Final Payment to Axelor for Basic PC
period_id: account.period_5
-
I make partial payment by clicking on Partial Payment button
-
!python {model: account.invoice.pay}: |
self.pay_and_reconcile(cr, uid, [ref("account_invoice_pay_finalpaymenttoaxelorforbasicpc0")],
{"lang": 'en_US', "active_model": "account.invoice", "tz": False, "record_id":
25, "active_ids": [ref("account_invoice_supplier0")], "type": "in_invoice", "active_id":
ref("account_invoice_supplier0"), })
-
I check that the invoice state is now "Done"
-
!assert {model: account.invoice, id: account_invoice_supplier0}:
- state == 'paid'
-
I check that an payment entry gets created in the account move line
-
!python {model: account.invoice}: |
acc_id=self.browse(cr, uid, ref("account_invoice_supplier0"))
assert(acc_id.move_id)
- state == 'open'
@@ -1,5 +1,5 @@
-
In order to test Validate Ledger Postings wizard in OpenERP I created a account move
In order to test the 'Validate Journal Entries' wizard in OpenERP, I created an account move
-
!record {model: account.move, id: account_move_0}:
@@ -37,24 +37,21 @@
-
I check that Initially account move state is "Draft"
-
!assert {model: account.move, id: account_move_0}:
!assert {model: account.move, id: account_move_0, string: initialstatedraft}:
- state == 'draft'
-
I validate this account move by using Validate Ledger Postings
I validate this account move by using the 'Validate Journal Entries' wizard
-
!record {model: validate.account.move, id: validate_account_move_0}:
journal_id: account.bank_journal
period_id: account.period_6
-
I clicked on validate Button
I click on validate Button
-
!python {model: validate.account.move}: |
self.validate_move(cr, uid, [ref("validate_account_move_0")], {"lang": "en_US",
"active_model": "ir.ui.menu", "active_ids": [ref("account.menu_validate_account_moves")],
"tz": False, "active_id": ref("account.menu_validate_account_moves"), })
self.validate_move(cr, uid, [ref("validate_account_move_0")], {"lang": "en_US", "active_model": "ir.ui.menu", "active_ids": [ref("account.menu_validate_account_moves")], "tz": False, "active_id": ref("account.menu_validate_account_moves"), })
-
I check that the invoice state is now "Posted"
-
!assert {model: account.move, id: account_move_0}:
!assert {model: account.move, id: account_move_0, string: moveincorrect}:
- state == 'posted'
+1 -1
View File
@@ -31,7 +31,6 @@ import account_reconcile_partner_process
import account_reconcile
import account_unreconcile
import account_invoice_refund
import account_pay_invoice
import account_move_journal
import account_journal_select
import account_move_bank_reconcile
@@ -48,6 +47,7 @@ import account_open_closed_fiscalyear
import account_compare_account_balance_report
import account_invoice_state
import account_chart
import account_tax_chart
#TODO: remove this file no moe used
# also remove related view fiel
@@ -33,10 +33,11 @@ class account_change_currency(osv.osv_memory):
obj_inv = self.pool.get('account.invoice')
if context is None:
context = {}
state = obj_inv.browse(cr, uid, context['active_id']).state
if obj_inv.browse(cr, uid, context['active_id']).state != 'draft':
raise osv.except_osv(_('Error'), _('You can only change currency for Draft Invoice !'))
pass
if context.get('active_id',False):
state = obj_inv.browse(cr, uid, context['active_id']).state
if obj_inv.browse(cr, uid, context['active_id']).state != 'draft':
raise osv.except_osv(_('Error'), _('You can only change currency for Draft Invoice !'))
pass
def change_currency(self, cr, uid, ids, context=None):
obj_inv = self.pool.get('account.invoice')
+9 -7
View File
@@ -18,15 +18,16 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from osv import fields, osv
from tools.translate import _
class account_chart(osv.osv_memory):
"""
For Chart of Accounrs
For Chart of Accounts
"""
_name = "account.chart"
_description = "chart"
_description = "Account chart"
_columns = {
'fiscalyear': fields.many2one('account.fiscalyear', \
'Fiscal year', \
@@ -37,11 +38,9 @@ class account_chart(osv.osv_memory):
def _get_fiscalyear(self, cr, uid, context=None):
"""Return default Fiscalyear value"""
fiscalyear_obj = self.pool.get('account.fiscalyear')
fiscalyear = fiscalyear_obj.find(cr, uid)
return fiscalyear
return self.pool.get('account.fiscalyear').find(cr, uid)
def account_chart_open_window(self, cr, uid, ids, context={}):
def account_chart_open_window(self, cr, uid, ids, context=None):
"""
Opens chart of Accounts
@param cr: the current row, from the database cursor,
@@ -51,6 +50,8 @@ class account_chart(osv.osv_memory):
"""
mod_obj = self.pool.get('ir.model.data')
act_obj = self.pool.get('ir.actions.act_window')
if context is None:
context = {}
data = self.read(cr, uid, ids, [], context=context)[0]
result = mod_obj._get_id(cr, uid, 'account', 'action_account_tree')
id = mod_obj.read(cr, uid, [result], ['res_id'], context=context)[0]['res_id']
@@ -65,6 +66,7 @@ class account_chart(osv.osv_memory):
'fiscalyear': _get_fiscalyear,
'target_move': 'all'
}
account_chart()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+15 -13
View File
@@ -34,8 +34,9 @@ class account_invoice_refund(osv.osv_memory):
_columns = {
'date': fields.date('Operation date', help='This date will be used as the invoice date for Refund Invoice and Period will be chosen accordingly!'),
'period': fields.many2one('account.period', 'Force period'),
'journal_id': fields.many2one('account.journal', 'Journal'),
'journal_id': fields.many2one('account.journal', 'Refund Journal', help='You can select here the journal to use for the refund invoice that will be created. If you leave that field empty, it will use the same journal as the current invoice.'),
'description': fields.char('Description', size=128, required=True),
'filter_refund': fields.selection([('modify', 'Modify'), ('refund', 'Refund'), ('cancel', 'Cancel')], "Refund Type", required=True, help='Refund invoice base on this type. You can not Modify and Cancel if the invoice is already rencociled'),
}
def _get_journal(self, cr, uid, context=None):
@@ -50,7 +51,8 @@ class account_invoice_refund(osv.osv_memory):
_defaults = {
'date': time.strftime('%Y-%m-%d'),
'journal_id': _get_journal
'journal_id': _get_journal,
'filter_refund': 'modify',
}
def compute_refund(self, cr, uid, ids, mode='refund', context=None):
@@ -66,6 +68,8 @@ class account_invoice_refund(osv.osv_memory):
mod_obj = self.pool.get('ir.model.data')
act_obj = self.pool.get('ir.actions.act_window')
wf_service = netsvc.LocalService('workflow')
inv_tax_obj = self.pool.get('account.invoice.tax')
inv_line_obj = self.pool.get('account.invoice.line')
if context is None:
context = {}
@@ -76,15 +80,19 @@ class account_invoice_refund(osv.osv_memory):
period = False
description = False
company = self.pool.get('res.users').browse(cr, uid, uid).company_id
journal_id = form.get('journal_id', False)
for inv in inv_obj.browse(cr, uid, context.get('active_ids'), context=context):
if inv.state in ['draft', 'proforma2', 'cancel']:
raise osv.except_osv(_('Error !'), _('Can not %s draft/proforma/cancel invoice.') % (mode))
if inv.reconciled and mode in ('cancel', 'modify'):
raise osv.except_osv(_('Error !'), _('Can not %s invoice which is already reconciled, invoice should be unreconciled first. You can only Refund this invoice') % (mode))
if form['period'] :
period = form['period']
else:
period = inv.period_id and inv.period_id.id or False
journal_id = form.get('journal_id', False)
if not journal_id:
journal_id = inv.journal_id.id
if form['date'] :
date = form['date']
@@ -153,10 +161,9 @@ class account_invoice_refund(osv.osv_memory):
'journal_id', 'period_id'], context=context)
invoice = invoice[0]
del invoice['id']
invoice_lines = self.pool.get('account.invoice.line').read(cr, uid, invoice['invoice_line'], context=context)
invoice_lines = inv_line_obj.read(cr, uid, invoice['invoice_line'], context=context)
invoice_lines = inv_obj._refund_cleanup_lines(cr, uid, invoice_lines)
tax_lines = self.pool.get('account.invoice.tax').read(
cr, uid, invoice['tax_line'], context=context)
tax_lines = inv_tax_obj.read(cr, uid, invoice['tax_line'], context=context)
tax_lines = inv_obj._refund_cleanup_lines(cr, uid, tax_lines)
invoice.update({
@@ -196,13 +203,8 @@ class account_invoice_refund(osv.osv_memory):
return result
def invoice_refund(self, cr, uid, ids, context=None):
return self.compute_refund(cr, uid, ids, 'refund', context=context)
def invoice_cancel(self, cr, uid, ids, context=None):
return self.compute_refund(cr, uid, ids, 'cancel', context=context)
def invoice_modify(self, cr, uid, ids, context=None):
return self.compute_refund(cr, uid, ids, 'modify', context=context)
data_refund = self.read(cr, uid, ids, [] ,context=context)[0]['filter_refund']
return self.compute_refund(cr, uid, ids, data_refund, context=context)
account_invoice_refund()
@@ -7,29 +7,25 @@
<field name="model">account.invoice.refund</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Refund">
<separator string="This wizard is used to refund the invoice" colspan="4"/>
<form string="Refund Invoice">
<separator string="Refund Invoice Options" colspan="4"/>
<group colspan="4" >
<label string="Are you sure you want to refund this invoice ?" colspan="2"/>
<newline/>
<field name="description"/>
<field name="journal_id"/>
<field name="date"/>
<field name="period"/>
<field name="journal_id" />
<field name="filter_refund"/>
</group>
<separator colspan="4"/>
<group col="4" colspan="4" fill="1">
<label align="0.0" width="300" string="Refund Invoice: creates a refund invoice"/>
<label align="0.0" width="500" colspan="4" string="Cancel Invoice: creates a reverse accounting entries to cancel the invoice"/>
<label align="0.0" width="550" colspan="4" string="Modify Invoice: creates a refund invoice, and new copy of the same invoice ready for editing"/>
<label align="0.0" width="550" colspan="4" string="Modify Invoice: Cancels the current invoice and creates a new copy of it ready for editing."/>
<label align="0.0" width="300" string="Refund Invoice: Creates the refund invoice, ready for editing."/>
<label align="0.0" width="500" colspan="4" string="Cancel Invoice: Creates the refund invoice, validate and reconcile it to cancel the current invoice."/>
</group>
<separator colspan="4"/>
<group colspan="4" col="6">
<label string ="" colspan="2"/>
<button icon="gtk-cancel" special="cancel" string="Cancel"/>
<button icon="gtk-redo" string="Refund Invoice" name="invoice_refund" type="object"/>
<button icon="gtk-ok" string="Cancel Invoice" name="invoice_cancel" type="object"/>
<button icon="gtk-undo" string="Modify Invoice" name="invoice_modify" type="object"/>
<button string='Refund' icon="gtk-execute" name="invoice_refund" type="object"/>
</group>
</form>
</field>
@@ -21,7 +21,7 @@
<field name="context">{'journal_type':'sale','view_mode':False}</field>
<field name="target">new</field>
</record>
<menuitem action="action_account_moves_sale" sequence="10" id="menu_eaction_account_moves_sale" parent="menu_finance_receivables" icon="STOCK_JUSTIFY_FILL" groups="group_account_user,group_account_manager,base.group_system"/>
<menuitem action="action_account_moves_sale" sequence="16" id="menu_eaction_account_moves_sale" parent="menu_finance_receivables" icon="STOCK_JUSTIFY_FILL" groups="group_account_user,group_account_manager,base.group_system"/>
<!-- <record id="action_account_moves_purchase_refund" model="ir.actions.act_window">-->
<!-- <field name="name">Journal Refund Items</field>-->
@@ -41,10 +41,11 @@
<field name="context">{'journal_type':'purchase','view_mode':False}</field>
<field name="target">new</field>
</record>
<menuitem action="action_account_moves_purchase" sequence="10"
<menuitem action="action_account_moves_purchase"
id="menu_eaction_account_moves_purchase"
parent="menu_finance_payables"
icon="STOCK_JUSTIFY_FILL"
sequence="16"
groups="group_account_user,group_account_manager,base.group_system"/>
<!-- <record id="action_account_moves_sale_refund" model="ir.actions.act_window">-->
@@ -57,7 +58,7 @@
<!-- </record>-->
<!-- <menuitem action="action_account_moves_sale_refund" sequence="5" id="menu_eaction_account_moves_sale_refund" parent="menu_finance_payables" icon="STOCK_JUSTIFY_FILL"/>-->
<record id="action_account_moves_all" model="ir.actions.act_window">
<record id="action_account_moves_bank" model="ir.actions.act_window">
<field name="name">Journal Items</field>
<field name="res_model">account.move.journal</field>
<field name="view_type">form</field>
@@ -67,11 +68,11 @@
</record>
<menuitem
action="action_account_moves_all"
action="action_account_moves_bank"
icon="STOCK_JUSTIFY_FILL"
id="menu_eaction_account_moves_all"
parent="account.menu_finance_entries"
sequence="4"
id="menu_action_account_moves_bank"
parent="account.menu_finance_bank_and_cash"
sequence="16"
groups="group_account_user,group_account_manager,base.group_system"
/>
</data>
@@ -1,201 +0,0 @@
# -*- coding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 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 Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
import time
from osv import fields, osv
from tools.translate import _
import decimal_precision as dp
class account_invoice_pay_writeoff(osv.osv_memory):
"""
Opens the write off amount pay form.
"""
_name = "account.invoice.pay.writeoff"
_description = "Pay Invoice "
_columns = {
'writeoff_acc_id': fields.many2one('account.account', 'Write-Off account', required=True),
'writeoff_journal_id': fields.many2one('account.journal', 'Write-Off journal', required=True),
'comment': fields.char('Comment', size=64, required=True),
'analytic_id': fields.many2one('account.analytic.account','Analytic Account', domain=[('parent_id', '!=', False)])
}
_defaults = {
'comment': 'Write-Off',
}
def pay_and_reconcile_writeoff(self, cr, uid, ids, context=None):
data = self.read(cr, uid, ids, context=context)[0]
context.update({'write_off': data})
self.pool.get('account.invoice.pay').pay_and_reconcile(cr, uid, ids, context=context)
return {}
account_invoice_pay_writeoff()
class account_invoice_pay(osv.osv_memory):
"""
Generate pay invoice wizard, user can make partial or full payment for invoice.
"""
_name = "account.invoice.pay"
_description = "Pay Invoice "
_columns = {
'amount': fields.float('Amount paid', required=True, digits_compute = dp.get_precision('Account')),
'name': fields.char('Entry Name', size=64, required=True),
'date': fields.date('Date payment', required=True),
'journal_id': fields.many2one('account.journal', 'Journal/Payment Mode', required=True, domain=[('type','=','cash')]),
'period_id': fields.many2one('account.period', 'Period', required=True),
}
def view_init(self, cr, uid, ids, context=None):
if context is None:
context = {}
if context.get('active_id', False):
invoice = self.pool.get('account.invoice').browse(cr, uid, context['active_id'], context=context)
if invoice.state in ['draft', 'proforma2', 'cancel']:
raise osv.except_osv(_('Error !'), _('Can not pay draft/proforma/cancel invoice.'))
pass
def _get_period(self, cr, uid, context=None):
period_id = False
ids = self.pool.get('account.period').find(cr, uid, context=context)
if len(ids):
period_id = ids[0]
return period_id
def _get_amount(self, cr, uid, context=None):
if context is None:
context = {}
if context.get('active_id', False):
return self.pool.get('account.invoice').browse(cr, uid, context['active_id'], context=context).residual
return 0.0
_defaults = {
'date': time.strftime('%Y-%m-%d'),
'period_id': _get_period,
'amount': _get_amount,
}
def wo_check(self, cr, uid, ids, context=None):
cur_obj = self.pool.get('res.currency')
mod_obj = self.pool.get('ir.model.data')
inv_obj = self.pool.get('account.invoice')
if context is None:
context = {}
data = self.read(cr, uid, ids,context=context)[0]
invoice = inv_obj.browse(cr, uid, context['active_id'], context)
journal = self.pool.get('account.journal').browse(cr, uid, data['journal_id'], context)
# Here we need that:
# The invoice total amount in company's currency <> paid amount in company currency
# (according to the correct day rate, invoicing rate and payment rate are may be different)
# => Ask to a write-off of the difference. This could happen even if both amount are equal,
# because if the currency rate
# Get the amount in company currency for the invoice (according to move lines)
inv_amount_company_currency = 0
for aml in invoice.move_id.line_id:
if aml.account_id.id == invoice.account_id.id or aml.account_id.type in ('receivable', 'payable'):
inv_amount_company_currency += aml.debit
inv_amount_company_currency -= aml.credit
inv_amount_company_currency = abs(inv_amount_company_currency)
# Get the current amount paid in company currency
if journal.currency and invoice.company_id.currency_id.id<>journal.currency.id:
ctx = {'date':data['date']}
amount_paid = cur_obj.compute(cr, uid, journal.currency.id, invoice.company_id.currency_id.id, data['amount'], round=True, context=ctx)
else:
amount_paid = data['amount']
# Get the old payment if there are some
if invoice.payment_ids:
debit = credit = 0.0
for payment in invoice.payment_ids:
debit += payment.debit
credit += payment.credit
amount_paid += abs(debit-credit)
# Test if there is a difference according to currency rouding setting
if self.pool.get('res.currency').is_zero(cr, uid, invoice.company_id.currency_id,
(amount_paid - inv_amount_company_currency)):
return self.pay_and_reconcile(cr, uid, ids, context=context)
else:
model_data_ids = mod_obj.search(cr, uid,[('model','=','ir.ui.view'),('name','=','view_account_invoice_pay_writeoff')], context=context)
resource_id = mod_obj.read(cr, uid, model_data_ids, fields=['res_id'], context=context)[0]['res_id']
return {
'name': _('Information addendum'),
'context': context,
'view_type': 'form',
'view_mode': 'form',
'res_model': 'account.invoice.pay.writeoff',
'views': [(resource_id,'form')],
'type': 'ir.actions.act_window',
'target': 'new',
}
def pay_and_reconcile(self, cr, uid, ids, context=None):
cur_obj = self.pool.get('res.currency')
inv_obj = self.pool.get('account.invoice')
if context is None:
context = {}
data = self.read(cr, uid, ids, context=context)[0]
writeoff_account_id = False
writeoff_journal_id = False
comment = False
if 'write_off' in context and context['write_off'] :
writeoff_account_id = context['write_off']['writeoff_acc_id']
writeoff_journal_id = context['write_off']['writeoff_journal_id']
comment = context['write_off']['comment']
amount = data['amount']
invoice = inv_obj.browse(cr, uid, context['active_id'], context=context)
journal = self.pool.get('account.journal').browse(cr, uid, data['journal_id'], context=context)
# Compute the amount in company's currency, with the journal currency (which is equal to payment currency)
# when it is needed : If payment currency (according to selected journal.currency) is <> from company currency
if journal.currency and invoice.company_id.currency_id.id<>journal.currency.id:
ctx = {'date':data['date']}
amount = cur_obj.compute(cr, uid, journal.currency.id, invoice.company_id.currency_id.id, amount, context=ctx)
currency_id = journal.currency.id
# Put the paid amount in currency, and the currency, in the context if currency is different from company's currency
context.update({'amount_currency':data['amount'],'currency_id':currency_id})
if invoice.company_id.currency_id.id<>invoice.currency_id.id:
ctx = {'date':data['date']}
amount = cur_obj.compute(cr, uid, invoice.currency_id.id, invoice.company_id.currency_id.id, amount, context=ctx)
currency_id = invoice.currency_id.id
# Put the paid amount in currency, and the currency, in the context if currency is different from company's currency
context.update({'amount_currency':data['amount'],'currency_id':currency_id})
# Take the choosen date
if comment:
context.update({'date_p':data['date'],'comment':comment})
else:
context.update({'date_p':data['date'],'comment':False})
acc_id = journal.default_credit_account_id and journal.default_credit_account_id.id
if not acc_id:
raise osv.except_osv(_('Error !'), _('Your journal must have a default credit and debit account.'))
inv_obj.pay_and_reconcile(cr, uid, [context['active_id']],
amount, acc_id, data['period_id'], data['journal_id'], writeoff_account_id,
data['period_id'], writeoff_journal_id, context, data['name'])
return {}
account_invoice_pay()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,64 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="view_account_invoice_pay" model="ir.ui.view">
<field name="name">account.invoice.pay.form</field>
<field name="model">account.invoice.pay</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Pay invoice">
<group colspan="4" >
<field name="amount"/>
<newline/>
<field name="name"/>
<field name="date"/>
<field name="journal_id" widget="selection"/>
<field name="period_id" widget="selection"/>
</group>
<group colspan="4" col="6">
<label string ="" colspan="2"/>
<button icon="gtk-cancel" special="cancel" string="Cancel"/>
<button icon="gtk-execute" string="Partial Payment" name="pay_and_reconcile" type="object"/>
<button icon="gtk-execute" string="Full Payment" name="wo_check" type="object"/>
</group>
</form>
</field>
</record>
<record id="action_account_invoice_pay" model="ir.actions.act_window">
<field name="name">Pay Invoice</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">account.invoice.pay</field>
<field name="view_type">form</field>
<field name="view_mode">form</field>
<field name="view_id" ref="view_account_invoice_pay"/>
<field name="context">{'record_id' : active_id}</field>
<field name="target">new</field>
</record>
<record id="view_account_invoice_pay_writeoff" model="ir.ui.view">
<field name="name">account.invoice.pay.writeoff.form</field>
<field name="model">account.invoice.pay.writeoff</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Information addendum">
<group colspan="4" >
<separator string="Write-Off Move" colspan="4"/>
<field name="writeoff_journal_id"/>
<field name="writeoff_acc_id" domain="[('type','&lt;&gt;','view'),('type','&lt;&gt;','consolidation')]"/>
<field name="comment"/>
<separator string="Analytic" colspan="4"/>
<field name="analytic_id"/>
</group>
<group colspan="4" col="6">
<label string ="" colspan="2"/>
<button icon="gtk-cancel" special="cancel" string="Cancel"/>
<button icon="gtk-execute" string="Pay and reconcile" name="pay_and_reconcile_writeoff" type="object"/>
</group>
</form>
</field>
</record>
</data>
</openerp>
@@ -15,7 +15,7 @@
<newline/>
<group colspan="4" col="4">
<button special="cancel" string="Cancel" icon="gtk-cancel"/>
<button name="next_partner" icon="gtk-go-forward" type="object" string="Go to next partner" />
<button name="next_partner" icon="terp-gtk-jump-to-ltr" type="object" string="Go to next partner" />
</group>
</form>
</field>
@@ -63,7 +63,7 @@
<group colspan="4" col="6">
<label string ="" colspan="2"/>
<button icon="gtk-cancel" special="cancel" string="Cancel"/>
<button icon="gtk-stock_effects-object-colorize" string="Reconcile" name="trans_rec_reconcile" type="object" default_focus="1"/>
<button icon="terp-stock_effects-object-colorize" string="Reconcile" name="trans_rec_reconcile" type="object" default_focus="1"/>
</group>
</form>
</field>
@@ -31,16 +31,19 @@ class account_partner_balance(osv.osv_memory):
_columns = {
'initial_balance': fields.boolean('Include Initial Balances'
,help='It adds initial balance row on report which display previous sum amount of debit/credit/balance'),
'display_partner': fields.selection([('non-zero_balance', 'With balance is not equal to 0'), ('all', 'All Partners')]
,'Display Partners')
}
_defaults = {
'initial_balance': True,
'display_partner': 'non-zero_balance'
}
def _print_report(self, cr, uid, ids, data, query_line, context=None):
if context is None:
context = {}
data = self.pre_print_report(cr, uid, ids, data, query_line, context=context)
data['form'].update(self.read(cr, uid, ids, ['initial_balance'])[0])
data['form'].update(self.read(cr, uid, ids, ['initial_balance', 'display_partner'])[0])
return {
'type': 'ir.actions.report.xml',
'report_name': 'account.partner.balance',
@@ -11,6 +11,7 @@
<field name="fiscalyear_id" position="after">
<field name="result_selection"/>
<field name="initial_balance"/>
<field name="display_partner"/>
<newline/>
</field>
</field>

Some files were not shown because too many files have changed in this diff Show More