Commit Graph
100 Commits
Author SHA1 Message Date
Cédric Krier 544e5a2b7c Manage ethanol in stock 2026-03-28 13:40:06 +01:00
Cédric Krier ea7a417d4a Add documentation about notification 2025-12-13 17:21:23 +01:00
Cédric Krier 792d8f9d5c Follow standard for product anchor in production documentation 2026-03-30 19:25:51 +02:00
Cédric Krier 62c614a7b7 Add sale_project_task module 2026-03-27 17:37:53 +01:00
Cédric Krier a49aa67d73 Calculate the quantities to ship and to invoice for sale and purchase 2026-03-27 19:32:32 +01:00
Cédric Krier 905a2b20ba Rename invoice method on shipment into on fulfillment 2026-02-25 11:37:37 +01:00
Cédric Krier 67b9c34b25 Do not show empty invoiced progress on project work 2026-02-25 15:24:25 +01:00
Cédric Krier d5b308ffb3 Add origin reference to work 2026-02-25 15:25:02 +01:00
Cédric Krier 801a805ab6 Add account_payment_check module 2026-03-27 18:36:21 +01:00
Cédric Krier 4bbe1e263c Fix documentation label for strict sequence 2026-01-13 15:41:04 +01:00
Cédric Krier b3da16647f Remove google_maps module
Closes #14608
2026-03-30 22:36:05 +02:00
Cédric Krier 741eaf801c Set sortable on table header instead of label
This way the cursor is rendered as pointer over the clickable element.
2026-03-18 19:47:50 +01:00
Cédric Krier 3c8621dc9f Improve style when resizing columns
- use box-shadow to simulate border on the stick header
- show resizer on hover
- render dashed border for columns when resizing

Closes #14693
2026-03-18 19:46:20 +01:00
Cédric Krier 1a70a6e362 Set the processing label when it is shown to be translated
Closes #14692
2026-03-18 17:35:20 +01:00
Cédric Krier 17d7a1ad22 Clear _chat attribute and unregister when closing chat or tab
Closes #14576
2026-03-18 17:18:42 +01:00
Cédric Krier 264e27d88e Replace ShopifyAPI by shopifyapp
Closes #14243
2026-03-29 20:05:46 +02:00
Cédric Krier aba5c5b157 Do not call on_change_party when creating sale from webshop
Only the addresses are set from the party to prevent side effects from other
modules who may extended the method.
2026-03-25 22:11:59 +01:00
Cédric Krier 75ec32b080 Set header for sale from shopify before setting the lines
The lines may depend on the header like the shipping line which depends on the
carrier.

Closes #14706
2026-03-25 23:25:50 +01:00
Cédric Krier 5db4bb63c8 Fill invoice source amounts instead of checking amounts from UBL
Closes #14624
2026-03-14 00:46:13 +01:00
Cédric Krier acfece868a Check the invoice amounts against the source amounts 2026-03-13 23:53:22 +01:00
Cédric Krier df5dc23253 Add support for pick-up delivery method from Shopify
Closes #14581
2026-03-27 13:38:34 +01:00
Cédric Krier 41f63dbb1a Log the update of sales from Shopify
Closes #14711
2026-03-26 10:58:16 +01:00
Cédric Krier 65342e9877 Add contextual `_log` to force logging events
Closes #14712
2026-03-26 10:56:59 +01:00
Cédric Krier 84bcad1e83 Close the database connection after memory database has been dropped
When dropped the global connection is set to None but it should be closed when
the transaction put back the connection.

Closes #13859
2026-03-24 10:55:44 +01:00
Cédric Krier 43cf9b7634 Commit after each reconciliation of the automatic reconciliation scheduled task
This avoid having a long running transaction on large database but keep sharing
most of the code with the wizard.

Closes #14674
2026-03-13 11:52:40 +01:00
Cédric Krier 86edccf764 Make retrieval of metadata for main doc via build really quiet 2026-03-29 08:57:01 +02:00
Cédric Krier 9055b68e74 Use current timestamp as last modified at for table query
The ModelSQL with table query may not define write nor create date since
5095928ec38a
2026-03-28 19:07:51 +01:00
Cédric Krier 794b61b163 Filter the MIME type of the additional documents in UBL allowed by the specification
Closes #14708
2026-03-26 08:14:45 +01:00
Cédric Krier 2f12db2751 Add emails to COPYRIGHT names 2026-03-23 16:08:13 +01:00
Cédric Krier 75159112f6 Add number to the project work efforts
Closes #14671
2026-03-12 18:12:50 +01:00
Cédric Krier 3b292c46b7 Forbid the payment of an amount of 0 when the amount is editable
Closes #14670
2026-03-11 19:04:22 +01:00
Cédric Krier 03655a335a Add notify_user to ModelStorage
Closes #14667
2026-03-11 10:01:51 +01:00
Cédric Krier 27dff955f1 Add missing log_records attribute to Transaction documentation 2026-03-11 10:01:22 +01:00
Cédric Krier 6a9565f9d4 Add generic management for label style in form widget 2026-03-10 15:45:24 +01:00
Cédric Krier 8550300972 Set the default locations for stock move when production is set
Closes #14665
2026-03-10 14:54:48 +01:00
Cédric Krier b9b81dbc68 Publish a message when notifications are silenced
#14698
2026-03-20 18:42:55 +01:00
Cédric Krier 72e6f17b81 Limit the size of the notification payload send to the bus
The payload size is limited by the database but also there is no point to
overflow the user with too much notification popup.
So we publish only the first 4 messages and shorten them to 100 chars per line.

Closes #14698
2026-03-20 18:41:23 +01:00
Cédric Krier 25295bde68 Add test to check boolean value for button states
#14700
2026-03-21 09:22:21 +01:00
Cédric Krier ea9df1ca42 Convert to boolean the readonly state of the "Process" button on the inbound email
Closes #14700
2026-03-21 09:21:43 +01:00
Cédric Krier 6e482d8859 Convert to boolean the invisible state of the "Create Purchase" button on the purchase request
Closes #14700
2026-03-21 09:21:04 +01:00
Cédric Krier 54d422f224 Always convert JSON payload to stripe Event and replace dict methods by StripeObject methods
Since Stripe 15.0.0 the StripeObject no longer inherits from dict. This means
that we can no more manage payload as simple JSON but we must convert it to stripe.Event.
And we must replace dict method by their StripeObject equivalent.

Closes #14714
2026-03-26 16:23:55 +01:00
Cédric Krier 7edd09009d Update to Stripe API version 2025-09-30.clover 2026-03-06 12:17:27 +01:00
Cédric Krier c8c49bea09 Add deprecation warning when new API version for Stripe is available
Closes #14659
2026-03-06 12:09:44 +01:00
Cédric Krier 81872dee9b Fix format of CHANGELOG initial entry 2026-03-27 18:12:02 +01:00
Cédric Krier 55da16f6a7 Use party lang Function field to set language for taxes and chat 2026-03-06 10:50:48 +01:00
Cédric Krier a81884484a Update documentation of stock_package 2026-02-07 19:31:15 +01:00
Cédric Krier 3e4e9198a3 Add pack wizard on shipments and package
Closes #14586
2026-03-19 15:20:46 +01:00
Cédric Krier 718628fe0c Do not fail on calculating max ID when setting sequence on empty group
Since 9fdf4dbd66f2 set_sequence calculates the maximum ID but it may be called
with only 0 if the group is empty.

Closes #14689
2026-03-18 13:15:43 +01:00
Cédric Krier 81a4f7118d Add missing classmethod decorator to get_translatable_languages of language
Closes #14685
2026-03-17 15:18:34 +01:00
Cédric Krier 248dbc45f2 Fetch all non cancelled Shopify orders
Orders with only gift cards are directly archived by Shopify but we need to
fetch them.
2026-02-04 16:39:09 +01:00
Cédric Krier f9cfa0c422 Add support for gift card products on Shopify
Closes #14417
2026-01-09 18:31:28 +01:00
Cédric Krier af646f2d25 Add fields that calculate if the invoice is sent via Peppol
Closes #14651
2026-03-05 11:48:32 +01:00
Cédric Krier 1abb31b07d Unpublish the products from the web shops when deactivating them
Closes #14649
2026-03-05 10:46:50 +01:00
Cédric Krier 8251c37ed6 Permit administrator to create incoming Peppol document
Closes #14646
2026-03-03 19:52:55 +01:00
Cédric Krier 39a22ae74f Use python3 to launch build 2026-03-26 00:32:49 +01:00
Cédric Krier 94c4f0a9e6 Rewrite coverage paths
Since tox is running tests on the installed package, the coverage paths are no
more relative to the repository root.
2026-03-25 19:39:52 +01:00
Cédric Krier a77f01aff0 Allow cash rounding with opposite method 2026-03-02 15:21:27 +01:00
Cédric Krier e4cb6234a1 Do not add comment on table nor column
Closes #14614
2026-02-19 09:54:48 +01:00
Cédric Krier a51a6249c0 Add attn to address
Closes #14633
2026-02-27 12:55:11 +01:00
Cédric Krier 04739b25bb Assign shipment before pick in European stock accounting test scenario 2026-02-12 13:08:44 +01:00
Cédric Krier 41d60e5d03 Do not post twice invoice in Spanish account test scenario 2026-02-11 12:50:17 +01:00
Cédric Krier f34ebe4ffb Do not call twice wait on account export in test scenario 2026-02-11 12:44:02 +01:00
Cédric Krier b540f5bbb8 Cancel before reset to draft and validate before posting statement in test scenario 2026-02-11 11:02:34 +01:00
Cédric Krier c013aed083 Do not try to cancel move in shipment in anglo-saxon test scenario
Instead it is the shipment that must be tried to be cancelled because the
cancel button on move is forbidden if it is in a shipment.
2026-02-11 10:57:23 +01:00
Cédric Krier a61814d46e Assign shipment before pick in Shopify test scenario 2026-02-10 19:22:32 +01:00
Cédric Krier 39e5dc7ffc Do not process parent document incoming after split in test scenario
Only active document can be processed.
2026-02-10 18:06:00 +01:00
Cédric Krier f06ae5f4d8 Reset to draft only non draft sales in stock quantity test scenario 2026-02-10 12:37:51 +01:00
Cédric Krier be609bf3e8 Patch assignation required in test scenario to create move without shipment 2026-02-10 17:42:42 +01:00
Cédric Krier b5a13b5c5e Use customer shipment to create outgoing move for lot trace test scenario 2026-02-10 11:55:23 +01:00
Cédric Krier d4c75a5499 Use internal shipment to create product needs in stock supply test scenario 2026-02-10 17:08:34 +01:00
Cédric Krier 853870a1c9 Set BoM when testing production split 2026-02-09 21:46:16 +01:00
Cédric Krier b3525db241 Do not activate module already activated for the demo 2026-02-09 20:38:45 +01:00
Cédric Krier ea7a2c3aa2 Do not reset to wait supplier return shipment in scenario
The purchase already creates return shipments in waiting state.
2026-02-09 18:15:37 +01:00
Cédric Krier ed924a6c25 Test empty sale and purchase with a comment line
The states of the button prevents to quote without any line.
2026-02-10 18:09:54 +01:00
Cédric Krier 7d040c8cb9 Check button states when testing access
Closes #14591
2026-02-09 18:13:34 +01:00
Cédric Krier fa9e60bb9c Do not use Literal to count in SQL
Following ce972acc1cf2, this conversion was missing and prevent psycopg 3 to
determine the data type.
2026-03-24 18:25:19 +01:00
Cédric Krier 9cf2412f7e Add visual hint on widget of modified field
All the widget properties used for style are regrouped under a unique styled
widget which simplify the CSS rules.
For xxx2Many widget, there is not style applied.
The style is reset when the widget is not linked to a field.

Closes #14613
2026-02-17 18:10:15 +01:00
Cédric Krier b77d4dbe06 Remove default import of wizard in module template
It is encouraged to use button to launch wizards, so the scenario should not
need it too often.
2026-02-24 12:41:49 +01:00
Cédric Krier a9604157ee Add VATEX code to Belgian taxes 2026-02-04 09:40:55 +01:00
Cédric Krier 1ec82407cf Add Belgian purchase and sale VAT zero rated goods 2026-02-03 15:19:31 +01:00
Cédric Krier 1dec292c0b Add UNECE code to Belgian taxes 2026-01-09 14:33:46 +01:00
Cédric Krier e7294b45c7 Add VAT exemption code on tax
Closes #14573
2026-02-04 10:12:56 +01:00
Cédric Krier a88c575fcc Retry to dump status later after unexpected exception
Closes #14678
2026-03-16 10:30:54 +01:00
Cédric Krier 145ce8f2f8 Make retrieval of metadata via build really quiet 2026-03-22 09:07:23 +01:00
Cédric Krier 855f129ee8 Use https for wikipedia links to BIC and IBAN 2026-03-23 09:03:36 +01:00
Cédric Krier f6cc09c813 Do not check link to help.shopify.com
The website requires JavaScript.
2026-03-23 09:03:05 +01:00
Cédric Krier 5310b00496 Remove grouped_slice per IN_MAX
The usage of ``grouped_slice`` without size is deprecated since `=
ANY(ARRAY[%s])` is used for PostgreSQL and SQLite is used only for tests.

The ``Database.IN_MAX`` is replaced by ``backend.MAX_QUERY_PARAMS`` which is a
more accurate limit of the backend.
The SQLite limits is indeed SQLITE_MAX_EXPR_DEPTH so we use a empirical value.
2026-03-22 21:05:26 +01:00
Cédric Krier 0da67bce21 Deprecate reduce_ids for SQL_OPERATORS['in']
Closes #12989 #13897
2025-12-26 10:57:44 +01:00
Cédric Krier 7b231e74e9 Use array as IN operators 2025-12-26 10:58:30 +01:00
Cédric Krier 6b4218f8dd Use psycopg_pool resize to clear unused database connections 2025-11-25 15:05:02 +01:00
Cédric Krier 7fb5a4a3de Do not use Literal to count in SQL
The * is not actually a parameter of the aggregate function so it is better to
let python-sql manage it with its default value.
2025-12-25 09:47:23 +01:00
Cédric Krier dada23bcb5 Do not install mrml on Python version greater than 3.14
See https://github.com/jdrouet/mrml/issues/597
2026-03-21 12:07:21 +01:00
Cédric Krier d3c8a8e55d Add support for Python 3.14 2026-03-21 09:02:25 +01:00
Cédric Krier 42b0fc7061 Remove support for Python 3.9 2026-03-21 08:48:06 +01:00
Cédric Krier e15c0b7d7a Upgrade to pyproject using hatchling as build-system 2026-03-21 18:46:34 +01:00
Cédric Krier a49ee526d2 Order Account Parties of General Ledger by party before id by default
Closes #14669
2026-03-11 16:03:00 +01:00
Cédric Krier 9821476565 Show account parties in ledgers when they contain lines 2026-03-11 15:20:41 +01:00
Cédric Krier 4c7f871e60 Generate an Account Party entry also for party having a move line in a children account
Closes #14668
2026-03-11 15:59:05 +01:00
Cédric Krier 82e08446fc Define Typless fields per document type
Closes #14648
2026-03-19 16:41:35 +01:00
Cédric Krier df3fd82299 Do not show empty web shop URL for product
Closes #14650
2026-03-05 10:49:11 +01:00