← Back to team overview

c2c-oerpscenario team mailing list archive

[Bug 646224] Re: [5.0][sale] Cancelling an out picking sets the sale order as shipped

 

Hi Jay,

Other case, with your patch, if I confirm the sale order, it creates one
picking, then I cancel this picking, shipped is not true, it works, but,
I return to confirm this sale order and it creates one new picking,
therefore if I cancel the current picking it sets shipped to True.

Can we manage the partial picking case checking backorder_id field on
stock.picking?

Like:

             call_ship_end = True
             if pick.sale_id:
                 for picks in pick.sale_id.picking_ids:
-                    if picks.state not in ('done','cancel'):
+                   if picks.state in ('done','cancel') and (not picks.backorder_id or picks.backorder_id.state != 'done'):
                         call_ship_end = False
                         break
                 if call_ship_end:

-- 
[5.0][sale] Cancelling an out picking sets the sale order as shipped
https://bugs.launchpad.net/bugs/646224
You received this bug notification because you are a member of C2C
OERPScenario, which is subscribed to the OpenERP Project Group.

Status in OpenObject Addons Modules: In Progress

Bug description:
Hi,

If I cancel an out picking, it always writes in sale order "shipped=True", because action_cancel() from stock.picking extended in sale module, calls to action_ship_end(), sale's function.

If picking was canceled. In action_ship_end(), it always writes shipped=True except that it finds in the sale, pickings in state different to 'done' or 'cancel',  then when you cancel an out picking the sale order will be shipped and it isn't right.

I include a patch that changes this check, it searches for pickings in the sale with state different to 'done' or 'cancel' for calls to action_ship_end() if it only finds picking in done or cancel  states it doesn't call to function. Reversing the current behavior.