diff --git a/addons/mrp/mrp.py b/addons/mrp/mrp.py
index d9576eeef6f..c27ffdc9c14 100644
--- a/addons/mrp/mrp.py
+++ b/addons/mrp/mrp.py
@@ -305,7 +305,7 @@ class mrp_production(osv.osv):
_description = 'Production'
_date_name = 'date_planned'
_columns = {
- 'name': fields.char('Name', size=64, required=True),
+ 'name': fields.char('Reference', size=64, required=True),
'origin': fields.char('Origin', size=64),
'priority': fields.selection([('0','Not urgent'),('1','Normal'),('2','Urgent'),('3','Very Urgent')], 'Priority'),
@@ -315,8 +315,8 @@ class mrp_production(osv.osv):
'product_uos_qty': fields.float('Product Qty'),
'product_uos': fields.many2one('product.uom', 'Product UOM'),
- 'location_src_id': fields.many2one('stock.location', 'Production Location', required=True),
- 'location_dest_id': fields.many2one('stock.location', 'Destination Location', required=True),
+ 'location_src_id': fields.many2one('stock.location', 'Raw Products Location', required=True),
+ 'location_dest_id': fields.many2one('stock.location', 'Finnished Products Location', required=True),
'date_planned': fields.date('Scheduled date', required=True),
'date_start': fields.datetime('Start Date'),
@@ -337,6 +337,7 @@ class mrp_production(osv.osv):
_defaults = {
'priority': lambda *a: '1',
'state': lambda *a: 'draft',
+ 'date_planned': lambda *a: time.strftime('%Y-%m-%d'),
'product_qty': lambda *a: 1.0,
'name': lambda x,y,z,c: x.pool.get('ir.sequence').get(y,z,'mrp.production') or '/',
}
@@ -676,7 +677,7 @@ class mrp_procurement(osv.osv):
'close_move': fields.boolean('Close Move at end', required=True),
'location_id': fields.many2one('stock.location', 'Location', required=True),
- 'procure_method': fields.selection([('make_to_stock','from stock'),('make_to_order','on order')], 'Procurement Method', states={'draft':[('readonly',False)], 'confirmed':[('readonly',False)]}, readonly=True),
+ 'procure_method': fields.selection([('make_to_stock','from stock'),('make_to_order','on order')], 'Procurement Method', states={'draft':[('readonly',False)], 'confirmed':[('readonly',False)]}, readonly=True, required=True),
'purchase_id': fields.many2one('purchase.order', 'Purchase Order'),
'purchase_line_id': fields.many2one('purchase.order.line', 'Purchase Order Line'),
@@ -689,6 +690,7 @@ class mrp_procurement(osv.osv):
_defaults = {
'state': lambda *a: 'draft',
'priority': lambda *a: '1',
+ 'date_planned': lambda *a: time.strftime('%Y-%m-%d'),
'close_move': lambda *a: 0,
'procure_method': lambda *a: 'make_to_order',
}
diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml
index 4af03bca6ca..e4530548a5b 100644
--- a/addons/mrp/mrp_view.xml
+++ b/addons/mrp/mrp_view.xml
@@ -381,24 +381,28 @@
form
@@ -446,7 +450,7 @@
ir.actions.act_window
mrp.production
form
- tree,form
+ tree,form,calendar
[('state','=','ready')]
@@ -455,20 +459,29 @@
ir.actions.act_window
mrp.production
form
- tree,form
+ tree,form,calendar
[('state','=','in_production')]
- Production orders waiting goods
+ Production Orders Waiting Products
ir.actions.act_window
mrp.production
form
- tree,form
+ tree,form,calendar
[('state','=','confirmed')]
+
+ New Production Order
+ ir.actions.act_window
+ mrp.production
+ form
+ form,tree,calendar
+
+
+
mrp.production.workcenter.line.form
mrp.production.workcenter.line
@@ -538,7 +551,7 @@
mrp.production.product.line
form
-
@@ -627,7 +657,7 @@
ir.actions.act_window
mrp.procurement
form
-
+
@@ -680,6 +710,15 @@
+
+ New Procurement
+ ir.actions.act_window
+ mrp.procurement
+ form
+ form,tree
+
+
+
stock.warehouse.orderpoint.tree
diff --git a/addons/purchase/purchase_report.xml b/addons/purchase/purchase_report.xml
index af9cdcaa871..a6a236ce390 100644
--- a/addons/purchase/purchase_report.xml
+++ b/addons/purchase/purchase_report.xml
@@ -2,6 +2,6 @@
-
+
-
\ No newline at end of file
+
diff --git a/addons/purchase/purchase_view.xml b/addons/purchase/purchase_view.xml
index 820ae75ebf2..4ae5a9e8eb2 100644
--- a/addons/purchase/purchase_view.xml
+++ b/addons/purchase/purchase_view.xml
@@ -45,11 +45,14 @@
-
+
+
+
-
+
+
diff --git a/addons/stock/stock.py b/addons/stock/stock.py
index 20f3c98cfa0..8e6760665cb 100644
--- a/addons/stock/stock.py
+++ b/addons/stock/stock.py
@@ -478,6 +478,13 @@ class stock_picking(osv.osv):
# TODO: Check locations to see if in the same location ?
return True
+ def button_confirm(self, cr, uid, ids, *args):
+ for id in ids:
+ wf_service = netsvc.LocalService("workflow")
+ wf_service.trg_validate(uid, 'stock.picking', id, 'button_confirm', cr)
+ self.force_assign(cr, uid, ids, *args)
+ return True
+
def action_assign(self, cr, uid, ids, *args):
for pick in self.browse(cr, uid, ids):
move_ids = [x.id for x in pick.move_lines if x.state=='confirmed']
diff --git a/addons/stock/stock_view.xml b/addons/stock/stock_view.xml
index b49c74dbd65..0cb6e17ace4 100644
--- a/addons/stock/stock_view.xml
+++ b/addons/stock/stock_view.xml
@@ -62,13 +62,13 @@
-
-
-
-
-
+
+
+
+
+
@@ -927,7 +927,7 @@
-
+
@@ -997,6 +997,7 @@
stock.picking
ir.actions.act_window
form
+ form,tree
{'contact_display': 'partner'}
[('type','=','in')]