diff --git a/stock.py b/stock.py
index 1aaed9f..c0892e6 100644
--- a/stock.py
+++ b/stock.py
@@ -10,7 +10,7 @@ from sql.operators import Concat
from trytond.model import ModelSQL, ModelView, fields
from trytond.model import Workflow
from trytond.pool import PoolMeta, Pool
-from trytond.pyson import Eval, If
+from trytond.pyson import Eval, If, Id
from trytond.tools import grouped_slice
from trytond.transaction import Transaction
from trytond.wizard import Wizard, StateTransition, StateView, Button
@@ -26,10 +26,12 @@ class Configuration(metaclass=PoolMeta):
reconcile_sequence = fields.MultiValue(
fields.Many2One('ir.sequence', 'Shipment reconcile Sequence',
- domain=[('company', 'in',
- [Eval('context', {}).get('company', -1), None]),
- ('code', '=', 'stock.shipment.reconciliation')],
- required=True)
+ domain=[
+ ('company', 'in',
+ [Eval('context', {}).get('company', -1), None]),
+ ('sequence_type', '=', Id('stock_shipment_reconcile',
+ 'sequence_type_reconcile'))
+ ], required=True)
)
@classmethod
@@ -50,11 +52,14 @@ class ConfigurationSequence(metaclass=PoolMeta):
reconcile_sequence = fields.Many2One('ir.sequence',
'Shipment reconcile Sequence',
- domain=[('company', 'in',
- [Eval('company', -1), None]),
- ('code', '=', 'stock.shipment.reconciliation')],
- depends=['company'],
- required=True)
+ domain=[
+ ('company', 'in',
+ [Eval('company', -1), None]),
+ ('sequence_type', '=', Id('stock_shipment_reconcile',
+ 'sequence_type_reconcile'))
+ ],
+ depends=['company'],
+ required=True)
@classmethod
def __register__(cls, module_name):
@@ -201,15 +206,16 @@ class ShipmentReconciliation(Workflow, ModelSQL, ModelView):
@classmethod
def create(cls, vlist):
pool = Pool()
- model_sequence = pool.get('ir.sequence')
- model_config = pool.get('stock.configuration')
+ Config = pool.get('stock.configuration')
vlist = [x.copy() for x in vlist]
- config = model_config(1)
+ config = Config(1)
+ default_company = cls.default_company()
for values in vlist:
if not values.get('code'):
- values['code'] = model_sequence.get_id(
- config.reconcile_sequence.id)
+ values['code'] = config.get_multivalue(
+ 'reconcile_sequence',
+ company=values.get('company', default_company)).get()
return super(ShipmentReconciliation, cls).create(vlist)
def _get_shipment_type(self):
diff --git a/stock.xml b/stock.xml
index d8ab4df..fa1a4ba 100644
--- a/stock.xml
+++ b/stock.xml
@@ -23,7 +23,6 @@ this repository contains the full copyright notices and license terms. -->
Shipment reconcile
- stock.shipment.reconciliation
@@ -37,7 +36,7 @@ this repository contains the full copyright notices and license terms. -->
Shipment reconcile
- stock.shipment.reconciliation
+