from __future__ import unicode_literals import frappe from frappe.utils import random_string def work(): frappe.set_user(frappe.db.get_global('demo_hr_user')) year, month = frappe.flags.current_date.strftime("%Y-%m").split("-") # process payroll if not frappe.db.get_value("Salary Slip", {"month": month, "fiscal_year": year}): process_payroll = frappe.get_doc("Process Payroll", "Process Payroll") process_payroll.company = frappe.flags.company process_payroll.month = month process_payroll.fiscal_year = year process_payroll.create_sal_slip() process_payroll.submit_salary_slip() r = process_payroll.make_journal_entry(frappe.get_value('Account', {'account_name': 'Salary'})) journal_entry = frappe.get_doc(r) journal_entry.cheque_no = random_string(10) journal_entry.cheque_date = frappe.flags.current_date journal_entry.posting_date = frappe.flags.current_date journal_entry.insert() journal_entry.submit()