python查询sqlserver视图_基于odoo11上的SQL查询构建一个新的视图或模型

我正在研究一个奥多模块。在

我希望我的模块是一个“报告”大多数购买的产品(按客户)。在

我已经在Odoo上创建了一个视图,但是现在,我需要按客户“过滤”这些视图。代码如下: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}$

但奥多拒绝阅读,错误如下: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

显然,即使我有销售订单产品“,我不能参考它做我想做的事。在

我已经阅读了很多关于定制报表和定制SQL查询的指南,但是我找不到一个完整的指南来做,而且我对odoo模块的了解也不多。在

SQL查询已经过测试并且工作正常。我需要的是对SQL应用WHERE子句,并将结果放到视图中。在

我的观点是:

sale.order.form.view.customer.product.history

res.partner

注意:我读了很多指南,在stackoverflow和其他网站上,但没有人能涵盖我的所有要求。如果你认为这篇文章是重复的,请给我评论一下另一篇。在

谢谢你的帮助。在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值