Before this commit, when comparing a period P of reference to another one,
some rows with only data comming from P would not always be presented
in the table. The problem used to manifest only when loading at least to
level at the same time (starting from Total or any header via expand all).
The reason is the following:
- the data comming from P are processed first: starting from somewhere
in the trees of headers, some nodes linked to the data comming from P
are progressively created with no children at first, then the children
(if any) are added later and so on progressively.
- the data comming from the other period is processed and nodes are
created with no children and so on in the same way, clearing possibly
all the node children comming from P.
For example, with
a row groupby = [field_a, field_b],
a group [v, v1] from P
a group [v, v2] from the other period,
a node corresponding to v would be added, then a node child for v1.
Then the node for v would be recreated with no children, then a node child
for v2 would be created. leading to a tree of row headers of the form
Total > v > v2.
Note that it was not affecting the measure values for the displayed rows
since those measures are stored separately from the tree and are linked
to the nodes via some ids.
We fix the problem by avoiding the recreation of a node if it already
exists.
opw-2635113
closesodoo/odoo#80468
X-original-commit: 364475b5da3d4aaa87db715f0c0bbaa9dd3e05c8
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Signed-off-by: Mathieu Duckerts-Antoine <dam@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
Co-authored-by: Andrea Grazioso <agr@odoo.com>
When using a mobile, scanning a product to manage a delivery won't work
To reproduce the error:
(Need stock_barcode. Use demo data)
1. In Operations Types, edit "Delivery Orders":
- Enable "Show Detailed Operations"
3. Create a planned delivery order DO:
- 1 x [FURN_1118] Corner Desk Black
4. Mark a Todo
5. Switch to a mobile view
6. Edit DO and scan 601647855640 (i.e., the barcode of FURN_1118)
7. Save DO
Error: An error is displayed "The operation cannot be completed [...]
Model: Product Moves (Stock Move Line) (stock.move.line), Field: From
(location_id)"
The kanban view does not include both `location_id` and
`location_dest_id` although they are required
OPW-2688915
closesodoo/odoo#80470
X-original-commit: 248f659615a2934df7b5ee83734aa78508987fdb
Signed-off-by: Adrien Widart <awt@odoo.com>
When using account control on a journal, line_section and line_note do not
block the process even though they are not in the allowed accounts (they
don't have an account at all).
But when adding new accounts in the account_control_ids field, the
constraint is triggered by those lines.
This PR makes the constraint ignore those lines when assessing if
there's an issue.
opw-2677597
closesodoo/odoo#80313
X-original-commit: 9a42ebf1d9d482b031bc5bb7839cc9a8a09090ea
Signed-off-by: Florian Gilbert <flg@odoo.com>
Currently the resolv.conf file saved when building the image
is not applied because the file is rewritten on each startup.
This commit modifies the name of the file so that the nameservers
are added when starting up when generating the resolv.conf file
We remove the domain localdomain because it is useless in this situation.
Now with this list of DNS servers, they allow other DNS server
to be used if the local DNS server does not resolve the domain.
closesodoo/odoo#80475
X-original-commit: 25c3cb0aea3b001d84a5e33dc0e52cfd8fbf6456
Signed-off-by: Masereel Pierre <pim@odoo.com>
Same as 5dde19c92ecee, sudo is not enough but the report needs to be
rendered with the user 1.
The access token proves the user has the access, the fact that he is a
portal, employee or public should not change the result
closesodoo/odoo#80491
X-original-commit: 66ab2ae213f05b055a032d0810de1de9334741ac
Signed-off-by: Toufik Benjaa (tbe) <tbe@odoo.com>
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Steps to follow
- Share a project task
-> The invitation message is duplicated
Cause of the issue
`partners` can be empty
-> `not partners` is then falsy
Solution
Check the default parameter with `is None`
opw-2698724
closesodoo/odoo#80476
X-original-commit: 9514e76e21fe346ea3aee0458ad170b24f09d67e
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
Signed-off-by: Hubert Van De Walle <huvw@odoo.com>
Prevent calling _get_sequence_format_param() with None as parameter in _is_end_of_seq_chain() when sequence is empty.
Would cause an error when deleting an invoice with an empty sequence.
closesodoo/odoo#80467
Task: 2697771
X-original-commit: 6a5aab047c1e540505ba84a1ef2dcc3356e89708
Signed-off-by: William André (wan) <wan@odoo.com>
Now allow to scroll through the pages and features without hiding the
"Build my website" button on small (or zoomed) screens.
task-2670809
closesodoo/odoo#80466
X-original-commit: 8fe2674f013408d7d1449fddc7d18728cef69281
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Before this commit, when a tour tooltip was located in the snippet
list, it could cause an overflow that would partly hide the tip and
would bug out when being hovered.
With this commit, the list is made full height, simplifying the look
and giving enough space for the tip to not overflow.
task-2670809
X-original-commit: d8c25d400af61bdfb4afd9d7921c3e93745f2407
Part-of: odoo/odoo#80466
Prior to this commit, if three colors were selected for a gradient and
the user would click on the third color, if that color had a value of
100%, in some conditions the picker would resize infinitely.
Also prior to this commit, the color picker slider was not supported
well under safari.
This commit fixes the SCSS rules in order to fix those behaviours.
task-2670809
X-original-commit: 5a91d8b00c35cb597b0ee5f5ec8605e4589f81c9
Part-of: odoo/odoo#80466
After [1], the dropdown menu of the main navbar for some menus
(e.g customize on /shop) didn't have scrollbars anymore, making it hard
to navigate on smaller resolution devices.
This commit restores that.
[1]: https://github.com/odoo/odoo/commit/1971bf39810468b2b67e2ecd3c86c663d5cffcfd
task-2670809
X-original-commit: b46d2ad7c6b225ae34594991d5189672b95fc3cc
Part-of: odoo/odoo#80466
Before this commit:
Currently, in Discuss, the chat activates the drop zone when try to drag and
drop any user's avatar (or any text). The same thing happens if we do it in
the chat window or chatter.
After this commit:
The chat will not be activated drop zone if the drag is not actually
a file/a document.
Task-2590510
closesodoo/odoo#80464
X-original-commit: 0e2f46bc2cfd36dc3508a56601239c15e2301571
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit:
When trying to select emoji on log note before record creation,
it shows traceback.
After this commit:
Hiding the emoji button when the record is under creation.
Task-2664700
closesodoo/odoo#80352
X-original-commit: 10c06f9753540d0a58b1a93fc54947a58b092468
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Purpose
=======
As a Lead Manager, I do not really care about what's in the "Lead Pipeline"
since this does not exist. Instead, I want to keep an eye on all the leads that
entered the CRM to see how well they are doing and how they are spread.
Specifications
==============
- Remove the group on the Reporting
> Leads menu item, this menu can be used with Opportunities only
- Move it below the Pipeline report
- By default, this menu shows all crm.lead :
- no matter the type (lead/opp) but with the filters in the search view
if needed
- no matter if won/active/lost (but again, filters allow me to change that
if needed)
- Default grouped by month creation date
- Filtered on records created this year to avoid displaying 10 years of CRM
usage - already done
=> The difference if I activate leads is that then I have the extra filters, ...
but this is already valid if I'm only working with opportunities
Also, on the report list view of the leads, this commit brings some small
modifications in order to have a better view of what kind of lead and 'where'
they are:
- Hide by default the "City" field
- Add "Type" field before "Probability" field (only if Leads are activated)
- Add "Stage_id" after "Type" field
Task-2671372
closesodoo/odoo#78748
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
Issue:
1- Website editor > Set shape on image
2- Crop > shape is reapplied on the croped image
3- Change another option (e.g. image width)
4- Undo > image will be shown cropped but without any
shape applied on it.
In the current code we apply shapes on cropped images using
the event listener 'ImageOptimize > _onImageCropped', so in
'ImageTools', the 'crop()' option method will record the
"crop" action but the step where the shape is added is lost.
(See: SnippetOptionWidget > _onUserValueUpdate()).
The goal of this commit is to merge the 'ImageTools' and
'ImageOptimize' in one option so we can simply use shape
related methods to apply shapes when the crop() & resetCrop()
methods are called.
This way, the step to record will be a "cropped image with
a shape on it" instead of just a "cropped image".
task-2628964
closesodoo/odoo#80208
X-original-commit: 7c17d78fbdbb64b1aa5b55f78d3202a64a85ed2f
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
It is not always immediately clear to the end user that changing the
pricelist on a partner will not change the pricelist for any open carts
related to this partner. To clarify, this commit introduces a warning
message, indicating that the end user should change the pricelists of
these open carts manually if this is the desired effect.
Any open carts that already have the same pricelist as the new partner
pricelist are excluded from the search and will not trigger the warning
message.
task-2635067
closesodoo/odoo#77298
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
When a Sale Order is created, if no deadline was set, the Delivery Order
takes the SO expected date as deadline.
However, before this commit, if the SO has a deadline and the user
removes it, the DO deadline will not be recomputed.
Now, the DO will take the SO expected date as it does at its creation.
task-2581265
opw-2528705
closesodoo/odoo#74695
Signed-off-by: Arnold Moyaux <arm@odoo.com>
The product replenish wizard quantity will be set to the selected
`product_id` forecast quantity if it's a negative value (otherwise, it
will be set to 1).
task-2581265
Part-of: odoo/odoo#74695
Before this commit, packaging field was visible on the stock location
form view even if the packaging configuration set to off.
task-2581265
Part-of: odoo/odoo#74695
Before this commit: when reserve/unreserve button were clicked, it was
opening action in new breadcrumb while it should not open new breadcrumb
instead it should display in self.
After this commit: reserve/unreserve button will open action and replace
current action and will not open new breadcrumb everytime we click.
task-2581265
Part-of: odoo/odoo#74695
Before this commit, the user was able to change the UoM type from
"Reference Unit" to "Bigger" or "Smaller" and let an UoM category with
no reference.
So, to force UoM category to have at least one Reference Unit, the user
can't change the reference unit if there is no other unit set as
reference.
task-2581265
Part-of: odoo/odoo#74695
- Renames "DHL"/"DHL USA Connector" into "DHL Express Connector";
- Changes the orderpoint's constraint message when the user's trying to
create an orderpoint who already exists.
task-2581265
Part-of: odoo/odoo#74695
- Adds a default `product_id` only when the supplier info is added from
a product variant form view;
- Adds a domain on `product_id` to constrain the field to its product
template, and only if it has a product template (otherwise, there is
no domain);
- Adds a onchange to remove the product variant if the user changes the
product template and they don't match anymore because before this
commit, it was possible to have a supplier info with a variant who
doesn't belong to its supplier info's product template;
- Replaces the options `no_create_edit` by `no_create`/`no_open` as the
former doesn't work as expected.
task-2581265
Part-of: odoo/odoo#74695
Before this commit, Reservation Method in `stock.picking.type` form view
was visible for the PoS Orders' Operation type which should not be
visible. So, reservation method will now be invisible in this case.
task-2581265
Part-of: odoo/odoo#74695
Before this commit, `print_label` and `propogate_carrier` fields were
visible despite the delivery methods setting is off.
This commit moved these two fields into delivery module so now these
fields will be visible once the user installed the delivery module.
task-2581265
Part-of: odoo/odoo#74695
SEO issue: blog post doesn't have <h1> for post title.
The goal of this commit is to change the main cover title to <h1>.
task-2454130
closesodoo/odoo#66844
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Issue:
The way we generate the dayNamesMin is not compatible with the chineese
translation provided by "moment.js".
This is because the dayNamesShort contains an extra character in front
週 (week). Because of that the names of the days on the
small calendar are all the character 週 (week).
Solution:
There is a variable (weekdaysMin) which is unused and contain a shorter
version of the days this variable is consitent in the other languages so
it should have no side effect and will fix the chinese translation as it
only contains one character.
Introduced by: 1fc33a63be
task-2692910
closesodoo/odoo#80448
X-original-commit: 7cc502a6eb61bc541dbc27beefed004fcf81e04b
Signed-off-by: Samuel Degueldre <sad@odoo.com>
Signed-off-by: fja-odoo <fja@odoo.com>
Generic search bar was introduced with #65871.
But the trigram search would fail if it encounters a (SQL) NULL text
from the database. This is because when word_similarity() receives NULL
as a parameter it returns NULL, and NULL not being a number cannot be
compared with the similarity threshold.
After this commit the trigram search will exclude matches returning a
NULL similarity.
Step to reproduce:
- Enable trigram in the DB, run `CREATE EXTENSION pg_trgm;` in psql
- Create a product, name it `myproduct`
- Insert NULL values inside the translation table (not sure how the
user did it):
`update ir_translation set value = NULL where src = 'myproduct';`
- Search 'mypro' in the eshop search bar
-> Traceback
opw-2680659
closesodoo/odoo#80426
X-original-commit: ef17edc32d4646c93e31e730249be83469951241
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
These negative tax groups were removed in a previous commit:
1687248
The message of the previous commit was:
Remove the negative tax groups from account_data. The negative tax groups have no application. The taxes that were in the negative tax groups are reassigned to their positive counterparts.
The previous commit was accidentally overwritten in a forward-port:
odoo/odoo#77295closesodoo/odoo#76586closesodoo/odoo#80240
Signed-off-by: William André (wan) <wan@odoo.com>
Purpose of the commit is to do the generic improvement for the
project:
So in this commit, done the following changes:
- duplicating a project, copy all milestone of project and
set is_reached and deadline field as 'False'.
- chanage the order of the state button in sale order form view.
- pass mail body as default description value in message_new
method of project task.
task-2652943
closesodoo/odoo#77065
Related: odoo/enterprise#21199
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
Previously, when underconsumption occured, we split the move (in
post_inventory). And if backorder, the moves not done would be linked to
the new backorder MO (when backorder MO is created).
After 8883c06ada, we create backorder MOs
before _post_inventory, making it so the moves not done will not be
linked to the backorder MOs and reserved qtys are not released.
To fix, we set cancel_backorder to be true to cancel all the leftover
moves and release the reserved qty.
Task-2697611
closesodoo/odoo#80446
X-original-commit: cffb2b455d73f64d96f91b9e0301c346989eae63
Signed-off-by: Tiffany Chang <tic@odoo.com>
Instead of "saving" the state into the DOM (which is lost at next render) save
the state of each button in JS.
task-2308951
closesodoo/odoo#80358
X-original-commit: 58d4d65e98d8f5196b4d6ca91cd5df96dfac1360
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this fix, all moves of type “entry“ were considered as misc operations in regard to repartition tags and the tax report. And only moves of type “out_refund” and “in_refund” were considered refunds.
Now reverse entries with sale/purchase taxes get their tags set accordingly to repartition lines.
Account D C Tax Tax Grids
700000 Ventes en Belgique (marchandises) 0 1000 21% +03
451000 T.V.A. à payer 0 210 +54
400000 Clients 1210 0
Was reversed to:
Account D C Tax Tax Grids
700000 Ventes en Belgique (marchandises) 1000 0 21% +03
451000 T.V.A. à payer 210 0 +54
400000 Clients 0 1210
Is now reversed to:
Account D C Tax Tax Grids
700000 Ventes en Belgique (marchandises) 1000 0 21% +49
451000 T.V.A. à payer 210 0 +64
400000 Clients 0 1210
closesodoo/odoo#80427
X-original-commit: a337d5d5b3886eabbdc8de95eb615dffc91d5d8e
Related: odoo/enterprise#22532
Signed-off-by: Olivier Colson <oco@odoo.com>
The currency.compute method is deprecated. We use _convert instead
closesodoo/odoo#80416
X-original-commit: 8fa0312d4a59198757a0daab68927e75fa1bab23
Related: odoo/enterprise#22527
Signed-off-by: Arnold Moyaux <arm@odoo.com>
When editing the billing address of an existing portal partner P,
the salesperson of P was changed by the default website salesperson
opw:2649732
closesodoo/odoo#80415
X-original-commit: 52442484897d95bfffa3f8672908bd3d00923363
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
When the user opens the survey module for the first time, the user may
find it difficult to create and configure a new survey as there are many
options available. To improve the onboarding experience of the user, we
will provide a new link on the action helper of the survey module (for
the kanban and the list view of the surveys).
When the user clicks on that link, the system will open a new modal. The
user will then be able to choose a sample to load. Each sample will be
pre-configured for specific purposes. We will have:
- A sample for the feedback forms
- A sample for the live presentations
- A sample for the certifications
After loading a sample, the user will be able to adapt it to fit their
needs. Thanks to the samples, the user can create a survey more easily
and more quickly.
task-2670605
closesodoo/odoo#79255
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
Co-authored-by: Carlos Valverde <cvs@odoo.com>
Purpose
=======
As an Interviewer, I want my questions to be as clear as possible. To this end
I would like to be able to detail a bit which kind of answers I expect.
Specifications
============
For all the question types that require an input, display a char field
"Placeholder" in the Answers tab with an helper that says:
"When set, this text will appear in the field to help participants answer."
Then on the survey, display the placeholder in the question input zone.
Task-2671388
closesodoo/odoo#78682
Related: odoo/upgrade#2998
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
* Avoid computing logic in get_values, use a clean compute instead
* Leave the management of config parameters to the generic behavior in
base, no need to override set_values to do it "manually".
Furthermore, in the mail case, the set_values override enforced the creation
of a falsy parameter, which goes against the generic parameter logic to avoid
having falsy values for nothing in database.
Part-of: odoo/odoo#62249
When "Saving" a settings wizard, all its settings are written, even if
not modified.
This implies updating ir.default and ir.config.parameter models.
By verifying whether there were effective changes, we can
avoid:
1) the searches to get the corresponding records from database
2) the cache clear triggered by default/parameter updates/creation
This commit thus reduces the queries triggered when saving settings,
but also the queries of future operations, since we avoid clearing
the ORM cache if not needed.
Part-of: odoo/odoo#62249
The settings wizard provides the implied_group logic to add/remove
implied_groups to an existing group (by default base.group_user).
When verifying those special fields (onchange, default_get and execute
calls), ref is called once by group, by field.
E.g. a field
group_broll = fields.Boolean(implied_group="broll")
will trigger two refs ("broll" & "base.group_user") for each
onchange/default_get/execute call on res.config.settings.
This commit uses the cached method to fetch ir.model.data,
avoiding a lot of queries (depending on the fields defined on
res.config.settings model)
Part-of: odoo/odoo#62249
Following the API for ir.model records, the same logic is provided for
ir.module.module records.
This allows to avoid a bunch of queries when modifying/opening settings.
Part-of: odoo/odoo#62249