[IMP] uniformized way to import/export EDI documents
In details, this is achieved by
- Adding a generic framework module to import/export EDI documents
- Adapting existing EDI modules to it
- Fix PyPDF2 to manage multiple embedded files
- Adding E-FFF standard in a separated module (belgian EDI export)
- Fix UBL move line price import.
Task ID 2154703
closesodoo/odoo#49011
Related: odoo/upgrade#1108
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
PURPOSE
Improve the Email Marketing tour and onboarding to create a "wow effect" when
users test the app.
SPECIFICATIONS
Create a tour for mass_mailing to let user visit Odoo Email Marketing through
a simple mailing creation flow.
This require the following functional changes
* by default, if user chooses to contact mailing lists and there is a single
mailing list available, add it as default value for chosen list;
* create a master mailing list data containing the admin user so that he can
easily follow the tour and test the mailing application;
LINKS
Task ID 2194876
Community PR odoo/odoo#48259
Upgrade PR odoo/upgrade#983
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
visibility_group was used for visibility, we now use the groups_id field.
groups_id is a M2M field while visibility_group was a M2O field resulting
in an issue to display the M2M field in the frontend. We decided to
allow editing the groups as a M2O in the frontend. If there is more
than one group the user will have to go through the backend to edit.
task-2264580
closesodoo/odoo#51846
Related: odoo/upgrade#1260
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
Purpose
Update the Marketing Apps list views to the new Framework possibilities.
Specifications
Decorations like color in badges used for state with widget badge likewise,
widgets remaining_days, many2one_avatar_user, date.
LINKS
closes odoo/odoo#51447
Pr: #51447
Task-id: 2250285
Related: odoo/enterprise#10637
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
- Support for account_edi workflows (only import) + fattura_pa as an account.edi.format.
- XML containing multiple invoices cannot be imported from the chatter.
- E-FFF import moved from l10n_be_edi into a generic UBL import.
- [FIX] when importing if LineExtensionAmount is set but not PriceUnit on a move line, the price was not imported.
- Added export to generic UBL 2.1.
- account_edi is the base module to manage EDIs. It manages the generic worflow of import/export and defines the methods for import/export that should be overridden by each types of EDI (in different modules).
- On export, the files are added as attachment and can be embeded into pdf (format specific).
- On export, the exported format are set on the journal to allow different settings based on journal (different companies, countries, etc).
- On import, depending on the import method (from message_post or upload button in invoice tree view) a new invoice is created or an existing one is updated (only allowed draft invoices with no invoice lines).
- Adapted factur-x
Purpose of this commit is to update the list views of event according
to the new framework possibilities for better UX/UI.
This commit utilises the latest framework features available from task 2195254
to represent the information in better way and/or adds some useful fields
List of the tree views improved are:
- Event - event.view_event_tree
For detailed specification, you can visit pad of the task.
Task-id: 2250285
Purpose of this commit is to update the list views of mass_mailing and
mass_mailing_sms according to the new framework possibilities for better UX/UI.
This commit utilises the latest framework features available from task 2195254
to represent the information in better way and/or adds some useful fields
List of the tree views improved are:
- Email Marketing - mass_mailing.view_mail_mass_mailing_tree
- SMS Marketing - mass_mailing_sms.mailing_mailing_view_tree_sms
For detailed specification, you can visit pad of the task.
Task-id: 2250285
Before this commit: hovering on graph legend shows cursor default
here hovering on legend should display cursor pointer, so user
can easily understand it is clickable element
After this commit, hovering on graph legend will display cursor
pointer.
task-2263703
closesodoo/odoo#52030
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Currently, when the session expired then it generates the popup that
"Your odoo session expired. Please refresh the current page."
Now once you click on the "Ok" button only close the popup and user have to
manually do refresh the page.
with this commit, we have changed the text of the popup to
"Your odoo session expired. The current page is about to be refreshed." and
when user click on "Ok" button forcefully refresh the page.
Task : 2241744
closesodoo/odoo#50710
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Adjacent buttons in the arch are now displayed in a single column
in list views (main and x2many views). As soon as there is a node
in-between (even if it is invisible="1"), the rule doesn't apply
anymore and buttons placed before/after that node are rendered in
a separated column.
Task 2261774
closesodoo/odoo#51970
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Before this commit, We had two filters which filters Active/Inactive record were named as Opened/Closed.
In this commit, We remove those dummy filters and add `Archived` filter like all other search views.
closesodoo/odoo#46675
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
The ace editor library was loaded as soon as the theme tab was opened
while it is only useful for the related <head/> option in there -> we
now load it only if that option is used. This was introduced with the
feature at [1].
[1]: https://github.com/odoo/odoo/commit/560e3af48ab9327b49a8cf44a9b0416dfb5b95declosesodoo/odoo#52124
X-original-commit: 989c256aabeaa55d7b5ecb26614cc2c2578f71e6
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
*: web_editor
When clicking on the theme tab on an empty page, a scrollbar appeared
and stayed. This was because the fake `<theme/>` element was focused and
the overlay positioned randomly outside of the page.
This commit fixes that by simplifying the code and always hiding the
related overlay. This commit also makes sure the onFocus/onBlur method
of the theme options are called consistently, even though they are
probably not useful.
Part of https://github.com/odoo/odoo/pull/52081closesodoo/odoo#52114
X-original-commit: 7760898de4e14fa30db1db87dfa05276bfcaa2bb
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Before this commit, the onBlur function of snippet options was not
called if the blur occured because of a click on the 'Blocks' tab.
Part of https://github.com/odoo/odoo/pull/52081
X-original-commit: 85049e2dcf68c40218bd0f4ed7401a4f979951d4
As the colorpalette has very big chances to have to be loaded when the
user enters edit mode (any click on a text will require the colorpalette
to be available), this commit makes it so the dependencies are loaded as
soon as the editor is started, without actually waiting for them until
the colorpalette are used.
This allows to make the first click on a text or on the theme tab a bit
faster to react.
closesodoo/odoo#52116
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Steps to reproduce the bug:
- Go to settings => Purchase
- Enable Dropshipping
- Go to Inventory => Configuration => Warehouse Management => Operations Types
- Open Dropship
- Remove the sequence (field is not required)
- Go to Inventory => Master Data => Products
- Let's consider product P (Inventory tab: Check "Dropship" and "Buy" and vendor V as supplier)
- Create Quotation Q with customer C and product P
- Confirm Q (a PO has been created for V)
- Confirm PO
Bug:
A traceback was raised because the sequence was not defined on Operation Type dropship
opw:2263799
closesodoo/odoo#52115
X-original-commit: 25ae1f6900712dcf13341fdb0855e3cbe2fa98af
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Commit d5d2c5524c improved the UrlWidget s.t. it automatically
prefixes the url with 'http://' if no protocol is specified (except
for own website paths).
In addition, it removed a logic specific to model res.partner that
automatically prefixes the saved website values with 'http://'.
However, the second part should not have been done: those urls can
be displayed without UrlWidget (e.g. on the website), and in this
case, the protocol wouldn't be set, meaning that it would behave
like a relative link.
closesodoo/odoo#52113
X-original-commit: 5a8690bb64cb3dc01ee8d4f9af3a6ab91eee8b99
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
This commit fixes two bugs with pos_six:
- When the cashier manually clicked on "Cancel" or switched order,
the payment was correctly canceled, but the POS still showed the
error popup saying that the transaction was not processed
correctly.
- The TIM API manages differently rounds amounts and amounts with
decimals. Sending an amount of 1 was considered as 0.01€, while an
amount of 1.01 was considered as 1.01€. To fix this, we always sent
the amount in minor units.
closesodoo/odoo#52102
X-original-commit: a5125b92c11bd9dbf1b536e1eb1b467be446718f
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
It was outdated and did not contained account.tax.report.line references
Raised by opw-2261376
closesodoo/odoo#52085
X-original-commit: 81cccec510c4540126503a79d8844f14cb65bb7d
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
1. Activate receipt in 3 steps
2. Make a PO of 50
3. Receive 20 (pick 1), backorder
4. Receive 29 (pick 2), backorder
5. Receive 1 (pick 3)
6. Transfer to quality check location 45 (pick 4), backorder (pick 5)
7. Go to pick 5, unreserve the quantity
8. Go to pick 3, return 1 => the quantity suggested by the return wizard is 1
The return is not able to reserve the necessary quantity.
This happens because 45 units are considerd out (from pick 4), but only
1 unit is considered in (pick 3). Therefore, in the following:
https://github.com/odoo/odoo/blob/23511dffb9e3f597a7df9bb834d008f74abb07b8/addons/stock/models/stock_move.py#L1276
we have `quantity = -44.0` and `available_quantity = 5.0`, so we can't
reserve.
We count as `move_orig_ids` all the siblings coming from
`move_dest_ids`.
opw-2261473
closesodoo/odoo#52084
X-original-commit: ba89e26750baab2309cccc4ffd0b3ade804d19ce
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Issue
- Have IE 11 or not chromium-based Edge
- Install Contacts
- Add a salesperson on any contact
- Save
- Try to remove the salesperson with
the cross icon on the input
- Save
The value comes back
Cause
We do not handle this feature in dropdowns
Solution
Remove the dropdown cross icon
OPW-2262749
closesodoo/odoo#52083
X-original-commit: cdb072372bfaa3cdc85e7b6d79ad848e8d071e00
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Signed-off-by: Jason Van Malder (jvm) <jvm@odoo.com>
As without configuration of mail servers,
the only thing it does, is making sure we
can export/import FatturaPA invoices.
closesodoo/odoo#52066
X-original-commit: 19072db87e20ac13221b7a39ac9e8ca25a87b172
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
Signed-off-by: Josse Colpaert <jco@openerp.com>
QR-bills could only be generated for ISR-compliant invoices, which is wrong and would have caused issues in the future, as ISR will slowly disappear.
Furthermore, doing it this way avoids raising an error after commit 719f087 , when trying to print an ISR-compliant invoice if the module hadn't been updated (it used to raise because the QR-bill report didn't exist, and it tried generating it).
closes odoo/odoo#51858
Forward-port-of: #51340
Forward-port-of: #50744
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
onchange_l10n_in_gst_treatment method is not define but call from here so traceback is occurred
closesodoo/odoo#51656
Signed-off-by: Josse Colpaert <jco@openerp.com>
The virtual record have their date and forecast at date recompute
after creation. It means that the popover saying today is False since
it took the date with lead days.
closesodoo/odoo#51507
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
By default importing is batched (or at least attempted to), however
because the import is functionally sequential it's possible for a
record to refer to a previously imported record of the same batch.
When records are referenced by xid this is easy, we can just keep
track of all the xids we *should* have created so far and when trying
to look up a xid if it's one of those flush all pending
creations (otherwise assume it's some other unrelated xid which
already exists in the system).
For "name_search" lookups however this is more complicated, so we'd
just flush the entire thing.
This, then, is an issue when importing records with an m2o which
is *generally* looked up by "name" rather than xid e.g. when importing
partners it's more likely the "state" will be specified by
name (e.g. AZ or Arizona) than xid (base.state_us_3 lol), because it
means more or less every line will be flushed, defeating all batching
and slowing down the import.
To fix this, allow passing *model names* to flush (not just xids), and
try to collate all the models we could be creating (or updating)
records for in the process of importing. If we see a name_search on
one of these models flush, otherwise don't because we couldn't have
impacted the search.
Task 1951307
While at it, f2a1618758 removed all
usage of model_load_save, but left the creation of the savepoint
itself.
The InternalError check should be left in place to catch things like
conversion issues which put the tnx in an invalid state (only invalid
states should trigger an InternalError according to psycopg's errors
documentation).
closesodoo/odoo#49289
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
There is a CRON task to check the validity of the daily certificate.
However this is not executed correctly because the command line is incorrect.
This commit fixes this command line
closesodoo/odoo#52057
X-original-commit: 19a9859985a4576943dad1312b1808c6c3690645
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
We forgot to update the type to move_type,
tag_ids to tax_tag_ids and remove the country_code
as we put it in the account module.
closesodoo/odoo#52052
X-original-commit: 437c2457c73d66a9f7b82397e4dd95d41da4a72a
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
Signed-off-by: Josse Colpaert <jco@openerp.com>
Go to Reconciliation Models > Invoices Matching Rule
Set the parameter 'Amount Matching'
Set 'Partner Is Set & Matches'
Save
Edit
Unset 'Partner Is Set & Matches'
'Amount Matching' will switch to invisible but is not disabled
opw-2261134
closesodoo/odoo#52048
X-original-commit: 61f1ca63e5dc27e06c855bb09b18bf4897e8ab1f
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Purpose
=======
Reintroduce the horrible bidouille that was removed by mistake.
closesodoo/odoo#52041
Note: Should be cleaned though.
Taskid: 2266510
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Activate the multi-warehouse automatically when there is more than 1 in
a company. Then remove the multi-warehouse setting in the config, and
allow to create warehouse. Because create a warehouse can change
groups of the user, we reload the page when there is any modification.
Update warehouse demo data accordingly (remove the second warehouse
of the second company).
task-2196687
closesodoo/odoo#49625
Related: odoo/upgrade#1253
Related: odoo/enterprise#9934
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
Add the name in a barcode form into the printed
batch transfer to use the enterprise feature. The
barcode is now in the printed batch transfer and
there is a new print action in the batch transfer model.
task-2196687
The field note of mrp.routing.workcenter was not very usefull, and not
appear in the workorder related to this operation. Sometime, we need to
have a small description of the work to do for a opeartion in the WO,
instead of a complet pdf or google slide.
-> Convert the note field as a description of the job to do and add a
"text" worksheet_type to select it, in the mrp.routing.workcenter and
add the related field in the WO. Update the view of accordingly.
-> (migration): The 'note' content remain the same, then migration is
not needed. If the user change the worksheet_type into text, the
"note" will be the previous "description".
task-2196687
- Rename "Master Data" menu into "Products" in both stock and mrp.
And move not producte reclated menu to configuration menu.
- In the stock setting move all shipping connector in a dedicated
section.
- Improve helper of MO
- Merge filter "Late" and Planning Issue
- Remove badge of duration field in WO.
task-2196687
Since 12.0, the theme was still supported but did not receive any of the
new features, like choosing its own colors.
This commit removes the theme entirely so that all users use the new
shiny features and also because it will become impossible to support
with the new color system.
task-2207192
closesodoo/odoo#51508
Related: odoo/design-themes#279
Related: odoo/upgrade#1225
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Issue
Step to do on mobile or chrome debugger in mobile mode
- Install "Manufacturing" app
- Go to "Manufacturing"
- Click on "Create"
- Select a product with already default bom lines
- Alter quantity
BOM lines are duplicated.
Cause
Missing "bom_line_id" field in kanban view,
who is required for onchange "_onchange_move_raw".
Solution
Create inherited kanban view with "bom_line_id" in
mrp module.
opw-2257732
closesodoo/odoo#52002
X-original-commit: 2905d05fc3d30562c5e7510217a6e97e26e87a37
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Only system users can access ir.property records.
This PR is part of the long-term task id 8203 that plans to remove all access to
ir.* models
"Official" methods to interact with `ir.property`:
- `_set_default(name, model, value, company=False)`
- `_set_multi(name, model, values, default_value=None)`
- `_get(name, model, res_id=False)`
- `_get_multi(name, model, ids)`
Done in this PR:
- remove ACL on ir.property (only system users can access directly)
- make all getter/setters private with sudo
- use these methods everywhere instead of CRUD calls
- add sudo where needed
closesodoo/odoo#51658
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
This reverts commit fdd4a143f2148ec5f4aeea80fecd3138fea95dc6.
See discussion in #51969closesodoo/odoo#52028
X-original-commit: 0e602cc0ac295621864b50509f78bd5de1e61718
Signed-off-by: Denis Ledoux (dle) <dle@odoo.com>
- Go to Project
- Open a project to display Tasks
- Switch to list view
- Click on create button
- On task form page, click nowhere. (It is important to not click on anything)
- On the taskbar of the WYSIWYG editor used for Description, click on one of the following actions:
* Unordered list
* Ordered list
* Checklist
* Table
* Style
- The action will be applied to the "name" field (Task Title) and
an error will prompt for Unordered list, Ordered list and Checklist actions
- If not, discard the form and retry by opening the form with create button
In this case, the WYSIWYG editor does not have the focus and try to execute
the tool action on the current focused element.
opw-2256835
closesodoo/odoo#52023
X-original-commit: eaa55ce3e806ad0d9609394309ff9d48b32bb73f
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
When a resequencing is done inside an object hierarchy of two
controllers, since 9b90d8727d we would call resquencing code one time
per controller.
So if for example we are in a list view inside a form view (eg. a
"Search More" modal in a form view) the resequencing would work for the
list view, but then cause traceback when it is handled by form view.
With this changeset, the first controller that get the event
`resequence_records` even gobbles it up.
Without change, added test fails because of original traceback:
Cannot read property 'res_id' of undefined@ 202 ms
Source:
TypeError: Cannot read property 'res_id' of undefined
at /web/static/src/js/views/basic/basic_controller.js:744:67
...
opw-2256818
closes#51827closesodoo/odoo#52018
X-original-commit: eef4b99fdb9469c040af80d055933eda367b7b3d
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
inherit the view which contains the items you're relying on.
closesodoo/odoo#52017
X-original-commit: 03dacc25ef46718a00fa7a1e0440813132600bfe
Signed-off-by: Christophe Simonis <chs@odoo.com>
The footer of Odoo is composed of 3 main elements: a <footer/> with a
.oe_structure and the footer copyright inside. The footer had a
transparent top border which was there for technical reason: making sure
the .oe_structure content was "1px" below the end-of-page content so
that dropping a snippet at the end of page but also in the footer was
possible (otherwise the dropzones would be at the exact same position).
This border which was invisible at the time may now become visible in
more cases so we have to remove it. Another hacky solution is made to
replace the old one, while remembering the footer usability is being
reviewed anyway.
Related to task-2197038
closesodoo/odoo#51997
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>