From c4e71fcc51669dd6dca5fbde9fad52fc9d343bd7 Mon Sep 17 00:00:00 2001 From: Neil Trini Lasrado Date: Wed, 17 Aug 2016 17:36:53 +0530 Subject: [PATCH 1/6] [Fix] Enroll Students from Student Applicants in Program Enrollment Tool. --- .../program_enrollment_tool.json | 4 +++- .../program_enrollment_tool.py | 18 ++++++++++++------ 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.json b/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.json index cbbc7744ec..b5547d3f79 100644 --- a/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.json +++ b/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.json @@ -191,6 +191,7 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, + "depends_on": "eval:doc.get_students_from==\"Program Enrollments\"", "fieldname": "new_program", "fieldtype": "Link", "hidden": 0, @@ -217,6 +218,7 @@ "allow_on_submit": 0, "bold": 0, "collapsible": 0, + "depends_on": "eval:doc.get_students_from==\"Program Enrollments\"", "fieldname": "new_academic_year", "fieldtype": "Link", "hidden": 0, @@ -275,7 +277,7 @@ "issingle": 1, "istable": 0, "max_attachments": 0, - "modified": "2016-07-25 01:24:05.632746", + "modified": "2016-08-17 07:50:40.399492", "modified_by": "Administrator", "module": "Schools", "name": "Program Enrollment Tool", diff --git a/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.py b/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.py index b483ef5a69..6c10880014 100644 --- a/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.py +++ b/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.py @@ -6,6 +6,7 @@ from __future__ import unicode_literals import frappe from frappe import _ from frappe.model.document import Document +from erpnext.schools.api import enroll_student class ProgramEnrollmentTool(Document): def get_students(self): @@ -29,11 +30,16 @@ class ProgramEnrollmentTool(Document): def enroll_students(self): for stud in self.students: - prog_enrollment = frappe.new_doc("Program Enrollment") - prog_enrollment.student = stud.student - prog_enrollment.student_name = stud.student_name - prog_enrollment.program = self.new_program - prog_enrollment.academic_year = self.new_academic_year - prog_enrollment.save() + if stud.student: + prog_enrollment = frappe.new_doc("Program Enrollment") + prog_enrollment.student = stud.student + prog_enrollment.student_name = stud.student_name + prog_enrollment.program = self.new_program + prog_enrollment.academic_year = self.new_academic_year + prog_enrollment.save() + elif stud.student_applicant: + prog_enrollment = enroll_student(stud.student_applicant) + prog_enrollment.academic_year = self.academic_year + prog_enrollment.save() frappe.msgprint("Students have been enrolled.") \ No newline at end of file From b969c2cb60d553323cd49abfac9abf8fb3c739b9 Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Thu, 18 Aug 2016 12:35:58 +0530 Subject: [PATCH 2/6] [minor] budget link in cost center, fixes #6093 --- erpnext/accounts/doctype/cost_center/cost_center.js | 9 +++++++-- erpnext/selling/sales_common.js | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/erpnext/accounts/doctype/cost_center/cost_center.js b/erpnext/accounts/doctype/cost_center/cost_center.js index dea87f3f46..83ecc9fac1 100644 --- a/erpnext/accounts/doctype/cost_center/cost_center.js +++ b/erpnext/accounts/doctype/cost_center/cost_center.js @@ -32,8 +32,13 @@ cur_frm.cscript.refresh = function(doc, cdt, cdn) { cur_frm.toggle_display('sb1', doc.is_group==0) cur_frm.set_intro(intro_txt); - cur_frm.add_custom_button(__('Chart of Cost Centers'), - function() { frappe.set_route("Tree", "Cost Center"); }, __("View")) + if(!cur_frm.doc.__islocal) { + cur_frm.add_custom_button(__('Chart of Cost Centers'), + function() { frappe.set_route("Tree", "Cost Center"); }); + + cur_frm.add_custom_button(__('Budget'), + function() { frappe.set_route("List", "Budget", {'cost_center': cur_frm.doc.name}); }); + } } cur_frm.cscript.parent_cost_center = function(doc, cdt, cdn) { diff --git a/erpnext/selling/sales_common.js b/erpnext/selling/sales_common.js index 402ff116ec..1ec8029725 100644 --- a/erpnext/selling/sales_common.js +++ b/erpnext/selling/sales_common.js @@ -80,7 +80,7 @@ erpnext.selling.SellingController = erpnext.TransactionController.extend({ } else { filters = { 'item_code': item.item_code, - 'posting_date': me.frm.doc.posting_date || nowdate(), + 'posting_date': me.frm.doc.posting_date || frappe.datetime.nowdate(), } if(item.warehouse) filters["warehouse"] = item.warehouse From 23a6d05622c531011c130dd5ada67522f1371e2e Mon Sep 17 00:00:00 2001 From: Abdulla P I Date: Thu, 18 Aug 2016 12:43:19 +0530 Subject: [PATCH 3/6] Update employee_list.js --- erpnext/hr/doctype/employee/employee_list.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/erpnext/hr/doctype/employee/employee_list.js b/erpnext/hr/doctype/employee/employee_list.js index 697900c31d..c786004a65 100644 --- a/erpnext/hr/doctype/employee/employee_list.js +++ b/erpnext/hr/doctype/employee/employee_list.js @@ -1,5 +1,5 @@ frappe.listview_settings['Employee'] = { - add_fields: ["status", "branch", "department", "designation"], + add_fields: ["status", "branch", "department", "designation","image"], filters: [["status","=", "Active"]], get_indicator: function(doc) { var indicator = [__(doc.status), frappe.utils.guess_colour(doc.status), "status,=," + doc.status]; From b7bc6bd75d3d51b4c23f6484ac8a99097cfa8701 Mon Sep 17 00:00:00 2001 From: Rushabh Mehta Date: Thu, 18 Aug 2016 12:50:58 +0530 Subject: [PATCH 4/6] [fix] better message for cost center, fixes #6109 --- erpnext/accounts/doctype/budget/budget.py | 10 +++++++--- erpnext/patches/v7_0/calculate_total_costing_amount.py | 1 + 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/erpnext/accounts/doctype/budget/budget.py b/erpnext/accounts/doctype/budget/budget.py index 819a63534a..7b6cde7df1 100644 --- a/erpnext/accounts/doctype/budget/budget.py +++ b/erpnext/accounts/doctype/budget/budget.py @@ -5,7 +5,7 @@ from __future__ import unicode_literals import frappe from frappe import _ -from frappe.utils import flt, getdate, add_months, get_last_day +from frappe.utils import flt, getdate, add_months, get_last_day, fmt_money from frappe.model.naming import make_autoname from frappe.model.document import Document @@ -85,13 +85,17 @@ def compare_expense_with_budget(args, cost_center, budget_amount, action_for, ac actual_expense = get_actual_expense(args, cost_center) if actual_expense > budget_amount: diff = actual_expense - budget_amount + currency = frappe.db.get_value('Company', frappe.db.get_value('Cost Center', + cost_center, 'company'), 'default_currency') - msg = _("{0} Budget for Account {1} against Cost Center {2} is {3}. It will exceed by {4}").format(_(action_for), args.account, cost_center, budget_amount, diff) + msg = _("{0} Budget for Account {1} against Cost Center {2} is {3}. It will exceed by {4}").format(_(action_for), + frappe.bold(args.account), frappe.bold(cost_center), + frappe.bold(fmt_money(budget_amount, currency=currency)), frappe.bold(fmt_money(diff, currency=currency))) if action=="Stop": frappe.throw(msg, BudgetError) else: - frappe.msgprint(msg) + frappe.msgprint(msg, indicator='orange') def get_accumulated_monthly_budget(monthly_distribution, posting_date, fiscal_year, annual_budget): distribution = {} diff --git a/erpnext/patches/v7_0/calculate_total_costing_amount.py b/erpnext/patches/v7_0/calculate_total_costing_amount.py index 4da839f356..11fdff9abd 100644 --- a/erpnext/patches/v7_0/calculate_total_costing_amount.py +++ b/erpnext/patches/v7_0/calculate_total_costing_amount.py @@ -13,4 +13,5 @@ def execute(): ts.flags.ignore_validate = True ts.flags.ignore_mandatory = True ts.flags.ignore_validate_update_after_submit = True + ts.flags.ignore_links = True ts.save() From 9d5a07d101b072421ee2bd87a228ff765a227196 Mon Sep 17 00:00:00 2001 From: Rohit Waghchaure Date: Thu, 18 Aug 2016 13:25:12 +0530 Subject: [PATCH 5/6] [POS] Fixed stock update issue --- erpnext/accounts/doctype/sales_invoice/pos.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/erpnext/accounts/doctype/sales_invoice/pos.py b/erpnext/accounts/doctype/sales_invoice/pos.py index df0874bce4..599e9b1e1f 100644 --- a/erpnext/accounts/doctype/sales_invoice/pos.py +++ b/erpnext/accounts/doctype/sales_invoice/pos.py @@ -13,9 +13,9 @@ from erpnext.controllers.accounts_controller import get_taxes_and_charges @frappe.whitelist() def get_pos_data(): doc = frappe.new_doc('Sales Invoice') - doc.update_stock = 1; doc.is_pos = 1; pos_profile = get_pos_profile(doc.company) or {} + doc.update_stock = pos_profile.get('update_stock') if pos_profile.get('name'): pos_profile = frappe.get_doc('POS Profile', pos_profile.get('name')) @@ -105,7 +105,7 @@ def update_tax_table(doc): def get_items(doc, pos_profile): item_list = [] - for item in frappe.get_all("Item", fields=["*"], filters={'disabled': 0, 'has_variants': 0}): + for item in frappe.get_all("Item", fields=["*"], filters={'disabled': 0, 'has_variants': 0, 'is_sales_item': 1}): item_doc = frappe.get_doc('Item', item.name) if item_doc.taxes: item.taxes = json.dumps(dict(([d.tax_type, d.tax_rate] for d in From f0937bf7220ae123b79ed3cbf1a442198a05ed02 Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Thu, 18 Aug 2016 16:43:15 +0600 Subject: [PATCH 6/6] bumped to version 7.0.30 --- erpnext/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/erpnext/__init__.py b/erpnext/__init__.py index cde4c0e70f..ee7021d1ba 100644 --- a/erpnext/__init__.py +++ b/erpnext/__init__.py @@ -2,7 +2,7 @@ from __future__ import unicode_literals import frappe -__version__ = '7.0.29' +__version__ = '7.0.30' def get_default_company(user=None): '''Get default company for user'''