1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
from odoo import fields, models, api, tools
class SalesOutstanding(models.Model):
_name = 'sales.outstanding'
_auto = False
_rec_name = 'product_id'
id = fields.Integer()
order_id = fields.Many2one('sale.order', string='Nomor SO')
partner_id = fields.Many2one('res.partner', String='Customer')
user_id = fields.Many2one('res.users', string='Salesperson')
date_order = fields.Datetime(string="Date Order")
so_state = fields.Char(string='State')
so_status = fields.Char(string='SO Status')
product_id = fields.Many2one('product.product', string='Product')
product_uom_qty = fields.Integer(string='Qty SO')
qty_delivered = fields.Integer(string='Qty Delivered')
def init(self):
tools.drop_view_if_exists(self.env.cr, self._table)
self.env.cr.execute("""
CREATE OR REPLACE VIEW %s AS(
select sol.id as id, so.id as order_id, so.partner_id, so.user_id,
so.date_order, so.state as so_state, so.so_status,
sol.product_id, sol.product_uom_qty, sol.qty_delivered
from sale_order so
join sale_order_line sol on sol.order_id = so.id
where 1=1
and sol.product_uom_qty <> sol.qty_delivered
and so_status in ('sebagian','menunggu')
)
""" % self._table)
|