brotherton-erpnext/patches/february_2013/p09_timesheets.py

29 lines
931 B
Python
Raw Normal View History

2013-02-28 13:12:46 +00:00
import webnotes
def execute():
# convert timesheet details to time logs
for name in webnotes.conn.sql_list("""select name from tabTimesheet"""):
ts = webnotes.bean("Timesheet", name)
for tsd in ts.doclist.get({"doctype":"Timesheet Detail"}):
2013-03-04 10:15:46 +00:00
if not webnotes.conn.exists("Project", tsd.project_name):
tsd.project_name = None
if not webnotes.conn.exists("Task", tsd.task_id):
tsd.task_id = None
2013-03-04 10:17:42 +00:00
tl = webnotes.bean({
2013-02-28 13:12:46 +00:00
"doctype": "Time Log",
"status": "Draft",
"from_time": ts.doc.timesheet_date + " " + tsd.act_start_time,
"to_time": ts.doc.timesheet_date + " " + tsd.act_end_time,
"activity_type": tsd.activity_type,
"task": tsd.task_id,
"project": tsd.project_name,
"note": ts.doc.notes,
"file_list": ts.doc.file_list,
"_user_tags": ts.doc._user_tags
})
2013-03-04 10:17:42 +00:00
tl.make_obj()
tl.controller.set_status()
tl.controller.calculate_total_hours()
tl.doc.insert()