mirror of
https://github.com/frappe/erpnext.git
synced 2026-06-03 20:29:09 +00:00
Merge pull request #55598 from frappe/mergify/bp/version-16-hotfix/pr-55309
fix(UX):stock settings form cleanup (backport #55309)
This commit is contained in:
@@ -13,6 +13,65 @@ frappe.ui.form.on("Stock Settings", {
|
|||||||
|
|
||||||
frm.set_query("default_warehouse", filters);
|
frm.set_query("default_warehouse", filters);
|
||||||
frm.set_query("sample_retention_warehouse", filters);
|
frm.set_query("sample_retention_warehouse", filters);
|
||||||
|
|
||||||
|
if (!frm.naming_controller) frm.naming_controller = new erpnext.NamingSeriesController(frm);
|
||||||
|
const item_display = frm.doc.item_naming_by === "Naming Series";
|
||||||
|
const serial_and_batch_naming_display =
|
||||||
|
frm.doc.set_serial_and_batch_bundle_naming_based_on_naming_series;
|
||||||
|
|
||||||
|
frm.set_df_property("naming_series_details", "hidden", !item_display);
|
||||||
|
frm.set_df_property("configure", "hidden", !item_display);
|
||||||
|
frm.set_df_property("naming_series_preview", "hidden", !serial_and_batch_naming_display);
|
||||||
|
frm.set_df_property("configure_series", "hidden", !serial_and_batch_naming_display);
|
||||||
|
|
||||||
|
if (item_display) {
|
||||||
|
frm.naming_controller.load_master_series("Item", "naming_series_details");
|
||||||
|
} else {
|
||||||
|
frm.doc.naming_series_details = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (serial_and_batch_naming_display) {
|
||||||
|
frm.naming_controller.load_master_series("Serial and Batch Bundle", "naming_series_preview");
|
||||||
|
} else {
|
||||||
|
frm.doc.naming_series_preview = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
frm.naming_controller.render_table("transaction_naming_html", get_transactions(frm));
|
||||||
|
},
|
||||||
|
|
||||||
|
item_naming_by(frm) {
|
||||||
|
const display = frm.doc.item_naming_by === "Naming Series";
|
||||||
|
frm.set_df_property("naming_series_details", "hidden", !display);
|
||||||
|
frm.set_df_property("configure", "hidden", !display);
|
||||||
|
|
||||||
|
if (display) {
|
||||||
|
frm.naming_controller.load_master_series("Item", "naming_series_details");
|
||||||
|
} else {
|
||||||
|
frm.doc.naming_series_details = "";
|
||||||
|
frm.refresh_field("naming_series_details");
|
||||||
|
}
|
||||||
|
|
||||||
|
frm.naming_controller.render_table("transaction_naming_html", get_transactions(frm));
|
||||||
|
},
|
||||||
|
|
||||||
|
set_serial_and_batch_bundle_naming_based_on_naming_series(frm) {
|
||||||
|
const display = frm.doc.set_serial_and_batch_bundle_naming_based_on_naming_series;
|
||||||
|
frm.set_df_property("naming_series_preview", "hidden", !display);
|
||||||
|
frm.set_df_property("configure_series", "hidden", !display);
|
||||||
|
if (display) {
|
||||||
|
frm.naming_controller.load_master_series("Serial and Batch Bundle", "naming_series_preview");
|
||||||
|
} else {
|
||||||
|
frm.doc.naming_series_preview = "";
|
||||||
|
frm.refresh_field("naming_series_preview");
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
configure(frm) {
|
||||||
|
configure_naming_series(frm, "Item", "naming_series_details");
|
||||||
|
},
|
||||||
|
|
||||||
|
configure_series(frm) {
|
||||||
|
configure_naming_series(frm, "Serial and Batch Bundle", "naming_series_preview");
|
||||||
},
|
},
|
||||||
|
|
||||||
enable_serial_and_batch_no_for_item(frm) {
|
enable_serial_and_batch_no_for_item(frm) {
|
||||||
@@ -84,3 +143,29 @@ frappe.ui.form.on("Stock Settings", {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
function get_transactions(frm) {
|
||||||
|
const transactions = [
|
||||||
|
{ label: __("Item"), doctype: "Item" },
|
||||||
|
{ label: __("Stock Entry"), doctype: "Stock Entry" },
|
||||||
|
{ label: __("Purchase Receipt"), doctype: "Purchase Receipt" },
|
||||||
|
{ label: __("Delivery Note"), doctype: "Delivery Note" },
|
||||||
|
{ label: __("Material Request"), doctype: "Material Request" },
|
||||||
|
{ label: __("Pick List"), doctype: "Pick List" },
|
||||||
|
{ label: __("Stock Reconciliation"), doctype: "Stock Reconciliation" },
|
||||||
|
{ label: __("Serial and Batch Bundle"), doctype: "Serial and Batch Bundle" },
|
||||||
|
];
|
||||||
|
|
||||||
|
if (frm.doc.item_naming_by !== "Naming Series") {
|
||||||
|
return transactions.filter((t) => t.doctype !== "Item");
|
||||||
|
}
|
||||||
|
|
||||||
|
return transactions;
|
||||||
|
}
|
||||||
|
|
||||||
|
function configure_naming_series(frm, doctype, fieldname) {
|
||||||
|
frm.naming_controller.show_naming_series_dialog(doctype, ({ naming_series_options }) => {
|
||||||
|
frm.doc[fieldname] = naming_series_options;
|
||||||
|
frm.refresh_field(fieldname);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|||||||
@@ -8,52 +8,57 @@
|
|||||||
"defaults_tab",
|
"defaults_tab",
|
||||||
"item_defaults_section",
|
"item_defaults_section",
|
||||||
"item_naming_by",
|
"item_naming_by",
|
||||||
"valuation_method",
|
"naming_series_details",
|
||||||
"item_group",
|
"configure",
|
||||||
"column_break_4",
|
"column_break_4",
|
||||||
"default_warehouse",
|
"item_group",
|
||||||
"sample_retention_warehouse",
|
"valuation_method",
|
||||||
"stock_uom",
|
|
||||||
"price_list_defaults_section",
|
"price_list_defaults_section",
|
||||||
"auto_insert_price_list_rate_if_missing",
|
"auto_insert_price_list_rate_if_missing",
|
||||||
"update_price_list_based_on",
|
|
||||||
"column_break_12",
|
|
||||||
"update_existing_price_list_rate",
|
"update_existing_price_list_rate",
|
||||||
|
"update_price_list_based_on",
|
||||||
"conversion_factor_section",
|
"conversion_factor_section",
|
||||||
|
"stock_uom",
|
||||||
"allow_to_edit_stock_uom_qty_for_sales",
|
"allow_to_edit_stock_uom_qty_for_sales",
|
||||||
"column_break_lznj",
|
|
||||||
"allow_to_edit_stock_uom_qty_for_purchase",
|
"allow_to_edit_stock_uom_qty_for_purchase",
|
||||||
"section_break_ylhd",
|
|
||||||
"allow_uom_with_conversion_rate_defined_in_item",
|
"allow_uom_with_conversion_rate_defined_in_item",
|
||||||
|
"warehouse_defaults_section",
|
||||||
|
"default_warehouse",
|
||||||
|
"sample_retention_warehouse",
|
||||||
"stock_validations_tab",
|
"stock_validations_tab",
|
||||||
|
"negative_stock_section",
|
||||||
|
"allow_negative_stock",
|
||||||
"section_break_9",
|
"section_break_9",
|
||||||
"over_delivery_receipt_allowance",
|
"over_delivery_receipt_allowance",
|
||||||
"mr_qty_allowance",
|
"mr_qty_allowance",
|
||||||
"over_picking_allowance",
|
"over_picking_allowance",
|
||||||
"column_break_121",
|
"column_break_121",
|
||||||
"role_allowed_to_over_deliver_receive",
|
"role_allowed_to_over_deliver_receive",
|
||||||
"allow_negative_stock",
|
"display_data_formatting_section",
|
||||||
"show_barcode_field",
|
"show_barcode_field",
|
||||||
"clean_description_html",
|
"clean_description_html",
|
||||||
|
"internal_transfer_rules_section",
|
||||||
"allow_internal_transfer_at_arms_length_price",
|
"allow_internal_transfer_at_arms_length_price",
|
||||||
"validate_material_transfer_warehouses",
|
"validate_material_transfer_warehouses",
|
||||||
"serial_and_batch_item_settings_tab",
|
"serial_and_batch_item_settings_tab",
|
||||||
"enable_serial_and_batch_no_for_item",
|
"enable_serial_and_batch_no_for_item",
|
||||||
"section_break_7",
|
"section_break_7",
|
||||||
"allow_existing_serial_no",
|
|
||||||
"do_not_use_batchwise_valuation",
|
|
||||||
"auto_create_serial_and_batch_bundle_for_outward",
|
|
||||||
"pick_serial_and_batch_based_on",
|
"pick_serial_and_batch_based_on",
|
||||||
"column_break_mhzc",
|
"allow_existing_serial_no",
|
||||||
"disable_serial_no_and_batch_selector",
|
|
||||||
"use_serial_batch_fields",
|
"use_serial_batch_fields",
|
||||||
"do_not_update_serial_batch_on_creation_of_auto_bundle",
|
"disable_serial_no_and_batch_selector",
|
||||||
"allow_negative_stock_for_batch",
|
|
||||||
"section_break_gnhq",
|
"section_break_gnhq",
|
||||||
"set_serial_and_batch_bundle_naming_based_on_naming_series",
|
"allow_negative_stock_for_batch",
|
||||||
|
"do_not_use_batchwise_valuation",
|
||||||
"use_naming_series",
|
"use_naming_series",
|
||||||
"column_break_wslv",
|
|
||||||
"naming_series_prefix",
|
"naming_series_prefix",
|
||||||
|
"auto_bundle_section",
|
||||||
|
"auto_create_serial_and_batch_bundle_for_outward",
|
||||||
|
"do_not_update_serial_batch_on_creation_of_auto_bundle",
|
||||||
|
"set_serial_and_batch_bundle_naming_based_on_naming_series",
|
||||||
|
"naming_series_preview",
|
||||||
|
"configure_series",
|
||||||
|
"column_break_pjkx",
|
||||||
"stock_reservation_tab",
|
"stock_reservation_tab",
|
||||||
"enable_stock_reservation",
|
"enable_stock_reservation",
|
||||||
"auto_reserve_stock",
|
"auto_reserve_stock",
|
||||||
@@ -64,23 +69,23 @@
|
|||||||
"auto_reserve_serial_and_batch",
|
"auto_reserve_serial_and_batch",
|
||||||
"quality_tab",
|
"quality_tab",
|
||||||
"quality_inspection_settings_section",
|
"quality_inspection_settings_section",
|
||||||
"action_if_quality_inspection_is_not_submitted",
|
|
||||||
"column_break_23",
|
|
||||||
"action_if_quality_inspection_is_rejected",
|
|
||||||
"section_break_uiau",
|
|
||||||
"allow_to_make_quality_inspection_after_purchase_or_delivery",
|
"allow_to_make_quality_inspection_after_purchase_or_delivery",
|
||||||
|
"action_if_quality_inspection_is_rejected",
|
||||||
|
"action_if_quality_inspection_is_not_submitted",
|
||||||
"stock_planning_tab",
|
"stock_planning_tab",
|
||||||
"auto_material_request",
|
"auto_material_request",
|
||||||
"auto_indent",
|
"auto_indent",
|
||||||
"column_break_27",
|
|
||||||
"reorder_email_notify",
|
"reorder_email_notify",
|
||||||
"stock_closing_tab",
|
"stock_closing_tab",
|
||||||
"control_historical_stock_transactions_section",
|
"control_historical_stock_transactions_section",
|
||||||
"stock_frozen_upto",
|
|
||||||
"stock_frozen_upto_days",
|
"stock_frozen_upto_days",
|
||||||
|
"stock_frozen_upto",
|
||||||
"column_break_26",
|
"column_break_26",
|
||||||
|
"stock_auth_role",
|
||||||
|
"section_break_kcvr",
|
||||||
"role_allowed_to_create_edit_back_dated_transactions",
|
"role_allowed_to_create_edit_back_dated_transactions",
|
||||||
"stock_auth_role"
|
"document_naming_tab",
|
||||||
|
"transaction_naming_html"
|
||||||
],
|
],
|
||||||
"fields": [
|
"fields": [
|
||||||
{
|
{
|
||||||
@@ -92,6 +97,7 @@
|
|||||||
"options": "Item Code\nNaming Series"
|
"options": "Item Code\nNaming Series"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"documentation_url": "https://docs.frappe.io/erpnext/stock-settings#21-default-item-group",
|
||||||
"fieldname": "item_group",
|
"fieldname": "item_group",
|
||||||
"fieldtype": "Link",
|
"fieldtype": "Link",
|
||||||
"in_list_view": 1,
|
"in_list_view": 1,
|
||||||
@@ -112,6 +118,7 @@
|
|||||||
"options": "Warehouse"
|
"options": "Warehouse"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"documentation_url": "https://docs.frappe.io/erpnext/retain-sample-stock",
|
||||||
"fieldname": "sample_retention_warehouse",
|
"fieldname": "sample_retention_warehouse",
|
||||||
"fieldtype": "Link",
|
"fieldtype": "Link",
|
||||||
"label": "Sample Retention Warehouse",
|
"label": "Sample Retention Warehouse",
|
||||||
@@ -138,38 +145,41 @@
|
|||||||
"default": "Stop",
|
"default": "Stop",
|
||||||
"fieldname": "action_if_quality_inspection_is_not_submitted",
|
"fieldname": "action_if_quality_inspection_is_not_submitted",
|
||||||
"fieldtype": "Select",
|
"fieldtype": "Select",
|
||||||
"label": "Action If Quality Inspection Is Not Submitted",
|
"label": "Action if Quality Inspection is not submitted",
|
||||||
"options": "Stop\nWarn"
|
"options": "Stop\nWarn"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "1",
|
"default": "1",
|
||||||
"fieldname": "show_barcode_field",
|
"fieldname": "show_barcode_field",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Show Barcode Field in Stock Transactions"
|
"label": "Show barcode field in stock transactions"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "1",
|
"default": "1",
|
||||||
"fieldname": "clean_description_html",
|
"fieldname": "clean_description_html",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Convert Item Description to Clean HTML in Transactions"
|
"label": "Convert Item description to clean HTML in transactions"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"depends_on": "enable_serial_and_batch_no_for_item",
|
"depends_on": "enable_serial_and_batch_no_for_item",
|
||||||
"fieldname": "section_break_7",
|
"fieldname": "section_break_7",
|
||||||
"fieldtype": "Section Break",
|
"fieldtype": "Section Break",
|
||||||
"label": "Serial & Batch Item Settings"
|
"label": "Serial Item settings"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
|
"documentation_url": "https://docs.frappe.io/erpnext/stock-settings#71-auto-insert-price-list-rate-if-missing",
|
||||||
"fieldname": "auto_insert_price_list_rate_if_missing",
|
"fieldname": "auto_insert_price_list_rate_if_missing",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Auto Insert Item Price If Missing"
|
"label": "Auto insert Item Price if missing"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
|
"description": "This can be enabled at specific Item level as well",
|
||||||
|
"documentation_url": "https://docs.frappe.io/erpnext/stock-settings#allow-negative-stock",
|
||||||
"fieldname": "allow_negative_stock",
|
"fieldname": "allow_negative_stock",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Allow Negative Stock"
|
"label": "Allow negative stock"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"fieldname": "auto_material_request",
|
"fieldname": "auto_material_request",
|
||||||
@@ -178,41 +188,44 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
|
"description": "This option is useful if you want to ensure a constant supply of raw materials/products and avoid shortage. A Material Request will be raised automatically when stock reached the re-order level defined in the Item form.",
|
||||||
"fieldname": "auto_indent",
|
"fieldname": "auto_indent",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Raise Material Request When Stock Reaches Re-order Level"
|
"label": "Raise Material Request when stock reaches re-order level"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
|
"description": "An email will be sent to notify the User with the role 'Purchase Manager' when an automatic Material Request is created.",
|
||||||
"fieldname": "reorder_email_notify",
|
"fieldname": "reorder_email_notify",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Notify by Email on Creation of Automatic Material Request"
|
"label": "Notify by email on creation of automatic Material Request"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"description": "No stock transactions can be created or modified before this date.",
|
"description": "No stock transactions can be created or modified before this date.",
|
||||||
"fieldname": "stock_frozen_upto",
|
"fieldname": "stock_frozen_upto",
|
||||||
"fieldtype": "Date",
|
"fieldtype": "Date",
|
||||||
"label": "Stock Frozen Up To"
|
"label": "Stock frozen up to"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"description": "Stock transactions that are older than the mentioned days cannot be modified.",
|
"description": "Stock transactions that are older than the mentioned days cannot be modified.",
|
||||||
"fieldname": "stock_frozen_upto_days",
|
"fieldname": "stock_frozen_upto_days",
|
||||||
"fieldtype": "Int",
|
"fieldtype": "Int",
|
||||||
"label": "Freeze Stocks Older Than (Days)"
|
"label": "Freeze stocks older than (days)"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"depends_on": "eval:(doc.stock_frozen_upto || doc.stock_frozen_upto_days)",
|
"depends_on": "eval:(doc.stock_frozen_upto || doc.stock_frozen_upto_days)",
|
||||||
"description": "The users with this Role are allowed to create/modify a stock transaction, even though the transaction is frozen.",
|
"description": "The users with this Role are allowed to create/modify a stock transaction, even though the transaction is frozen.",
|
||||||
"fieldname": "stock_auth_role",
|
"fieldname": "stock_auth_role",
|
||||||
"fieldtype": "Link",
|
"fieldtype": "Link",
|
||||||
"label": "Role Allowed to Edit Frozen Stock",
|
"label": "Role allowed to edit frozen stock",
|
||||||
"options": "Role"
|
"options": "Role"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
|
"description": "This will be applied if no naming series is configured in Item master",
|
||||||
"fieldname": "use_naming_series",
|
"fieldname": "use_naming_series",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Have Default Naming Series for Batch ID?"
|
"label": "Have default Naming Series for Batch ID?"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "BATCH-",
|
"default": "BATCH-",
|
||||||
@@ -225,7 +238,7 @@
|
|||||||
"description": "If mentioned, the system will allow only the users with this Role to create or modify any stock transaction earlier than the latest stock transaction for a specific item and warehouse. If set as blank, it allows all users to create/edit back-dated transactions.",
|
"description": "If mentioned, the system will allow only the users with this Role to create or modify any stock transaction earlier than the latest stock transaction for a specific item and warehouse. If set as blank, it allows all users to create/edit back-dated transactions.",
|
||||||
"fieldname": "role_allowed_to_create_edit_back_dated_transactions",
|
"fieldname": "role_allowed_to_create_edit_back_dated_transactions",
|
||||||
"fieldtype": "Link",
|
"fieldtype": "Link",
|
||||||
"label": "Role Allowed to Create/Edit Back-dated Transactions",
|
"label": "Role allowed to create/edit back-dated transactions",
|
||||||
"options": "Role"
|
"options": "Role"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -239,11 +252,13 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
|
"description": "If enabled, users must enter Serial No. / Batch data manually instead of using the selector dialog.",
|
||||||
"fieldname": "disable_serial_no_and_batch_selector",
|
"fieldname": "disable_serial_no_and_batch_selector",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Disable Serial No And Batch Selector"
|
"label": "Disable Serial No and Batch selector"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"depends_on": "eval: doc.over_delivery_receipt_allowance>0",
|
||||||
"description": "Users with this role are allowed to over deliver/receive against orders above the allowance percentage",
|
"description": "Users with this role are allowed to over deliver/receive against orders above the allowance percentage",
|
||||||
"fieldname": "role_allowed_to_over_deliver_receive",
|
"fieldname": "role_allowed_to_over_deliver_receive",
|
||||||
"fieldtype": "Link",
|
"fieldtype": "Link",
|
||||||
@@ -258,40 +273,31 @@
|
|||||||
{
|
{
|
||||||
"fieldname": "section_break_9",
|
"fieldname": "section_break_9",
|
||||||
"fieldtype": "Section Break",
|
"fieldtype": "Section Break",
|
||||||
"label": "Stock Transactions Settings"
|
"label": "Quantity Tolerance"
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "column_break_12",
|
|
||||||
"fieldtype": "Column Break"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "column_break_27",
|
|
||||||
"fieldtype": "Column Break"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"fieldname": "quality_inspection_settings_section",
|
"fieldname": "quality_inspection_settings_section",
|
||||||
"fieldtype": "Section Break",
|
"fieldtype": "Section Break"
|
||||||
"label": "Quality Inspection Settings"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "Stop",
|
"default": "Stop",
|
||||||
"fieldname": "action_if_quality_inspection_is_rejected",
|
"fieldname": "action_if_quality_inspection_is_rejected",
|
||||||
"fieldtype": "Select",
|
"fieldtype": "Select",
|
||||||
"label": "Action If Quality Inspection Is Rejected",
|
"label": "Action if Quality Inspection is rejected",
|
||||||
"options": "Stop\nWarn"
|
"options": "Stop\nWarn"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"description": "The percentage you are allowed to transfer more against the quantity ordered. For example, if you have ordered 100 units, and your Allowance is 10%, then you are allowed transfer 110 units.",
|
"description": "The percentage you are allowed to transfer more against the quantity ordered. For example, if you have ordered 100 units, and your Allowance is 10%, then you are allowed transfer 110 units.",
|
||||||
"fieldname": "mr_qty_allowance",
|
"fieldname": "mr_qty_allowance",
|
||||||
"fieldtype": "Float",
|
"fieldtype": "Float",
|
||||||
"label": "Over Transfer Allowance"
|
"label": "Over Transfer Allowance (%)"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
"depends_on": "auto_insert_price_list_rate_if_missing",
|
"depends_on": "auto_insert_price_list_rate_if_missing",
|
||||||
"fieldname": "update_existing_price_list_rate",
|
"fieldname": "update_existing_price_list_rate",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Update Existing Price List Rate"
|
"label": "Update existing Price List Rate"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"fieldname": "defaults_tab",
|
"fieldname": "defaults_tab",
|
||||||
@@ -318,10 +324,6 @@
|
|||||||
"fieldtype": "Tab Break",
|
"fieldtype": "Tab Break",
|
||||||
"label": "Serial & Batch Item"
|
"label": "Serial & Batch Item"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"fieldname": "column_break_23",
|
|
||||||
"fieldtype": "Column Break"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"fieldname": "price_list_defaults_section",
|
"fieldname": "price_list_defaults_section",
|
||||||
"fieldtype": "Section Break",
|
"fieldtype": "Section Break",
|
||||||
@@ -341,7 +343,7 @@
|
|||||||
"description": "Allows to keep aside a specific quantity of inventory for a particular order.",
|
"description": "Allows to keep aside a specific quantity of inventory for a particular order.",
|
||||||
"fieldname": "enable_stock_reservation",
|
"fieldname": "enable_stock_reservation",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Enable Stock Reservation"
|
"label": "Enable stock reservation"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"fieldname": "column_break_rx3e",
|
"fieldname": "column_break_rx3e",
|
||||||
@@ -353,11 +355,7 @@
|
|||||||
"description": "Partial stock can be reserved. For example, If you have a Sales Order of 100 units and the Available Stock is 90 units then a Stock Reservation Entry will be created for 90 units. ",
|
"description": "Partial stock can be reserved. For example, If you have a Sales Order of 100 units and the Available Stock is 90 units then a Stock Reservation Entry will be created for 90 units. ",
|
||||||
"fieldname": "allow_partial_reservation",
|
"fieldname": "allow_partial_reservation",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Allow Partial Reservation"
|
"label": "Allow partial reservation"
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "column_break_mhzc",
|
|
||||||
"fieldtype": "Column Break"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "FIFO",
|
"default": "FIFO",
|
||||||
@@ -372,7 +370,7 @@
|
|||||||
"default": "1",
|
"default": "1",
|
||||||
"fieldname": "auto_create_serial_and_batch_bundle_for_outward",
|
"fieldname": "auto_create_serial_and_batch_bundle_for_outward",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Auto Create Serial and Batch Bundle For Outward"
|
"label": "Auto create Serial and Batch Bundle for outward"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "1",
|
"default": "1",
|
||||||
@@ -380,7 +378,7 @@
|
|||||||
"description": "Serial and Batch Nos will be auto-reserved based on <b>Pick Serial / Batch Based On</b>",
|
"description": "Serial and Batch Nos will be auto-reserved based on <b>Pick Serial / Batch Based On</b>",
|
||||||
"fieldname": "auto_reserve_serial_and_batch",
|
"fieldname": "auto_reserve_serial_and_batch",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Auto Reserve Serial and Batch Nos"
|
"label": "Auto reserve Serial and Batch Nos"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"fieldname": "serial_and_batch_reservation_section",
|
"fieldname": "serial_and_batch_reservation_section",
|
||||||
@@ -390,23 +388,21 @@
|
|||||||
{
|
{
|
||||||
"fieldname": "conversion_factor_section",
|
"fieldname": "conversion_factor_section",
|
||||||
"fieldtype": "Section Break",
|
"fieldtype": "Section Break",
|
||||||
"label": "Stock UOM Quantity"
|
"label": "UOM Defaults"
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "column_break_lznj",
|
|
||||||
"fieldtype": "Column Break"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
|
"documentation_url": "https://docs.frappe.io/erpnext/stock-settings#why-to-edit-stock-qty-qty-as-per-stock-uom",
|
||||||
"fieldname": "allow_to_edit_stock_uom_qty_for_sales",
|
"fieldname": "allow_to_edit_stock_uom_qty_for_sales",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Allow to Edit Stock UOM Qty for Sales Documents"
|
"label": "Allow to edit stock UOM qty for Sales documents"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
|
"documentation_url": "https://docs.frappe.io/erpnext/stock-settings#why-to-edit-stock-qty-qty-as-per-stock-uom",
|
||||||
"fieldname": "allow_to_edit_stock_uom_qty_for_purchase",
|
"fieldname": "allow_to_edit_stock_uom_qty_for_purchase",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Allow to Edit Stock UOM Qty for Purchase Documents"
|
"label": "Allow to edit stock UOM qty for Purchase documents"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
@@ -414,41 +410,41 @@
|
|||||||
"description": "Stock will be reserved on submission of <b>Purchase Receipt</b> created against Material Request for Sales Order.",
|
"description": "Stock will be reserved on submission of <b>Purchase Receipt</b> created against Material Request for Sales Order.",
|
||||||
"fieldname": "auto_reserve_stock_for_sales_order_on_purchase",
|
"fieldname": "auto_reserve_stock_for_sales_order_on_purchase",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Auto Reserve Stock for Sales Order on Purchase"
|
"label": "Auto reserve Stock for Sales Order on Purchase"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "1",
|
"default": "1",
|
||||||
"description": "On submission of the stock transaction, system will auto create the Serial and Batch Bundle based on the Serial No / Batch fields.",
|
"description": "On submission of the stock transaction, system will auto create the Serial and Batch Bundle based on the Serial No / Batch fields.",
|
||||||
"fieldname": "use_serial_batch_fields",
|
"fieldname": "use_serial_batch_fields",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Use Serial / Batch Fields"
|
"label": "Use Serial / Batch fields"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "1",
|
"default": "1",
|
||||||
"description": "If enabled, do not update serial / batch values in the stock transactions on creation of auto Serial \n / Batch Bundle. ",
|
"description": "If enabled, do not update serial / batch values in the stock transactions on creation of auto Serial \n / Batch Bundle. ",
|
||||||
"fieldname": "do_not_update_serial_batch_on_creation_of_auto_bundle",
|
"fieldname": "do_not_update_serial_batch_on_creation_of_auto_bundle",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Do Not Update Serial / Batch on Creation of Auto Bundle"
|
"label": "Do not update Serial / Batch on creation of auto bundle"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
"description": "If enabled, the item rate won't adjust to the valuation rate during internal transfers, but accounting will still use the valuation rate. This will allow the user to specify a different rate for printing or taxation purposes.",
|
"description": "If enabled, the item rate won't adjust to the valuation rate during internal transfers, but accounting will still use the valuation rate. This will allow the user to specify a different rate for printing or taxation purposes.",
|
||||||
"fieldname": "allow_internal_transfer_at_arms_length_price",
|
"fieldname": "allow_internal_transfer_at_arms_length_price",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Allow Internal Transfers at Arm's Length Price"
|
"label": "Allow internal transfers at user-defined rate"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
"description": "If enabled, the system will use the moving average valuation method to calculate the valuation rate for the batched items and will not consider the individual batch-wise incoming rate.",
|
"description": "If enabled, the system will use the moving average valuation method to calculate the valuation rate for the batched items and will not consider the individual batch-wise incoming rate.",
|
||||||
"fieldname": "do_not_use_batchwise_valuation",
|
"fieldname": "do_not_use_batchwise_valuation",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Do Not Use Batch-wise Valuation"
|
"label": "Do not use Batch-wise Valuation"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"description": "The percentage you are allowed to pick more items in the pick list than the ordered quantity.",
|
"description": "The percentage you are allowed to pick more items in the pick list than the ordered quantity.",
|
||||||
"fieldname": "over_picking_allowance",
|
"fieldname": "over_picking_allowance",
|
||||||
"fieldtype": "Percent",
|
"fieldtype": "Percent",
|
||||||
"label": "Over Picking Allowance"
|
"label": "Over Picking Allowance (%)"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "1",
|
"default": "1",
|
||||||
@@ -461,7 +457,7 @@
|
|||||||
"description": "Upon submission of the Sales Order, Work Order, or Production Plan, the system will automatically reserve the stock.",
|
"description": "Upon submission of the Sales Order, Work Order, or Production Plan, the system will automatically reserve the stock.",
|
||||||
"fieldname": "auto_reserve_stock",
|
"fieldname": "auto_reserve_stock",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Auto Reserve Stock"
|
"label": "Auto reserve stock"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
@@ -472,44 +468,33 @@
|
|||||||
{
|
{
|
||||||
"depends_on": "enable_serial_and_batch_no_for_item",
|
"depends_on": "enable_serial_and_batch_no_for_item",
|
||||||
"fieldname": "section_break_gnhq",
|
"fieldname": "section_break_gnhq",
|
||||||
"fieldtype": "Section Break"
|
"fieldtype": "Section Break",
|
||||||
},
|
"label": "Batch Item settings"
|
||||||
{
|
|
||||||
"fieldname": "column_break_wslv",
|
|
||||||
"fieldtype": "Column Break"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "section_break_ylhd",
|
|
||||||
"fieldtype": "Section Break"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
"description": "If enabled, the system will allow selecting UOMs in sales and purchase transactions only if the conversion rate is set in the item master.",
|
"description": "If enabled, the system will allow selecting UOMs in sales and purchase transactions only if the conversion rate is set in the item master.",
|
||||||
"fieldname": "allow_uom_with_conversion_rate_defined_in_item",
|
"fieldname": "allow_uom_with_conversion_rate_defined_in_item",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Allow UOM with Conversion Rate Defined in Item"
|
"label": "Allow UOM with conversion rate defined in Item"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"fieldname": "quality_tab",
|
"fieldname": "quality_tab",
|
||||||
"fieldtype": "Tab Break",
|
"fieldtype": "Tab Break",
|
||||||
"label": "Quality"
|
"label": "Quality"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"fieldname": "section_break_uiau",
|
|
||||||
"fieldtype": "Section Break"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
"fieldname": "allow_to_make_quality_inspection_after_purchase_or_delivery",
|
"fieldname": "allow_to_make_quality_inspection_after_purchase_or_delivery",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Allow to Make Quality Inspection after Purchase / Delivery"
|
"label": "Allow to make Quality Inspection after Purchase / Delivery"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "Rate",
|
"default": "Rate",
|
||||||
"depends_on": "eval: doc.auto_insert_price_list_rate_if_missing",
|
"depends_on": "eval: doc.auto_insert_price_list_rate_if_missing",
|
||||||
"fieldname": "update_price_list_based_on",
|
"fieldname": "update_price_list_based_on",
|
||||||
"fieldtype": "Select",
|
"fieldtype": "Select",
|
||||||
"label": "Update Price List Based On",
|
"label": "Update Price List based on",
|
||||||
"mandatory_depends_on": "eval: doc.auto_insert_price_list_rate_if_missing",
|
"mandatory_depends_on": "eval: doc.auto_insert_price_list_rate_if_missing",
|
||||||
"options": "Rate\nPrice List Rate"
|
"options": "Rate\nPrice List Rate"
|
||||||
},
|
},
|
||||||
@@ -518,20 +503,90 @@
|
|||||||
"description": "If enabled, the source and target warehouse in the Material Transfer Stock Entry must be different else an error will be thrown. If inventory dimensions are present, same source and target warehouse can be allowed but atleast any one of the inventory dimension fields must be different.",
|
"description": "If enabled, the source and target warehouse in the Material Transfer Stock Entry must be different else an error will be thrown. If inventory dimensions are present, same source and target warehouse can be allowed but atleast any one of the inventory dimension fields must be different.",
|
||||||
"fieldname": "validate_material_transfer_warehouses",
|
"fieldname": "validate_material_transfer_warehouses",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Validate Material Transfer Warehouses"
|
"label": "Validate Material Transfer warehouses"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
"description": "If enabled, the system will allow negative stock entries for the batch. But, this may lead to incorrect valuation rates, so it is recommended to avoid using this option. The system will permit negative stock only when it is caused by backdated entries and will validate and block negative stock in all other cases.",
|
"description": "If enabled, the system will allow negative stock entries for the batch. But, this may lead to incorrect valuation rates, so it is recommended to avoid using this option. The system will permit negative stock only when it is caused by backdated entries and will validate and block negative stock in all other cases.",
|
||||||
"fieldname": "allow_negative_stock_for_batch",
|
"fieldname": "allow_negative_stock_for_batch",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Allow Negative Stock for Batch"
|
"label": "Allow negative stock for Batch"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
"fieldname": "enable_serial_and_batch_no_for_item",
|
"fieldname": "enable_serial_and_batch_no_for_item",
|
||||||
"fieldtype": "Check",
|
"fieldtype": "Check",
|
||||||
"label": "Activate Serial / Batch No for Item"
|
"label": "Activate Serial / Batch No for Item"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "warehouse_defaults_section",
|
||||||
|
"fieldtype": "Section Break",
|
||||||
|
"label": "Warehouse Defaults"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "internal_transfer_rules_section",
|
||||||
|
"fieldtype": "Section Break",
|
||||||
|
"label": "Internal Transfer Rules"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "display_data_formatting_section",
|
||||||
|
"fieldtype": "Section Break",
|
||||||
|
"label": "Display & Data Formatting"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "naming_series_details",
|
||||||
|
"fieldtype": "Small Text",
|
||||||
|
"hidden": 1,
|
||||||
|
"is_virtual": 1,
|
||||||
|
"label": "Naming Series options",
|
||||||
|
"read_only": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "document_naming_tab",
|
||||||
|
"fieldtype": "Tab Break",
|
||||||
|
"label": "Document Naming"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "transaction_naming_html",
|
||||||
|
"fieldtype": "HTML"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "configure",
|
||||||
|
"fieldtype": "Button",
|
||||||
|
"hidden": 1,
|
||||||
|
"label": "Configure Series"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "negative_stock_section",
|
||||||
|
"fieldtype": "Section Break",
|
||||||
|
"label": "Negative Stock"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "auto_bundle_section",
|
||||||
|
"fieldtype": "Section Break",
|
||||||
|
"label": "Serial and Batch Bundle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "naming_series_preview",
|
||||||
|
"fieldtype": "Small Text",
|
||||||
|
"hidden": 1,
|
||||||
|
"is_virtual": 1,
|
||||||
|
"label": "Naming Series options",
|
||||||
|
"read_only": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "configure_series",
|
||||||
|
"fieldtype": "Button",
|
||||||
|
"hidden": 1,
|
||||||
|
"label": "Configure Series"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "column_break_pjkx",
|
||||||
|
"fieldtype": "Column Break"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "section_break_kcvr",
|
||||||
|
"fieldtype": "Section Break"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"icon": "icon-cog",
|
"icon": "icon-cog",
|
||||||
@@ -539,7 +594,7 @@
|
|||||||
"index_web_pages_for_search": 1,
|
"index_web_pages_for_search": 1,
|
||||||
"issingle": 1,
|
"issingle": 1,
|
||||||
"links": [],
|
"links": [],
|
||||||
"modified": "2026-04-14 13:51:49.545114",
|
"modified": "2026-06-03 12:38:02.202183",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Stock",
|
"module": "Stock",
|
||||||
"name": "Stock Settings",
|
"name": "Stock Settings",
|
||||||
|
|||||||
Reference in New Issue
Block a user