fix: Required Changes to Support e-Waybill Generation for Material Transfer Return (#43061)
This commit is contained in:
@@ -1235,6 +1235,17 @@ def add_items_in_ste(ste_doc, row, qty, rm_details, rm_detail_field="sco_rm_deta
|
|||||||
def make_return_stock_entry_for_subcontract(
|
def make_return_stock_entry_for_subcontract(
|
||||||
available_materials, order_doc, rm_details, order_doctype="Subcontracting Order"
|
available_materials, order_doc, rm_details, order_doctype="Subcontracting Order"
|
||||||
):
|
):
|
||||||
|
def post_process(source_doc, target_doc):
|
||||||
|
target_doc.purpose = "Material Transfer"
|
||||||
|
|
||||||
|
if source_doc.doctype == "Purchase Order":
|
||||||
|
target_doc.purchase_order = source_doc.name
|
||||||
|
else:
|
||||||
|
target_doc.subcontracting_order = source_doc.name
|
||||||
|
|
||||||
|
target_doc.company = source_doc.company
|
||||||
|
target_doc.is_return = 1
|
||||||
|
|
||||||
ste_doc = get_mapped_doc(
|
ste_doc = get_mapped_doc(
|
||||||
order_doctype,
|
order_doctype,
|
||||||
order_doc.name,
|
order_doc.name,
|
||||||
@@ -1245,18 +1256,13 @@ def make_return_stock_entry_for_subcontract(
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
ignore_child_tables=True,
|
ignore_child_tables=True,
|
||||||
|
postprocess=post_process,
|
||||||
)
|
)
|
||||||
|
|
||||||
ste_doc.purpose = "Material Transfer"
|
|
||||||
|
|
||||||
if order_doctype == "Purchase Order":
|
if order_doctype == "Purchase Order":
|
||||||
ste_doc.purchase_order = order_doc.name
|
|
||||||
rm_detail_field = "po_detail"
|
rm_detail_field = "po_detail"
|
||||||
else:
|
else:
|
||||||
ste_doc.subcontracting_order = order_doc.name
|
|
||||||
rm_detail_field = "sco_rm_detail"
|
rm_detail_field = "sco_rm_detail"
|
||||||
ste_doc.company = order_doc.company
|
|
||||||
ste_doc.is_return = 1
|
|
||||||
|
|
||||||
for _key, value in available_materials.items():
|
for _key, value in available_materials.items():
|
||||||
if not value.qty:
|
if not value.qty:
|
||||||
|
|||||||
@@ -1298,7 +1298,7 @@ erpnext.stock.StockEntry = class StockEntry extends erpnext.stock.StockControlle
|
|||||||
|
|
||||||
this.frm.cscript.toggle_enable_bom();
|
this.frm.cscript.toggle_enable_bom();
|
||||||
|
|
||||||
if (doc.purpose == "Send to Subcontractor") {
|
if (erpnext.stock.is_subcontracting_or_return_transfer(doc)) {
|
||||||
doc.customer =
|
doc.customer =
|
||||||
doc.customer_name =
|
doc.customer_name =
|
||||||
doc.customer_address =
|
doc.customer_address =
|
||||||
@@ -1364,6 +1364,10 @@ erpnext.stock.select_batch_and_serial_no = (frm, item) => {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
erpnext.stock.is_subcontracting_or_return_transfer = (doc) => {
|
||||||
|
return doc.purpose == "Send to Subcontractor" || (doc.purpose == "Material Transfer" && doc.is_return);
|
||||||
|
};
|
||||||
|
|
||||||
function attach_bom_items(bom_no) {
|
function attach_bom_items(bom_no) {
|
||||||
if (!bom_no) {
|
if (!bom_no) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -154,14 +154,14 @@
|
|||||||
"search_index": 1
|
"search_index": 1
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"depends_on": "eval:doc.purpose==\"Send to Subcontractor\"",
|
"depends_on": "eval: erpnext.stock.is_subcontracting_or_return_transfer(doc)",
|
||||||
"fieldname": "purchase_order",
|
"fieldname": "purchase_order",
|
||||||
"fieldtype": "Link",
|
"fieldtype": "Link",
|
||||||
"label": "Purchase Order",
|
"label": "Purchase Order",
|
||||||
"options": "Purchase Order"
|
"options": "Purchase Order"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"depends_on": "eval:doc.purpose==\"Send to Subcontractor\"",
|
"depends_on": "eval: erpnext.stock.is_subcontracting_or_return_transfer(doc)",
|
||||||
"fieldname": "subcontracting_order",
|
"fieldname": "subcontracting_order",
|
||||||
"fieldtype": "Link",
|
"fieldtype": "Link",
|
||||||
"label": "Subcontracting Order",
|
"label": "Subcontracting Order",
|
||||||
@@ -427,13 +427,13 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"collapsible": 1,
|
"collapsible": 1,
|
||||||
"depends_on": "eval:doc.purpose === \"Send to Subcontractor\"",
|
"depends_on": "eval: erpnext.stock.is_subcontracting_or_return_transfer(doc)",
|
||||||
"fieldname": "contact_section",
|
"fieldname": "contact_section",
|
||||||
"fieldtype": "Section Break",
|
"fieldtype": "Section Break",
|
||||||
"label": "Supplier Details"
|
"label": "Supplier Details"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"depends_on": "eval:doc.purpose === \"Send to Subcontractor\"",
|
"depends_on": "eval: erpnext.stock.is_subcontracting_or_return_transfer(doc)",
|
||||||
"fieldname": "supplier",
|
"fieldname": "supplier",
|
||||||
"fieldtype": "Link",
|
"fieldtype": "Link",
|
||||||
"label": "Supplier",
|
"label": "Supplier",
|
||||||
@@ -445,7 +445,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"bold": 1,
|
"bold": 1,
|
||||||
"depends_on": "eval:doc.purpose === \"Send to Subcontractor\"",
|
"depends_on": "eval: erpnext.stock.is_subcontracting_or_return_transfer(doc)",
|
||||||
"fieldname": "supplier_name",
|
"fieldname": "supplier_name",
|
||||||
"fieldtype": "Data",
|
"fieldtype": "Data",
|
||||||
"label": "Supplier Name",
|
"label": "Supplier Name",
|
||||||
@@ -455,7 +455,7 @@
|
|||||||
"read_only": 1
|
"read_only": 1
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"depends_on": "eval:doc.purpose === \"Send to Subcontractor\"",
|
"depends_on": "eval: erpnext.stock.is_subcontracting_or_return_transfer(doc)",
|
||||||
"fieldname": "supplier_address",
|
"fieldname": "supplier_address",
|
||||||
"fieldtype": "Link",
|
"fieldtype": "Link",
|
||||||
"label": "Supplier Address",
|
"label": "Supplier Address",
|
||||||
|
|||||||
Reference in New Issue
Block a user