summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/purchase_outstanding.py
diff options
context:
space:
mode:
Diffstat (limited to 'indoteknik_custom/models/purchase_outstanding.py')
-rw-r--r--indoteknik_custom/models/purchase_outstanding.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/indoteknik_custom/models/purchase_outstanding.py b/indoteknik_custom/models/purchase_outstanding.py
new file mode 100644
index 00000000..018ab0ec
--- /dev/null
+++ b/indoteknik_custom/models/purchase_outstanding.py
@@ -0,0 +1,33 @@
+from odoo import fields, models, api, tools
+
+
+class PurchaseOutstanding(models.Model):
+ _name = 'purchase.outstanding'
+ _auto = False
+ _rec_name = 'product_id'
+
+ id = fields.Integer()
+ order_id = fields.Many2one('purchase.order', string='Nomor PO')
+ partner_id = fields.Many2one('res.partner', String='Vendor')
+ user_id = fields.Many2one('res.users', string='Purchaser')
+ date_order = fields.Datetime(string="Date Order")
+ po_state = fields.Char(string='State')
+ po_status = fields.Char(string='PO Status')
+ product_id = fields.Many2one('product.product', string='Product')
+ product_uom_qty = fields.Integer(string='Qty PO')
+ qty_received = fields.Integer(string='Qty Received')
+
+ def init(self):
+ tools.drop_view_if_exists(self.env.cr, self._table)
+ self.env.cr.execute("""
+ CREATE OR REPLACE VIEW %s AS(
+ select pol.id as id, po.id as order_id, po.partner_id, po.user_id,
+ po.date_order, po.state as po_state, po.po_status,
+ pol.product_id, pol.product_uom_qty, pol.qty_received
+ from purchase_order_line pol
+ join purchase_order po on po.id = pol.order_id
+ where 1=1
+ and pol.product_uom_qty <> pol.qty_received
+ and po_status in ('sebagian','menunggu')
+ )
+ """ % self._table)