[FIX] [trunk] [sale/purchase]: picking order date is not the same as the sale/purchase order date
lp bug: https://launchpad.net/bugs/882998 fixed bzr revid: mdi@tinyerp.com-20111104045018-bqj356yrtvvwlop4
This commit is contained in:
parent
b0c2825488
commit
6b9512dd32
|
@ -436,6 +436,7 @@ class purchase_order(osv.osv):
|
|||
picking_id = self.pool.get('stock.picking').create(cr, uid, {
|
||||
'name': pick_name,
|
||||
'origin': order.name+((order.origin and (':'+order.origin)) or ''),
|
||||
'date': order.date_order,
|
||||
'type': 'in',
|
||||
'address_id': order.dest_address_id.id or order.partner_address_id.id,
|
||||
'invoice_state': istate,
|
||||
|
@ -622,7 +623,7 @@ class purchase_order_line(osv.osv):
|
|||
return result[1]
|
||||
except Exception, ex:
|
||||
return False
|
||||
|
||||
|
||||
_columns = {
|
||||
'name': fields.char('Description', size=256, required=True),
|
||||
'product_qty': fields.float('Quantity', required=True, digits=(16,2)),
|
||||
|
|
|
@ -110,7 +110,7 @@ class sale_order(osv.osv):
|
|||
for item in cr.dictfetchall():
|
||||
if item['move_state'] == 'cancel':
|
||||
continue
|
||||
|
||||
|
||||
if item['picking_type'] == 'in':#this is a returned picking
|
||||
tmp[item['sale_order_id']]['total'] -= item['nbr'] or 0.0 # Deducting the return picking qty
|
||||
if item['procurement_state'] == 'done' or item['move_state'] == 'done':
|
||||
|
@ -125,7 +125,7 @@ class sale_order(osv.osv):
|
|||
res[order.id] = 100.0
|
||||
else:
|
||||
res[order.id] = tmp[order.id]['total'] and (100.0 * tmp[order.id]['picked'] / tmp[order.id]['total']) or 0.0
|
||||
return res
|
||||
return res
|
||||
|
||||
def _invoiced_rate(self, cursor, user, ids, name, arg, context=None):
|
||||
res = {}
|
||||
|
@ -726,6 +726,7 @@ class sale_order(osv.osv):
|
|||
return {
|
||||
'name': pick_name,
|
||||
'origin': order.name,
|
||||
'date': order.date_order,
|
||||
'type': 'out',
|
||||
'state': 'auto',
|
||||
'move_type': order.picking_policy,
|
||||
|
@ -898,7 +899,7 @@ class sale_order_line(osv.osv):
|
|||
return result[1]
|
||||
except Exception, ex:
|
||||
return False
|
||||
|
||||
|
||||
_name = 'sale.order.line'
|
||||
_description = 'Sales Order Line'
|
||||
_columns = {
|
||||
|
@ -1266,7 +1267,7 @@ sale_order_line()
|
|||
class sale_config_picking_policy(osv.osv_memory):
|
||||
_name = 'sale.config.picking_policy'
|
||||
_inherit = 'res.config'
|
||||
|
||||
|
||||
_columns = {
|
||||
'name': fields.char('Name', size=64),
|
||||
'sale_orders': fields.boolean('Based on Sales Orders',),
|
||||
|
@ -1307,7 +1308,7 @@ class sale_config_picking_policy(osv.osv_memory):
|
|||
|
||||
if wizard.sale_orders:
|
||||
menu_id = data_obj.get_object(cr, uid, 'sale', 'menu_invoicing_sales_order_lines').id
|
||||
menu_obj.write(cr, uid, menu_id, {'groups_id':[(4,group_id)]})
|
||||
menu_obj.write(cr, uid, menu_id, {'groups_id':[(4,group_id)]})
|
||||
|
||||
if wizard.deli_orders:
|
||||
menu_id = data_obj.get_object(cr, uid, 'sale', 'menu_action_picking_list_to_invoice').id
|
||||
|
@ -1344,7 +1345,7 @@ class sale_config_picking_policy(osv.osv_memory):
|
|||
product_obj = self.pool.get('product.product')
|
||||
product_obj.write(cr, uid, prod_id, {'uom_id':wizard.time_unit.id, 'uom_po_id': wizard.time_unit.id})
|
||||
|
||||
ir_values_obj.set(cr, uid, 'default', False, 'order_policy', ['sale.order'], wizard.order_policy)
|
||||
ir_values_obj.set(cr, uid, 'default', False, 'order_policy', ['sale.order'], wizard.order_policy)
|
||||
if wizard.task_work and wizard.time_unit:
|
||||
company_id = self.pool.get('res.users').browse(cr, uid, uid).company_id.id
|
||||
self.pool.get('res.company').write(cr, uid, [company_id], {
|
||||
|
|
Loading…
Reference in New Issue