fix: Required Changes to Support e-Waybill Generation for Material Transfer Return (#43061)

This commit is contained in:
Ninad Parikh
2024-10-22 19:28:02 +05:30
committed by GitHub
parent f8f7335412
commit 004c4e21d4
3 changed files with 23 additions and 13 deletions

View File

@@ -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(
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(
order_doctype,
order_doc.name,
@@ -1245,18 +1256,13 @@ def make_return_stock_entry_for_subcontract(
},
},
ignore_child_tables=True,
postprocess=post_process,
)
ste_doc.purpose = "Material Transfer"
if order_doctype == "Purchase Order":
ste_doc.purchase_order = order_doc.name
rm_detail_field = "po_detail"
else:
ste_doc.subcontracting_order = order_doc.name
rm_detail_field = "sco_rm_detail"
ste_doc.company = order_doc.company
ste_doc.is_return = 1
for _key, value in available_materials.items():
if not value.qty:

View File

@@ -1298,7 +1298,7 @@ erpnext.stock.StockEntry = class StockEntry extends erpnext.stock.StockControlle
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_name =
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) {
if (!bom_no) {
return;

View File

@@ -154,14 +154,14 @@
"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",
"fieldtype": "Link",
"label": "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",
"fieldtype": "Link",
"label": "Subcontracting Order",
@@ -427,13 +427,13 @@
},
{
"collapsible": 1,
"depends_on": "eval:doc.purpose === \"Send to Subcontractor\"",
"depends_on": "eval: erpnext.stock.is_subcontracting_or_return_transfer(doc)",
"fieldname": "contact_section",
"fieldtype": "Section Break",
"label": "Supplier Details"
},
{
"depends_on": "eval:doc.purpose === \"Send to Subcontractor\"",
"depends_on": "eval: erpnext.stock.is_subcontracting_or_return_transfer(doc)",
"fieldname": "supplier",
"fieldtype": "Link",
"label": "Supplier",
@@ -445,7 +445,7 @@
},
{
"bold": 1,
"depends_on": "eval:doc.purpose === \"Send to Subcontractor\"",
"depends_on": "eval: erpnext.stock.is_subcontracting_or_return_transfer(doc)",
"fieldname": "supplier_name",
"fieldtype": "Data",
"label": "Supplier Name",
@@ -455,7 +455,7 @@
"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",
"fieldtype": "Link",
"label": "Supplier Address",