python查询sqlserver视图_基于odoo11上的SQL查询构建一个新的视图或模型
我正在研究一個(gè)奧多模塊。在
我希望我的模塊是一個(gè)“報(bào)告”大多數(shù)購買的產(chǎn)品(按客戶)。在
我已經(jīng)在Odoo上創(chuàng)建了一個(gè)視圖,但是現(xiàn)在,我需要按客戶“過濾”這些視圖。代碼如下:class SaleProductsByCustomer(models.Model):
_name = "sale.order.product"
_auto = False
partner_id = fields.Many2one('res.partner')
orders = fields.Integer(string='Total Orders')
name = fields.Char(string='Name')
price_total = fields.Float(string='Total Payment')
qty = fields.Integer(string='Qty Ordered')
last_order = fields.Date(string='Last Order Date')
@api.model_cr
def init(self):
tools.drop_view_if_exists(self._cr, 'sale_order_product')
tools.drop_view_if_exists(self._cr, 'sale_order_product_report')
self._cr.execute("""
CREATE OR REPLACE VIEW sale_order_product_report AS (
SELECT so.order_partner_id AS id, count(so.id) AS orders, pt.name, sum(so.price_total) AS price_total,
sum(so.product_uom_qty) AS qty, max(so.create_date) AS last_order
FROM public.sale_order_line AS so
LEFT JOIN public.product_product AS pr ON so.product_id = pr.id
LEFT JOIN public.product_template AS pt ON pr.product_tmpl_id = pt.id
GROUP BY so.order_partner_id, so.product_id, pt.name
ORDER BY qty DESC
)""")
我嘗試使用以下代碼訪問這些視圖:
^{pr2}$
但奧多拒絕閱讀,錯(cuò)誤如下:2018-12-13 03:05:36,889 13482 ERROR xx odoo.sql_db: bad query: b'SELECT "sale_order_product".id FROM "sale_order_product" WHERE ("sale_order_product"."partner_id" = 107989) ORDER BY "sale_order_product"."id" '
ERROR: relation "sale_order_product" does not exist
顯然,即使我有銷售訂單產(chǎn)品“,我不能參考它做我想做的事。在
我已經(jīng)閱讀了很多關(guān)于定制報(bào)表和定制SQL查詢的指南,但是我找不到一個(gè)完整的指南來做,而且我對(duì)odoo模塊的了解也不多。在
SQL查詢已經(jīng)過測試并且工作正常。我需要的是對(duì)SQL應(yīng)用WHERE子句,并將結(jié)果放到視圖中。在
我的觀點(diǎn)是:
sale.order.form.view.customer.product.history
res.partner
注意:我讀了很多指南,在stackoverflow和其他網(wǎng)站上,但沒有人能涵蓋我的所有要求。如果你認(rèn)為這篇文章是重復(fù)的,請(qǐng)給我評(píng)論一下另一篇。在
謝謝你的幫助。在
總結(jié)
以上是生活随笔為你收集整理的python查询sqlserver视图_基于odoo11上的SQL查询构建一个新的视图或模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谁可以带我进2次魔镜之梦
- 下一篇: 蒸云梦泽的下一句是什么呢?