Commit Graph
59536 Commits
Author SHA1 Message Date
Cédric Krier bf18b966b8 Use quantity set on the line to compute unit price from Shopify order
The quantity of the line item may be different if part of the line item has
been refunded or cancelled.

Closes #14103
2025-07-04 10:15:23 +02:00
Cédric Krier aa0bf2e7ba Reset to draft sales updated from Shopify
As the update from Shopify may need to add new lines which can only be created
for a draft sale.

Closes #14099
2025-07-02 13:25:56 +02:00
Cédric Krier 038230eb91 Do not clear existing product of sale line when update from Shopify
Closes #14098
2025-07-02 11:42:14 +02:00
Cédric Krier 08d0789e0b Allow editing product on confirmed sale line with Shopify identifier
Closes #14096
2025-07-02 10:23:03 +02:00
Nicolas Évrard bf64f359a2 Set current screen context in import / export windows
Closes #14128
2025-07-23 14:10:32 +02:00
Nicolas Évrard 8d7279778b Get ir.model Model from the pool
Closes #14131
2025-07-23 18:01:24 +02:00
Cédric Krier 9a94f06da6 Do not crash if there is no Euro currency defined for intrastat reports
Closes #14050
2025-07-11 22:43:56 +02:00
Cédric Krier cc67a9b121 Do not fail to compute price when carrier has no price list per weight
Closes #14111
2025-07-11 09:41:35 +02:00
Cédric Krier 490fb564ea Stop propagation of click event on button in tree view
If the button is going to be executed, the selection of the row must not change
so the propagation must be stopped before reaching the row.

Closes #14118
2025-07-11 15:19:22 +02:00
Cédric Krier 750bfe2045 Do not convert integer value from binary function field
Binary fields can have two types bytes and integer when only the size is
requested. So integer value should not be converted to bytes.

Closes #14100
2025-07-03 23:10:30 +02:00
Cédric Krier 8ce69b1055 Use only foreign Many2One for domain on field for field access
The Char fields are not filled when using the foreign Many2One so the domain
must rely only on the foreign Many2One.

Closes #14081
2025-06-17 15:25:09 +02:00
Cédric Krier 380f7c6941 Slugify filename of email attachment
This gives more chance for the email to not be blocked as some mail server
implement restrictions on the filename of attachment.

Closes #14074
2025-06-15 12:19:39 +02:00
Cédric Krier 1fc8fa8809 Use chain to iterate over records to create and to write 2025-06-29 19:14:36 +02:00
Cédric Krier dbb65081b0 Do not restore values for created records when exception is raised when saving
Once a record has been created, the id is modified which change its hash value
such that it can not be found anymore.
But as the creation succeeded (and only the write part has failed) we can just
restore the values to None.

Closes #14093
2025-06-29 19:13:42 +02:00
Cédric Krier 125668e0e2 Do not change the selection of row when starting the edition
The edition of tree row relies on having the current record of the screen set
to the row edited. This can be only guarantee if we do not change the
selection.

Closes #14097
2025-07-03 16:24:59 +02:00
Cédric Krier 4238add5e3 Do not set Content-Length header to data response
Since version 0.8 werkzeug set the header automatically by default.

Closes #14010
2025-06-21 23:02:52 +02:00
Cédric Krier 13eb20f6b2 Use the actual Shopify values for scope in documentation 2025-05-07 19:13:03 +02:00
Nicolas Évrard 69690daa2c Fix a typo introduced in 71bad2d56f96 2025-07-02 01:02:22 +02:00
Cédric Krier 859a8ec312 Remove unecessary semicolon in tab modified_save
The semicolon was introduced in 14150ef09fb6
2025-06-29 02:10:35 +02:00
Cédric Krier b7d96280bc Limit the depth for finding modules in module directory 2025-06-28 16:22:27 +02:00
Cédric Krier d3ca288917 Round commission amount using price digit in reporting
Closes #14049
2025-06-10 19:52:29 +02:00
Cédric Krier b63c28503c Use recursive CTE for child/parent-of clause when the number of ids is too large
The path or MPTT queries are faster than the recursive CTE only when the number
of OR-ed clauses does not require more index scan than the CTE.
This number can be approximate to the depth of the tree.
Log10 is used to estimate the depth of the tree if it has an average of 10
children per node.

Closes #14078
2025-06-16 13:48:00 +02:00
Cédric Krier ea1393bb84 Reduce the clauses of child-of using common roots
For the path, if the longer path contains another searched path, we can ignore
it.
For MPTT, if a range is inside a larger range, we can also ignore it.

Closes #14064
2025-06-10 23:22:01 +02:00
Cédric Krier 6718a613cf Convert UnidentifiedImageError from PIL into validation error
The image conversion that are done as preprocessing of the user input should be
considered as data validation.

Closes #14084
2025-06-18 01:26:39 +02:00
Cédric Krier 2cd40e46a8 Catch error from clipboard.writeText
Closes #14082
2025-06-17 17:21:52 +02:00
Cédric Krier c3a9faea42 Convert domain without checking access
The searcher of Function field may execute code for which the user has no
access.

Closes #14077
2025-06-16 19:42:12 +02:00
Cédric Krier 98f6f4b037 Convert tuple from XML ID into string before join them
9941357a9b7c modified the 'ref' method of the eval context of XML file to
return reference string but get_id return a tuple of string and integer. So the
integer must be converted to string before being joined.

Closes #14066
2025-06-19 09:45:55 +02:00
Cédric Krier a41611ddd5 Do not fail if the cache name to clear does not exist
Cache instance can be created on usage like in ValueMixin, so a process may not
have an instance of the cleared cache.

Closes #14067
2025-06-12 12:48:22 +02:00
Cédric Krier d1b33c2dc0 Define product variable to raise error when cost price expression is not a Decimal
The product variable is used to format the error message but also as for
50bf49b7b031 it may be empty.

Closes #14062
2025-06-10 18:12:43 +02:00
Adrià Tarroja Caubet 4b07c0d666 Inherit marketing reporting abstract models in right order
Abstract models should be always the last in inheritance because
they are object when optional dependencies are not activated

Closes #14057
2025-06-13 10:56:40 +02:00
Maxime Richez 207f097a95 Do not check access when register button click
e6c72b1f23e7 missed to add the decorator on the register method.

Closes #14060
2025-06-19 23:40:11 +02:00
Cédric Krier fa4c2ae1fb Limit the height of completion dropdown
The actions are set as sticky to be always visible.

Closes #14063
2025-06-10 23:00:30 +02:00
Cédric Krier 7425bc176a Use dedicated list view to display children line on budget form
We do not need to full record name but just the current name when editing
children from the parent form.
2025-05-10 11:57:50 +02:00
Maxime Richez 776814ba5c Convert shipments set to list when calling set_measurements
Closes #14071
2025-06-13 15:57:31 +02:00
Cédric Krier 1921487213 Replace the usage of field definitions with field attributes in the ModelStorage
Model.fields_get is expensive to call as it create a new dictionary for each field.

Closes #14061
2025-06-10 14:31:11 +02:00
Cédric Krier 5e560afbdc Do not use field definitions when exporting data
Calling Model.fields_get is expensive especially for each record to export.

Closes #14061
2025-06-10 14:29:07 +02:00
Cédric Krier ed1e9d8916 Fill payment amount cache only when cache column is added by register
Closes #14034
2025-06-02 10:54:15 +02:00
Cédric Krier 593c8f0aea Use AND-ed clause when searching for implicit location for internal shipment
88978685 added a clause on the type but using an OR-ed clause which includes
all the storage locations instead of only the storage location with a
provisioning or overflowing location.

Closes #14016
2025-05-13 18:49:32 +02:00
Cédric Krier b708094026 Make trytond-gis depends on the trytond extras test for its tests 2025-06-01 23:19:18 +02:00
Cédric Krier ae71913833 Add transition from packed to cancelled for internal shipment
Since fee9e4e8c864 the internal shipment has a new packed state that can be
cancelled.

Closes #14053
2025-06-05 16:43:10 +02:00
Xavi Hermoso 3e4fea4b3c Set default flag to False in Own Requisition rule group as it is linked to Purchase Requisition group
Closes #13930
2025-03-20 12:22:47 +01:00
Cédric Krier 733df9d2dd Use the configured display size when selected or expanded row are defined
This ensure that we store on the view the selected/expanded rows by displaying
them after a reload.

Closes #14048
2025-06-01 12:49:28 +02:00
Cédric Krier eb7336c1c4 Delay the observation of the more button
#14048
2025-06-01 12:46:57 +02:00
Cédric Krier c37abac5dc Do not save tree state when setting value on form view 2025-06-01 12:45:53 +02:00
Cédric Krier 8e1e68727d Always wait for the promise of save_tree_state
#14048
2025-06-01 12:45:06 +02:00
Cédric Krier 312ae7b387 Forbid to set closed account on statement rule line
The domain must be the same as account domain of statement line.
2025-05-31 14:41:01 +02:00
Cédric Krier 75ccdb1ba2 Use -1 as fallback value for company in account domain of statement line 2025-05-31 14:40:02 +02:00
Sergi Almacellas Abellana e61ed092f6 Remove debug exception introduced by 2fbe3b55927a 2025-06-12 10:54:46 +02:00
Cédric Krier 1bc9046fbe Add test scenario for tax test wizard 2025-05-30 21:36:23 +02:00
Cédric Krier a4a655b05e Use explicit key when computing taxes and object instead of dict
This defines explicitly the available attribute and unify the use the values as
tax line instead of the keys.
2025-05-30 21:35:55 +02:00