return self.write(cr, uid, ids, {'state' : 'deprecated'}, context=context)
def create(self, cr, uid, values, context=None):
- proxy = self.pool.get('ir.sequence')
- sequence_values = dict(
- name='PoS %s' % values['name'],
- padding=5,
- prefix="%s/" % values['name'],
- )
- sequence_id = proxy.create(cr, uid, sequence_values, context=context)
- values['sequence_id'] = sequence_id
+ ir_sequence = self.pool.get('ir.sequence')
+ # force sequence_id field to new pos.order sequence
+ values['sequence_id'] = ir_sequence.create(cr, uid, {
+ 'name': 'POS Order %s' % values['name'],
+ 'padding': 4,
+ 'prefix': "%s/" % values['name'],
+ 'code': "pos.order",
+ 'company_id': values.get('company_id', False),
+ }, context=context)
+
+ # TODO master: add field sequence_line_id on model
+ # this make sure we always have one available per company
+ ir_sequence.create(cr, uid, {
+ 'name': 'POS order line %s' % values['name'],
+ 'padding': 4,
+ 'prefix': "%s/" % values['name'],
+ 'code': "pos.order.line",
+ 'company_id': values.get('company_id', False),
+ }, context=context)
+
return super(pos_config, self).create(cr, uid, values, context=context)
def unlink(self, cr, uid, ids, context=None):
bank_statement_ids.append(statement_id)
values.update({
- 'name' : pos_config.sequence_id._next(),
+ 'name': self.pool['ir.sequence'].get(cr, uid, 'pos.session'),
'statement_ids' : [(6, 0, bank_statement_ids)],
'config_id': config_id
})
def wkf_action_close(self, cr, uid, ids, context=None):
# Close CashBox
- bsl = self.pool.get('account.bank.statement.line')
for record in self.browse(cr, uid, ids, context=context):
for st in record.statement_ids:
if abs(st.difference) > st.journal_id.amount_authorized_diff:
}
def create(self, cr, uid, values, context=None):
- values['name'] = self.pool.get('ir.sequence').get(cr, uid, 'pos.order')
+ if values.get('session_id'):
+ # set name based on the sequence specified on the config
+ session = self.pool['pos.session'].browse(cr, uid, values['session_id'], context=context)
+ values['name'] = session.config_id.sequence_id._next()
+ else:
+ # fallback on any pos.order sequence
+ values['name'] = self.pool.get('ir.sequence').get_id(cr, uid, 'pos.order', 'code', context=context)
return super(pos_order, self).create(cr, uid, values, context=context)
def test_paid(self, cr, uid, ids, context=None):
<field name="name">POS Order</field>
<field name="code">pos.order</field>
</record>
- <record model="ir.sequence" id="seq_pos_order">
- <field name="name">POS Order</field>
- <field name="code">pos.order</field>
- <field name="prefix">POS</field>
- <field name="padding">4</field>
- </record>
<record model="ir.sequence.type" id="seq_type_pos_order_line">
<field name="name">POS order line</field>
<field name="code">pos.order.line</field>
</record>
- <record model="ir.sequence" id="seq_pos_order_line">
- <field name="name">POS order line</field>
- <field name="code">pos.order.line</field>
- <field name="prefix">POSL</field>
- <field name="padding">4</field>
- </record>
<record model="ir.sequence.type" id="seq_type_pos_session">
<field name="name">POS Session</field>
<record model="ir.sequence" id="seq_pos_session">
<field name="name">POS Session</field>
<field name="code">pos.session</field>
- <field name="prefix">POS/%(day)s/(month)s/%(year)s/</field>
- <field name="padding">4</field>
+ <field name="prefix">POS/%(year)s/%(month)s/%(day)s/</field>
+ <field name="padding">2</field>
+ <field name="company_id" eval="False" />
</record>
</data>