When we create a sales order, a delivery order is created automatically which reference to the sales order line. However, when we create a delivery order, there is no option to reference it back to the sales order line. How can this be done manually?
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- CRM
- e-Commerce
- Accounting
- Inventory
- PoS
- Project management
- MRP
This question has been flagged
Hello,
After two about 20h struggle I could not find a nice way do to that.Still I have at least a temporary solution, that solves this problem.
I would really love to get feedback from you on this. Especially how to rewrite it, so that I don't use cr and manual trims. I know this is wrong, but I could get the result in other way.
Regards,
Pavel
class stock_pack_operation(osv.osv):
_inherit = "stock.pack.operation"
_columns = {
'x_sale_line_id': fields.many2one('sale.order.line', 'Custom Field: Reference to the sale.order.line', required=True)
}
def create(self, cr, uid, vals, context=None):
tmp = [vals['picking_id']]
cr.execute('SELECT origin FROM stock_picking WHERE stock_picking.id = %s', tmp)
origin = cr.fetchone()
origin = origin[0]
origin = int(origin[2:])
cr.execute('SELECT id FROM sale_order_line WHERE order_id = %s AND product_id=%s', (origin, vals['product_id']))
zsli = cr.fetchone()
zsli = zsli[0]
vals['x_sale_line_id'] = zsli
res_id = super(stock_pack_operation, self).create(cr, uid, vals, context=context)
return res_id
Enjoying the discussion? Don't just read, join in!
Create an account today to enjoy exclusive features and engage with our awesome community!
Sign upRelated Posts | Replies | Views | Activity | |
---|---|---|---|---|
|
1
Sep 16
|
5283 | ||
|
1
Mar 15
|
7724 | ||
|
4
Apr 20
|
8954 | ||
|
1
Nov 24
|
266 | ||
|
1
May 23
|
3671 |
Hello, Did you manage to solve this issue? I have the same problem - in v7 I could refer to the SO Item, but in v8 this seems to be missing. Somehow I can't find a way to refer from stock.pack.operation to sale.order.line and I need that to generate proper delivery order report... In odoo-8.0/openerp/addons/sale/sale.py -> "def _prepare_order_line_procurement(self, cr, uid, order, line, group_id=False, context=None):" I see "'sale_line_id': line.id ", but there is no such field in the stock.pack.operation model. Why is that? I really don't understand why it worked in v7 and now the field is missing. Looking forward to your feedback! Regards, Pavel