'move_lines': fields.one2many('stock.move', 'picking_id', 'Internal Moves', states={'done': [('readonly', True)], 'cancel': [('readonly', True)]}),
'auto_picking': fields.boolean('Auto-Picking'),
'address_id': fields.many2one('res.partner.address', 'Address', help="Address of partner"),
- 'partner_id': fields.related('address_id','partner_id',type='many2one',relation='res.partner',string='Partner',store=True),
+ 'partner_id': fields.related('address_id','partner_id',type='many2one',relation='res.partner',string='Partner'),
'invoice_state': fields.selection([
("invoiced", "Invoiced"),
("2binvoiced", "To Be Invoiced"),
@param ids: List of Picking Ids
@param context: A standard dictionary for contextual values
"""
- msg=''
for pick in self.browse(cr, uid, ids, context=context):
+ msg=''
+ if pick.auto_picking:
+ continue
type_list = {
- 'out':'Picking List',
- 'in':'Reception',
- 'internal': 'Internal picking',
+ 'out':_("Delivery Order"),
+ 'in':_('Reception'),
+ 'internal': _('Internal picking'),
}
- message = type_list.get(pick.type, _('Document')) + " '" + (pick.name or 'n/a') + "' "
+ message = type_list.get(pick.type, _('Document')) + " '" + (pick.name or '?') + "' "
if pick.min_date:
- msg=datetime.strptime(pick.min_date, '%Y-%m-%d %H:%M:%S').strftime('%Y-%m-%d') + "'."
+ msg= _(' for the ')+ datetime.strptime(pick.min_date, '%Y-%m-%d %H:%M:%S').strftime('%m/%d/%Y')
state_list = {
- 'confirmed': "is scheduled for the '" + msg ,
- 'assigned': 'is ready to process.',
- 'cancel': 'is Cancelled.',
- 'done': 'is processed.',
- 'draft':'is draft.',
- }
+ 'confirmed': _("is scheduled") + msg +'.',
+ 'assigned': _('is ready to process.'),
+ 'cancel': _('is cancelled.'),
+ 'done': _('is done.'),
+ 'draft':_('is in draft state.'),
+ }
message += state_list[pick.state]
self.log(cr, uid, pick.id, message)
return True
for pick_id in picking_ids:
wf_service.trg_write(uid, 'stock.picking', pick_id, cr)
- picking_obj.log_picking(cr, uid, picking_ids, context=context)
return True
def _create_account_move_line(self, cr, uid, move, src_account_id, dest_account_id, reference_amount, reference_currency_id, context=None):
'state': 'draft',
'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'stock.inventory', context=c)
}
-
+
def _inventory_line_hook(self, cr, uid, inventory_line, move_vals):
""" Creates a stock move from an inventory line
@param inventory_line:
stock_warehouse()
-
-# Move wizard :
-# get confirm or assign stock move lines of partner and put in current picking.
-class stock_picking_move_wizard(osv.osv_memory):
- _name = 'stock.picking.move.wizard'
-
- def _get_picking(self, cr, uid, ctx=None):
- if ctx is None:
- ctx = {}
- if ctx.get('active_id', False):
- return ctx['active_id']
- return False
-
- def _get_picking_address(self, cr, uid, context=None):
- picking_obj = self.pool.get('stock.picking')
- if context is None:
- context = {}
- if context.get('active_id', False):
- picking = picking_obj.browse(cr, uid, [context['active_id']])[0]
- return picking.address_id and picking.address_id.id or False
- return False
-
- _columns = {
- 'name': fields.char('Name', size=64, invisible=True),
- 'move_ids': fields.many2many('stock.move', 'picking_move_wizard_rel', 'picking_move_wizard_id', 'move_id', 'Entry lines', required=True),
- 'address_id': fields.many2one('res.partner.address', 'Dest. Address', invisible=True),
- 'picking_id': fields.many2one('stock.picking', 'Picking list', select=True, invisible=True),
- }
- _defaults = {
- 'picking_id': _get_picking,
- 'address_id': _get_picking_address,
- }
-
- def action_move(self, cr, uid, ids, context=None):
- move_obj = self.pool.get('stock.move')
- picking_obj = self.pool.get('stock.picking')
- for act in self.read(cr, uid, ids):
- move_lines = move_obj.browse(cr, uid, act['move_ids'])
- for line in move_lines:
- if line.picking_id:
- picking_obj.write(cr, uid, [line.picking_id.id], {'move_lines': [(1, line.id, {'picking_id': act['picking_id']})]})
- picking_obj.write(cr, uid, [act['picking_id']], {'move_lines': [(1, line.id, {'picking_id': act['picking_id']})]})
- old_picking = picking_obj.read(cr, uid, [line.picking_id.id])[0]
- if not len(old_picking['move_lines']):
- picking_obj.write(cr, uid, [old_picking['id']], {'state': 'done'})
- else:
- raise osv.except_osv(_('UserError'),
- _('You can not create new moves.'))
- return {'type': 'ir.actions.act_window_close'}
-
-stock_picking_move_wizard()
-
-
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: