21 lines
		
	
	
		
			1021 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			1021 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| from __future__ import unicode_literals
 | |
| import frappe
 | |
| 
 | |
| def execute():
 | |
| 	if frappe.db.table_exists("Time Log") and "employee" in frappe.db.get_table_columns("Time Log"):
 | |
| 		timesheet = frappe.db.sql("""select tl.employee as employee, ts.name as name,
 | |
| 				tl.modified as modified, tl.modified_by as modified_by, tl.creation as creation, tl.owner as owner
 | |
| 			from 
 | |
| 				`tabTimesheet` ts, `tabTimesheet Detail` tsd, `tabTime Log` tl
 | |
| 			where 
 | |
| 				tsd.parent = ts.name and tl.from_time = tsd.from_time and tl.to_time = tsd.to_time 
 | |
| 				and tl.hours = tsd.hours and tl.billing_rate = tsd.billing_rate and tsd.idx=1 
 | |
| 				and tl.docstatus < 2 and (ts.employee = '' or ts.employee is null)""", as_dict=1)
 | |
| 		
 | |
| 		for data in timesheet:
 | |
| 			ts_doc = frappe.get_doc('Timesheet', data.name)
 | |
| 			if len(ts_doc.time_logs) == 1:
 | |
| 				frappe.db.sql(""" update `tabTimesheet` set creation = %(creation)s,
 | |
| 					owner = %(owner)s, modified = %(modified)s, modified_by = %(modified_by)s,
 | |
| 					employee = %(employee)s where name = %(name)s""", data)
 |