mirror of
https://github.com/frappe/erpnext.git
synced 2026-06-04 20:59:11 +00:00
Merge branch 'master' into edge
Conflicts: patches/march_2013/p07_update_valuation_rate.py patches/patch_list.py
This commit is contained in:
0
patches/april_2013/__init__.py
Normal file
0
patches/april_2013/__init__.py
Normal file
35
patches/april_2013/p01_update_serial_no_valuation_rate.py
Normal file
35
patches/april_2013/p01_update_serial_no_valuation_rate.py
Normal file
@@ -0,0 +1,35 @@
|
||||
import webnotes
|
||||
from webnotes.utils import cstr
|
||||
from stock.stock_ledger import update_entries_after
|
||||
|
||||
def execute():
|
||||
webnotes.conn.auto_commit_on_many_writes = 1
|
||||
|
||||
pr_items = webnotes.conn.sql("""select item_code, warehouse, serial_no, valuation_rate, name
|
||||
from `tabPurchase Receipt Item` where ifnull(serial_no, '') != '' and docstatus = 1""",
|
||||
as_dict=True)
|
||||
|
||||
item_warehouse = []
|
||||
|
||||
for item in pr_items:
|
||||
serial_nos = cstr(item.serial_no).strip().split("\n")
|
||||
serial_nos = map(lambda x: x.strip(), serial_nos)
|
||||
|
||||
if cstr(item.serial_no) != "\n".join(serial_nos):
|
||||
webnotes.conn.sql("""update `tabPurchase Receipt Item` set serial_no = %s
|
||||
where name = %s""", ("\n".join(serial_nos), item.name))
|
||||
|
||||
if [item.item_code, item.warehouse] not in item_warehouse:
|
||||
item_warehouse.append([item.item_code, item.warehouse])
|
||||
|
||||
webnotes.conn.sql("""update `tabSerial No` set purchase_rate = %s
|
||||
where name in (%s)""" % ('%s', ', '.join(['%s']*len(serial_nos))),
|
||||
tuple([item.valuation_rate] + serial_nos))
|
||||
|
||||
for d in item_warehouse:
|
||||
try:
|
||||
update_entries_after({"item_code": d[0], "warehouse": d[1] })
|
||||
except:
|
||||
continue
|
||||
|
||||
webnotes.conn.auto_commit_on_many_writes = 0
|
||||
@@ -4,12 +4,11 @@ def execute():
|
||||
webnotes.reload_doc("accounts", "doctype", "purchase_invoice_item")
|
||||
|
||||
for purchase_invoice in webnotes.conn.sql_list("""select distinct parent
|
||||
from `tabPurchase Invoice Item` pi_item where docstatus = 1 and ifnull(valuation_rate, 0)=0
|
||||
and exists(select name from `tabPurchase Invoice` where name = pi_item.parent)"""):
|
||||
pi = webnotes.get_obj("Purchase Invoice", purchase_invoice)
|
||||
pi.calculate_taxes_and_totals()
|
||||
pi.update_raw_material_cost()
|
||||
pi.update_valuation_rate("entries")
|
||||
for item in pi.doclist.get({"parentfield": "entries"}):
|
||||
webnotes.conn.set_value("Purchase Invoice Item", item.name, "valuation_rate",
|
||||
item.valuation_rate)
|
||||
from `tabPurchase Invoice Item` where docstatus = 1 and ifnull(valuation_rate, 0)=0"""):
|
||||
pi = webnotes.get_obj("Purchase Invoice", purchase_invoice)
|
||||
pi.calculate_taxes_and_totals()
|
||||
pi.update_raw_material_cost()
|
||||
pi.update_valuation_rate("entries")
|
||||
for item in pi.doclist.get({"parentfield": "entries"}):
|
||||
webnotes.conn.sql("""update `tabPurchase Invoice Item` set valuation_rate = %s
|
||||
where name = %s""", (item.valuation_rate, item.name))
|
||||
|
||||
@@ -5,7 +5,7 @@ def execute():
|
||||
where docstatus = 1 and ifnull(against_expense_account, '') = ''""")
|
||||
|
||||
for pi in pi_list:
|
||||
pi_obj = get_obj("Purchase Invoice", pi[0], with_children=1)
|
||||
pi_obj.set_against_expense_account()
|
||||
webnotes.conn.set_value("Purchase Invoice", pi[0],
|
||||
"against_expense_account", pi_obj.doc.against_expense_account)
|
||||
pi_obj = get_obj("Purchase Invoice", pi[0], with_children=1)
|
||||
pi_obj.set_against_expense_account()
|
||||
webnotes.conn.sql("""update `tabPurchase Invoice` set against_expense_account = %s
|
||||
where name = %s""", (pi_obj.doc.against_expense_account, pi[0]))
|
||||
@@ -230,4 +230,5 @@ patch_list = [
|
||||
"patches.march_2013.p07_update_valuation_rate",
|
||||
"patches.march_2013.p08_create_aii_accounts",
|
||||
"patches.march_2013.p03_update_buying_amount",
|
||||
"patches.april_2013.p01_update_serial_no_valuation_rate",
|
||||
]
|
||||
Reference in New Issue
Block a user