Item Group delete permission, Serial No status and item code should be non-editable. Fixes #1564

This commit is contained in:
Anand Doshi 2014-05-04 11:50:10 +05:30
parent 24a3ec57e3
commit 4ab5382d3f
5 changed files with 22 additions and 10 deletions

View File

@ -3,7 +3,7 @@
"allow_import": 1,
"allow_rename": 1,
"autoname": "field:item_group_name",
"creation": "2013-03-28 10:35:29.000000",
"creation": "2013-03-28 10:35:29",
"description": "Item Classification",
"docstatus": 0,
"doctype": "DocType",
@ -12,6 +12,7 @@
{
"fieldname": "item_group_name",
"fieldtype": "Data",
"in_list_view": 1,
"label": "Item Group Name",
"no_copy": 0,
"oldfieldname": "item_group_name",
@ -23,6 +24,7 @@
{
"fieldname": "page_name",
"fieldtype": "Data",
"in_list_view": 1,
"label": "Page Name",
"permlevel": 0,
"read_only": 1
@ -30,6 +32,7 @@
{
"fieldname": "cb0",
"fieldtype": "Column Break",
"in_list_view": 1,
"permlevel": 0
},
{
@ -37,6 +40,7 @@
"fieldname": "parent_item_group",
"fieldtype": "Link",
"ignore_restrictions": 1,
"in_list_view": 1,
"label": "Parent Item Group",
"no_copy": 0,
"oldfieldname": "parent_item_group",
@ -50,6 +54,7 @@
"description": "Only leaf nodes are allowed in transaction",
"fieldname": "is_group",
"fieldtype": "Select",
"in_list_view": 1,
"label": "Has Child Node",
"no_copy": 0,
"oldfieldname": "is_group",
@ -157,7 +162,7 @@
"in_create": 1,
"issingle": 0,
"max_attachments": 3,
"modified": "2014-02-20 18:29:57.000000",
"modified": "2014-05-04 00:06:26.075492",
"modified_by": "Administrator",
"module": "Setup",
"name": "Item Group",
@ -194,7 +199,7 @@
{
"cancel": 0,
"create": 1,
"delete": 0,
"delete": 1,
"email": 1,
"permlevel": 0,
"print": 1,

View File

@ -184,6 +184,8 @@ cur_frm.cscript.copy_from_item_group = function(doc) {
cur_frm.cscript.image = function() {
refresh_field("image_view");
if(!cur_frm.doc.image) return;
if(!cur_frm.doc.description_html)
cur_frm.cscript.add_image(cur_frm.doc);
else {

View File

@ -13,4 +13,8 @@ cur_frm.cscript.onload = function() {
cur_frm.set_query("item_code", function() {
return erpnext.queries.item({"is_stock_item": "Yes", "has_serial_no": "Yes"})
});
}
};
frappe.ui.form.on("Serial No", "refresh", function(frm) {
frm.toggle_enable("item_code", frm.doc.__islocal);
});

View File

@ -3,7 +3,7 @@
"allow_import": 1,
"allow_rename": 1,
"autoname": "field:serial_no",
"creation": "2013-05-16 10:59:15.000000",
"creation": "2013-05-16 10:59:15",
"description": "Distinct unit of an Item",
"docstatus": 0,
"doctype": "DocType",
@ -24,7 +24,7 @@
"read_only": 0
},
{
"default": "In Store",
"default": "Not Available",
"description": "Only Serial Nos with status \"Available\" can be delivered.",
"fieldname": "status",
"fieldtype": "Select",
@ -34,9 +34,9 @@
"no_copy": 1,
"oldfieldname": "status",
"oldfieldtype": "Select",
"options": "\nAvailable\nNot Available\nDelivered\nPurchase Returned\nSales Returned",
"options": "Not Available\nAvailable\nDelivered\nPurchase Returned\nSales Returned",
"permlevel": 0,
"read_only": 0,
"read_only": 1,
"reqd": 1,
"search_index": 1
},
@ -418,7 +418,7 @@
"icon": "icon-barcode",
"idx": 1,
"in_create": 0,
"modified": "2014-01-20 17:49:26.000000",
"modified": "2014-05-04 00:47:20.443476",
"modified_by": "Administrator",
"module": "Stock",
"name": "Serial No",

View File

@ -262,7 +262,7 @@ def update_serial_nos(sle, item_det):
sr = frappe.get_doc("Serial No", serial_no)
sr.via_stock_ledger = True
sr.warehouse = sle.warehouse if sle.actual_qty > 0 else None
sr.save()
sr.save(ignore_permissions=True)
elif sle.actual_qty > 0:
make_serial_no(serial_no, sle)
@ -277,6 +277,7 @@ def get_serial_nos(serial_no):
def make_serial_no(serial_no, sle):
sr = frappe.new_doc("Serial No")
sr.ignore_permissions = True
sr.serial_no = serial_no
sr.item_code = sle.item_code
sr.warehouse = None