diff --git a/addons/sale_journal/sale_journal.py b/addons/sale_journal/sale_journal.py
index fc38ba94450..5c6007824ac 100644
--- a/addons/sale_journal/sale_journal.py
+++ b/addons/sale_journal/sale_journal.py
@@ -142,13 +142,14 @@ class picking_journal(osv.osv):
'user_id': fields.many2one('res.users', 'Responsible', required=True),
'date': fields.date('Journal date', required=True),
'date_created': fields.date('Creation date', readonly=True, required=True),
- 'date_validation': fields.date('Validation date', readonly=True),
+ 'date_close': fields.date('Close date', readonly=True),
'picking_stats_ids': fields.one2many("sale.journal.picking.report", "journal_id", 'Journal Stats', readonly=True),
'state': fields.selection([
('draft','Draft'),
('open','Open'),
('cancel','Cancel'),
- ('done','Done'),
+ ('close','Close'),
+ ('confirm','Confirm'),
], 'Creation date', required=True, readonly=True),
'note': fields.text('Note'),
}
@@ -176,7 +177,24 @@ class picking_journal(osv.osv):
return True
def button_close(self, cr, uid, ids, context={}):
- self.write(cr, uid, ids, {'state':'done', 'date_validation':time.strftime('%Y-%m-%d')})
+ self.write(cr, uid, ids, {'state':'close', 'date_close':time.strftime('%Y-%m-%d')})
+ return True
+
+ def button_reset(self, cr, uid, ids, context=None):
+ self.write(cr, uid, ids, {'state': 'draft'})
+ for (id,name) in self.name_get(cr, uid, ids):
+ message = _('Sale orders of Journal') + " '" + name + "' "+ _("is in draft state")
+ self.log(cr, uid, id, message)
+ return True
+
+ def button_picking_confirm(self, cr, uid, ids, context={}):
+
+ self.write(cr, uid, ids, {'state':'confirm'})
+ for id in ids:
+ pick_ids = self.pool.get('stock.picking').search(cr, uid, [('journal_id','=',id)])
+ for pickid in pick_ids:
+ wf_service = netsvc.LocalService("workflow")
+ wf_service.trg_validate(uid, 'stock.picking', pickid, 'button_confirm', cr)
return True
def copy(self, cr, uid, id, default=None, context=None):
@@ -218,7 +236,7 @@ res_partner()
class picking(osv.osv):
_inherit = "stock.picking"
_columns = {
- 'journal_id': fields.many2one('sale_journal.picking.journal', 'Journal', domain=[('state','!=', 'done')]),
+ 'journal_id': fields.many2one('sale_journal.picking.journal', 'Journal', domain=[('state','!=', 'close')],help="Picking Journal"),
'sale_journal_id': fields.many2one('sale_journal.sale.journal', 'Sale Journal'),
'invoice_type_id': fields.many2one('sale_journal.invoice.type', 'Invoice Type', readonly=True)
}
diff --git a/addons/sale_journal/sale_journal_view.xml b/addons/sale_journal/sale_journal_view.xml
index 1ea275b086d..acb0933b733 100644
--- a/addons/sale_journal/sale_journal_view.xml
+++ b/addons/sale_journal/sale_journal_view.xml
@@ -378,7 +378,7 @@
-
+
@@ -391,10 +391,10 @@
-
-
-
-
+
+
+
+
@@ -488,5 +488,6 @@
+