[MERGE] forward port of branch saas-2 up to revid 9162 chs@openerp.com-20140401184913-5hi2h11lnmadbozr
bzr revid: chs@openerp.com-20140401190308-f3f2l9br69qb33ob
This commit is contained in:
commit
dfdbf8cdc4
|
@ -34,7 +34,7 @@ class validate_account_move(osv.osv_memory):
|
||||||
if context is None:
|
if context is None:
|
||||||
context = {}
|
context = {}
|
||||||
data = self.read(cr, uid, ids[0], context=context)
|
data = self.read(cr, uid, ids[0], context=context)
|
||||||
ids_move = obj_move.search(cr, uid, [('state','=','draft'),('journal_id','in',tuple(data['journal_ids'])),('period_id','in',tuple(data['period_ids']))])
|
ids_move = obj_move.search(cr, uid, [('state','=','draft'),('journal_id','in',tuple(data['journal_ids'])),('period_id','in',tuple(data['period_ids']))], order='date')
|
||||||
if not ids_move:
|
if not ids_move:
|
||||||
raise osv.except_osv(_('Warning!'), _('Specified journals do not have any account move entries in draft state for the specified periods.'))
|
raise osv.except_osv(_('Warning!'), _('Specified journals do not have any account move entries in draft state for the specified periods.'))
|
||||||
obj_move.button_validate(cr, uid, ids_move, context=context)
|
obj_move.button_validate(cr, uid, ids_move, context=context)
|
||||||
|
|
|
@ -732,13 +732,17 @@ class account_voucher(osv.osv):
|
||||||
|
|
||||||
total_credit = 0.0
|
total_credit = 0.0
|
||||||
total_debit = 0.0
|
total_debit = 0.0
|
||||||
account_type = 'receivable'
|
account_type = None
|
||||||
|
if context.get('account_id'):
|
||||||
|
account_type = self.pool['account.account'].browse(cr, uid, context['account_id'], context=context).type
|
||||||
if ttype == 'payment':
|
if ttype == 'payment':
|
||||||
account_type = 'payable'
|
if not account_type:
|
||||||
|
account_type = 'payable'
|
||||||
total_debit = price or 0.0
|
total_debit = price or 0.0
|
||||||
else:
|
else:
|
||||||
total_credit = price or 0.0
|
total_credit = price or 0.0
|
||||||
account_type = 'receivable'
|
if not account_type:
|
||||||
|
account_type = 'receivable'
|
||||||
|
|
||||||
if not context.get('move_line_ids', False):
|
if not context.get('move_line_ids', False):
|
||||||
ids = move_line_pool.search(cr, uid, [('state','=','valid'), ('account_id.type', '=', account_type), ('reconcile_id', '=', False), ('partner_id', '=', partner_id)], context=context)
|
ids = move_line_pool.search(cr, uid, [('state','=','valid'), ('account_id.type', '=', account_type), ('reconcile_id', '=', False), ('partner_id', '=', partner_id)], context=context)
|
||||||
|
@ -827,9 +831,9 @@ class account_voucher(osv.osv):
|
||||||
else:
|
else:
|
||||||
default['value']['line_dr_ids'].append(rs)
|
default['value']['line_dr_ids'].append(rs)
|
||||||
|
|
||||||
if ttype == 'payment' and len(default['value']['line_cr_ids']) > 0:
|
if len(default['value']['line_cr_ids']) > 0:
|
||||||
default['value']['pre_line'] = 1
|
default['value']['pre_line'] = 1
|
||||||
elif ttype == 'receipt' and len(default['value']['line_dr_ids']) > 0:
|
elif len(default['value']['line_dr_ids']) > 0:
|
||||||
default['value']['pre_line'] = 1
|
default['value']['pre_line'] = 1
|
||||||
default['value']['writeoff_amount'] = self._compute_writeoff_amount(cr, uid, default['value']['line_dr_ids'], default['value']['line_cr_ids'], price, ttype)
|
default['value']['writeoff_amount'] = self._compute_writeoff_amount(cr, uid, default['value']['line_dr_ids'], default['value']['line_cr_ids'], price, ttype)
|
||||||
return default
|
return default
|
||||||
|
|
|
@ -213,10 +213,10 @@
|
||||||
<field name="inherit_id" ref="account.view_bank_statement_form"/>
|
<field name="inherit_id" ref="account.view_bank_statement_form"/>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/tree/field[@name='amount']" position="after">
|
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/tree/field[@name='amount']" position="after">
|
||||||
<field name="voucher_id" string="" widget="many2onebutton" options="{'label':{'create':'Reconcile','edit':'Edit Reconciliation'}}" context="{'line_type': type, 'default_type': amount < 0 and 'payment' or 'receipt', 'type': amount < 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'default_active': False}"/>
|
<field name="voucher_id" string="" widget="many2onebutton" options="{'label':{'create':'Reconcile','edit':'Edit Reconciliation'}}" context="{'line_type': type, 'default_type': amount < 0 and 'payment' or 'receipt', 'type': amount < 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'default_active': False, 'account_id': account_id}"/>
|
||||||
</xpath>
|
</xpath>
|
||||||
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/form/group/field[@name='sequence']" position="before">
|
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/form/group/field[@name='sequence']" position="before">
|
||||||
<field name="voucher_id" widget="many2onebutton" options="{'label':{'create':'Reconcile','edit':'Edit Reconciliation'}}" context="{'line_type': type, 'default_type': amount < 0 and 'payment' or 'receipt', 'type': amount < 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'default_active': False}"/>
|
<field name="voucher_id" widget="many2onebutton" options="{'label':{'create':'Reconcile','edit':'Edit Reconciliation'}}" context="{'line_type': type, 'default_type': amount < 0 and 'payment' or 'receipt', 'type': amount < 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'default_active': False, 'account_id': account_id}"/>
|
||||||
</xpath>
|
</xpath>
|
||||||
<field name="amount" position="attributes">
|
<field name="amount" position="attributes">
|
||||||
<attribute name="on_change">onchange_amount(amount)</attribute>
|
<attribute name="on_change">onchange_amount(amount)</attribute>
|
||||||
|
@ -230,7 +230,7 @@
|
||||||
<field name="inherit_id" ref="account.view_bank_statement_form2"/>
|
<field name="inherit_id" ref="account.view_bank_statement_form2"/>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<xpath expr="//page/field[@name='line_ids']/tree/field[@name='amount']" position="after">
|
<xpath expr="//page/field[@name='line_ids']/tree/field[@name='amount']" position="after">
|
||||||
<field name="voucher_id" context="{'line_type': type, 'default_type': amount < 0 and 'payment' or 'receipt', 'type': amount < 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name}"/>
|
<field name="voucher_id" context="{'line_type': type, 'default_type': amount < 0 and 'payment' or 'receipt', 'type': amount < 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'account_id': account_id}"/>
|
||||||
</xpath>
|
</xpath>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
@ -241,7 +241,7 @@
|
||||||
<field name="inherit_id" ref="account.view_bank_statement_form2"/>
|
<field name="inherit_id" ref="account.view_bank_statement_form2"/>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<xpath expr="//page/field[@name='line_ids']/form/group/field[@name='amount']" position="after">
|
<xpath expr="//page/field[@name='line_ids']/form/group/field[@name='amount']" position="after">
|
||||||
<field name="voucher_id" context="{'line_type': type, 'default_type': amount < 0 and 'payment' or 'receipt', 'type': amount < 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name}"/>
|
<field name="voucher_id" context="{'line_type': type, 'default_type': amount < 0 and 'payment' or 'receipt', 'type': amount < 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'account_id': account_id}"/>
|
||||||
</xpath>
|
</xpath>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
|
|
|
@ -1123,7 +1123,7 @@ class calendar_event(osv.Model):
|
||||||
|
|
||||||
def get_end_date(data):
|
def get_end_date(data):
|
||||||
if data.get('end_date'):
|
if data.get('end_date'):
|
||||||
data['end_date_new'] = ''.join((re.compile('\d')).findall(data.get('end_date'))) + 'T235959Z'
|
data['end_date_new'] = ''.join((re.compile('\d')).findall(data.get('end_date'))) + 'T235959'
|
||||||
|
|
||||||
return (data.get('end_type') == 'count' and (';COUNT=' + str(data.get('count'))) or '') +\
|
return (data.get('end_type') == 'count' and (';COUNT=' + str(data.get('count'))) or '') +\
|
||||||
((data.get('end_date_new') and data.get('end_type') == 'end_date' and (';UNTIL=' + data.get('end_date_new'))) or '')
|
((data.get('end_date_new') and data.get('end_type') == 'end_date' and (';UNTIL=' + data.get('end_date_new'))) or '')
|
||||||
|
|
|
@ -44,8 +44,6 @@ Con la Colaboración de
|
||||||
],
|
],
|
||||||
"demo_xml": [
|
"demo_xml": [
|
||||||
],
|
],
|
||||||
"data": [
|
|
||||||
],
|
|
||||||
"active": False,
|
"active": False,
|
||||||
"installable": True,
|
"installable": True,
|
||||||
"certificate" : "",
|
"certificate" : "",
|
||||||
|
|
|
@ -517,7 +517,8 @@ class pos_order(osv.osv):
|
||||||
|
|
||||||
# Keep only new orders
|
# Keep only new orders
|
||||||
submitted_references = [o['data']['name'] for o in orders]
|
submitted_references = [o['data']['name'] for o in orders]
|
||||||
existing_orders = self.search_read(cr, uid, domain=[('pos_reference', 'in', submitted_references)], fields=['pos_reference'], context=context)
|
existing_order_ids = self.search(cr, uid, [('pos_reference', 'in', submitted_references)], context=context)
|
||||||
|
existing_orders = self.read(cr, uid, existing_order_ids, ['pos_reference'], context=context)
|
||||||
existing_references = set([o['pos_reference'] for o in existing_orders])
|
existing_references = set([o['pos_reference'] for o in existing_orders])
|
||||||
orders_to_save = [o for o in orders if o['data']['name'] not in existing_references]
|
orders_to_save = [o for o in orders if o['data']['name'] not in existing_references]
|
||||||
|
|
||||||
|
|
|
@ -439,7 +439,8 @@ class procurement_order(osv.osv):
|
||||||
if len(to_cancel):
|
if len(to_cancel):
|
||||||
move_obj.action_cancel(cr, uid, to_cancel)
|
move_obj.action_cancel(cr, uid, to_cancel)
|
||||||
if len(to_assign):
|
if len(to_assign):
|
||||||
move_obj.write(cr, uid, to_assign, {'state': 'assigned'})
|
move_obj.write(cr, uid, to_assign, {'state': 'confirmed'})
|
||||||
|
move_obj.action_assign(cr, uid, to_assign)
|
||||||
self.write(cr, uid, ids, {'state': 'cancel'})
|
self.write(cr, uid, ids, {'state': 'cancel'})
|
||||||
for id in ids:
|
for id in ids:
|
||||||
workflow.trg_trigger(uid, 'procurement.order', id, cr)
|
workflow.trg_trigger(uid, 'procurement.order', id, cr)
|
||||||
|
|
|
@ -287,7 +287,9 @@ class project(osv.osv):
|
||||||
"- Followers Only: employees see only the followed tasks or issues; if portal\n"
|
"- Followers Only: employees see only the followed tasks or issues; if portal\n"
|
||||||
" is activated, portal users see the followed tasks or issues."),
|
" is activated, portal users see the followed tasks or issues."),
|
||||||
'state': fields.selection([('template', 'Template'),('draft','New'),('open','In Progress'), ('cancelled', 'Cancelled'),('pending','Pending'),('close','Closed')], 'Status', required=True,),
|
'state': fields.selection([('template', 'Template'),('draft','New'),('open','In Progress'), ('cancelled', 'Cancelled'),('pending','Pending'),('close','Closed')], 'Status', required=True,),
|
||||||
'doc_count':fields.function(_get_attached_docs, string="Number of documents attached", type='int')
|
'doc_count': fields.function(
|
||||||
|
_get_attached_docs, string="Number of documents attached", type='integer'
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
def _get_type_common(self, cr, uid, context):
|
def _get_type_common(self, cr, uid, context):
|
||||||
|
|
Loading…
Reference in New Issue