After removing the company from a delivery method, every checkout done
in website fails due to odoo trying to convert the price to the
company currency.
This PR fix the bug by doing the conversion only when there is a
company set on the delivery method.
opw-1905466
closesodoo/odoo#28626
Making a delivery with an external carrier without setting any partner
will sometimes lead to a crash on the API respond from the carrier. This technical error is sent back to the user without any proper sentence human readable.
This commit set the field 'partner_id' required in case of delivery with external carrier to avoid any technical error
Task : 1886733
This commit adapts the business code to changes introduced by
the parent commit in order to keep the same behaviour as before.
All readonly=False fields will have to be checked afterwards to confirm
that the business case requires write access to the source field.
Purpose of this commit is to give description more "business oriented"
because those descriptions appears in Odoo Studio which is supposed to be used by end users, not only by developers.
Related Task ID : 37311
Purpose : during a transfer, if some move lines have different
destination locations and the user click on 'put in pack' button, an
warning is triggered. This message, saying : 'You cannot put in the same
pack move lines having different destination location', is replaced by a
wizard allowing the user to choose a unique destination location. This
location will be set as location_dest_id on all transfer's stock move
lines. After that, the wizard calls again the _put_in_pack() method
where all the logic remains the same.
Task : 1872345
In a picking of type 'delivery', hitting the Put in pack button load a wizard
to choose package information. This action that load the package wizard overide
the environement context. the issue is we need 'active_id' later. In a full
python flow, the ORM fill the context with standard values like lang,
timezone, ... and active_id. In a flow using RPCs from JS. The context is
not magically rebuild so we lose the active_id.
With a fixed price delivery method, the error message was not displayed when
the address doesn't match.
Inspired from function base_on_rule_rate_shipment
The error message was not clear enough.
opw:1879204