Merge branch 'develop' into lms-patch-3
This commit is contained in:
commit
147cd1035e
@ -458,6 +458,7 @@ class JournalEntry(AccountsController):
|
|||||||
pay_to_recd_from = frappe.db.get_value(d.party_type, d.party,
|
pay_to_recd_from = frappe.db.get_value(d.party_type, d.party,
|
||||||
"customer_name" if d.party_type=="Customer" else "supplier_name")
|
"customer_name" if d.party_type=="Customer" else "supplier_name")
|
||||||
|
|
||||||
|
if pay_to_recd_from and pay_to_recd_from == d.party:
|
||||||
party_amount += (d.debit_in_account_currency or d.credit_in_account_currency)
|
party_amount += (d.debit_in_account_currency or d.credit_in_account_currency)
|
||||||
party_account_currency = d.account_currency
|
party_account_currency = d.account_currency
|
||||||
|
|
||||||
|
@ -46,6 +46,8 @@
|
|||||||
var range2 = report.columns[12].label;
|
var range2 = report.columns[12].label;
|
||||||
var range3 = report.columns[13].label;
|
var range3 = report.columns[13].label;
|
||||||
var range4 = report.columns[14].label;
|
var range4 = report.columns[14].label;
|
||||||
|
var range5 = report.columns[15].label;
|
||||||
|
var range6 = report.columns[16].label;
|
||||||
%}
|
%}
|
||||||
{% if(balance_row) { %}
|
{% if(balance_row) { %}
|
||||||
<table class="table table-bordered table-condensed">
|
<table class="table table-bordered table-condensed">
|
||||||
@ -58,6 +60,8 @@
|
|||||||
<col style="width: 18mm;">
|
<col style="width: 18mm;">
|
||||||
<col style="width: 18mm;">
|
<col style="width: 18mm;">
|
||||||
<col style="width: 18mm;">
|
<col style="width: 18mm;">
|
||||||
|
<col style="width: 18mm;">
|
||||||
|
<col style="width: 18mm;">
|
||||||
</colgroup>
|
</colgroup>
|
||||||
|
|
||||||
<thead>
|
<thead>
|
||||||
@ -67,16 +71,20 @@
|
|||||||
<th>{%= __(range2) %}</th>
|
<th>{%= __(range2) %}</th>
|
||||||
<th>{%= __(range3) %}</th>
|
<th>{%= __(range3) %}</th>
|
||||||
<th>{%= __(range4) %}</th>
|
<th>{%= __(range4) %}</th>
|
||||||
|
<th>{%= __(range5) %}</th>
|
||||||
|
<th>{%= __(range6) %}</th>
|
||||||
<th>{%= __("Total") %}</th>
|
<th>{%= __("Total") %}</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td>{%= __("Total Outstanding") %}</td>
|
<td>{%= __("Total Outstanding") %}</td>
|
||||||
<td class="text-right">{%= format_currency(balance_row[range1]) %}</td>
|
<td class="text-right">{%= format_number(balance_row[range1], null, 2) %}</td>
|
||||||
<td class="text-right">{%= format_currency(balance_row[range2]) %}</td>
|
<td class="text-right">{%= format_currency(balance_row[range2]) %}</td>
|
||||||
<td class="text-right">{%= format_currency(balance_row[range3]) %}</td>
|
<td class="text-right">{%= format_currency(balance_row[range3]) %}</td>
|
||||||
<td class="text-right">{%= format_currency(balance_row[range4]) %}</td>
|
<td class="text-right">{%= format_currency(balance_row[range4]) %}</td>
|
||||||
|
<td class="text-right">{%= format_currency(balance_row[range5]) %}</td>
|
||||||
|
<td class="text-right">{%= format_currency(balance_row[range6]) %}</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
{%= format_currency(flt(balance_row[("outstanding_amount")]), data[data.length-1]["currency"]) %}
|
{%= format_currency(flt(balance_row[("outstanding_amount")]), data[data.length-1]["currency"]) %}
|
||||||
</td>
|
</td>
|
||||||
@ -86,6 +94,8 @@
|
|||||||
<td></td>
|
<td></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
|
<td></td>
|
||||||
|
<td></td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
{%= format_currency(flt(balance_row[("pdc/lc_amount")]), data[data.length-1]["currency"]) %}
|
{%= format_currency(flt(balance_row[("pdc/lc_amount")]), data[data.length-1]["currency"]) %}
|
||||||
</td>
|
</td>
|
||||||
@ -95,6 +105,8 @@
|
|||||||
<th></th>
|
<th></th>
|
||||||
<th></th>
|
<th></th>
|
||||||
<th></th>
|
<th></th>
|
||||||
|
<th></th>
|
||||||
|
<th></th>
|
||||||
<th class="text-right">
|
<th class="text-right">
|
||||||
{%= format_currency(flt(balance_row[("outstanding_amount")]-balance_row[("pdc/lc_amount")]), data[data.length-1]["currency"]) %}</th>
|
{%= format_currency(flt(balance_row[("outstanding_amount")]-balance_row[("pdc/lc_amount")]), data[data.length-1]["currency"]) %}</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -23,6 +23,9 @@
|
|||||||
{% } %}
|
{% } %}
|
||||||
<h2 class="text-center">{%= __(report.report_name) %}</h2>
|
<h2 class="text-center">{%= __(report.report_name) %}</h2>
|
||||||
<h3 class="text-center">{%= filters.company %}</h3>
|
<h3 class="text-center">{%= filters.company %}</h3>
|
||||||
|
{% if 'cost_center' in filters %}
|
||||||
|
<h3 class="text-center">{%= filters.cost_center %}</h3>
|
||||||
|
{% endif %}
|
||||||
<h3 class="text-center">{%= filters.fiscal_year %}</h3>
|
<h3 class="text-center">{%= filters.fiscal_year %}</h3>
|
||||||
<h5 class="text-center">{%= __("Currency") %} : {%= filters.presentation_currency || erpnext.get_currency(filters.company) %} </h4>
|
<h5 class="text-center">{%= __("Currency") %} : {%= filters.presentation_currency || erpnext.get_currency(filters.company) %} </h4>
|
||||||
{% if (filters.from_date) { %}
|
{% if (filters.from_date) { %}
|
||||||
|
@ -128,7 +128,7 @@ def get_gl_entries(filters):
|
|||||||
order_by_statement = "order by posting_date, voucher_type, voucher_no"
|
order_by_statement = "order by posting_date, voucher_type, voucher_no"
|
||||||
|
|
||||||
if filters.get("group_by") == _("Group by Voucher (Consolidated)"):
|
if filters.get("group_by") == _("Group by Voucher (Consolidated)"):
|
||||||
group_by_statement = "group by voucher_type, voucher_no, account, cost_center"
|
group_by_statement = "group by voucher_type, voucher_no, account, cost_center, against_voucher"
|
||||||
select_fields = """, sum(debit) as debit, sum(credit) as credit,
|
select_fields = """, sum(debit) as debit, sum(credit) as credit,
|
||||||
sum(debit_in_account_currency) as debit_in_account_currency,
|
sum(debit_in_account_currency) as debit_in_account_currency,
|
||||||
sum(credit_in_account_currency) as credit_in_account_currency"""
|
sum(credit_in_account_currency) as credit_in_account_currency"""
|
||||||
|
@ -1,230 +1,81 @@
|
|||||||
{
|
{
|
||||||
"allow_copy": 0,
|
|
||||||
"allow_events_in_timeline": 0,
|
|
||||||
"allow_guest_to_view": 0,
|
|
||||||
"allow_import": 1,
|
"allow_import": 1,
|
||||||
"allow_rename": 0,
|
"allow_rename": 1,
|
||||||
"autoname": "field:title",
|
"autoname": "field:title",
|
||||||
"beta": 0,
|
|
||||||
"creation": "2018-10-17 05:45:38.471670",
|
"creation": "2018-10-17 05:45:38.471670",
|
||||||
"custom": 0,
|
|
||||||
"docstatus": 0,
|
|
||||||
"doctype": "DocType",
|
"doctype": "DocType",
|
||||||
"document_type": "",
|
|
||||||
"editable_grid": 1,
|
"editable_grid": 1,
|
||||||
"engine": "InnoDB",
|
"engine": "InnoDB",
|
||||||
|
"field_order": [
|
||||||
|
"title",
|
||||||
|
"author",
|
||||||
|
"content",
|
||||||
|
"publish_date"
|
||||||
|
],
|
||||||
"fields": [
|
"fields": [
|
||||||
{
|
{
|
||||||
"allow_bulk_edit": 0,
|
|
||||||
"allow_in_quick_entry": 0,
|
|
||||||
"allow_on_submit": 0,
|
|
||||||
"bold": 0,
|
|
||||||
"collapsible": 0,
|
|
||||||
"columns": 0,
|
|
||||||
"fieldname": "title",
|
"fieldname": "title",
|
||||||
"fieldtype": "Data",
|
"fieldtype": "Data",
|
||||||
"hidden": 0,
|
|
||||||
"ignore_user_permissions": 0,
|
|
||||||
"ignore_xss_filter": 0,
|
|
||||||
"in_filter": 0,
|
|
||||||
"in_global_search": 0,
|
|
||||||
"in_list_view": 0,
|
|
||||||
"in_standard_filter": 0,
|
|
||||||
"label": "Title",
|
"label": "Title",
|
||||||
"length": 0,
|
|
||||||
"no_copy": 0,
|
|
||||||
"permlevel": 0,
|
|
||||||
"precision": "",
|
|
||||||
"print_hide": 0,
|
|
||||||
"print_hide_if_no_value": 0,
|
|
||||||
"read_only": 0,
|
|
||||||
"remember_last_selected_value": 0,
|
|
||||||
"report_hide": 0,
|
|
||||||
"reqd": 0,
|
|
||||||
"search_index": 0,
|
|
||||||
"set_only_once": 0,
|
|
||||||
"translatable": 0,
|
|
||||||
"unique": 1
|
"unique": 1
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"allow_bulk_edit": 0,
|
|
||||||
"allow_in_quick_entry": 0,
|
|
||||||
"allow_on_submit": 0,
|
|
||||||
"bold": 0,
|
|
||||||
"collapsible": 0,
|
|
||||||
"columns": 0,
|
|
||||||
"fieldname": "author",
|
"fieldname": "author",
|
||||||
"fieldtype": "Data",
|
"fieldtype": "Data",
|
||||||
"hidden": 0,
|
"label": "Author"
|
||||||
"ignore_user_permissions": 0,
|
|
||||||
"ignore_xss_filter": 0,
|
|
||||||
"in_filter": 0,
|
|
||||||
"in_global_search": 0,
|
|
||||||
"in_list_view": 0,
|
|
||||||
"in_standard_filter": 0,
|
|
||||||
"label": "Author",
|
|
||||||
"length": 0,
|
|
||||||
"no_copy": 0,
|
|
||||||
"permlevel": 0,
|
|
||||||
"precision": "",
|
|
||||||
"print_hide": 0,
|
|
||||||
"print_hide_if_no_value": 0,
|
|
||||||
"read_only": 0,
|
|
||||||
"remember_last_selected_value": 0,
|
|
||||||
"report_hide": 0,
|
|
||||||
"reqd": 0,
|
|
||||||
"search_index": 0,
|
|
||||||
"set_only_once": 0,
|
|
||||||
"translatable": 0,
|
|
||||||
"unique": 0
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"allow_bulk_edit": 0,
|
|
||||||
"allow_in_quick_entry": 0,
|
|
||||||
"allow_on_submit": 0,
|
|
||||||
"bold": 0,
|
|
||||||
"collapsible": 0,
|
|
||||||
"columns": 0,
|
|
||||||
"fieldname": "content",
|
"fieldname": "content",
|
||||||
"fieldtype": "Text Editor",
|
"fieldtype": "Text Editor",
|
||||||
"hidden": 0,
|
"label": "Content"
|
||||||
"ignore_user_permissions": 0,
|
|
||||||
"ignore_xss_filter": 0,
|
|
||||||
"in_filter": 0,
|
|
||||||
"in_global_search": 0,
|
|
||||||
"in_list_view": 0,
|
|
||||||
"in_standard_filter": 0,
|
|
||||||
"label": "Content",
|
|
||||||
"length": 0,
|
|
||||||
"no_copy": 0,
|
|
||||||
"permlevel": 0,
|
|
||||||
"precision": "",
|
|
||||||
"print_hide": 0,
|
|
||||||
"print_hide_if_no_value": 0,
|
|
||||||
"read_only": 0,
|
|
||||||
"remember_last_selected_value": 0,
|
|
||||||
"report_hide": 0,
|
|
||||||
"reqd": 0,
|
|
||||||
"search_index": 0,
|
|
||||||
"set_only_once": 0,
|
|
||||||
"translatable": 0,
|
|
||||||
"unique": 0
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"allow_bulk_edit": 0,
|
|
||||||
"allow_in_quick_entry": 0,
|
|
||||||
"allow_on_submit": 0,
|
|
||||||
"bold": 0,
|
|
||||||
"collapsible": 0,
|
|
||||||
"columns": 0,
|
|
||||||
"fieldname": "publish_date",
|
"fieldname": "publish_date",
|
||||||
"fieldtype": "Date",
|
"fieldtype": "Date",
|
||||||
"hidden": 0,
|
"label": "Publish Date"
|
||||||
"ignore_user_permissions": 0,
|
|
||||||
"ignore_xss_filter": 0,
|
|
||||||
"in_filter": 0,
|
|
||||||
"in_global_search": 0,
|
|
||||||
"in_list_view": 0,
|
|
||||||
"in_standard_filter": 0,
|
|
||||||
"label": "Publish Date",
|
|
||||||
"length": 0,
|
|
||||||
"no_copy": 0,
|
|
||||||
"permlevel": 0,
|
|
||||||
"precision": "",
|
|
||||||
"print_hide": 0,
|
|
||||||
"print_hide_if_no_value": 0,
|
|
||||||
"read_only": 0,
|
|
||||||
"remember_last_selected_value": 0,
|
|
||||||
"report_hide": 0,
|
|
||||||
"reqd": 0,
|
|
||||||
"search_index": 0,
|
|
||||||
"set_only_once": 0,
|
|
||||||
"translatable": 0,
|
|
||||||
"unique": 0
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"has_web_view": 0,
|
"modified": "2019-06-12 12:36:58.740340",
|
||||||
"hide_heading": 0,
|
|
||||||
"hide_toolbar": 0,
|
|
||||||
"idx": 0,
|
|
||||||
"image_view": 0,
|
|
||||||
"in_create": 0,
|
|
||||||
"is_submittable": 0,
|
|
||||||
"issingle": 0,
|
|
||||||
"istable": 0,
|
|
||||||
"max_attachments": 0,
|
|
||||||
"modified": "2018-11-25 19:06:56.016865",
|
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Education",
|
"module": "Education",
|
||||||
"name": "Article",
|
"name": "Article",
|
||||||
"name_case": "",
|
|
||||||
"owner": "Administrator",
|
"owner": "Administrator",
|
||||||
"permissions": [
|
"permissions": [
|
||||||
{
|
{
|
||||||
"amend": 0,
|
|
||||||
"cancel": 0,
|
|
||||||
"create": 1,
|
"create": 1,
|
||||||
"delete": 1,
|
"delete": 1,
|
||||||
"email": 1,
|
"email": 1,
|
||||||
"export": 1,
|
"export": 1,
|
||||||
"if_owner": 0,
|
|
||||||
"import": 0,
|
|
||||||
"permlevel": 0,
|
|
||||||
"print": 1,
|
"print": 1,
|
||||||
"read": 1,
|
"read": 1,
|
||||||
"report": 1,
|
"report": 1,
|
||||||
"role": "Academics User",
|
"role": "Academics User",
|
||||||
"set_user_permissions": 0,
|
|
||||||
"share": 1,
|
"share": 1,
|
||||||
"submit": 0,
|
|
||||||
"write": 1
|
"write": 1
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"amend": 0,
|
|
||||||
"cancel": 0,
|
|
||||||
"create": 1,
|
"create": 1,
|
||||||
"delete": 1,
|
"delete": 1,
|
||||||
"email": 1,
|
"email": 1,
|
||||||
"export": 1,
|
"export": 1,
|
||||||
"if_owner": 0,
|
|
||||||
"import": 0,
|
|
||||||
"permlevel": 0,
|
|
||||||
"print": 1,
|
"print": 1,
|
||||||
"read": 1,
|
"read": 1,
|
||||||
"report": 1,
|
"report": 1,
|
||||||
"role": "Instructor",
|
"role": "Instructor",
|
||||||
"set_user_permissions": 0,
|
|
||||||
"share": 1,
|
"share": 1,
|
||||||
"submit": 0,
|
|
||||||
"write": 1
|
"write": 1
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"amend": 0,
|
|
||||||
"cancel": 0,
|
|
||||||
"create": 0,
|
|
||||||
"delete": 0,
|
|
||||||
"email": 1,
|
"email": 1,
|
||||||
"export": 1,
|
"export": 1,
|
||||||
"if_owner": 0,
|
|
||||||
"import": 0,
|
|
||||||
"permlevel": 0,
|
|
||||||
"print": 1,
|
"print": 1,
|
||||||
"read": 1,
|
"read": 1,
|
||||||
"report": 1,
|
"report": 1,
|
||||||
"role": "LMS User",
|
"role": "LMS User",
|
||||||
"set_user_permissions": 0,
|
"share": 1
|
||||||
"share": 1,
|
|
||||||
"submit": 0,
|
|
||||||
"write": 0
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"quick_entry": 1,
|
|
||||||
"read_only": 0,
|
|
||||||
"read_only_onload": 0,
|
|
||||||
"show_name_in_global_search": 0,
|
|
||||||
"sort_field": "modified",
|
"sort_field": "modified",
|
||||||
"sort_order": "DESC",
|
"sort_order": "DESC",
|
||||||
"track_changes": 1,
|
"track_changes": 1
|
||||||
"track_seen": 0,
|
|
||||||
"track_views": 0
|
|
||||||
}
|
}
|
@ -1,17 +1,13 @@
|
|||||||
{
|
{
|
||||||
"allow_import": 1,
|
"allow_import": 1,
|
||||||
"allow_rename": 1,
|
"allow_rename": 1,
|
||||||
"autoname": "field:course_code",
|
"autoname": "field:course_name",
|
||||||
"creation": "2015-09-07 12:39:55.181893",
|
"creation": "2015-09-07 12:39:55.181893",
|
||||||
"doctype": "DocType",
|
"doctype": "DocType",
|
||||||
"engine": "InnoDB",
|
"engine": "InnoDB",
|
||||||
"field_order": [
|
"field_order": [
|
||||||
"course_name",
|
"course_name",
|
||||||
"department",
|
"department",
|
||||||
"parent_course",
|
|
||||||
"column_break_3",
|
|
||||||
"course_code",
|
|
||||||
"course_abbreviation",
|
|
||||||
"section_break_6",
|
"section_break_6",
|
||||||
"topics",
|
"topics",
|
||||||
"description",
|
"description",
|
||||||
@ -26,7 +22,8 @@
|
|||||||
"fieldtype": "Data",
|
"fieldtype": "Data",
|
||||||
"in_list_view": 1,
|
"in_list_view": 1,
|
||||||
"label": "Course Name",
|
"label": "Course Name",
|
||||||
"reqd": 1
|
"reqd": 1,
|
||||||
|
"unique": 1
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"fieldname": "department",
|
"fieldname": "department",
|
||||||
@ -36,31 +33,10 @@
|
|||||||
"label": "Department",
|
"label": "Department",
|
||||||
"options": "Department"
|
"options": "Department"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"fieldname": "parent_course",
|
|
||||||
"fieldtype": "Data",
|
|
||||||
"label": "Parent Course (Leave blank, if this isn't part of Parent Course)"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "column_break_3",
|
|
||||||
"fieldtype": "Column Break"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "course_code",
|
|
||||||
"fieldtype": "Data",
|
|
||||||
"label": "Course Code",
|
|
||||||
"reqd": 1,
|
|
||||||
"unique": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "course_abbreviation",
|
|
||||||
"fieldtype": "Data",
|
|
||||||
"in_list_view": 1,
|
|
||||||
"label": "Course Abbreviation"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"fieldname": "section_break_6",
|
"fieldname": "section_break_6",
|
||||||
"fieldtype": "Section Break"
|
"fieldtype": "Section Break",
|
||||||
|
"label": "Portal Settings"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"fieldname": "topics",
|
"fieldname": "topics",
|
||||||
@ -71,6 +47,7 @@
|
|||||||
{
|
{
|
||||||
"fieldname": "hero_image",
|
"fieldname": "hero_image",
|
||||||
"fieldtype": "Attach Image",
|
"fieldtype": "Attach Image",
|
||||||
|
"hidden": 1,
|
||||||
"label": "Hero Image"
|
"label": "Hero Image"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -96,7 +73,8 @@
|
|||||||
"label": "Description"
|
"label": "Description"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"modified": "2019-06-05 18:39:11.870605",
|
"image_field": "hero_image",
|
||||||
|
"modified": "2019-06-12 12:34:23.748157",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Education",
|
"module": "Education",
|
||||||
"name": "Course",
|
"name": "Course",
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"allow_import": 1,
|
"allow_import": 1,
|
||||||
"allow_rename": 1,
|
"allow_rename": 1,
|
||||||
"autoname": "field:program_code",
|
"autoname": "field:program_name",
|
||||||
"creation": "2015-09-07 12:54:03.609282",
|
"creation": "2015-09-07 12:54:03.609282",
|
||||||
"doctype": "DocType",
|
"doctype": "DocType",
|
||||||
"engine": "InnoDB",
|
"engine": "InnoDB",
|
||||||
@ -9,18 +9,17 @@
|
|||||||
"program_name",
|
"program_name",
|
||||||
"department",
|
"department",
|
||||||
"column_break_3",
|
"column_break_3",
|
||||||
"program_code",
|
|
||||||
"program_abbreviation",
|
"program_abbreviation",
|
||||||
"section_break_5",
|
"section_break_courses",
|
||||||
"courses",
|
"courses",
|
||||||
"section_break_9",
|
"section_break_5",
|
||||||
"description",
|
"is_published",
|
||||||
|
"allow_self_enroll",
|
||||||
|
"is_featured",
|
||||||
|
"column_break_11",
|
||||||
"intro_video",
|
"intro_video",
|
||||||
"hero_image",
|
"hero_image",
|
||||||
"column_break_11",
|
"description"
|
||||||
"is_published",
|
|
||||||
"is_featured",
|
|
||||||
"allow_self_enroll"
|
|
||||||
],
|
],
|
||||||
"fields": [
|
"fields": [
|
||||||
{
|
{
|
||||||
@ -28,7 +27,8 @@
|
|||||||
"fieldtype": "Data",
|
"fieldtype": "Data",
|
||||||
"in_list_view": 1,
|
"in_list_view": 1,
|
||||||
"label": "Program Name",
|
"label": "Program Name",
|
||||||
"reqd": 1
|
"reqd": 1,
|
||||||
|
"unique": 1
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"fieldname": "department",
|
"fieldname": "department",
|
||||||
@ -42,13 +42,6 @@
|
|||||||
"fieldname": "column_break_3",
|
"fieldname": "column_break_3",
|
||||||
"fieldtype": "Column Break"
|
"fieldtype": "Column Break"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"fieldname": "program_code",
|
|
||||||
"fieldtype": "Data",
|
|
||||||
"label": "Program Code",
|
|
||||||
"reqd": 1,
|
|
||||||
"unique": 1
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"fieldname": "program_abbreviation",
|
"fieldname": "program_abbreviation",
|
||||||
"fieldtype": "Data",
|
"fieldtype": "Data",
|
||||||
@ -67,16 +60,13 @@
|
|||||||
"options": "Program Course"
|
"options": "Program Course"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"fieldname": "section_break_9",
|
"depends_on": "is_published",
|
||||||
"fieldtype": "Section Break",
|
|
||||||
"label": "LMS Settings"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "description",
|
"fieldname": "description",
|
||||||
"fieldtype": "Small Text",
|
"fieldtype": "Small Text",
|
||||||
"label": "Description"
|
"label": "Description"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"depends_on": "is_published",
|
||||||
"fieldname": "intro_video",
|
"fieldname": "intro_video",
|
||||||
"fieldtype": "Data",
|
"fieldtype": "Data",
|
||||||
"label": "Intro Video"
|
"label": "Intro Video"
|
||||||
@ -84,12 +74,9 @@
|
|||||||
{
|
{
|
||||||
"fieldname": "hero_image",
|
"fieldname": "hero_image",
|
||||||
"fieldtype": "Attach Image",
|
"fieldtype": "Attach Image",
|
||||||
|
"hidden": 1,
|
||||||
"label": "Hero Image"
|
"label": "Hero Image"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"fieldname": "column_break_11",
|
|
||||||
"fieldtype": "Column Break"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
"fieldname": "is_published",
|
"fieldname": "is_published",
|
||||||
@ -106,13 +93,22 @@
|
|||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
"depends_on": "eval: doc.is_published == 1",
|
"depends_on": "eval: doc.is_published == 1",
|
||||||
"description": "Allow students to enroll themselves from the portal",
|
|
||||||
"fieldname": "allow_self_enroll",
|
"fieldname": "allow_self_enroll",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Allow Self Enroll"
|
"label": "Allow Self Enroll"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "section_break_courses",
|
||||||
|
"fieldtype": "Section Break",
|
||||||
|
"label": "Courses"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "column_break_11",
|
||||||
|
"fieldtype": "Column Break"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"modified": "2019-06-05 17:47:26.877296",
|
"image_field": "hero_image",
|
||||||
|
"modified": "2019-06-12 12:31:14.999346",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Education",
|
"module": "Education",
|
||||||
"name": "Program",
|
"name": "Program",
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
{
|
{
|
||||||
|
"allow_import": 1,
|
||||||
|
"allow_rename": 1,
|
||||||
"autoname": "field:title",
|
"autoname": "field:title",
|
||||||
"creation": "2018-10-17 05:52:50.149904",
|
"creation": "2018-10-17 05:52:50.149904",
|
||||||
"doctype": "DocType",
|
"doctype": "DocType",
|
||||||
@ -58,7 +60,7 @@
|
|||||||
"options": "Latest Highest Score\nLatest Attempt"
|
"options": "Latest Highest Score\nLatest Attempt"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"modified": "2019-05-30 18:50:54.218571",
|
"modified": "2019-06-12 12:23:57.020508",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Education",
|
"module": "Education",
|
||||||
"name": "Quiz",
|
"name": "Quiz",
|
||||||
|
@ -1,110 +1,40 @@
|
|||||||
{
|
{
|
||||||
"allow_copy": 0,
|
"allow_rename": 1,
|
||||||
"allow_events_in_timeline": 0,
|
|
||||||
"allow_guest_to_view": 0,
|
|
||||||
"allow_import": 0,
|
|
||||||
"allow_rename": 0,
|
|
||||||
"beta": 0,
|
|
||||||
"creation": "2018-10-17 06:13:00.098883",
|
"creation": "2018-10-17 06:13:00.098883",
|
||||||
"custom": 0,
|
|
||||||
"docstatus": 0,
|
|
||||||
"doctype": "DocType",
|
"doctype": "DocType",
|
||||||
"document_type": "",
|
|
||||||
"editable_grid": 1,
|
"editable_grid": 1,
|
||||||
"engine": "InnoDB",
|
"engine": "InnoDB",
|
||||||
|
"field_order": [
|
||||||
|
"question_link",
|
||||||
|
"question"
|
||||||
|
],
|
||||||
"fields": [
|
"fields": [
|
||||||
{
|
{
|
||||||
"allow_bulk_edit": 0,
|
|
||||||
"allow_in_quick_entry": 0,
|
|
||||||
"allow_on_submit": 0,
|
|
||||||
"bold": 0,
|
|
||||||
"collapsible": 0,
|
|
||||||
"columns": 0,
|
|
||||||
"fieldname": "question_link",
|
"fieldname": "question_link",
|
||||||
"fieldtype": "Link",
|
"fieldtype": "Link",
|
||||||
"hidden": 0,
|
|
||||||
"ignore_user_permissions": 0,
|
|
||||||
"ignore_xss_filter": 0,
|
|
||||||
"in_filter": 0,
|
|
||||||
"in_global_search": 0,
|
|
||||||
"in_list_view": 1,
|
"in_list_view": 1,
|
||||||
"in_standard_filter": 0,
|
|
||||||
"label": "Question Link",
|
"label": "Question Link",
|
||||||
"length": 0,
|
|
||||||
"no_copy": 0,
|
|
||||||
"options": "Question",
|
"options": "Question",
|
||||||
"permlevel": 0,
|
"reqd": 1
|
||||||
"precision": "",
|
|
||||||
"print_hide": 0,
|
|
||||||
"print_hide_if_no_value": 0,
|
|
||||||
"read_only": 0,
|
|
||||||
"remember_last_selected_value": 0,
|
|
||||||
"report_hide": 0,
|
|
||||||
"reqd": 1,
|
|
||||||
"search_index": 0,
|
|
||||||
"set_only_once": 0,
|
|
||||||
"translatable": 0,
|
|
||||||
"unique": 0
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"allow_bulk_edit": 0,
|
|
||||||
"allow_in_quick_entry": 0,
|
|
||||||
"allow_on_submit": 0,
|
|
||||||
"bold": 0,
|
|
||||||
"collapsible": 0,
|
|
||||||
"columns": 0,
|
|
||||||
"fetch_from": "question_link.question",
|
"fetch_from": "question_link.question",
|
||||||
"fieldname": "question",
|
"fieldname": "question",
|
||||||
"fieldtype": "Data",
|
"fieldtype": "Data",
|
||||||
"hidden": 0,
|
|
||||||
"ignore_user_permissions": 0,
|
|
||||||
"ignore_xss_filter": 0,
|
|
||||||
"in_filter": 0,
|
|
||||||
"in_global_search": 0,
|
|
||||||
"in_list_view": 1,
|
"in_list_view": 1,
|
||||||
"in_standard_filter": 0,
|
|
||||||
"label": "Question",
|
"label": "Question",
|
||||||
"length": 0,
|
"read_only": 1
|
||||||
"no_copy": 0,
|
|
||||||
"options": "",
|
|
||||||
"permlevel": 0,
|
|
||||||
"precision": "",
|
|
||||||
"print_hide": 0,
|
|
||||||
"print_hide_if_no_value": 0,
|
|
||||||
"read_only": 1,
|
|
||||||
"remember_last_selected_value": 0,
|
|
||||||
"report_hide": 0,
|
|
||||||
"reqd": 0,
|
|
||||||
"search_index": 0,
|
|
||||||
"set_only_once": 0,
|
|
||||||
"translatable": 0,
|
|
||||||
"unique": 0
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"has_web_view": 0,
|
|
||||||
"hide_heading": 0,
|
|
||||||
"hide_toolbar": 0,
|
|
||||||
"idx": 0,
|
|
||||||
"image_view": 0,
|
|
||||||
"in_create": 0,
|
|
||||||
"is_submittable": 0,
|
|
||||||
"issingle": 0,
|
|
||||||
"istable": 1,
|
"istable": 1,
|
||||||
"max_attachments": 0,
|
"modified": "2019-06-12 12:24:02.312577",
|
||||||
"modified": "2018-10-18 15:35:12.195250",
|
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Education",
|
"module": "Education",
|
||||||
"name": "Quiz Question",
|
"name": "Quiz Question",
|
||||||
"name_case": "",
|
|
||||||
"owner": "Administrator",
|
"owner": "Administrator",
|
||||||
"permissions": [],
|
"permissions": [],
|
||||||
"quick_entry": 1,
|
"quick_entry": 1,
|
||||||
"read_only": 0,
|
|
||||||
"read_only_onload": 0,
|
|
||||||
"show_name_in_global_search": 0,
|
|
||||||
"sort_field": "modified",
|
"sort_field": "modified",
|
||||||
"sort_order": "DESC",
|
"sort_order": "DESC",
|
||||||
"track_changes": 1,
|
"track_changes": 1
|
||||||
"track_seen": 0,
|
|
||||||
"track_views": 0
|
|
||||||
}
|
}
|
@ -1,14 +1,13 @@
|
|||||||
{
|
{
|
||||||
"autoname": "field:topic_code",
|
"allow_import": 1,
|
||||||
|
"allow_rename": 1,
|
||||||
|
"autoname": "field:topic_name",
|
||||||
"creation": "2018-12-12 11:37:39.917760",
|
"creation": "2018-12-12 11:37:39.917760",
|
||||||
"doctype": "DocType",
|
"doctype": "DocType",
|
||||||
"editable_grid": 1,
|
"editable_grid": 1,
|
||||||
"engine": "InnoDB",
|
"engine": "InnoDB",
|
||||||
"field_order": [
|
"field_order": [
|
||||||
"topic_name",
|
"topic_name",
|
||||||
"column_break_2",
|
|
||||||
"topic_code",
|
|
||||||
"section_break_4",
|
|
||||||
"topic_content",
|
"topic_content",
|
||||||
"description",
|
"description",
|
||||||
"hero_image"
|
"hero_image"
|
||||||
@ -19,24 +18,9 @@
|
|||||||
"fieldtype": "Data",
|
"fieldtype": "Data",
|
||||||
"in_list_view": 1,
|
"in_list_view": 1,
|
||||||
"label": "Name",
|
"label": "Name",
|
||||||
"reqd": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "column_break_2",
|
|
||||||
"fieldtype": "Column Break"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "topic_code",
|
|
||||||
"fieldtype": "Data",
|
|
||||||
"in_list_view": 1,
|
|
||||||
"label": "Code",
|
|
||||||
"reqd": 1,
|
"reqd": 1,
|
||||||
"unique": 1
|
"unique": 1
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"fieldname": "section_break_4",
|
|
||||||
"fieldtype": "Section Break"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"fieldname": "topic_content",
|
"fieldname": "topic_content",
|
||||||
"fieldtype": "Table",
|
"fieldtype": "Table",
|
||||||
@ -46,6 +30,7 @@
|
|||||||
{
|
{
|
||||||
"fieldname": "hero_image",
|
"fieldname": "hero_image",
|
||||||
"fieldtype": "Attach Image",
|
"fieldtype": "Attach Image",
|
||||||
|
"hidden": 1,
|
||||||
"label": "Hero Image"
|
"label": "Hero Image"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -54,7 +39,8 @@
|
|||||||
"label": "Description"
|
"label": "Description"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"modified": "2019-06-05 18:38:44.029711",
|
"image_field": "hero_image",
|
||||||
|
"modified": "2019-06-12 12:34:49.911300",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Education",
|
"module": "Education",
|
||||||
"name": "Topic",
|
"name": "Topic",
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
{
|
{
|
||||||
"allow_import": 1,
|
"allow_import": 1,
|
||||||
|
"allow_rename": 1,
|
||||||
"autoname": "field:title",
|
"autoname": "field:title",
|
||||||
"creation": "2018-10-17 05:47:13.087395",
|
"creation": "2018-10-17 05:47:13.087395",
|
||||||
"doctype": "DocType",
|
"doctype": "DocType",
|
||||||
@ -7,11 +8,13 @@
|
|||||||
"engine": "InnoDB",
|
"engine": "InnoDB",
|
||||||
"field_order": [
|
"field_order": [
|
||||||
"title",
|
"title",
|
||||||
"description",
|
|
||||||
"duration",
|
|
||||||
"provider",
|
"provider",
|
||||||
"url",
|
"url",
|
||||||
"publish_date"
|
"column_break_4",
|
||||||
|
"publish_date",
|
||||||
|
"duration",
|
||||||
|
"section_break_7",
|
||||||
|
"description"
|
||||||
],
|
],
|
||||||
"fields": [
|
"fields": [
|
||||||
{
|
{
|
||||||
@ -53,9 +56,17 @@
|
|||||||
"label": "Provider",
|
"label": "Provider",
|
||||||
"options": "YouTube\nVimeo",
|
"options": "YouTube\nVimeo",
|
||||||
"reqd": 1
|
"reqd": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "column_break_4",
|
||||||
|
"fieldtype": "Column Break"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "section_break_7",
|
||||||
|
"fieldtype": "Section Break"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"modified": "2019-05-20 15:11:53.075093",
|
"modified": "2019-06-12 12:36:48.753092",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Education",
|
"module": "Education",
|
||||||
"name": "Video",
|
"name": "Video",
|
||||||
@ -95,7 +106,6 @@
|
|||||||
"share": 1
|
"share": 1
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"quick_entry": 1,
|
|
||||||
"sort_field": "modified",
|
"sort_field": "modified",
|
||||||
"sort_order": "DESC",
|
"sort_order": "DESC",
|
||||||
"track_changes": 1
|
"track_changes": 1
|
||||||
|
@ -192,6 +192,15 @@
|
|||||||
"fieldtype": "Text",
|
"fieldtype": "Text",
|
||||||
"label": "Other Details"
|
"label": "Other Details"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "amended_from",
|
||||||
|
"fieldtype": "Link",
|
||||||
|
"label": "Amended From",
|
||||||
|
"no_copy": 1,
|
||||||
|
"options": "Travel Request",
|
||||||
|
"print_hide": 1,
|
||||||
|
"read_only": 1
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"collapsible": 1,
|
"collapsible": 1,
|
||||||
"fieldname": "accounting_dimensions_section",
|
"fieldname": "accounting_dimensions_section",
|
||||||
@ -203,6 +212,7 @@
|
|||||||
"fieldtype": "Column Break"
|
"fieldtype": "Column Break"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"is_submittable": 1,
|
||||||
"modified": "2019-05-25 23:15:00.609186",
|
"modified": "2019-05-25 23:15:00.609186",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "HR",
|
"module": "HR",
|
||||||
|
@ -40,7 +40,7 @@ def execute():
|
|||||||
# This is probably never used anywhere else as of now, but should be
|
# This is probably never used anywhere else as of now, but should be
|
||||||
values = []
|
values = []
|
||||||
for d in batch_transactions:
|
for d in batch_transactions:
|
||||||
values.append("('{}', {})".format(d.parent, d.qty))
|
values.append("({0}, {1})".format(frappe.db.escape(d.parent), d.qty))
|
||||||
conditions = ",".join(values)
|
conditions = ",".join(values)
|
||||||
frappe.db.sql("""
|
frappe.db.sql("""
|
||||||
INSERT INTO `tab{}` (name, total_qty) VALUES {}
|
INSERT INTO `tab{}` (name, total_qty) VALUES {}
|
||||||
|
@ -60,8 +60,11 @@ class Gstr1Report(object):
|
|||||||
else:
|
else:
|
||||||
for inv, items_based_on_rate in self.items_based_on_tax_rate.items():
|
for inv, items_based_on_rate in self.items_based_on_tax_rate.items():
|
||||||
invoice_details = self.invoices.get(inv)
|
invoice_details = self.invoices.get(inv)
|
||||||
for rate, items in items_based_on_rate.items():
|
for key, items in items_based_on_rate.items():
|
||||||
row, taxable_value = self.get_row_data_for_invoice(inv, invoice_details, rate, items)
|
rate = key[0]
|
||||||
|
account = key[1]
|
||||||
|
|
||||||
|
row, taxable_value = self.get_row_data_for_invoice(inv, invoice_details, rate, account, items)
|
||||||
|
|
||||||
if self.filters.get("type_of_business") == "CDNR":
|
if self.filters.get("type_of_business") == "CDNR":
|
||||||
row.append("Y" if invoice_details.posting_date <= date(2017, 7, 1) else "N")
|
row.append("Y" if invoice_details.posting_date <= date(2017, 7, 1) else "N")
|
||||||
@ -100,7 +103,7 @@ class Gstr1Report(object):
|
|||||||
for key, value in iteritems(b2cs_output):
|
for key, value in iteritems(b2cs_output):
|
||||||
self.data.append(value)
|
self.data.append(value)
|
||||||
|
|
||||||
def get_row_data_for_invoice(self, invoice, invoice_details, tax_rate, items):
|
def get_row_data_for_invoice(self, invoice, invoice_details, tax_rate, account, items):
|
||||||
row = []
|
row = []
|
||||||
for fieldname in self.invoice_fields:
|
for fieldname in self.invoice_fields:
|
||||||
if self.filters.get("type_of_business") == "CDNR" and fieldname == "invoice_value":
|
if self.filters.get("type_of_business") == "CDNR" and fieldname == "invoice_value":
|
||||||
@ -117,7 +120,9 @@ class Gstr1Report(object):
|
|||||||
taxable_value = 0
|
taxable_value = 0
|
||||||
for item_code, net_amount in self.invoice_items.get(invoice).items():
|
for item_code, net_amount in self.invoice_items.get(invoice).items():
|
||||||
if item_code in items:
|
if item_code in items:
|
||||||
if self.item_tax_rate.get(invoice) and tax_rate == self.item_tax_rate.get(invoice, {}).get(item_code):
|
if self.item_tax_rate.get(invoice) and self.item_tax_rate.get(invoice, {}).get(item_code):
|
||||||
|
item_tax_rate = self.item_tax_rate.get(invoice, {}).get(item_code)
|
||||||
|
if account in item_tax_rate and tax_rate == item_tax_rate.get(account):
|
||||||
taxable_value += abs(net_amount)
|
taxable_value += abs(net_amount)
|
||||||
elif not self.item_tax_rate.get(invoice):
|
elif not self.item_tax_rate.get(invoice):
|
||||||
taxable_value += abs(net_amount)
|
taxable_value += abs(net_amount)
|
||||||
@ -207,8 +212,7 @@ class Gstr1Report(object):
|
|||||||
item_tax_rate = json.loads(d.item_tax_rate)
|
item_tax_rate = json.loads(d.item_tax_rate)
|
||||||
|
|
||||||
if item_tax_rate:
|
if item_tax_rate:
|
||||||
for account, rate in item_tax_rate.items():
|
self.item_tax_rate.setdefault(d.parent, {}).setdefault(d.item_code, item_tax_rate)
|
||||||
self.item_tax_rate.setdefault(d.parent, {}).setdefault(d.item_code, rate)
|
|
||||||
|
|
||||||
def get_items_based_on_tax_rate(self):
|
def get_items_based_on_tax_rate(self):
|
||||||
self.tax_details = frappe.db.sql("""
|
self.tax_details = frappe.db.sql("""
|
||||||
@ -248,7 +252,7 @@ class Gstr1Report(object):
|
|||||||
tax_rate *= 2
|
tax_rate *= 2
|
||||||
|
|
||||||
rate_based_dict = self.items_based_on_tax_rate\
|
rate_based_dict = self.items_based_on_tax_rate\
|
||||||
.setdefault(parent, {}).setdefault(tax_rate, [])
|
.setdefault(parent, {}).setdefault((tax_rate, account), [])
|
||||||
if item_code not in rate_based_dict:
|
if item_code not in rate_based_dict:
|
||||||
rate_based_dict.append(item_code)
|
rate_based_dict.append(item_code)
|
||||||
except ValueError:
|
except ValueError:
|
||||||
|
@ -680,8 +680,7 @@ class StockEntry(StockController):
|
|||||||
'description' : item.description,
|
'description' : item.description,
|
||||||
'image' : item.image,
|
'image' : item.image,
|
||||||
'item_name' : item.item_name,
|
'item_name' : item.item_name,
|
||||||
'expense_account' : args.get("expense_account"),
|
'cost_center' : get_default_cost_center(args, item, item_group_defaults, brand_defaults, self.company),
|
||||||
'cost_center' : get_default_cost_center(args, item, item_group_defaults, brand_defaults),
|
|
||||||
'qty' : args.get("qty"),
|
'qty' : args.get("qty"),
|
||||||
'transfer_qty' : args.get('qty'),
|
'transfer_qty' : args.get('qty'),
|
||||||
'conversion_factor' : 1,
|
'conversion_factor' : 1,
|
||||||
@ -693,18 +692,20 @@ class StockEntry(StockController):
|
|||||||
'has_batch_no' : item.has_batch_no,
|
'has_batch_no' : item.has_batch_no,
|
||||||
'sample_quantity' : item.sample_quantity
|
'sample_quantity' : item.sample_quantity
|
||||||
})
|
})
|
||||||
for d in [["Account", "expense_account", "default_expense_account"],
|
|
||||||
["Cost Center", "cost_center", "cost_center"]]:
|
|
||||||
company = frappe.db.get_value(d[0], ret.get(d[1]), "company")
|
|
||||||
if not ret[d[1]] or (company and self.company != company):
|
|
||||||
ret[d[1]] = frappe.get_cached_value('Company', self.company, d[2]) if d[2] else None
|
|
||||||
|
|
||||||
# update uom
|
# update uom
|
||||||
if args.get("uom") and for_update:
|
if args.get("uom") and for_update:
|
||||||
ret.update(get_uom_details(args.get('item_code'), args.get('uom'), args.get('qty')))
|
ret.update(get_uom_details(args.get('item_code'), args.get('uom'), args.get('qty')))
|
||||||
|
|
||||||
if not ret["expense_account"]:
|
if self.purpose == 'Material Issue':
|
||||||
ret["expense_account"] = frappe.get_cached_value('Company', self.company, "stock_adjustment_account")
|
ret["expense_account"] = (item.get("expense_account") or
|
||||||
|
item_group_defaults.get("expense_account") or
|
||||||
|
frappe.get_cached_value('Company', self.company, "default_expense_account"))
|
||||||
|
|
||||||
|
for company_field, field in {'stock_adjustment_account': 'expense_account',
|
||||||
|
'cost_center': 'cost_center'}.items():
|
||||||
|
if not ret.get(field):
|
||||||
|
ret[field] = frappe.get_cached_value('Company', self.company, company_field)
|
||||||
|
|
||||||
args['posting_date'] = self.posting_date
|
args['posting_date'] = self.posting_date
|
||||||
args['posting_time'] = self.posting_time
|
args['posting_time'] = self.posting_time
|
||||||
@ -1084,8 +1085,7 @@ class StockEntry(StockController):
|
|||||||
return item_dict
|
return item_dict
|
||||||
|
|
||||||
def add_to_stock_entry_detail(self, item_dict, bom_no=None):
|
def add_to_stock_entry_detail(self, item_dict, bom_no=None):
|
||||||
expense_account, cost_center = frappe.db.get_values("Company", self.company, \
|
cost_center = frappe.db.get_value("Company", self.company, 'cost_center')
|
||||||
["default_expense_account", "cost_center"])[0]
|
|
||||||
|
|
||||||
for d in item_dict:
|
for d in item_dict:
|
||||||
stock_uom = item_dict[d].get("stock_uom") or frappe.db.get_value("Item", d, "stock_uom")
|
stock_uom = item_dict[d].get("stock_uom") or frappe.db.get_value("Item", d, "stock_uom")
|
||||||
@ -1099,7 +1099,7 @@ class StockEntry(StockController):
|
|||||||
se_child.uom = item_dict[d]["uom"] if item_dict[d].get("uom") else stock_uom
|
se_child.uom = item_dict[d]["uom"] if item_dict[d].get("uom") else stock_uom
|
||||||
se_child.stock_uom = stock_uom
|
se_child.stock_uom = stock_uom
|
||||||
se_child.qty = flt(item_dict[d]["qty"], se_child.precision("qty"))
|
se_child.qty = flt(item_dict[d]["qty"], se_child.precision("qty"))
|
||||||
se_child.expense_account = item_dict[d].get("expense_account") or expense_account
|
se_child.expense_account = item_dict[d].get("expense_account")
|
||||||
se_child.cost_center = item_dict[d].get("cost_center") or cost_center
|
se_child.cost_center = item_dict[d].get("cost_center") or cost_center
|
||||||
se_child.allow_alternative_item = item_dict[d].get("allow_alternative_item", 0)
|
se_child.allow_alternative_item = item_dict[d].get("allow_alternative_item", 0)
|
||||||
se_child.subcontracted_item = item_dict[d].get("main_item_code")
|
se_child.subcontracted_item = item_dict[d].get("main_item_code")
|
||||||
|
@ -423,7 +423,7 @@ def get_default_deferred_account(args, item, fieldname=None):
|
|||||||
else:
|
else:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def get_default_cost_center(args, item, item_group, brand):
|
def get_default_cost_center(args, item, item_group, brand, company=None):
|
||||||
cost_center = None
|
cost_center = None
|
||||||
if args.get('project'):
|
if args.get('project'):
|
||||||
cost_center = frappe.db.get_value("Project", args.get("project"), "cost_center", cache=True)
|
cost_center = frappe.db.get_value("Project", args.get("project"), "cost_center", cache=True)
|
||||||
@ -434,7 +434,13 @@ def get_default_cost_center(args, item, item_group, brand):
|
|||||||
else:
|
else:
|
||||||
cost_center = item.get('buying_cost_center') or item_group.get('buying_cost_center') or brand.get('buying_cost_center')
|
cost_center = item.get('buying_cost_center') or item_group.get('buying_cost_center') or brand.get('buying_cost_center')
|
||||||
|
|
||||||
return cost_center or args.get("cost_center")
|
cost_center = cost_center or args.get("cost_center")
|
||||||
|
|
||||||
|
if (company and cost_center
|
||||||
|
and frappe.get_cached_value("Cost Center", cost_center, "company") != company):
|
||||||
|
return None
|
||||||
|
|
||||||
|
return cost_center
|
||||||
|
|
||||||
def get_default_supplier(args, item, item_group, brand):
|
def get_default_supplier(args, item, item_group, brand):
|
||||||
return (item.get("default_supplier")
|
return (item.get("default_supplier")
|
||||||
|
@ -28,7 +28,7 @@
|
|||||||
|
|
||||||
{% macro null_card() %}
|
{% macro null_card() %}
|
||||||
<div class="col-sm-4 mb-4 text-left">
|
<div class="col-sm-4 mb-4 text-left">
|
||||||
<div class="h-100" style="border: 1px solid rgba(209,216,221,0.5);border-radius: 0.25rem;background-color: rgb(250, 251, 252);">
|
<div class="h-100 d-none d-sm-block" style="border: 1px solid rgba(209,216,221,0.5);border-radius: 0.25rem;background-color: rgb(250, 251, 252);">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endmacro %}
|
{% endmacro %}
|
Loading…
x
Reference in New Issue
Block a user