brotherton-erpnext/docs/dev/custom_script_examples/docs.dev.custom_script.item_code.md

35 lines
903 B
Markdown
Raw Normal View History

---
{
"_label": "Generate Item Code based on Custom Logic"
}
---
Add this in the Custom Script of **Item**, so that the new Item Code is generated just before the a new Item is saved.
cur_frm.cscript.custom_validate = function(doc) {
// clear item_code (name is from item_code)
doc.item_code = "";
// first 2 characters based on item_group
switch(doc.item_group) {
case "Test A":
doc.item_code = "TA";
break;
case "Test B":
doc.item_code = "TB";
break;
default:
doc.item_code = "XX";
}
// add next 2 characters based on brand
switch(doc.brand) {
case "Brand A":
doc.item_code += "BA";
break;
case "Brand B":
doc.item_code += "BB";
break;
default:
doc.item_code += "BX";
}
}