Commit Graph
110 Commits
Author SHA1 Message Date
Raphael Collet 84a595301e [REF] expression: use and return a Query object
The management of the join contexts now relies on the `Query` object,
that has all the necessary logic to do so.  The refactoring also removes
the class `ExtendedLeaf`, which is no longer necessary: the join
contexts are all managed by a single `Query` object, and the parsing
stack now only contains triples like (leaf, model, table_alias).

Also inline directly the SQL translation made in `_to_sql`, which
overall simplifies the management of SQL parameters in the domain
compilation.  The algorithm is illustrated in the code itself.
2020-05-20 07:56:44 +00:00
Tiffany Chang (tic) 52dc25d428 [IMP] purchase(_stock): Add more reporting values
Added new values "Average Days to Purchase" and "Average Receipt Delay" to be
used in purchase enterprise reporting tab where:

  Days to Purchase = confirmation date (i.e. 'date_approved') - creation date
  Receipt Delay: effective Date - ('date_planned' or 'expected_date' if
                 no 'date_planned)

Note that these 2 new values are specific to purchase orders only.
Because of this the standard query result cannot be used since it is
done at the purchase order line level. This means duplication of PO
values occur and results in incorrect aggregation calculations. A hack was
done to ensure that these value will aggregated correctly when used at the
enterprise level. Therefore these 2 new values should only be used in
aggregate.

To support these new measures the following updates were also done:
- Addition/improvement of help descriptions for other date related
  measures to avoid confusion
- Change state string to "Status" to match purchase.order (for
  consistent filtering purposes)

This commit supports "Adapt Reporting" subsection of Purchase KPIs task.

Upgrade PR: odoo/upgrade#877
Enterprise PR: odoo/enterprise#8945
Task: 2198420
2020-03-31 10:31:35 +00:00
Goffin Simon 3ba8231733 [FIX] purchase: Purchase report wrong qty_to_be_billed
Steps to reproduce the bug:
- Let's consider product P with purchase_method = 'purchase'
- Create a purchase order PO and puchase 20 units of P to a vendor
- Confirm PO and create a vendor bill VB the 20 units of P
- Validate VB
- The invoiced quantity on PO is 20
- Go to the Purchase report and analyse the qty_to_be_billed

Bug:

The qty_to_be_billed was still equal to 20 instead of 0

opw:2091264

closes odoo/odoo#39493

X-original-commit: b00febedef7826f593bb07c7896595ecce8cae32
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-10-29 10:08:49 +00:00
Christophe Simonis 886eca0131 [IMP] *: remove usage of oldname attribute
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.
2019-08-05 09:36:41 +00:00
Raphael Collet c552fb7a61 [IMP] api: remove deprecated decorators 2019-07-08 13:51:35 +00:00
Hetashree Chauhan b5cea7e2b6 [IMP] purchase: purchase report improvement
Modify purchase report in order to make it consistent with
sales report.
For the RFQ it will show the Order Date and for the Purchase order
menu it will display the Confirmation Date.

Also rewrite a bit the SQL view in order to compute every purchase
order in the company currency.

Technicaly rewrite the SQL alias in order to have a report more
readable in the future.

Task ID : 1857130.

closes odoo/odoo#28248

Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2019-05-31 09:06:30 +00:00
Christophe Simonis ec9400821e [MERGE] forward port branch saas-11.3 up to 27a084eb81 2019-01-04 14:54:08 +01:00
Christophe Simonis 79f1ecd756 [MERGE] forward port branch 11.0 up to d82c0d133e 2019-01-02 15:37:01 +01:00
Lucas Perais (lpe) d3e84f80f4 [FIX] purchase: prevent div by zero in purchase.report
Spinoff of 6cd12694d8

OPW 1916964

closes odoo/odoo#29828
2018-12-31 08:47:16 +00:00
Nimesh Jethva f7cecc90f1 [IMP]purchase_*: Improvement in model description
Purpose of this commit is to give description more "business oriented"
because those descriptions appears in Odoo Studio which is supposed to be used by end users, not only by developers.

Related Task ID : 37311
2018-09-21 11:45:15 +02:00
Christophe Simonis f36e6917bd [MERGE] forward port branch saas-11.3 up to 37eed7c509 2018-05-29 17:34:43 +02:00
Christophe Simonis 37eed7c509 [MERGE] forward port branch saas-11.2 up to 58e3552246 2018-05-25 14:34:18 +02:00
Christophe Simonis 58e3552246 [MERGE] forward port branch 11.0 up to 2ca7296000 2018-05-25 11:50:02 +02:00
Christophe Simonis 299b613da3 [MERGE] forward port branch 9.0 up to 919a1af936 2018-05-24 16:31:23 +02:00
jem-odoo 919a1af936 [FIX] purchase: correct product cost in reporting
product.product inheritS from product.template, and they both
define the 'standard_price' field, but implement it differently;
 - product: the field is a company dependent one (so non stored)
 - template: the field is a computed one based on tis variants

For the first case, since the field is not stored in database, when
doing SQL query, we have to get the value from the table ir_property.
That is what purchase report does, but instead of searching on resource
'product.product', it does it on 'product.template'. There are
obviously no entries in ir_property table for 'standard_price' field
on product template. As consequence, the "product value" (cost)
is always null in purchase reporting.
This commit fixes that by modifying SQL query to get the good
value from ir_property table.
2018-05-24 16:21:06 +02:00
jem-odoo e38ed7c780 [MOV] purchase_stock: move code from purchase
We want to break the dependency between stock and purchase
for our furtur developpement. For more modularity, a new
bridge module 'purchase_stock' is created.
This commti move part of business code, views, data, ...
related to stock management from purchase into purchase_stock
without changing any feature.

Task #47927
2018-05-23 10:13:49 +02:00
jem-odoo 9548d218f1 [IMP] purchase: make purchase report extendable
The idea is to do like the sale report: being
able for other modules to extend the report and
add their own fields. As we are going to split
stock from purchase, we will need this.
2018-05-23 10:12:45 +02:00
XavierDo 2966d4faed [IMP] product: rename product.uom into uom.uom
Also rename product.uom.categ into uom.category to
 give it a decent name.
2018-02-26 14:27:26 +01:00
dip-odoo cad52c81e3 [IMP] purchase: add purchase representative in POs
Instead of just using create_uid as responsible, use a plain user_id
field for the PO and PO agreement responsible. This field is named
purchase representative but works like SO responsible and is now
tracked.

Field is added to various views and filters to ease the daily job
of purchase representative people.

Closes #17788 .
2017-10-18 13:20:26 +02:00
Olivier Laurent 6b55bea979 [FIX] purchase: drop view before creating it
One of the behavioural divergences between "create or replace" view and
DROP; CREATE turns out to be that "create or replace" can only add
columns *at the end* of the view, and can not change the name or type of
the view during replacement, which can break migrations.

closes #14028
2016-10-28 10:54:48 +02:00
Yannick Tivisse dafe1f6465 [MIG] purchase: Remaining self.pool in purchase_report.py 2016-08-09 10:29:06 +02:00
Denis Vermylen (dve) 5146add3b7 [REF] purchase: remove unnecessary code 2016-08-05 14:04:38 +02:00
Denis Vermylen (dve) ba3d3582bc [MIG] purchase: Migrate to new API 2016-08-05 14:04:37 +02:00
Christophe Simonis 1a3e807fc2 [MERGE] forward port of branch saas-7 up to 5238b77 2016-03-16 16:11:12 +01:00
Christophe Simonis a34d496069 [MERGE] forward port of branch saas-6 up to 1431ba2
Also include 2939800ed4 which seems to
have been forgotten during previous forward-ports
2016-03-16 15:30:03 +01:00
Christophe Simonis 1431ba2f9b [MERGE] forward port of branch 8.0 up to 7b7f3fa 2016-03-16 13:15:30 +01:00
Denis Ledoux a7a71bcaa3 [FIX] purchase: report currency conversion
This is equivalent to revisions
- 000ce6a66d
- 48ccb19937
2016-03-14 12:42:33 +01:00
Christophe Simonis d70fde0330 [MERGE] forward port of branch saas-7 up to cab5c48 2016-02-10 18:37:01 +01:00
Denis Ledoux 47bb1bd225 [FIX] account, purchase, sale, currency: companies rates
In Odoo 9.0, the field `company_id` has been moved
from the `res.currency` model to the `res.currency.rate`
model.

The different reports applying the currency rates on the amount
at date have not been updated according to this change. This
includes the sales, purchases and invoices analysis report.

Basically, before 9.0, there was one `res.currency`
per existing currency per company. A simple `JOIN`
on the `res_currency` table was therefore enough
to apply the currency rate.

From 9.0, the currency records are shared between
companies. It's the rates (`res.currency.rate`) that can be
set a on specific company. The simple `JOIN` on
`res_currency` is therefore no longer enough: the company condition
must be added. Only rates from the specific company
(e.g the company of the invoice) must be considered, or rates
without companies.

We take the opportunity to factor out the method, so, if a correction
must be done, it must be done in one place only.

opw-669129
2016-02-10 15:53:21 +01:00
Christophe Simonis 2611a8198e [MERGE] forward port of branch saas-7 up to e765569 2016-02-02 14:48:31 +01:00
Goffin Simon ca343f7b04 [FIX] purchase: currency_id in purchase report
The field currency_id must be in the view to group by currency_id.

opw:667869
2016-01-28 13:40:57 +01:00
Yannick Tivisse 9c5d4cd60c [IMP] sale,account,mrp_operations,purchase: Add weight and volume on reports 2015-11-20 16:45:54 +01:00
qdp-odoo 1eee1cc8fc [FIX] sale, purchase: sale/purchase analysis fixed to display information when no rate is defined for the operation date (which happens easily with no demo data for example) 2015-10-08 11:29:02 +02:00
Nicolas Martinelli cb01be235e [IMP] purchase: adaptation due to the new Purchase module
Major changes:
- No generation of invoice from PO
- Remove workflow

Reason: complete rewrite of the Purchase module.

Responsible: fp, nim
2015-09-02 08:19:56 +02:00
qdp-odoo e4dc50bf58 [IMP] pricelists improvements. Was PR #8228 2015-08-31 16:57:32 +02:00
Christophe Simonis 2cf91d16a5 [MERGE] forward port of branch saas-6 up to 63e92cb 2015-07-22 16:17:54 +02:00
Christophe Simonis d215a08db1 [MERGE] forward port of branch 8.0 up to 86d7f52 2015-07-14 15:57:39 +02:00
Goffin Simon 0f5a72e0a4 [FIX] purchase: Currency in Purchase Analysis
"Total Price" and "average price" in purchase analysis must take into account the currency.
Inspired from caf333eb59

opw:644621
2015-07-14 14:18:59 +02:00
Fabien Pinckaers 1fe10b5417 [IMP] Supplier --> Vendor. American English 2015-07-09 16:10:09 -07:00
Christophe Simonis a304194936 [MERGE] forward port of branch saas-6 up to 81b5c60 2015-06-25 00:26:31 +02:00
Christophe Simonis 4647778758 [MERGE] forward port of branch 8.0 up to ea59856 2015-06-15 12:28:32 +02:00
Guewen Baconnier 96b53126a2 [IMP] purchase: Purchase report uses the state of lines instead of purchases
So canceled lines of not-canceled orders are correctly represented in the
analysis.
2015-06-08 18:19:20 +02:00
Olivier Dony 0bd4545348 [LEGAL] Use global LICENSE/COPYRIGHT files, remove boilerplate text
- Preserved explicit 3rd-party copyright notices
- Explicit boilerplate should not be necessary - copyright law applies
  automatically in all countries thanks to Berne Convention + WTO rules,
  and a reference to the applicable license is clear enough.
2015-06-02 03:16:04 +02:00
Christophe Simonis fe2b5f35a4 [MERGE] forward port of branch saas-6 up to bf1e999 2015-05-28 14:27:38 +02:00
qdp-odoo c04065abd8 [IMP] accounting v9. Yeeeeaah 2015-05-05 17:28:04 +02:00
Christophe Simonis 9c5a1d8231 [MERGE] forward port of branch 8.0 up to cf4d14c 2015-04-27 17:33:44 +02:00
Adil Houmadi f2ef46e9f4 [FIX] product: purchase report, correct warehouse
Fix stock warehouse column on purchase report,
we need to join stock_picking_type and stock_warehouse
in order to have the warehouse itself

Closes #6409
2015-04-23 13:23:40 +02:00
Yannick Tivisse fd1ffe58f1 [FIX] purchase: Purchase Analysis view had traceback when grouping by Analytic Account 2015-02-03 15:51:42 +01:00
Leonardo Donelli 4a0b13ed92 [REF] remove vim modelines and resulting trailing blank lines
Let 2015 be a year without modelines!
cf #4174
2014-12-31 15:52:13 +01:00
Yannick Tivisse b5164698f2 [IMP] Reportings Review
This commit fixes lots of usability problems in the reporting views.

eg: missing fields in the reports, labelling inconsistencies, broken/outdated/unused filters and group bys...

Detailed changelist
-------------------

account/Invoice Analysis:
- "Product Category" vs "Category of Product": labelling consistency
- group by Analytic Account

account_voucher/Sales Receipt Analysis:
- remove filter on Pro-forma

crm/Lead & Opportunities Analysis:
- "Exp." vs "Expected": labelluing consistency

crm/Phone Calls Analysis:
- remove Todo and My Phone Call filters
- fix My Sales Team(s) filter

crm_claim/Claims Analysis
- remove My Case(s) filter
- fix My Company(s) filter
- remove group by Sales Team
- fix label Creation Month

crm_helpdesk/Helpdesk Analysis
- remove My Case(s) filter

event/Events Analysis
- remove My Events & Show Confirmed Registrations filters
- fix labelling of Attendee / Contact group by

hr_holidays/Leaves Analysis
- remove My Requests filter

hr_recruitment/Recruitment Analysis
- remove My filter

marketing_campaign/Campaign Analysis
- fix labelling

mrp_operations/Work Order Analysis
- add fields Product Template, Product Category, Responsible, Routing
  and BoM
- fix labelling group by Planned Month

point_of_sale/Orders Analysis
- add fields Product Template, Invoiced, Point of Sale, Public Category,
  Warehouse and Pricelist
- fix Year filter

project/Tasks Analysis:
- remove My Task filter

project/Issues Analysis:
- remove My Issues filter
- remove Task group by

purchase/Purchase Analysis:
- fix quantity field into float
- add fields Product Template, Product Category, Partner Country, Fiscal
  Position, Analytic Account and Commercial Entity
- add group by Partner Country and Fiscal Position
- fix labelling "Product Category" vs "Category of product"

sale/Sales Analysis
- fix labelling "Product Category" vs "Category of product"
- add fields Product Template, Paid, # of Paid Lines, Partner Countru
  and Commercial Entity
- remove filter My Sales
- add group by Partner Country

sale_stock/Sales Analysis
- fix label name of shipped_qty_1

Credits
-------

Analysis and code courtesy of Sébastien Versailles, Quentin De Coninck,
Yannick Tivisse and Richard Mathot {sve,qdc,yti,rim}@odoo.com

(congratulations if you've read this boring commit message)
2014-12-09 16:12:48 +01:00