purchase/purchase.py, riga 1419 e seguenti
#look for any other draft PO for the same supplier, to attach the new line on instead of creating a new draft one
available_draft_po_ids = po_obj.search(cr, uid, [
('partner_id', '=', partner.id), ('state', '=', 'draft'), ('picking_type_id', '=', procurement.rule_id.picking_type_id.id),
('location_id', '=', procurement.location_id.id), ('company_id', '=', procurement.company_id.id), ('dest_address_id', '=', procurement.partner_dest_id.id)], context=context)
if available_draft_po_ids:
non mi sembra ci siano condizioni in merito, viene effettuato il merge in ogni caso.
Provo a remmarlo e faccio dei test.
In fondo il merge è sempre disponibile sui singoli preventivi.