From 6ca115af57073a3181bd1cbab8998b36dd348f1e Mon Sep 17 00:00:00 2001
From: ced <>
Date: Wed, 12 Sep 2007 13:21:07 +0000
Subject: [PATCH] Change constraint on stock_production_lot
- used name, ref
- improve check in the wizard
- add migration script
- add sequence
bzr revid: ced-b00db02e7b10a2056497f311eecf0f3e334019ee
---
addons/stock/stock.py | 3 ++-
addons/stock/stock_sequence.xml | 9 +++++++++
addons/stock/wizard/wizard_track_line.py | 15 +++++++++------
3 files changed, 20 insertions(+), 7 deletions(-)
diff --git a/addons/stock/stock.py b/addons/stock/stock.py
index 40f9fb38f5b..77e8d0123d1 100644
--- a/addons/stock/stock.py
+++ b/addons/stock/stock.py
@@ -600,8 +600,9 @@ class stock_production_lot(osv.osv):
'name': lambda x,y,z,c: x.pool.get('ir.sequence').get(y,z,'stock.lot.serial'),
}
_sql_constraints = [
- ('name_uniq', 'unique (name)', 'The serial must be unique !'),
+ ('name_ref_uniq', 'unique (name, ref)', 'The serial/ref must be unique !'),
]
+
stock_production_lot()
class stock_production_lot_revision(osv.osv):
diff --git a/addons/stock/stock_sequence.xml b/addons/stock/stock_sequence.xml
index 6feee6dc1fe..a29be6e1063 100644
--- a/addons/stock/stock_sequence.xml
+++ b/addons/stock/stock_sequence.xml
@@ -41,6 +41,15 @@
Stock production lots
stock.lot.serial
+
+ Stock production sequence
+ stock.lot.serial
+ 1234567890
+ 7
+ 1
+ 1
+
+
Stock Lot Tracking
stock.lot.tracking
diff --git a/addons/stock/wizard/wizard_track_line.py b/addons/stock/wizard/wizard_track_line.py
index 880cadf35f2..caf45e46e73 100644
--- a/addons/stock/wizard/wizard_track_line.py
+++ b/addons/stock/wizard/wizard_track_line.py
@@ -57,14 +57,17 @@ fields = {
def _track_lines(self, cr, uid, data, context):
move_id = data['id']
- prodlot_obj = pooler.get_pool(cr.dbname).get('stock.production.lot')
- move_obj = pooler.get_pool(cr.dbname).get('stock.move')
- sequence = pooler.get_pool(cr.dbname).get('ir.sequence').get(cr, uid, 'stock.lot.serial')
- production_obj = pooler.get_pool(cr.dbname).get('mrp.production')
+ pool = pooler.get_pool(cr.dbname)
+ prodlot_obj = pool.get('stock.production.lot')
+ move_obj = pool.get('stock.move')
+ production_obj = pool.get('mrp.production')
+ ir_sequence_obj = pool.get('ir.sequence')
+
+ sequence = ir_sequence_obj.get(cr, uid, 'stock.lot.serial')
+ if not sequence:
+ raise wizard.except_wizard('Error!', 'No production sequence defined')
if data['form']['tracking_prefix']:
sequence=data['form']['tracking_prefix']+'/'+(sequence or '')
- if not sequence:
- raise wizard.except_wizard('Error !', 'No tracking prefix defined')
move = move_obj.browse(cr, uid, [move_id])[0]
quantity=data['form']['quantity']