Daily updates from Odoo
Thursday, February 24, 2022
4 changes
Enhancements to existing features
Users can now apply data filters within document spreadsheets, making it easier to narrow down and analyze lists or pivot data. This improves everyday reporting workflows by helping teams focus on the records that matter without leaving the spreadsheet.
The DHL delivery connector now allows administrators to add custom request data for rating, shipping, and returns from the carrier settings in debug mode. This gives businesses more flexibility to meet DHL-specific integration needs without changing the core connector code.
Original PR description
Before this commit, there was no way to insert custom data to the DHL connector. With this commit, we add a custom field that can be accesses from the delivery carrier view, only in debug mode. This…
Before this commit, there was no way to insert custom data to the
DHL connector. With this commit, we add a custom field that can be
accesses from the delivery carrier view, only in debug mode.
This custom field will be evaluated like the inside of a python dict().
The keys of this dict will be 'rate', 'ship', 'return' depending on
when/where the user wants to add custom data.
Just before we send the data to the API, the request items are of type
`<class 'zeep.objects.Request'>`. This is practical to keep it that way
until then because the data added to it is checked with the wsdl file.
However, this is not practical when we want to add custom data. This
is more convenient to use a dictionary at this point. Dictionaries are
supported by zeep, so we do not need to convert it back to a zeep
object. to convert the zeep object to a dictionary, we can use the
function `zeep.helpers.serialize_object`. By default, the resulting
object is an ordered dict, which is an instance of a dict.
example of valid custom data:
```
'rate': {
"Request": {
"MetaData": {
"SoftwareName": "DefinitelyNotOdoo",
}
},
},
'ship': {
"ShipmentDetails": {"Pieces": {"Piece": {"Weight": '0.03'}}},
},
```
In the example for the 'ship' request, the Piece object is actually a
list of Pieve object. Each Piece object will be affected by the new
value.
task-2658889FedEx delivery handling now uses shared package and commodity information from the base delivery process, reducing duplicated setup across carriers. The update also supports declared package values for shipping insurance, helping businesses better cover parcels that are lost or damaged while respecting FedEx limits.
Original PR description
Each delivery provider, requires some information about the packages that need to be sent as well as about the commodities (for commecial invoices). Since this is needed by each provider, and the required values are very similar, these packages and commodities can be done one step ahead: in the base delivery module. reference-branch= https://github.com/odoo-dev/odoo/tree/master-ref_ups_add_insurance_percentage-goa
UPS delivery now supports commercial invoices for international shipments by adding required commodity details and return shipment handling. It also adds package insurance value support, helping businesses better document cross-border shipments and protect parcels in transit.
Original PR description
To generate a commercial invoice, UPS needed more information about the commodities. This commit does not change the code structure, it only adds the set_invoice function as well as the Commodity class and the _get_commodities function. I also added the 'is_return' boolean in the shipment info to be able to modify the ReasonForExport from SALE to RETURN. task-2701428