24 lines
		
	
	
		
			1011 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			1011 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| def execute():
 | |
|     import webnotes
 | |
|     sql = webnotes.conn.sql
 | |
|     from webnotes.model.code import get_obj
 | |
|     from webnotes.utils import flt
 | |
| 
 | |
|     # update incoming rate in serial nos
 | |
|     sr = sql("""select name, item_code, purchase_document_no from `tabSerial No`
 | |
|             where docstatus = 1 and purchase_document_type = 'Purchase Receipt'""")
 | |
|     for d in sr:
 | |
|         val_rate = sql("""select valuation_rate from `tabPurchase Receipt Detail`
 | |
|             where item_code = %s and parent = %s""", (d[1], d[2]))
 | |
|         sql("""update `tabSerial No` set purchase_rate = %s where name = %s""",
 | |
|            (val_rate and flt(val_rate[0][0]) or 0, d[0]))
 | |
|     
 | |
|     
 | |
|     # repost for all serialized item
 | |
|     bin = sql("""select t1.name from `tabBin` t1, tabItem t2 where t1.item_code = t2.name and ifnull(has_serial_no, 'No') = 'Yes'""")
 | |
|     for d in bin:
 | |
|         get_obj('Bin', d[0]).update_entries_after(posting_date = '2000-01-01', posting_time = '12:00')
 | |
|         sql("commit")
 | |
|         sql("start transaction")
 | |
| 
 |