Before this commit, user got a traceback when he clicks on Units
Purchased button from product view form.
The issue was we asked to the purchase report to be based on a field who
doesn't exist anymore.
The fix only replaces `unit_quantity` for `qty_ordered`.
closesodoo/odoo#36342
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
Slovenian language, as many others languages, is not present in the
beta/master projects in Transifex.
For some reason, Transiflex removed all current translations, this was
already fixed in 12, but as there are not automatic forward-port for
translations, this is a manual forward-port.
opw-2060055
closesodoo/odoo#36374
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
On top of leading to AccessError in multi-company (if the PO was created
by OdooBot), it might also assign a user without Accounting rights to a
vendor bill.
This reverts commit 392f6f2b2b.
opw-2056061
closesodoo/odoo#36173
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
- Create a PO, change the Purchase Representative (`user_id`)
- Create the corresponding vendor bill
The `user_id` of the PO is not transferred to the invoice.
There is no reason to not keep the value.
opw-2046963
closesodoo/odoo#35611
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
The modifications are applied in account, sale and website_sale
- Changed description to "Choose your default customer payment method."
- Removed the "Pay with" from labels in Modal
- In sale: Renamed "Confirmation & Payment" to "Payment Method"
task-2032586
Changes in account views to make them cleaner and
easier to use and understand.
Invoices/Bills tree view
---
- Distinct Invoices tree view from Bills tree view:
In Invoices:
- invoice_vendor_display_name is "Customer"
- invoice_date is "Invoice Date"
- "Payment Reference" is hidden because it's the same
as "Number"
In Bills:
- invoice_vendor_display_name is "Vendor"
- invoice_date is "Bill Date"
- "Source Document" is moved next to "Number"
- Renamed "Payment Status" to "Payment"
- "Payment Status" value "paid" renamed to "Paid"
- Search filters:
- Renamed "Open" to "Posted"
- Added a separator after "Posted"
- Removed "Linked to revoked mandate"
Invoices/Bills form view
---
- Removed "Original vendor bills" from form but kept it in list
and renamed to "Original Bills"
- Renamed state "Unposted" to "Draft"
- "Draft *" titles are now in h1
- Added placeholders and removed tooltips on Payment Terms
- Removed tooltips of invoice date
- Hid Accounting Date on Customer Invoices
because it's the same as Invoice Date
- Rewamped payment info popup:
- Renamed title to "Payment Info"
- Removed right alignment
- Removed Name info
- Reordered info: Amount, Memo, Date, Method
- Added optional to few fields in tab "Invoice Lines":
- Analytic Account: show
- Analytic Tags: show
- Intrastat: show
- Origin Country of Product: hide (and renamed to "Product Country")
- Unit of Measure: show
- Disc (%): show
- Taxes: show
- Added optional to few fields in tab "Journal Items":
- Label: show
- Analytic Account: hide
- Balance in Currency: hide (renamed to "Amount in currency")
- Taxes Applied: hide (moved before debit and renamed to "Taxes")
- Tax Grids: show (moved after credit)
- Due date: hide (moved before Balance in currency renamed to "Due Date")
- Tab "Other Info":
- Renamed sections:
Sales Information -> Invoice
Accounting Information -> Accounting
Payments Information -> Payments
- Website is now hidden if not set and tracked in chatter
Payment form view and modal
---
- State "Posted" renamed to "Validated"
- State "Cancelled" is hidden while module account_cancel
is not installed
- Renamed "Payment Method Type" to "Payment Method"
- Renamed "Payment Date" to "Date"
- Renamed "Payment Amount" to "Amount"
- Renamed "Payment Journal" to "Journal"
- Reordered fields:
Journal Amount
Payment Method Date
Recipient Bank Account Memo
- Payment Difference is now visible only with
accountant access rights.
Journals form view
---
- Removed Journal Groups
- Changed position of "Bank Account"
it's now the first tab
- In "Advanced Settings":
- Renamed section "Accounting App Options" to "Posting"
and only visible when Accounting rights
- "Post at Bank Reconciliation" was a Boolean field and is now a
Selection field with values pay_val for Payment Validation and bank_rec
for Bank Reconciliation.
In form view it's now a radio button.
Removed tooltip of this field.
- Section "Control-Access" is now visible with Accounting Manager rights
- Renamed "Invoice References" to "Payment References"
- Field "Communication Type" value "Based on Partner" renamed to "Based on Customer"
- Reorder sections:
Payment References
Email your Invoices/Bills
Control Access
Purchase form view
---
- In Purchase Order: Field Billing Status is invisible if the status
of the purchase.order is draft/sent/to approve/cancelled
task-2032586
The goal of this commit is to finetune search views in several modules.
TaskID: 2055972
closesodoo/odoo#36058
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Purpose
=======
To correctly choose in which account a line should be posted,
we have to know if the partner is a customer or a supplier.
Specification
=============
Keep track of the number of account moves "in" and "out"
a partner has. These counts should be based on the posted
account moves. A customer that has been created from the
'Customer' menuitem will have a rank=1. When a customer
invoice will be created for him, the generated account moves
will be taken into account to compute its rank. The most
invoices we have for a partner, the higher his rank is.
Note: To avoid any concurrent update failures on the partner,
if one transaction has already locked a partner row, the count
update will be skipped that time.
This means the values may be approximative in the database!
The exact values will eventually be correctly computed at
the next successfull try.
Known limitation of this approach: The computation ignores
the set of currently selected companies. Actually, storing
context dependent values in the database is a bad practice,
and is avoided in that case by taking all the companies into
account.
Use the stored fields `customer_rank` and `supplier_rank`
to order partners when searching by name. This allows to show
best customers or best suppliers on top.
To choose if best customer or supplier are shown on top,
the context key `res_partner_search_mode` is used.
The context key can take two values: 'customer' or 'supplier'.
This decision partially reverts/revamps 8766f38 to only use
account moves instead of PO and SO
On actions showing partners, set a default filters to menus to
only display customers (customer_rank > 0) if the string is
"Customers", and only suppliers if the string is "Vendors" or
"Suppliers".
TaskID: 2049131
closesodoo/odoo#35942
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
This branch is the combination of several optimizations in the ORM:
* store field values once in the cache: the cache reflects more
faithfully the database, only fields that explicitly depend on the
context have an extra indirection in the cache;
* delay recomputations by default: use method `recompute` to explicitly
flush out pending recomputations;
* delay updates in method `write`: updates are stored in a data
structure that can be flushed efficiently to the database with method
`flush` (which also flush out recomputations);
* make method `modified` take advantage of inverse fields to inverse
dependencies;
* filter records by evaluating a domain on records in Python;
* a computed field with `readonly=False` behaves like a normal field
with an onchange method;
* computed fields are computed in superuser mode by default.
Work done by Toufik Ben Jaa, Raphael Collet, Denis Ledoux and Fabien
Pinckaers.
closesodoo/odoo#35659
Signed-off-by: Denis Ledoux <beledouxdenis@users.noreply.github.com>
When the many2xxx field relates to a model where company_id is required, set
this domain [('company_id','=',company_id.id)]
When the company_id field of the related model is not required, set this domain
['|',('company_id','=',company_id.id),('company_id','=',False)]
When setting the domain on a field which is in the treeview of a xxx2many field
evaluate against the company_id of the 'parent'.
Some constraints have been added on sereval models. Take a look at the complete
specification for more details.
TaskID: 2024446
Closes: #35266
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Before, we only had a public method that installed
the CoA for the current active company.
With the multi-company changes, it was not
possible anymore to install a module with a
demo company and then have the CoA installed
in that demo company correctly.
We changed that public method to be able to
put an extra optional parameter and shortened
its name to try_loading instead of
try_loading_for_current_company. The method that
it calls when there is no chart installed
is made private and renamed to _load.
closesodoo/odoo#35703
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
The new visual indicator for exception activities has been added on all
corresponding kanban and list views.
A new filter "Exception Activities" has also been added in the
corresponding search views.
Task 1889379
closesodoo/odoo#31839
Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
All activity filters are now invisible in the corresponding search views.
These filters were only used by activity redirection (when clicking on
the activity item in the systray) so we hide them to reduce the noise
for the user.
"My Activity" filter has also been removed, its corresponding domain is
now directly set in the action where it was used.
Task 2036392
This attribute is misleading as it is insufficient to correctly upgrade
the database. It only renames the column in the database, but other
operations are needed, like updating the corresponding `ir.model.fields`
record (and its xmlid). The default values and the translations are also
lost during the upgrade.
Moreover, this feature was misused. It was:
- left on fields during multiple versions.
- used on reports (SQL views). This would be ok if the feature was
complete, but, as is, it was useless.
- kept unchanged after a second renaming of the field (which can happen
versions later the first rename).
- used, even when the meaning of the field changed. i.e. the field
`archived` has been renamed to the classic `active`, but the value
in the database should be switched.
image_original => image_1920 (now resized to 1920)
image_big => image_1024
image_large => image_256
image_medium => image_128
image_small => image_64
image replaced by image_1920 (when writing) or by image_1024 (when displaying
what was previously the big size)
+ add new intermediate format:
image_512
PR: #34925