18 lines
800 B
Python
18 lines
800 B
Python
# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd.
|
|
# License: GNU General Public License v3. See license.txt
|
|
|
|
def execute():
|
|
import webnotes
|
|
from webnotes.utils import flt
|
|
bins = webnotes.conn.sql("select item_code, warehouse, name, ordered_qty from `tabBin`")
|
|
for d in bins:
|
|
ordered_qty = webnotes.conn.sql("""
|
|
select sum(ifnull(po_item.qty, 0) - ifnull(po_item.received_qty, 0))
|
|
from `tabPurchase Order Item` po_item, `tabPurchase Order` po
|
|
where po_item.parent = po.name and po.docstatus = 1 and po.status != 'Stopped'
|
|
and po_item.item_code = %s and po_item.warehouse = %s
|
|
""", (d[0], d[1]))
|
|
|
|
if flt(d[3]) != flt(ordered_qty[0][0]):
|
|
webnotes.conn.sql("""update `tabBin` set ordered_qty = %s where name = %s""",
|
|
(ordered_qty and ordered_qty[0][0] or 0, d[2])) |