[MERGE] account journal items widget by dle
bzr revid: al@openerp.com-20121129174542-s8litnoi9kjfof80
This commit is contained in:
commit
69cb769ec5
|
@ -73,7 +73,6 @@ for a particular financial year and for preparation of vouchers there is a modul
|
|||
'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',
|
||||
'wizard/account_move_line_unreconcile_select_view.xml',
|
||||
|
@ -128,9 +127,11 @@ for a particular financial year and for preparation of vouchers there is a modul
|
|||
],
|
||||
'js': [
|
||||
'static/src/js/account_move_reconciliation.js',
|
||||
'static/src/js/account_move_line_quickadd.js',
|
||||
],
|
||||
'qweb' : [
|
||||
"static/src/xml/account_move_reconciliation.xml",
|
||||
"static/src/xml/account_move_line_quickadd.xml",
|
||||
],
|
||||
'css':['static/src/css/account_move_reconciliation.css'
|
||||
],
|
||||
|
|
|
@ -697,44 +697,6 @@ class account_account(osv.osv):
|
|||
|
||||
account_account()
|
||||
|
||||
class account_journal_view(osv.osv):
|
||||
_name = "account.journal.view"
|
||||
_description = "Journal View"
|
||||
_columns = {
|
||||
'name': fields.char('Journal View', size=64, required=True, translate=True),
|
||||
'columns_id': fields.one2many('account.journal.column', 'view_id', 'Columns')
|
||||
}
|
||||
_order = "name"
|
||||
|
||||
account_journal_view()
|
||||
|
||||
|
||||
class account_journal_column(osv.osv):
|
||||
|
||||
def _col_get(self, cr, user, context=None):
|
||||
result = []
|
||||
cols = self.pool.get('account.move.line')._columns
|
||||
for col in cols:
|
||||
if col in ('period_id', 'journal_id'):
|
||||
continue
|
||||
result.append( (col, cols[col].string) )
|
||||
result.sort()
|
||||
return result
|
||||
|
||||
_name = "account.journal.column"
|
||||
_description = "Journal Column"
|
||||
_columns = {
|
||||
'name': fields.char('Column Name', size=64, required=True),
|
||||
'field': fields.selection(_col_get, 'Field Name', required=True, size=32),
|
||||
'view_id': fields.many2one('account.journal.view', 'Journal View', select=True),
|
||||
'sequence': fields.integer('Sequence', help="Gives the sequence order to journal column.", readonly=True),
|
||||
'required': fields.boolean('Required'),
|
||||
'readonly': fields.boolean('Readonly'),
|
||||
}
|
||||
_order = "view_id, sequence"
|
||||
|
||||
account_journal_column()
|
||||
|
||||
class account_journal(osv.osv):
|
||||
_name = "account.journal"
|
||||
_description = "Journal"
|
||||
|
@ -750,7 +712,6 @@ class account_journal(osv.osv):
|
|||
" Select 'Opening/Closing Situation' for entries generated for new fiscal years."),
|
||||
'type_control_ids': fields.many2many('account.account.type', 'account_journal_type_rel', 'journal_id','type_id', 'Type Controls', domain=[('code','<>','view'), ('code', '<>', 'closed')]),
|
||||
'account_control_ids': fields.many2many('account.account', 'account_account_type_rel', 'journal_id','account_id', 'Account', domain=[('type','<>','view'), ('type', '<>', 'closed')]),
|
||||
'view_id': fields.many2one('account.journal.view', 'Display Mode', required=True, help="Gives the view used when writing or browsing entries in this journal. The view tells OpenERP which fields should be visible, required or readonly and in which order. You can create your own view for a faster encoding in each journal."),
|
||||
'default_credit_account_id': fields.many2one('account.account', 'Default Credit Account', domain="[('type','!=','view')]", help="It acts as a default account for credit amount"),
|
||||
'default_debit_account_id': fields.many2one('account.account', 'Default Debit Account', domain="[('type','!=','view')]", help="It acts as a default account for debit amount"),
|
||||
'centralisation': fields.boolean('Centralised Counterpart', help="Check this box to determine that each entry of this journal won't create a new counterpart but will share the same counterpart. This is used in fiscal year closing."),
|
||||
|
@ -886,37 +847,6 @@ class account_journal(osv.osv):
|
|||
|
||||
return self.name_get(cr, user, ids, context=context)
|
||||
|
||||
def onchange_type(self, cr, uid, ids, type, currency, context=None):
|
||||
obj_data = self.pool.get('ir.model.data')
|
||||
user_pool = self.pool.get('res.users')
|
||||
|
||||
type_map = {
|
||||
'sale':'account_sp_journal_view',
|
||||
'sale_refund':'account_sp_refund_journal_view',
|
||||
'purchase':'account_sp_journal_view',
|
||||
'purchase_refund':'account_sp_refund_journal_view',
|
||||
'cash':'account_journal_bank_view',
|
||||
'bank':'account_journal_bank_view',
|
||||
'general':'account_journal_view',
|
||||
'situation':'account_journal_view'
|
||||
}
|
||||
|
||||
res = {}
|
||||
view_id = type_map.get(type, 'account_journal_view')
|
||||
user = user_pool.browse(cr, uid, uid)
|
||||
if type in ('cash', 'bank') and currency and user.company_id.currency_id.id != currency:
|
||||
view_id = 'account_journal_bank_view_multi'
|
||||
data_id = obj_data.search(cr, uid, [('model','=','account.journal.view'), ('name','=',view_id)])
|
||||
data = obj_data.browse(cr, uid, data_id[0], context=context)
|
||||
|
||||
res.update({
|
||||
'centralisation':type == 'situation',
|
||||
'view_id':data.res_id,
|
||||
})
|
||||
return {
|
||||
'value':res
|
||||
}
|
||||
|
||||
account_journal()
|
||||
|
||||
class account_fiscalyear(osv.osv):
|
||||
|
@ -1396,13 +1326,6 @@ class account_move(osv.osv):
|
|||
'WHERE id IN %s', ('draft', tuple(ids),))
|
||||
return True
|
||||
|
||||
def onchange_line_id(self, cr, uid, ids, line_ids, context=None):
|
||||
balance = 0.0
|
||||
for line in line_ids:
|
||||
if line[2]:
|
||||
balance += (line[2].get('debit',0.00)- (line[2].get('credit',0.00)))
|
||||
return {'value': {'balance': balance}}
|
||||
|
||||
def write(self, cr, uid, ids, vals, context=None):
|
||||
if context is None:
|
||||
context = {}
|
||||
|
@ -3208,16 +3131,6 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
|||
default_account = acc_template_ref.get(template.property_account_income_opening.id)
|
||||
return default_account
|
||||
|
||||
def _get_view_id(journal_type):
|
||||
# Get the journal views
|
||||
if journal_type in ('general', 'situation'):
|
||||
data = obj_data.get_object_reference(cr, uid, 'account', 'account_journal_view')
|
||||
elif journal_type in ('sale_refund', 'purchase_refund'):
|
||||
data = obj_data.get_object_reference(cr, uid, 'account', 'account_sp_refund_journal_view')
|
||||
else:
|
||||
data = obj_data.get_object_reference(cr, uid, 'account', 'account_sp_journal_view')
|
||||
return data and data[1] or False
|
||||
|
||||
journal_names = {
|
||||
'sale': _('Sales Journal'),
|
||||
'purchase': _('Purchase Journal'),
|
||||
|
@ -3247,7 +3160,6 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
|||
'code': journal_codes[journal_type],
|
||||
'company_id': company_id,
|
||||
'centralisation': journal_type == 'situation',
|
||||
'view_id': _get_view_id(journal_type),
|
||||
'analytic_journal_id': _get_analytic_journal(journal_type),
|
||||
'default_credit_account_id': _get_default_account(journal_type, 'credit'),
|
||||
'default_debit_account_id': _get_default_account(journal_type, 'debit'),
|
||||
|
@ -3464,11 +3376,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
|||
'''
|
||||
obj_data = self.pool.get('ir.model.data')
|
||||
obj_journal = self.pool.get('account.journal')
|
||||
# Get the id of journal views
|
||||
tmp = obj_data.get_object_reference(cr, uid, 'account', 'account_journal_bank_view_multi')
|
||||
view_id_cur = tmp and tmp[1] or False
|
||||
tmp = obj_data.get_object_reference(cr, uid, 'account', 'account_journal_bank_view')
|
||||
view_id_cash = tmp and tmp[1] or False
|
||||
|
||||
|
||||
# we need to loop again to find next number for journal code
|
||||
# because we can't rely on the value current_num as,
|
||||
|
@ -3494,10 +3402,8 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
|||
'default_debit_account_id': default_account_id,
|
||||
}
|
||||
if line['currency_id']:
|
||||
vals['view_id'] = view_id_cur
|
||||
vals['currency'] = line['currency_id']
|
||||
else:
|
||||
vals['view_id'] = view_id_cash
|
||||
|
||||
return vals
|
||||
|
||||
def _prepare_bank_account(self, cr, uid, line, new_code, acc_template_ref, ref_acc_bank, company_id, context=None):
|
||||
|
|
|
@ -89,11 +89,6 @@ class bank(osv.osv):
|
|||
}
|
||||
acc_bank_id = obj_acc.create(cr,uid,acc,context=context)
|
||||
|
||||
# Get the journal view id
|
||||
data_id = obj_data.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_journal_bank_view')])
|
||||
data = obj_data.browse(cr, uid, data_id[0], context=context)
|
||||
view_id_cash = data.res_id
|
||||
|
||||
jour_obj = self.pool.get('account.journal')
|
||||
new_code = 1
|
||||
while True:
|
||||
|
@ -112,7 +107,6 @@ class bank(osv.osv):
|
|||
'analytic_journal_id': False,
|
||||
'default_credit_account_id': acc_bank_id,
|
||||
'default_debit_account_id': acc_bank_id,
|
||||
'view_id': view_id_cash
|
||||
}
|
||||
journal_id = jour_obj.create(cr, uid, vals_journal, context=context)
|
||||
|
||||
|
|
|
@ -220,12 +220,11 @@ class account_move_line(osv.osv):
|
|||
return context
|
||||
|
||||
def _default_get(self, cr, uid, fields, context=None):
|
||||
#default_get should only do the following:
|
||||
# -propose the next amount in debit/credit in order to balance the move
|
||||
# -propose the next account from the journal (default debit/credit account) accordingly
|
||||
if context is None:
|
||||
context = {}
|
||||
if not context.get('journal_id', False):
|
||||
context['journal_id'] = context.get('search_default_journal_id')
|
||||
if not context.get('period_id', False):
|
||||
context['period_id'] = context.get('search_default_period_id')
|
||||
account_obj = self.pool.get('account.account')
|
||||
period_obj = self.pool.get('account.period')
|
||||
journal_obj = self.pool.get('account.journal')
|
||||
|
@ -234,134 +233,71 @@ class account_move_line(osv.osv):
|
|||
fiscal_pos_obj = self.pool.get('account.fiscal.position')
|
||||
partner_obj = self.pool.get('res.partner')
|
||||
currency_obj = self.pool.get('res.currency')
|
||||
|
||||
if not context.get('journal_id', False):
|
||||
context['journal_id'] = context.get('search_default_journal_id', False)
|
||||
if not context.get('period_id', False):
|
||||
context['period_id'] = context.get('search_default_period_id', False)
|
||||
context = self.convert_to_period(cr, uid, context)
|
||||
#pass the right context when search_defaul_journal_id
|
||||
if context.get('search_default_journal_id',False):
|
||||
context['journal_id'] = context.get('search_default_journal_id')
|
||||
|
||||
# Compute simple values
|
||||
data = super(account_move_line, self).default_get(cr, uid, fields, context=context)
|
||||
# Starts: Manual entry from account.move form
|
||||
if context.get('lines'):
|
||||
total_new = context.get('balance', 0.00)
|
||||
if context['journal']:
|
||||
journal_data = journal_obj.browse(cr, uid, context['journal'], context=context)
|
||||
if journal_data.type == 'purchase':
|
||||
if total_new > 0:
|
||||
account = journal_data.default_credit_account_id
|
||||
else:
|
||||
account = journal_data.default_debit_account_id
|
||||
else:
|
||||
if total_new > 0:
|
||||
account = journal_data.default_credit_account_id
|
||||
else:
|
||||
account = journal_data.default_debit_account_id
|
||||
if account and ((not fields) or ('debit' in fields) or ('credit' in fields)) and 'partner_id' in data and (data['partner_id']):
|
||||
part = partner_obj.browse(cr, uid, data['partner_id'], context=context)
|
||||
account = fiscal_pos_obj.map_account(cr, uid, part and part.property_account_position or False, account.id)
|
||||
account = account_obj.browse(cr, uid, account, context=context)
|
||||
data['account_id'] = account.id
|
||||
|
||||
s = -total_new
|
||||
data['debit'] = s > 0 and s or 0.0
|
||||
data['credit'] = s < 0 and -s or 0.0
|
||||
data = self._default_get_move_form_hook(cr, uid, data)
|
||||
return data
|
||||
# Ends: Manual entry from account.move form
|
||||
if not 'move_id' in fields: #we are not in manual entry
|
||||
return data
|
||||
# Compute the current move
|
||||
move_id = False
|
||||
partner_id = False
|
||||
if context.get('journal_id', False) and context.get('period_id', False):
|
||||
if 'move_id' in fields:
|
||||
cr.execute('SELECT move_id \
|
||||
FROM \
|
||||
account_move_line \
|
||||
WHERE \
|
||||
journal_id = %s and period_id = %s AND create_uid = %s AND state = %s \
|
||||
ORDER BY id DESC limit 1',
|
||||
(context['journal_id'], context['period_id'], uid, 'draft'))
|
||||
if context.get('journal_id'):
|
||||
total = 0.0
|
||||
#in account.move form view, it is not possible to compute total debit and credit using
|
||||
#a browse record. So we must use the context to pass the whole one2many field and compute the total
|
||||
if context.get('line_id'):
|
||||
for move_line_dict in move_obj.resolve_2many_commands(cr, uid, 'line_id', context.get('line_id'), context=context):
|
||||
data['name'] = data.get('name') or move_line_dict.get('name')
|
||||
data['partner_id'] = data.get('partner_id') or move_line_dict.get('partner_id')
|
||||
total += move_line_dict.get('debit', 0.0) - move_line_dict.get('credit', 0.0)
|
||||
elif context.get('period_id'):
|
||||
#find the date and the ID of the last unbalanced account.move encoded by the current user in that journal and period
|
||||
move_id = False
|
||||
cr.execute('''SELECT move_id, date FROM account_move_line
|
||||
WHERE journal_id = %s AND period_id = %s AND create_uid = %s AND state = %s
|
||||
ORDER BY id DESC limit 1''', (context['journal_id'], context['period_id'], uid, 'draft'))
|
||||
res = cr.fetchone()
|
||||
move_id = (res and res[0]) or False
|
||||
if not move_id:
|
||||
return data
|
||||
else:
|
||||
data['move_id'] = move_id
|
||||
if 'date' in fields:
|
||||
cr.execute('SELECT date \
|
||||
FROM \
|
||||
account_move_line \
|
||||
WHERE \
|
||||
journal_id = %s AND period_id = %s AND create_uid = %s \
|
||||
ORDER BY id DESC',
|
||||
(context['journal_id'], context['period_id'], uid))
|
||||
res = cr.fetchone()
|
||||
if res:
|
||||
data['date'] = res[0]
|
||||
else:
|
||||
period = period_obj.browse(cr, uid, context['period_id'],
|
||||
context=context)
|
||||
data['date'] = period.date_start
|
||||
if not move_id:
|
||||
return data
|
||||
total = 0
|
||||
ref_id = False
|
||||
move = move_obj.browse(cr, uid, move_id, context=context)
|
||||
if 'name' in fields:
|
||||
data.setdefault('name', move.line_id[-1].name)
|
||||
acc1 = False
|
||||
for l in move.line_id:
|
||||
acc1 = l.account_id
|
||||
partner_id = partner_id or l.partner_id.id
|
||||
ref_id = ref_id or l.ref
|
||||
total += (l.debit or 0.0) - (l.credit or 0.0)
|
||||
move_id = res and res[0] or False
|
||||
data['date'] = res and res[1] or period_obj.browse(cr, uid, context['period_id'], context=context).date_start
|
||||
data['move_id'] = move_id
|
||||
if move_id:
|
||||
#if there exist some unbalanced accounting entries that match the journal and the period,
|
||||
#we propose to continue the same move by copying the ref, the name, the partner...
|
||||
move = move_obj.browse(cr, uid, move_id, context=context)
|
||||
data.setdefault('name', move.line_id[-1].name)
|
||||
for l in move.line_id:
|
||||
data['partner_id'] = data.get('partner_id') or l.partner_id.id
|
||||
data['ref'] = data.get('ref') or l.ref
|
||||
total += (l.debit or 0.0) - (l.credit or 0.0)
|
||||
|
||||
if 'ref' in fields:
|
||||
data['ref'] = ref_id
|
||||
if 'partner_id' in fields:
|
||||
data['partner_id'] = partner_id
|
||||
|
||||
if move.journal_id.type == 'purchase':
|
||||
if total > 0:
|
||||
account = move.journal_id.default_credit_account_id
|
||||
else:
|
||||
account = move.journal_id.default_debit_account_id
|
||||
else:
|
||||
if total > 0:
|
||||
account = move.journal_id.default_credit_account_id
|
||||
else:
|
||||
account = move.journal_id.default_debit_account_id
|
||||
part = partner_id and partner_obj.browse(cr, uid, partner_id) or False
|
||||
# part = False is acceptable for fiscal position.
|
||||
account = fiscal_pos_obj.map_account(cr, uid, part and part.property_account_position or False, account.id)
|
||||
if account:
|
||||
account = account_obj.browse(cr, uid, account, context=context)
|
||||
|
||||
if account and ((not fields) or ('debit' in fields) or ('credit' in fields)):
|
||||
data['account_id'] = account.id
|
||||
# Propose the price Tax excluded, the Tax will be added when confirming line
|
||||
if account.tax_ids:
|
||||
taxes = fiscal_pos_obj.map_tax(cr, uid, part and part.property_account_position or False, account.tax_ids)
|
||||
tax = tax_obj.browse(cr, uid, taxes)
|
||||
for t in tax_obj.compute_inv(cr, uid, tax, total, 1):
|
||||
total -= t['amount']
|
||||
|
||||
s = -total
|
||||
data['debit'] = s > 0 and s or 0.0
|
||||
data['credit'] = s < 0 and -s or 0.0
|
||||
|
||||
if account and account.currency_id:
|
||||
data['currency_id'] = account.currency_id.id
|
||||
acc = account
|
||||
if s>0:
|
||||
acc = acc1
|
||||
compute_ctx = context.copy()
|
||||
compute_ctx.update({
|
||||
'res.currency.compute.account': acc,
|
||||
'res.currency.compute.account_invert': True,
|
||||
})
|
||||
v = currency_obj.compute(cr, uid, account.company_id.currency_id.id, data['currency_id'], s, context=compute_ctx)
|
||||
data['amount_currency'] = v
|
||||
#compute the total of current move
|
||||
data['debit'] = total < 0 and -total or 0.0
|
||||
data['credit'] = total > 0 and total or 0.0
|
||||
#pick the good account on the journal accordingly if the next proposed line will be a debit or a credit
|
||||
journal_data = journal_obj.browse(cr, uid, context['journal_id'], context=context)
|
||||
account = total > 0 and journal_data.default_credit_account_id or journal_data.default_debit_account_id
|
||||
#map the account using the fiscal position of the partner, if needed
|
||||
part = data.get('partner_id') and partner_obj.browse(cr, uid, data['partner_id'], context=context) or False
|
||||
if account and data.get('partner_id'):
|
||||
account = fiscal_pos_obj.map_account(cr, uid, part and part.property_account_position or False, account.id)
|
||||
account = account_obj.browse(cr, uid, account, context=context)
|
||||
data['account_id'] = account and account.id or False
|
||||
#compute the amount in secondary currency of the account, if needed
|
||||
if account and account.currency_id:
|
||||
data['currency_id'] = account.currency_id.id
|
||||
#set the context for the multi currency change
|
||||
compute_ctx = context.copy()
|
||||
compute_ctx.update({
|
||||
#the following 2 parameters are used to choose the currency rate, in case where the account
|
||||
#doesn't work with an outgoing currency rate method 'at date' but 'average'
|
||||
'res.currency.compute.account': account,
|
||||
'res.currency.compute.account_invert': True,
|
||||
})
|
||||
if data.get('date'):
|
||||
compute_ctx.update({'date': data['date']})
|
||||
data['amount_currency'] = currency_obj.compute(cr, uid, account.company_id.currency_id.id, data['currency_id'], -total, context=compute_ctx)
|
||||
data = self._default_get_move_form_hook(cr, uid, data)
|
||||
return data
|
||||
|
||||
def on_create_write(self, cr, uid, id, context=None):
|
||||
|
@ -484,6 +420,15 @@ class account_move_line(osv.osv):
|
|||
result.append(line.id)
|
||||
return result
|
||||
|
||||
def _get_reconcile(self, cr, uid, ids,name, unknow_none, context=None):
|
||||
res = dict.fromkeys(ids, False)
|
||||
for line in self.browse(cr, uid, ids, context=context):
|
||||
if line.reconcile_id:
|
||||
res[line.id] = str(line.reconcile_id.name)
|
||||
elif line.reconcile_partial_id:
|
||||
res[line.id] = str(line.reconcile_partial_id.name)
|
||||
return res
|
||||
|
||||
_columns = {
|
||||
'name': fields.char('Name', size=64, required=True),
|
||||
'quantity': fields.float('Quantity', digits=(16,2), help="The optional quantity expressed by this line, eg: number of product sold. The quantity is not a legal requirement but is very useful for some reports."),
|
||||
|
@ -498,15 +443,16 @@ class account_move_line(osv.osv):
|
|||
'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),
|
||||
'reconcile': fields.function(_get_reconcile, type='char', string='Reconcile'),
|
||||
'amount_currency': fields.float('Amount Currency', help="The amount expressed in an optional other currency if it is a multi-currency entry.", digits_compute=dp.get_precision('Account')),
|
||||
'amount_residual_currency': fields.function(_amount_residual, string='Residual Amount', multi="residual", help="The residual amount on a receivable or payable of a journal entry expressed in its currency (maybe different of the company currency)."),
|
||||
'amount_residual': fields.function(_amount_residual, string='Residual Amount', multi="residual", help="The residual amount on a receivable or payable of a journal entry expressed in the company currency."),
|
||||
'currency_id': fields.many2one('res.currency', 'Currency', help="The optional other currency if it is a multi-currency entry."),
|
||||
'journal_id': fields.related('move_id', 'journal_id', string='Journal', type='many2one', relation='account.journal', required=True, select=True, readonly=True,
|
||||
'journal_id': fields.related('move_id', 'journal_id', string='Journal', type='many2one', relation='account.journal', required=True, select=True,
|
||||
store = {
|
||||
'account.move': (_get_move_lines, ['journal_id'], 20)
|
||||
}),
|
||||
'period_id': fields.related('move_id', 'period_id', string='Period', type='many2one', relation='account.period', required=True, select=True, readonly=True,
|
||||
'period_id': fields.related('move_id', 'period_id', string='Period', type='many2one', relation='account.period', required=True, select=True,
|
||||
store = {
|
||||
'account.move': (_get_move_lines, ['period_id'], 20)
|
||||
}),
|
||||
|
@ -537,7 +483,7 @@ class account_move_line(osv.osv):
|
|||
context or {}
|
||||
period_obj = self.pool.get('account.period')
|
||||
dt = time.strftime('%Y-%m-%d')
|
||||
if ('journal_id' in context) and ('period_id' in context):
|
||||
if context.get('journal_id') and context.get('period_id'):
|
||||
cr.execute('SELECT date FROM account_move_line ' \
|
||||
'WHERE journal_id = %s AND period_id = %s ' \
|
||||
'ORDER BY id DESC limit 1',
|
||||
|
@ -558,6 +504,38 @@ class account_move_line(osv.osv):
|
|||
cur = self.pool.get('account.journal').browse(cr, uid, context['journal_id']).currency
|
||||
return cur and cur.id or False
|
||||
|
||||
def _get_period(self, cr, uid, context=None):
|
||||
"""
|
||||
Return default account period value
|
||||
"""
|
||||
context = context or {}
|
||||
if context.get('period_id', False):
|
||||
return context['period_id']
|
||||
account_period_obj = self.pool.get('account.period')
|
||||
ids = account_period_obj.find(cr, uid, context=context)
|
||||
period_id = False
|
||||
if ids:
|
||||
period_id = ids[0]
|
||||
return period_id
|
||||
|
||||
def _get_journal(self, cr, uid, context=None):
|
||||
"""
|
||||
Return journal based on the journal type
|
||||
"""
|
||||
context = context or {}
|
||||
if context.get('journal_id', False):
|
||||
return context['journal_id']
|
||||
journal_id = False
|
||||
|
||||
journal_pool = self.pool.get('account.journal')
|
||||
if context.get('journal_type', False):
|
||||
jids = journal_pool.search(cr, uid, [('type','=', context.get('journal_type'))])
|
||||
if not jids:
|
||||
raise osv.except_osv(_('Configuration Error!'), _('Cannot find any account journal of %s type for this company.\n\nYou can create one in the menu: \nConfiguration/Journals/Journals.') % context.get('journal_type'))
|
||||
journal_id = jids[0]
|
||||
return journal_id
|
||||
|
||||
|
||||
_defaults = {
|
||||
'blocked': False,
|
||||
'centralisation': 'normal',
|
||||
|
@ -565,12 +543,12 @@ class account_move_line(osv.osv):
|
|||
'date_created': fields.date.context_today,
|
||||
'state': 'draft',
|
||||
'currency_id': _get_currency,
|
||||
'journal_id': lambda self, cr, uid, c: c.get('journal_id', False),
|
||||
'journal_id': _get_journal,
|
||||
'credit': 0.0,
|
||||
'debit': 0.0,
|
||||
'amount_currency': 0.0,
|
||||
'account_id': lambda self, cr, uid, c: c.get('account_id', False),
|
||||
'period_id': lambda self, cr, uid, c: c.get('period_id', False),
|
||||
'period_id': _get_period,
|
||||
'company_id': lambda self, cr, uid, c: self.pool.get('res.company')._company_default_get(cr, uid, 'account.move.line', context=c)
|
||||
}
|
||||
_order = "date desc, id desc"
|
||||
|
@ -675,6 +653,12 @@ class account_move_line(osv.osv):
|
|||
}
|
||||
return result
|
||||
|
||||
def onchange_account_id(self, cr, uid, ids, account_id, context=None):
|
||||
res = {'value': {}}
|
||||
if account_id:
|
||||
res['value']['account_tax_id'] = [x.id for x in self.pool.get('account.account').browse(cr, uid, account_id, context=context).tax_ids]
|
||||
return res
|
||||
|
||||
def onchange_partner_id(self, cr, uid, ids, move_id, partner_id, account_id=None, debit=0, credit=0, date=False, journal=False):
|
||||
partner_obj = self.pool.get('res.partner')
|
||||
payment_term_obj = self.pool.get('account.payment.term')
|
||||
|
@ -999,127 +983,6 @@ class account_move_line(osv.osv):
|
|||
'context':context,
|
||||
}
|
||||
|
||||
def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
|
||||
journal_pool = self.pool.get('account.journal')
|
||||
if context is None:
|
||||
context = {}
|
||||
result = super(account_move_line, self).fields_view_get(cr, uid, view_id, view_type, context=context, toolbar=toolbar, submenu=submenu)
|
||||
if (view_type != 'tree') or view_id:
|
||||
#Remove the toolbar from the form view
|
||||
if view_type == 'form':
|
||||
if result.get('toolbar', False):
|
||||
result['toolbar']['action'] = []
|
||||
#Restrict the list of journal view in search view
|
||||
if view_type == 'search' and result['fields'].get('journal_id', False):
|
||||
result['fields']['journal_id']['selection'] = journal_pool.name_search(cr, uid, '', [], context=context)
|
||||
ctx = context.copy()
|
||||
#we add the refunds journal in the selection field of journal
|
||||
if context.get('journal_type', False) == 'sale':
|
||||
ctx.update({'journal_type': 'sale_refund'})
|
||||
result['fields']['journal_id']['selection'] += journal_pool.name_search(cr, uid, '', [], context=ctx)
|
||||
elif context.get('journal_type', False) == 'purchase':
|
||||
ctx.update({'journal_type': 'purchase_refund'})
|
||||
result['fields']['journal_id']['selection'] += journal_pool.name_search(cr, uid, '', [], context=ctx)
|
||||
return result
|
||||
if context.get('view_mode', False):
|
||||
return result
|
||||
fld = []
|
||||
flds = []
|
||||
title = _("Accounting Entries") # self.view_header_get(cr, uid, view_id, view_type, context)
|
||||
|
||||
ids = journal_pool.search(cr, uid, [], context=context)
|
||||
journals = journal_pool.browse(cr, uid, ids, context=context)
|
||||
for journal in journals:
|
||||
for field in journal.view_id.columns_id:
|
||||
# sometimes, it's possible that a defined column is not loaded (the module containing
|
||||
# this field is not loaded) when we make an update.
|
||||
if field.field not in self._columns:
|
||||
continue
|
||||
|
||||
if not field.field in flds:
|
||||
fld.append((field.field, field.sequence))
|
||||
flds.append(field.field)
|
||||
|
||||
default_columns = {
|
||||
'period_id': 3,
|
||||
'journal_id': 10,
|
||||
'state': sys.maxint,
|
||||
}
|
||||
for d in default_columns:
|
||||
if d not in flds:
|
||||
fld.append((d, default_columns[d]))
|
||||
flds.append(d)
|
||||
|
||||
fld = sorted(fld, key=itemgetter(1))
|
||||
widths = {
|
||||
'statement_id': 50,
|
||||
'state': 60,
|
||||
'tax_code_id': 50,
|
||||
'move_id': 40,
|
||||
}
|
||||
|
||||
document = etree.Element('tree', string=title, editable="top",
|
||||
on_write="on_create_write",
|
||||
colors="red:state=='draft';black:state=='valid'")
|
||||
fields_get = self.fields_get(cr, uid, flds, context)
|
||||
for field, _seq in fld:
|
||||
# TODO add string to element
|
||||
f = etree.SubElement(document, 'field', name=field)
|
||||
|
||||
if field == 'debit':
|
||||
f.set('sum', _("Total debit"))
|
||||
|
||||
elif field == 'credit':
|
||||
f.set('sum', _("Total credit"))
|
||||
|
||||
elif field == 'move_id':
|
||||
f.set('required', 'False')
|
||||
|
||||
elif field == 'account_tax_id':
|
||||
f.set('domain', "[('parent_id', '=' ,False)]")
|
||||
f.set('context', "{'journal_id': journal_id}")
|
||||
|
||||
elif field == 'account_id' and journal.id:
|
||||
f.set('domain', "[('journal_id', '=', journal_id),('type','!=','view'), ('type','!=','closed')]")
|
||||
f.set('on_change', 'onchange_account_id(account_id, partner_id)')
|
||||
|
||||
elif field == 'partner_id':
|
||||
f.set('on_change', 'onchange_partner_id(move_id, partner_id, account_id, debit, credit, date, journal_id)')
|
||||
|
||||
elif field == 'journal_id':
|
||||
f.set('context', "{'journal_id': journal_id}")
|
||||
|
||||
elif field == 'statement_id':
|
||||
f.set('domain', "[('state', '!=', 'confirm'),('journal_id.type', '=', 'bank')]")
|
||||
f.set('invisible', 'True')
|
||||
|
||||
elif field == 'date':
|
||||
f.set('on_change', 'onchange_date(date)')
|
||||
|
||||
elif field == 'analytic_account_id':
|
||||
# Currently it is not working due to being executed by superclass's fields_view_get
|
||||
# f.set('groups', 'analytic.group_analytic_accounting')
|
||||
pass
|
||||
|
||||
if field in ('amount_currency', 'currency_id'):
|
||||
f.set('on_change', 'onchange_currency(account_id, amount_currency, currency_id, date, journal_id)')
|
||||
f.set('attrs', "{'readonly': [('state', '=', 'valid')]}")
|
||||
|
||||
if field in widths:
|
||||
f.set('width', str(widths[field]))
|
||||
|
||||
if field in ('journal_id',):
|
||||
f.set("invisible", "context.get('journal_id', False)")
|
||||
elif field in ('period_id',):
|
||||
f.set("invisible", "context.get('period_id', False)")
|
||||
|
||||
orm.setup_modifiers(f, fields_get[field], context=context,
|
||||
in_tree_view=True)
|
||||
|
||||
result['arch'] = etree.tostring(document, pretty_print=True)
|
||||
result['fields'] = fields_get
|
||||
return result
|
||||
|
||||
def _check_moves(self, cr, uid, context=None):
|
||||
# use the first move ever created for this journal and period
|
||||
if context is None:
|
||||
|
@ -1414,6 +1277,19 @@ class account_move_line(osv.osv):
|
|||
move_obj.button_validate(cr,uid, [vals['move_id']], context)
|
||||
return result
|
||||
|
||||
def list_periods(self, cr, uid, context=None):
|
||||
ids = self.pool.get('account.period').search(cr,uid,[])
|
||||
return self.pool.get('account.period').name_get(cr, uid, ids, context=context)
|
||||
|
||||
def list_journals(self, cr, uid, context=None):
|
||||
ng = dict(self.pool.get('account.journal').name_search(cr,uid,'',[]))
|
||||
ids = ng.keys()
|
||||
result = []
|
||||
for journal in self.pool.get('account.journal').browse(cr, uid, ids, context=context):
|
||||
result.append((journal.id,ng[journal.id],journal.type,
|
||||
bool(journal.currency),bool(journal.analytic_journal_id)))
|
||||
return result
|
||||
|
||||
account_move_line()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -59,412 +59,6 @@
|
|||
<field eval="account_payment_term_advance" name="payment_id"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Account Journal View
|
||||
-->
|
||||
<record id="account_journal_bank_view" model="account.journal.view">
|
||||
<field name="name">Bank/Cash Journal View</field>
|
||||
</record>
|
||||
<record id="bank_col1" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Date</field>
|
||||
<field name="field">date</field>
|
||||
<field eval="True" name="required"/>
|
||||
<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">Journal Entry</field>
|
||||
<field name="field">move_id</field>
|
||||
<field eval="False" name="required"/>
|
||||
<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="7" name="sequence"/>
|
||||
<field eval="True" name="required"/>
|
||||
</record>
|
||||
<record id="bank_col4" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Statement</field>
|
||||
<field name="field">statement_id</field>
|
||||
<field eval="4" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col6" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Partner</field>
|
||||
<field name="field">partner_id</field>
|
||||
<field eval="5" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col5" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Account</field>
|
||||
<field name="field">account_id</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="6" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col9" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Debit</field>
|
||||
<field name="field">debit</field>
|
||||
<field eval="11" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col10" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Credit</field>
|
||||
<field name="field">credit</field>
|
||||
<field eval="12" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col3" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Ref</field>
|
||||
<field name="field">ref</field>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col23" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Status</field>
|
||||
<field name="field">state</field>
|
||||
<field eval="19" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col20" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Reconcile</field>
|
||||
<field name="field">reconcile_id</field>
|
||||
<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>
|
||||
<record id="bank_col1_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Date</field>
|
||||
<field name="field">date</field>
|
||||
<field eval="True" name="required"/>
|
||||
<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">Journal Entry</field>
|
||||
<field name="field">move_id</field>
|
||||
<field eval="False" name="required"/>
|
||||
<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="7" name="sequence"/>
|
||||
<field eval="True" name="required"/>
|
||||
</record>
|
||||
<record id="bank_col4_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Statement</field>
|
||||
<field name="field">statement_id</field>
|
||||
<field eval="4" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col6_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Partner</field>
|
||||
<field name="field">partner_id</field>
|
||||
<field eval="5" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col5_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Account</field>
|
||||
<field name="field">account_id</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="6" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col17_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Currency Amt.</field>
|
||||
<field name="field">amount_currency</field>
|
||||
<field eval="9" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col18_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Currency</field>
|
||||
<field name="field">currency_id</field>
|
||||
<field eval="10" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col9_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Debit</field>
|
||||
<field name="field">debit</field>
|
||||
<field eval="11" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col10_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Credit</field>
|
||||
<field name="field">credit</field>
|
||||
<field eval="12" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col3_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Ref</field>
|
||||
<field name="field">ref</field>
|
||||
<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"/>
|
||||
<field name="name">Status</field>
|
||||
<field name="field">state</field>
|
||||
<field eval="19" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col20_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Reconcile</field>
|
||||
<field name="field">reconcile_id</field>
|
||||
<field eval="20" name="sequence"/>
|
||||
</record>
|
||||
|
||||
|
||||
<record id="account_journal_view" model="account.journal.view">
|
||||
<field name="name">Journal View</field>
|
||||
</record>
|
||||
<record id="journal_col1" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Date</field>
|
||||
<field name="field">date</field>
|
||||
<field eval="True" name="required"/>
|
||||
<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">Journal Entry</field>
|
||||
<field name="field">move_id</field>
|
||||
<field eval="False" name="required"/>
|
||||
<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="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="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="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="7" name="sequence"/>
|
||||
<field eval="True" name="required"/>
|
||||
</record>
|
||||
<record id="journal_col8" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Debit</field>
|
||||
<field name="field">debit</field>
|
||||
<field eval="11" name="sequence"/>
|
||||
</record>
|
||||
<record id="journal_col9" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Credit</field>
|
||||
<field name="field">credit</field>
|
||||
<field eval="12" name="sequence"/>
|
||||
</record>
|
||||
<record id="journal_col11" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Analytic Account</field>
|
||||
<field name="field">analytic_account_id</field>
|
||||
<field eval="14" name="sequence"/>
|
||||
</record>
|
||||
<record id="journal_col24" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Status</field>
|
||||
<field name="field">state</field>
|
||||
<field eval="19" name="sequence"/>
|
||||
</record>
|
||||
|
||||
|
||||
<record id="account_sp_journal_view" model="account.journal.view">
|
||||
<field name="name">Sale/Purchase Journal View</field>
|
||||
</record>
|
||||
<record id="sp_journal_col1" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Date</field>
|
||||
<field name="field">date</field>
|
||||
<field eval="True" name="required"/>
|
||||
<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">Journal Entry</field>
|
||||
<field name="field">move_id</field>
|
||||
<field eval="False" name="required"/>
|
||||
<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="2" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col4" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Account</field>
|
||||
<field name="field">account_id</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="6" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col5" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Partner</field>
|
||||
<field name="field">partner_id</field>
|
||||
<field eval="5" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col6" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Name</field>
|
||||
<field name="field">name</field>
|
||||
<field eval="7" name="sequence"/>
|
||||
<field eval="True" name="required"/>
|
||||
</record>
|
||||
<record id="sp_journal_col7" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Due Date</field>
|
||||
<field name="field">date_maturity</field>
|
||||
<field eval="8" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col8" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Debit</field>
|
||||
<field name="field">debit</field>
|
||||
<field eval="11" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col9" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Credit</field>
|
||||
<field name="field">credit</field>
|
||||
<field eval="12" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col10" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Tax</field>
|
||||
<field name="field">account_tax_id</field>
|
||||
<field eval="13" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col11" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Analytic Account</field>
|
||||
<field name="field">analytic_account_id</field>
|
||||
<field eval="14" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col24" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Status</field>
|
||||
<field name="field">state</field>
|
||||
<field eval="19" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col20" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Reconcile</field>
|
||||
<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>
|
||||
<record id="sp_refund_journal_col1" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Date</field>
|
||||
<field name="field">date</field>
|
||||
<field eval="True" name="required"/>
|
||||
<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">Journal Entry</field>
|
||||
<field name="field">move_id</field>
|
||||
<field eval="False" name="required"/>
|
||||
<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="2" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col4" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Account</field>
|
||||
<field name="field">account_id</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="6" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col5" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Partner</field>
|
||||
<field name="field">partner_id</field>
|
||||
<field eval="5" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col6" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Name</field>
|
||||
<field name="field">name</field>
|
||||
<field eval="7" name="sequence"/>
|
||||
<field eval="True" name="required"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col7" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Due Date</field>
|
||||
<field name="field">date_maturity</field>
|
||||
<field eval="8" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col8" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Debit</field>
|
||||
<field name="field">debit</field>
|
||||
<field eval="11" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col9" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Credit</field>
|
||||
<field name="field">credit</field>
|
||||
<field eval="12" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col10" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Tax</field>
|
||||
<field name="field">account_tax_id</field>
|
||||
<field eval="13" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col11" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Analytic Account</field>
|
||||
<field name="field">analytic_account_id</field>
|
||||
<field eval="14" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col24" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Status</field>
|
||||
<field name="field">state</field>
|
||||
<field eval="19" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col20" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Reconcile</field>
|
||||
<field name="field">reconcile_id</field>
|
||||
<field eval="20" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Account Journal Sequences
|
||||
-->
|
||||
|
|
|
@ -312,7 +312,6 @@
|
|||
<field name="name">Sales Journal - (test)</field>
|
||||
<field name="code">TSAJ</field>
|
||||
<field name="type">sale</field>
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_sale_journal"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="a_sale"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="a_sale"/>
|
||||
|
@ -323,7 +322,6 @@
|
|||
<field name="name">Sales Credit Note Journal - (test)</field>
|
||||
<field name="code">TSCNJ</field>
|
||||
<field name="type">sale_refund</field>
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_refund_sales_journal"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="a_sale"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="a_sale"/>
|
||||
|
@ -335,7 +333,6 @@
|
|||
<field name="name">Expenses Journal - (test)</field>
|
||||
<field name="code">TEXJ</field>
|
||||
<field name="type">purchase</field>
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_purchase_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="a_expense"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="a_expense"/>
|
||||
|
@ -346,7 +343,6 @@
|
|||
<field name="name">Expenses Credit Notes Journal - (test)</field>
|
||||
<field name="code">TECNJ</field>
|
||||
<field name="type">purchase_refund</field>
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_refund_purchase_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="a_expense"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="a_expense"/>
|
||||
|
@ -358,7 +354,6 @@
|
|||
<field name="name">Bank Journal - (test)</field>
|
||||
<field name="code">TBNK</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="sequence_bank_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="bnk"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="bnk"/>
|
||||
|
@ -369,7 +364,6 @@
|
|||
<field name="name">Checks Journal - (test)</field>
|
||||
<field name="code">TCHK</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="sequence_check_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="cash"/>
|
||||
|
@ -390,7 +384,6 @@
|
|||
that test OpenERP arrive directly in the touchscreen UI.
|
||||
-->
|
||||
<field name="cash_control" eval="False"/>
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="sequence_cash_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="cash"/>
|
||||
|
@ -401,7 +394,6 @@
|
|||
<field name="name">Miscellaneous Journal - (test)</field>
|
||||
<field name="code">TMIS</field>
|
||||
<field name="type">general</field>
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_miscellaneous_journal"/>
|
||||
<field name="analytic_journal_id" ref="sit"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
|
@ -410,7 +402,6 @@
|
|||
<field name="name">Opening Entries Journal - (test)</field>
|
||||
<field name="code">TOEJ</field>
|
||||
<field name="type">situation</field>
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_opening_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="o_income"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="o_expense"/>
|
||||
|
@ -422,7 +413,6 @@
|
|||
<field name="name">USD Bank Journal - (test)</field>
|
||||
<field name="code">TUBK</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="usd_bnk"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="usd_bnk"/>
|
||||
<field name="currency" ref="base.USD"/>
|
||||
|
|
|
@ -29,6 +29,7 @@ class res_currency_account(osv.osv):
|
|||
if context is None:
|
||||
context = {}
|
||||
rate = super(res_currency_account, self)._get_conversion_rate(cr, uid, from_currency, to_currency, context=context)
|
||||
#process the case where the account doesn't work with an outgoing currency rate method 'at date' but 'average'
|
||||
account = context.get('res.currency.compute.account')
|
||||
account_invert = context.get('res.currency.compute.account_invert')
|
||||
if account and account.currency_mode == 'average' and account.currency_id:
|
||||
|
|
|
@ -7,8 +7,6 @@ access_account_tax_internal_user,account.tax internal user,model_account_tax,bas
|
|||
access_account_account,account.account,model_account_account,account.group_account_user,1,0,0,0
|
||||
access_account_account_user,account.account user,model_account_account,base.group_user,1,0,0,0
|
||||
access_account_account_partner_manager,account.account partner manager,model_account_account,base.group_partner_manager,1,0,0,0
|
||||
access_account_journal_view,account.journal.view,model_account_journal_view,account.group_account_user,1,0,0,0
|
||||
access_account_journal_column,account.journal.column,model_account_journal_column,account.group_account_user,1,0,0,0
|
||||
access_account_journal_period_manager,account.journal.period manager,model_account_journal_period,account.group_account_manager,1,0,0,0
|
||||
access_account_tax_code,account.tax.code,model_account_tax_code,account.group_account_invoice,1,0,0,0
|
||||
access_account_tax,account.tax,model_account_tax,account.group_account_invoice,1,0,0,0
|
||||
|
@ -83,8 +81,6 @@ access_account_entries_report_employee,account.entries.report employee,model_acc
|
|||
access_analytic_entries_report_manager,analytic.entries.report,model_analytic_entries_report,account.group_account_manager,1,0,0,0
|
||||
access_account_cashbox_line,account.cashbox.line,model_account_cashbox_line,account.group_account_user,1,1,1,1
|
||||
access_account_journal_cashbox_line,account.journal.cashbox.line,model_account_journal_cashbox_line,account.group_account_user,1,1,1,0
|
||||
access_account_journal_view_invoice,account.journal.view invoice,model_account_journal_view,account.group_account_invoice,1,1,1,1
|
||||
access_account_journal_column_invoice,account.journal.column invoice,model_account_journal_column,account.group_account_invoice,1,1,1,1
|
||||
access_account_invoice_tax_accountant,account.invoice.tax accountant,model_account_invoice_tax,account.group_account_user,1,0,0,0
|
||||
access_account_move_reconcile_manager,account.move.reconcile manager,model_account_move_reconcile,account.group_account_manager,1,0,0,0
|
||||
access_account_analytic_line_invoice,account.analytic.line invoice,model_account_analytic_line,account.group_account_invoice,1,1,1,1
|
||||
|
|
|
|
@ -0,0 +1,99 @@
|
|||
openerp.account.quickadd = function (instance) {
|
||||
var _t = instance.web._t,
|
||||
_lt = instance.web._lt;
|
||||
var QWeb = instance.web.qweb;
|
||||
|
||||
instance.web.account = instance.web.account || {};
|
||||
|
||||
instance.web.views.add('tree_account_move_line_quickadd', 'instance.web.account.QuickAddListView');
|
||||
instance.web.account.QuickAddListView = instance.web.ListView.extend({
|
||||
init: function() {
|
||||
this._super.apply(this, arguments);
|
||||
this.journals = [];
|
||||
this.periods = [];
|
||||
this.current_journal = null;
|
||||
this.current_period = null;
|
||||
this.default_period = null;
|
||||
this.default_journal = null;
|
||||
this.current_journal_type = null;
|
||||
this.current_journal_currency = null;
|
||||
this.current_journal_analytic = null;
|
||||
},
|
||||
start:function(){
|
||||
var tmp = this._super.apply(this, arguments);
|
||||
var self = this;
|
||||
this.$el.parent().prepend(QWeb.render("AccountMoveLineQuickAdd", {widget: this}));
|
||||
|
||||
this.$el.parent().find('.oe_account_select_journal').change(function() {
|
||||
self.current_journal = this.value === '' ? null : parseInt(this.value);
|
||||
self.do_search(self.last_domain, self.last_context, self.last_group_by);
|
||||
});
|
||||
this.$el.parent().find('.oe_account_select_period').change(function() {
|
||||
self.current_period = this.value === '' ? null : parseInt(this.value);
|
||||
self.do_search(self.last_domain, self.last_context, self.last_group_by);
|
||||
});
|
||||
this.on('edit:after', this, function () {
|
||||
self.$el.parent().find('.oe_account_select_journal').attr('disabled', 'disabled');
|
||||
self.$el.parent().find('.oe_account_select_period').attr('disabled', 'disabled');
|
||||
});
|
||||
this.on('save:after cancel:after', this, function () {
|
||||
self.$el.parent().find('.oe_account_select_journal').removeAttr('disabled');
|
||||
self.$el.parent().find('.oe_account_select_period').removeAttr('disabled');
|
||||
});
|
||||
var mod = new instance.web.Model("account.move.line", self.dataset.context, self.dataset.domain);
|
||||
mod.call("default_get", [['journal_id','period_id'],self.dataset.context]).then(function(result) {
|
||||
self.current_period = result['period_id'];
|
||||
self.current_journal = result['journal_id'];
|
||||
});
|
||||
return tmp;
|
||||
},
|
||||
do_search: function(domain, context, group_by) {
|
||||
var self = this;
|
||||
this.last_domain = domain;
|
||||
this.last_context = context;
|
||||
this.last_group_by = group_by;
|
||||
this.old_search = _.bind(this._super, this);
|
||||
var mod = new instance.web.Model("account.move.line", context, domain);
|
||||
return $.when(mod.call("list_journals", []).then(function(result) {
|
||||
self.journals = result;
|
||||
}),mod.call("list_periods", []).then(function(result) {
|
||||
self.periods = result;
|
||||
})).then(function () {
|
||||
var o;
|
||||
self.$el.parent().find('.oe_account_select_journal').children().remove().end();
|
||||
self.$el.parent().find('.oe_account_select_journal').append(new Option('', ''));
|
||||
for (var i = 0;i < self.journals.length;i++){
|
||||
o = new Option(self.journals[i][1], self.journals[i][0]);
|
||||
if (self.journals[i][0] === self.current_journal){
|
||||
self.current_journal_type = self.journals[i][2];
|
||||
self.current_journal_currency = self.journals[i][3];
|
||||
self.current_journal_analytic = self.journals[i][4];
|
||||
$(o).attr('selected',true);
|
||||
}
|
||||
self.$el.parent().find('.oe_account_select_journal').append(o);
|
||||
}
|
||||
self.$el.parent().find('.oe_account_select_period').children().remove().end();
|
||||
self.$el.parent().find('.oe_account_select_period').append(new Option('', ''));
|
||||
for (var i = 0;i < self.periods.length;i++){
|
||||
o = new Option(self.periods[i][1], self.periods[i][0]);
|
||||
self.$el.parent().find('.oe_account_select_period').append(o);
|
||||
}
|
||||
self.$el.parent().find('.oe_account_select_period').val(self.current_period).attr('selected',true);
|
||||
return self.search_by_journal_period();
|
||||
});
|
||||
},
|
||||
search_by_journal_period: function() {
|
||||
var self = this;
|
||||
var domain = [];
|
||||
if (self.current_journal !== null) domain.push(["journal_id", "=", self.current_journal]);
|
||||
if (self.current_period !== null) domain.push(["period_id", "=", self.current_period]);
|
||||
self.last_context["journal_id"] = self.current_journal === null ? false : self.current_journal;
|
||||
if (self.current_period === null) delete self.last_context["period_id"];
|
||||
else self.last_context["period_id"] = self.current_period;
|
||||
self.last_context["journal_type"] = self.current_journal_type;
|
||||
self.last_context["currency"] = self.current_journal_currency;
|
||||
self.last_context["analytic_journal_id"] = self.current_journal_analytic;
|
||||
return self.old_search(new instance.web.CompoundDomain(self.last_domain, domain), self.last_context, self.last_group_by);
|
||||
},
|
||||
});
|
||||
};
|
|
@ -1,9 +1,10 @@
|
|||
openerp.account = function (instance) {
|
||||
openerp.account.quickadd(instance);
|
||||
var _t = instance.web._t,
|
||||
_lt = instance.web._lt;
|
||||
var QWeb = instance.web.qweb;
|
||||
|
||||
instance.web.account = {};
|
||||
instance.web.account = instance.web.account || {};
|
||||
|
||||
instance.web.views.add('tree_account_reconciliation', 'instance.web.account.ReconciliationListView');
|
||||
instance.web.account.ReconciliationListView = instance.web.ListView.extend({
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<templates id="template" xml:space="preserve">
|
||||
|
||||
<t t-name="AccountMoveLineQuickAdd">
|
||||
<div class="oe_account_quickadd ui-toolbar" style="margin-bottom:0px;">
|
||||
<div class="oe_form_dropdown_section">
|
||||
<h4>Period :</h4>
|
||||
<select class="oe_account_select_period">
|
||||
|
||||
</select>
|
||||
</div>
|
||||
<div class="oe_form_dropdown_section">
|
||||
<h4>Journal :</h4>
|
||||
<select class="oe_account_select_journal" >
|
||||
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</t>
|
||||
|
||||
</templates>
|
|
@ -29,7 +29,6 @@
|
|||
default_debit_account_id: cash
|
||||
default_credit_account_id: cash
|
||||
company_id: base.main_company
|
||||
view_id: account_journal_bank_view
|
||||
centralisation: 1
|
||||
-
|
||||
I called the Generate Fiscalyear Opening Entries wizard
|
||||
|
@ -47,47 +46,4 @@
|
|||
!python {model: account.fiscalyear.close}: |
|
||||
self.data_save(cr, uid, [ref("account_fiscalyear_close_0")], {"lang": 'en_US',
|
||||
"active_model": "ir.ui.menu", "active_ids": [ref("account.menu_wizard_fy_close")],
|
||||
"tz": False, "active_id": ref("account.menu_wizard_fy_close"), })
|
||||
|
||||
-
|
||||
I check the opening entries By using "Entries by Line wizard"
|
||||
-
|
||||
!record {model: account.move.journal, id: account_move_journal_0}:
|
||||
{}
|
||||
-
|
||||
I clicked on Open Journal Button to check the entries
|
||||
|
||||
-
|
||||
!python {model: account.move.journal}: |
|
||||
self.action_open_window(cr, uid, [ref("account_move_journal_0")], {"lang": 'en_US',
|
||||
"active_model": "ir.ui.menu", "active_ids": [ref("account.menu_action_move_journal_line_form")],
|
||||
"tz": False, "active_id": ref("account.menu_action_move_journal_line_form"),
|
||||
})
|
||||
|
||||
#-
|
||||
# In order to test Cancel Opening Entries I cancelled the opening entries created for "Fiscal Year 2011"
|
||||
#-
|
||||
# !record {model: account.open.closed.fiscalyear, id: account_open_closed_fiscalyear_1}:
|
||||
# fyear_id: account.data_fiscalyear
|
||||
#-
|
||||
# I clicked on Open button
|
||||
#-
|
||||
# !python {model: account.open.closed.fiscalyear}: |
|
||||
# self.remove_entries(cr, uid, [ref("account_open_closed_fiscalyear_1")], {"lang":
|
||||
# 'en_US', "active_model": "ir.ui.menu", "active_ids": [ref("account.menu_wizard_open_closed_fy")],
|
||||
# "tz": False, "active_id": ref("account.menu_wizard_open_closed_fy"), })
|
||||
#-
|
||||
# I check the opening entries By using "Entries by Line wizard"
|
||||
#-
|
||||
# !record {model: account.move.journal, id: account_move_journal_2}:
|
||||
# journal_id: account.sales_journal
|
||||
# period_id: account_period_jan11
|
||||
#
|
||||
#-
|
||||
# I checked the Opening entries are cancelled successfully
|
||||
#-
|
||||
# !python {model: account.move.journal}: |
|
||||
# self.action_open_window(cr, uid, [ref("account_move_journal_2")], {"lang": 'en_US',
|
||||
# "active_model": "ir.ui.menu", "active_ids": [ref("account.menu_action_move_journal_line_form")],
|
||||
# "tz": False, "active_id": ref("account.menu_action_move_journal_line_form"),
|
||||
# })
|
||||
"tz": False, "active_id": ref("account.menu_wizard_fy_close"), })
|
|
@ -30,10 +30,9 @@
|
|||
-
|
||||
!python {model: account.move.line}: |
|
||||
import time
|
||||
date = self._get_date(cr, uid, {'lang': u'en_US', 'normal_view': False, 'active_model': 'ir.ui.menu',
|
||||
'search_default_journal_id': 1, 'journal_type': 'sale', 'search_default_period_id': 6, 'journal_id': 1, 'view_mode': False,
|
||||
'visible_id': 1, 'period_id': 6, 'tz': False, 'active_ids': [ref('menu_action_account_moves_all')],
|
||||
'search_default_posted': 0, 'active_id': ref('menu_action_account_moves_all')})
|
||||
date = self._get_date(cr, uid, {
|
||||
'journal_id': 1,
|
||||
'period_id': 6,})
|
||||
partner = self.onchange_partner_id(cr, uid, [], False, ref('base.res_partner_12'), ref('account.cash'), debit=0, credit=2000, date=date, journal=False)
|
||||
account = self.onchange_account_id(cr, uid, [], account_id=ref('account.a_recv'), partner_id= ref('base.res_partner_12'))
|
||||
vals = {
|
||||
|
@ -62,11 +61,10 @@
|
|||
!python {model: account.move.line}: |
|
||||
ids = self._balance_search(cr, uid, self, 'balance', [('balance', '=', 2000.0)], None, {'lang': u'en_US', 'tz': False, 'active_model': 'ir.ui.menu',
|
||||
'search_default_journal_id': 1, 'journal_type': 'sale', 'search_default_period_id': 6, 'view_mode': False, 'visible_id': 1,
|
||||
'active_ids': [ref('menu_action_account_moves_all')], 'search_default_posted': 0, 'active_id': ref('menu_action_account_moves_all')})
|
||||
'search_default_posted': 0})
|
||||
bal = self._balance(cr, uid, ids[0][2], 'balance', None,{'lang': u'en_US', 'tz': False, 'active_model': 'ir.ui.menu',
|
||||
'search_default_journal_id': 1, 'journal_type': 'sale', 'search_default_period_id': 6, 'view_mode': False,
|
||||
'visible_id': 1, 'active_ids': [ref('menu_action_account_moves_all')], 'search_default_posted': 0,
|
||||
'active_id': ref('menu_action_account_moves_all')})
|
||||
'visible_id': 1, 'search_default_posted': 0})
|
||||
assert bal, 'Balance has not been computed correctly'
|
||||
-
|
||||
I check that Initially account move state is "Draft"
|
||||
|
|
|
@ -31,7 +31,6 @@ import account_reconcile_partner_process
|
|||
import account_reconcile
|
||||
import account_unreconcile
|
||||
import account_invoice_refund
|
||||
import account_move_journal
|
||||
import account_journal_select
|
||||
import account_move_bank_reconcile
|
||||
import account_subscription_generate
|
||||
|
|
|
@ -1,194 +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/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
from lxml import etree
|
||||
|
||||
from osv import osv, fields
|
||||
from tools.translate import _
|
||||
import tools
|
||||
|
||||
class account_move_journal(osv.osv_memory):
|
||||
_name = "account.move.journal"
|
||||
_description = "Move journal"
|
||||
|
||||
_columns = {
|
||||
'target_move': fields.selection([('posted', 'All Posted Entries'),
|
||||
('all', 'All Entries'),
|
||||
], 'Target Moves', required=True),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
'target_move': 'all'
|
||||
}
|
||||
def _get_period(self, cr, uid, context=None):
|
||||
"""
|
||||
Return default account period value
|
||||
"""
|
||||
account_period_obj = self.pool.get('account.period')
|
||||
ids = account_period_obj.find(cr, uid, context=context)
|
||||
period_id = False
|
||||
if ids:
|
||||
period_id = ids[0]
|
||||
return period_id
|
||||
|
||||
def _get_journal(self, cr, uid, context=None):
|
||||
"""
|
||||
Return journal based on the journal type
|
||||
"""
|
||||
|
||||
journal_id = False
|
||||
|
||||
journal_pool = self.pool.get('account.journal')
|
||||
if context.get('journal_type', False):
|
||||
jids = journal_pool.search(cr, uid, [('type','=', context.get('journal_type'))])
|
||||
if not jids:
|
||||
raise osv.except_osv(_('Configuration Error!'), _('Cannot find any account journal of %s type for this company.\n\nYou can create one in the menu: \nConfiguration/Journals/Journals.') % context.get('journal_type'))
|
||||
journal_id = jids[0]
|
||||
|
||||
return journal_id
|
||||
|
||||
def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
|
||||
"""
|
||||
Returns views and fields for current model where view will depend on {view_type}.
|
||||
@param cr: A database cursor
|
||||
@param user: ID of the user currently logged in
|
||||
@param view_id: list of fields, which required to read signatures
|
||||
@param view_type: defines a view type. it can be one of (form, tree, graph, calender, gantt, search, mdx)
|
||||
@param context: context arguments, like lang, time zone
|
||||
@param toolbar: contains a list of reports, wizards, and links related to current model
|
||||
|
||||
@return: Returns a dict that contains definition for fields, views, and toolbars
|
||||
"""
|
||||
if context is None:context = {}
|
||||
res = super(account_move_journal, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar,submenu=False)
|
||||
|
||||
if context:
|
||||
if not view_id:
|
||||
return res
|
||||
|
||||
period_pool = self.pool.get('account.period')
|
||||
journal_pool = self.pool.get('account.journal')
|
||||
|
||||
journal_id = self._get_journal(cr, uid, context)
|
||||
period_id = self._get_period(cr, uid, context)
|
||||
|
||||
journal = False
|
||||
if journal_id:
|
||||
journal = journal_pool.read(cr, uid, journal_id, ['name'], context=context).get('name',False)
|
||||
journal_string = _("Journal: %s") % tools.ustr(journal)
|
||||
else:
|
||||
journal_string = _("Journal: All")
|
||||
|
||||
period = False
|
||||
if period_id:
|
||||
period = period_pool.browse(cr, uid, period_id, context=context).name
|
||||
period_string = _("Period: %s") % tools.ustr(period)
|
||||
|
||||
open_string = _("Open")
|
||||
view = """<?xml version="1.0" encoding="utf-8"?>
|
||||
<form string="Standard entries" version="7.0">
|
||||
<group>
|
||||
<field name="target_move"/>
|
||||
</group>
|
||||
%s: <label string="%s"/>
|
||||
%s: <label string="%s"/>
|
||||
<footer>
|
||||
<button string="%s" name="action_open_window" default_focus="1" type="object" class="oe_highlight"/>
|
||||
or
|
||||
<button string="Cancel" class="oe_link" special="cancel"/>
|
||||
</footer>
|
||||
</form>""" % (_('Journal'), journal_string, _('Period'), period_string, open_string)
|
||||
|
||||
view = etree.fromstring(view.encode('utf8'))
|
||||
xarch, xfields = self._view_look_dom_arch(cr, uid, view, view_id, context=context)
|
||||
view = xarch
|
||||
res.update({
|
||||
'arch': view
|
||||
})
|
||||
return res
|
||||
|
||||
def action_open_window(self, cr, uid, ids, context=None):
|
||||
"""
|
||||
This function Open action move line window on given period and Journal/Payment Mode
|
||||
@param cr: the current row, from the database cursor,
|
||||
@param uid: the current user’s ID for security checks,
|
||||
@param ids: account move journal’s ID or list of IDs
|
||||
@return: dictionary of Open action move line window on given period and Journal/Payment Mode
|
||||
"""
|
||||
|
||||
period_pool = self.pool.get('account.journal.period')
|
||||
data_pool = self.pool.get('ir.model.data')
|
||||
journal_pool = self.pool.get('account.journal')
|
||||
account_period_obj = self.pool.get('account.period')
|
||||
|
||||
if context is None:
|
||||
context = {}
|
||||
|
||||
journal_id = self._get_journal(cr, uid, context)
|
||||
period_id = self._get_period(cr, uid, context)
|
||||
target_move = self.read(cr, uid, ids, ['target_move'], context=context)[0]['target_move']
|
||||
|
||||
name = _("Journal Items")
|
||||
if journal_id:
|
||||
ids = period_pool.search(cr, uid, [('journal_id', '=', journal_id), ('period_id', '=', period_id)], context=context)
|
||||
|
||||
if not ids:
|
||||
journal = journal_pool.browse(cr, uid, journal_id, context=context)
|
||||
period = account_period_obj.browse(cr, uid, period_id, context=context)
|
||||
|
||||
name = journal.name
|
||||
state = period.state
|
||||
|
||||
if state == 'done':
|
||||
raise osv.except_osv(_('User Error!'), _('This period is already closed.'))
|
||||
|
||||
company = period.company_id.id
|
||||
res = {
|
||||
'name': name,
|
||||
'period_id': period_id,
|
||||
'journal_id': journal_id,
|
||||
'company_id': company
|
||||
}
|
||||
period_pool.create(cr, uid, res,context=context)
|
||||
|
||||
ids = period_pool.search(cr, uid, [('journal_id', '=', journal_id), ('period_id', '=', period_id)], context=context)
|
||||
period = period_pool.browse(cr, uid, ids[0], context=context)
|
||||
name = (period.journal_id.code or '') + ':' + (period.period_id.code or '')
|
||||
|
||||
result = data_pool.get_object_reference(cr, uid, 'account', 'view_account_move_line_filter')
|
||||
res_id = result and result[1] or False
|
||||
move = 0
|
||||
if target_move == 'posted':
|
||||
move = 1
|
||||
return {
|
||||
'name': name,
|
||||
'view_type': 'form',
|
||||
'view_mode': 'tree,graph,form',
|
||||
'res_model': 'account.move.line',
|
||||
'view_id': False,
|
||||
'context': "{'search_default_posted': %d, 'search_default_journal_id':%d, 'search_default_period_id':%d}" % (move, journal_id, period_id),
|
||||
'type': 'ir.actions.act_window',
|
||||
'search_view_id': res_id
|
||||
}
|
||||
|
||||
account_move_journal()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
|
@ -1,16 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<record id="view_account_move_journal_form" model="ir.ui.view">
|
||||
<field name="name">account.move.journal.form</field>
|
||||
<field name="model">account.move.journal</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Standard Entries">
|
||||
<field name="target_move"/>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
|
@ -29,15 +29,6 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<record id="journal_col11" model="account.journal.column">
|
||||
<field eval=""""Analytic Distribution"""" name="name"/>
|
||||
<field eval="15" name="sequence"/>
|
||||
<field name="view_id" ref="account.account_journal_view"/>
|
||||
<field eval="0" name="required"/>
|
||||
<field eval=""""analytics_id"""" name="field"/>
|
||||
<field eval="0" name="readonly"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_move_line_form_inherit">
|
||||
<field name="name">account.move.line.form.inherit</field>
|
||||
<field name="model">account.move.line</field>
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
<field name="model">account.journal</field>
|
||||
<field name="inherit_id" ref="account.view_account_journal_form" />
|
||||
<field name="arch" type="xml">
|
||||
<field name="type" on_change="onchange_type(type, currency)" />
|
||||
<field name="type" />
|
||||
<field name="entry_posted" position="after">
|
||||
<field name="allow_check_writing" attrs="{'readonly':[('type','!=','bank')]}" />
|
||||
<field name="use_preprint_check" attrs="{'readonly':[('type','!=','bank')]}" />
|
||||
|
|
|
@ -127,7 +127,7 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_move_line_tree" model="ir.ui.view">
|
||||
<!-- <record id="view_move_line_tree" model="ir.ui.view">
|
||||
<field name="name">account.move.line.tree.followup</field>
|
||||
<field name="model">account.move.line</field>
|
||||
<field name="inherit_id" ref="account.view_move_line_tree"/>
|
||||
|
@ -137,7 +137,7 @@
|
|||
<field name="followup_line_id"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
</record> -->
|
||||
|
||||
<act_window domain="[('reconcile_id', '=', False),('account_id.type','=','receivable')]" id="act_account_partner_account_move_all" name="Receivable Items" res_model="account.move.line" src_model="" view_id="account_move_line_partner_tree"/>
|
||||
|
||||
|
|
|
@ -14,28 +14,16 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_move_line_tree_wiz">
|
||||
<!-- <record model="ir.ui.view" id="view_move_line_tree_wiz">
|
||||
<field name="name">account.move.line.tree</field>
|
||||
<field name="model">account.move.line</field>
|
||||
<field name="priority" eval="1"/>
|
||||
<field name="inherit_id" ref="account.view_move_line_tree"/>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Account Entry Line">
|
||||
<field name="partner_id"/>
|
||||
<field name="ref"/>
|
||||
<field name="name"/>
|
||||
<field name="journal_id"/>
|
||||
<field name="account_id"/>
|
||||
<field name="date_maturity"/>
|
||||
<field name="date"/>
|
||||
<field name="debit" sum="Total debit"/>
|
||||
<field name="credit" sum="Total credit"/>
|
||||
<field name="reconcile" position="after">
|
||||
<field name="amount_to_pay"/>
|
||||
<field name="amount_currency" groups="base.group_multi_currency"/>
|
||||
<field name="currency_id" groups="base.group_multi_currency"/>
|
||||
<field name="period_id" invisible="1"/>
|
||||
</tree>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
</record> -->
|
||||
|
||||
<menuitem id="menu_main_payment" name="Payment" parent="account.menu_finance" sequence="7"/>
|
||||
|
||||
|
|
|
@ -3,46 +3,7 @@
|
|||
<data>
|
||||
|
||||
<!--Account Journal Internal Number of account move line-->
|
||||
|
||||
<record id="sp_journal_col3" model="account.journal.column">
|
||||
<field name="view_id" ref="account.account_sp_journal_view"/>
|
||||
<field name="name">Internal Number</field>
|
||||
<field name="field">internal_sequence_number</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record id="journal_col1" model="account.journal.column">
|
||||
<field name="view_id" ref="account.account_journal_view"/>
|
||||
<field name="name">Internal Number</field>
|
||||
<field name="field">internal_sequence_number</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record id="bank_col3" model="account.journal.column">
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="name">Internal Number</field>
|
||||
<field name="field">internal_sequence_number</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record id="bank_col3_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account.account_journal_bank_view_multi"/>
|
||||
<field name="name">Internal Number</field>
|
||||
<field name="field">internal_sequence_number</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record id="sp_refund_journal_col3" model="account.journal.column">
|
||||
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
|
||||
<field name="name">Internal Number</field>
|
||||
<field name="field">internal_sequence_number</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record id="sequence_journal" model="ir.sequence.type">
|
||||
<field name="name">Account Journal</field>
|
||||
<field name="code">account.journal</field>
|
||||
|
|
|
@ -66,7 +66,6 @@
|
|||
default_credit_account_id: account_cash_usd_id
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
|
||||
-
|
||||
I create the first invoice on 1st January for 200 USD
|
||||
|
|
|
@ -23,7 +23,6 @@
|
|||
default_credit_account_id: account.cash
|
||||
currency: base.EUR
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create a bank journal with USD as currency
|
||||
-
|
||||
|
@ -37,7 +36,6 @@
|
|||
default_credit_account_id: account.cash
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create the first invoice on 1st January for 200 USD
|
||||
-
|
||||
|
|
|
@ -59,7 +59,6 @@
|
|||
default_debit_account_id: account.cash
|
||||
default_credit_account_id: account.cash
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create a bank journal with USD as currency
|
||||
-
|
||||
|
@ -73,7 +72,6 @@
|
|||
default_credit_account_id: account_cash_usd_id
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create the first invoice on 1st January for 200 USD
|
||||
-
|
||||
|
|
|
@ -59,7 +59,6 @@
|
|||
default_debit_account_id: account.cash
|
||||
default_credit_account_id: account.cash
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create a bank journal with USD as currency
|
||||
-
|
||||
|
@ -73,7 +72,6 @@
|
|||
default_credit_account_id: account_cash_usd_id
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create the first invoice on 1st January for 200 USD
|
||||
-
|
||||
|
|
|
@ -27,7 +27,6 @@
|
|||
default_debit_account_id: account.cash
|
||||
default_credit_account_id: account.cash
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create the first invoice on 1st January for 150 EUR
|
||||
-
|
||||
|
|
|
@ -61,7 +61,6 @@
|
|||
default_credit_account_id: account_cash_chf_id
|
||||
currency: base.CHF
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create the first invoice on 1st January for 200 CAD
|
||||
-
|
||||
|
|
|
@ -46,7 +46,6 @@
|
|||
default_debit_account_id: account.cash
|
||||
default_credit_account_id: account.cash
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create a bank journal with USD as currency
|
||||
-
|
||||
|
@ -60,7 +59,6 @@
|
|||
default_credit_account_id: account_cash_usd_id2
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I set the context as would do the action in supplier invoice menuitem
|
||||
-
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
default_credit_account_id: account_eur_usd_id
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create an invoice
|
||||
-
|
||||
|
|
|
@ -20,5 +20,3 @@ access_account_move_user,account.move.user,account.model_account_move,base.group
|
|||
access_account_move_line_user,account.move.line.user,account.model_account_move_line,base.group_hr_user,1,1,1,1
|
||||
access_account_analytic_line_user,account.ianalytic.line.user,account.model_account_analytic_line,base.group_hr_user,1,1,1,1
|
||||
access_account_journal_period_manager,account.journal.period.manager,account.model_account_journal_period,base.group_hr_manager,1,1,1,1
|
||||
hr.access_account_journal_view_hruser,account.journal.view hruser,account.model_account_journal_view,base.group_hr_user,1,0,0,0
|
||||
hr.access_account_journal_column_hruser,account.journal.column hruser,account.model_account_journal_column,base.group_hr_user,1,0,0,0
|
||||
|
|
|
|
@ -8,7 +8,5 @@ access_product_product_user,product.product user,product.model_product_product,b
|
|||
access_product_template_hr_timesheet,product.template.hr.timesheet,product.model_product_template,base.group_hr_user,1,1,1,1
|
||||
access_product_uom_hr_timesheet,product.uom.hr.timesheet,product.model_product_uom,base.group_hr_user,1,1,1,1
|
||||
access_account_fiscalyear_hr_user,account.account.fiscalyear.user,account.model_account_fiscalyear,base.group_hr_user,1,1,1,1
|
||||
hr.access_account_journal_view_hruser,account.journal.view hruser,account.model_account_journal_view,base.group_hr_user,1,0,0,0
|
||||
hr.access_account_journal_column_hruser,account.journal.column hruser,account.model_account_journal_column,base.group_hr_user,1,0,0,0
|
||||
access_hr_analytic_timesheet_user,hr.analytic.timesheet.user,model_hr_analytic_timesheet,base.group_user,1,1,1,0
|
||||
access_account_analytic_journal_user,account.account.analytic.journal.user,account.model_account_analytic_journal,base.group_user,1,0,0,0
|
||||
|
|
|
|
@ -5,7 +5,6 @@
|
|||
<field name="name">Journal de frais</field>
|
||||
<field name="code">EXPF</field>
|
||||
<field name="type">purchase</field>
|
||||
<field name="view_id" ref="account.account_journal_view"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field name="update_posted" eval="True" />
|
||||
<field name="entry_posted" eval="True" />
|
||||
|
@ -15,7 +14,6 @@
|
|||
<field name="name">Banque CHF</field>
|
||||
<field name="code">BCHF</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field name="update_posted" eval="True" />
|
||||
<field name="entry_posted" eval="True" />
|
||||
|
@ -26,7 +24,6 @@
|
|||
<field name="name">Banque EUR</field>
|
||||
<field name="code">BEUR</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field name="update_posted" eval="True" />
|
||||
<field name="entry_posted" eval="True" />
|
||||
|
@ -37,7 +34,6 @@
|
|||
<field name="name">Caisse</field>
|
||||
<field name="code">CAI</field>
|
||||
<field name="type">cash</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field name="update_posted" eval="True" />
|
||||
<field name="entry_posted" eval="True" />
|
||||
|
@ -47,7 +43,6 @@
|
|||
<field name="name">Opérations Diverses</field>
|
||||
<field name="code">OD</field>
|
||||
<field name="type">general</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field name="update_posted" eval="True" />
|
||||
<field name="entry_posted" eval="True" />
|
||||
|
@ -58,7 +53,6 @@
|
|||
<field name="code">JO</field>
|
||||
<field name="type">situation</field>
|
||||
<field name="centralisation">True</field>
|
||||
<field name="view_id" ref="account.account_journal_view"/>
|
||||
<field name="update_posted" eval="True" />
|
||||
</record>
|
||||
|
||||
|
|
|
@ -191,7 +191,6 @@
|
|||
<field name="name">Sales Journal - (OpenERP IN)</field>
|
||||
<field name="code">SAJ-OpenERP IN</field>
|
||||
<field name="type">sale</field>
|
||||
<field name="view_id" ref="account.account_sp_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_sale_journal"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_sale"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_sale"/>
|
||||
|
@ -204,7 +203,6 @@
|
|||
<field name="name">Sales Credit Note Journal - (OpenERP IN)</field>
|
||||
<field name="code">SCNJ-OpenERP IN</field>
|
||||
<field name="type">sale_refund</field>
|
||||
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_refund_sales_journal"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_sale"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_sale"/>
|
||||
|
@ -217,7 +215,6 @@
|
|||
<field name="name">Expenses Journal - (OpenERP IN)</field>
|
||||
<field name="code">EXJ-OpenERP IN</field>
|
||||
<field name="type">purchase</field>
|
||||
<field name="view_id" ref="account.account_sp_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_purchase_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_expense"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_expense"/>
|
||||
|
@ -230,7 +227,6 @@
|
|||
<field name="name">Expenses Credit Notes Journal - (OpenERP IN)</field>
|
||||
<field name="code">ECNJ-OpenERP IN</field>
|
||||
<field name="type">purchase_refund</field>
|
||||
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_refund_purchase_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_expense"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_expense"/>
|
||||
|
@ -243,7 +239,6 @@
|
|||
<field name="name">Bank Journal - (OpenERP IN)</field>
|
||||
<field name="code">BNK-OpenERP IN</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_bank_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.cash"/>
|
||||
|
@ -256,7 +251,6 @@
|
|||
<field name="name">Checks Journal - (OpenERP IN)</field>
|
||||
<field name="code">CHK-OpenERP IN</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_check_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.cash"/>
|
||||
|
@ -269,7 +263,6 @@
|
|||
<field name="name">Cash Journal - (OpenERP IN)</field>
|
||||
<field name="code">CSH-OpenERP IN</field>
|
||||
<field name="type">cash</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_cash_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.cash"/>
|
||||
|
@ -283,7 +276,6 @@
|
|||
<field name="name">Sales Journal - (OpenERP US)</field>
|
||||
<field name="code">SAJ-OpenERP US</field>
|
||||
<field name="type">sale</field>
|
||||
<field name="view_id" ref="account.account_sp_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_sale_journal"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_sale"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_sale"/>
|
||||
|
@ -296,7 +288,6 @@
|
|||
<field name="name">Sales Credit Note Journal - (OpenERP US)</field>
|
||||
<field name="code">SCNJ-OpenERP US</field>
|
||||
<field name="type">sale_refund</field>
|
||||
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_refund_sales_journal"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_sale"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_sale"/>
|
||||
|
@ -309,7 +300,6 @@
|
|||
<field name="name">Expenses Journal - (OpenERP US)</field>
|
||||
<field name="code">EXJ-OpenERP US</field>
|
||||
<field name="type">purchase</field>
|
||||
<field name="view_id" ref="account.account_sp_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_purchase_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_expense"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_expense"/>
|
||||
|
@ -322,7 +312,6 @@
|
|||
<field name="name">Expenses Credit Notes Journal - (OpenERP US)</field>
|
||||
<field name="code">ECNJ-OpenERP US</field>
|
||||
<field name="type">purchase_refund</field>
|
||||
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_refund_purchase_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_expense"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_expense"/>
|
||||
|
@ -335,7 +324,6 @@
|
|||
<field name="name">Bank Journal - (OpenERP US)</field>
|
||||
<field name="code">BNK-OpenERP US</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_bank_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.cash"/>
|
||||
|
@ -348,7 +336,6 @@
|
|||
<field name="name">Checks Journal - (OpenERP US)</field>
|
||||
<field name="code">CHK-OpenERP US</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_check_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.cash"/>
|
||||
|
@ -361,7 +348,6 @@
|
|||
<field name="name">Cash Journal - (OpenERP US)</field>
|
||||
<field name="code">CSH-OpenERP US</field>
|
||||
<field name="type">cash</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_cash_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.cash"/>
|
||||
|
@ -376,7 +362,6 @@
|
|||
<field name="name">Sales Journal - (OpenERP BE)</field>
|
||||
<field name="code">SAJ-OpenERP BE</field>
|
||||
<field name="type">sale</field>
|
||||
<field name="view_id" ref="account.account_sp_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_sale_journal"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_sale"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_sale"/>
|
||||
|
@ -389,7 +374,6 @@
|
|||
<field name="name">Sales Credit Note Journal - (OpenERP BE)</field>
|
||||
<field name="code">SCNJ-OpenERP BE</field>
|
||||
<field name="type">sale_refund</field>
|
||||
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_refund_sales_journal"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_sale"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_sale"/>
|
||||
|
@ -402,7 +386,6 @@
|
|||
<field name="name">Expenses Journal - (OpenERP BE)</field>
|
||||
<field name="code">EXJ-OpenERP BE</field>
|
||||
<field name="type">purchase</field>
|
||||
<field name="view_id" ref="account.account_sp_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_purchase_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_expense"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_expense"/>
|
||||
|
@ -415,7 +398,6 @@
|
|||
<field name="name">Expenses Credit Notes Journal - (OpenERP BE)</field>
|
||||
<field name="code">ECNJ-OpenERP BE</field>
|
||||
<field name="type">purchase_refund</field>
|
||||
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_refund_purchase_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.a_expense"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.a_expense"/>
|
||||
|
@ -428,7 +410,6 @@
|
|||
<field name="name">Bank Journal - (OpenERP BE)</field>
|
||||
<field name="code">BNK-OpenERP BE</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_bank_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.cash"/>
|
||||
|
@ -441,7 +422,6 @@
|
|||
<field name="name">Checks Journal - (OpenERP BE)</field>
|
||||
<field name="code">CHK-OpenERP BE</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_check_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.cash"/>
|
||||
|
@ -454,7 +434,6 @@
|
|||
<field name="name">Cash Journal - (OpenERP BE)</field>
|
||||
<field name="code">CSH-OpenERP BE</field>
|
||||
<field name="type">cash</field>
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="account.sequence_cash_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="account.cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="account.cash"/>
|
||||
|
|
|
@ -42,12 +42,8 @@ access_account_move,account.move,account.model_account_move,group_pos_manager,1,
|
|||
access_account_journal,account.journal,account.model_account_journal,group_pos_user,1,1,1,0
|
||||
access_account_journal_period_user,account.journal.period user,account.model_account_journal_period,group_pos_user,1,1,1,1
|
||||
access_account_journal_period_manager,account.journal.period manager,account.model_account_journal_period,group_pos_manager,1,0,0,0
|
||||
access_account_journal_view,account.journal.view,account.model_account_journal_view,group_pos_user,1,1,1,0
|
||||
access_account_journal_view_manager,account.journal.view manager,account.model_account_journal_view,group_pos_manager,1,0,0,0
|
||||
access_account_analytic_line,account.analytic.line,analytic.model_account_analytic_line,group_pos_user,1,1,1,0
|
||||
access_account_analytic_account,account.analytic.account,analytic.model_account_analytic_account,group_pos_user,1,1,1,0
|
||||
access_account_journal_column,account.journal.column,account.model_account_journal_column,group_pos_user,1,1,1,0
|
||||
access_account_journal_column_manager,account.journal.column manager,account.model_account_journal_column,group_pos_manager,1,0,0,0
|
||||
access_ir_property_pos_manager,ir.property manager,base.model_ir_property,group_pos_manager,1,1,1,1
|
||||
access_account_bank_statement_line_manager,account.bank.statement.line manager,account.model_account_bank_statement_line,group_pos_manager,1,1,1,1
|
||||
access_account_invoice_manager,account.invoice manager,account.model_account_invoice,group_pos_manager,1,1,1,1
|
||||
|
|
|
|
@ -21,7 +21,6 @@ watch your stock valuation, and track production lots upstream and downstream (b
|
|||
<field name="name">Stock Journal</field>
|
||||
<field name="code">STJ</field>
|
||||
<field name="type">general</field>
|
||||
<field name="view_id" ref="account.account_journal_view"/>
|
||||
<field name="sequence_id" ref="stock_journal_sequence"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
</record>
|
||||
|
|
|
@ -58,7 +58,6 @@
|
|||
name: Purchase Journal For Tests
|
||||
sequence_id: account.sequence_purchase_journal
|
||||
type: purchase
|
||||
view_id: account.account_journal_bank_view
|
||||
|
||||
-
|
||||
I create a Sale Journal.
|
||||
|
@ -69,7 +68,6 @@
|
|||
name: Sale Journal For Tests
|
||||
sequence_id: account.sequence_sale_journal
|
||||
type: sale
|
||||
view_id: account.account_journal_view
|
||||
|
||||
-
|
||||
I create an Expense Account
|
||||
|
|
Loading…
Reference in New Issue