Skip to content

Commit

Permalink
feat: option to open Reserved Stock report from Sales Order
Browse files Browse the repository at this point in the history
  • Loading branch information
s-aga-r committed Aug 11, 2023
1 parent 3669845 commit 902f6e9
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 1 deletion.
17 changes: 16 additions & 1 deletion erpnext/selling/doctype/sales_order/sales_order.js
Original file line number Diff line number Diff line change
Expand Up @@ -69,9 +69,10 @@ frappe.ui.form.on("Sales Order", {
}
}

// Stock Reservation > Unreserve button will be only visible if the SO has reserved stock.
// Stock Reservation > Unreserve/Reserved Stock button will be only visible if the SO has reserved stock.
if (frm.doc.__onload && frm.doc.__onload.has_reserved_stock) {
frm.add_custom_button(__('Unreserve'), () => frm.events.cancel_stock_reservation_entries(frm), __('Stock Reservation'));
frm.add_custom_button(__('Reserved Stock'), () => frm.events.show_reserved_stock(frm), __('Stock Reservation'));
}
}

Expand Down Expand Up @@ -394,6 +395,20 @@ frappe.ui.form.on("Sales Order", {
dialog.fields_dict.stock_reservation_entries.grid.refresh();
dialog.show();
});
},

show_reserved_stock(frm) {
// Get the latest modified date from the items table.
var to_date = moment(new Date(Math.max(...frm.doc.items.map(e => new Date(e.modified))))).format('YYYY-MM-DD');

frappe.route_options = {
company: frm.doc.company,
from_date: frm.doc.transaction_date,
to_date: to_date,
voucher_type: frm.doc.doctype,
voucher_no: frm.doc.name,
}
frappe.set_route("query-report", "Reserved Stock");
}
});

Expand Down
14 changes: 14 additions & 0 deletions erpnext/stock/doctype/pick_list/pick_list.js
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@ frappe.ui.form.on('Pick List', {
() => frm.events.cancel_stock_reservation_entries(frm)
)
}, __('Stock Reservation'));
frm.add_custom_button(__('Reserved Stock'), () => frm.events.show_reserved_stock(frm), __('Stock Reservation'));
}
}
}
Expand Down Expand Up @@ -254,6 +255,19 @@ frappe.ui.form.on('Pick List', {
frm.reload_doc();
}
});
},
show_reserved_stock(frm) {
// Get the latest modified date from the locations table.
var to_date = moment(new Date(Math.max(...frm.doc.locations.map(e => new Date(e.modified))))).format('YYYY-MM-DD');

frappe.route_options = {
company: frm.doc.company,
from_date: moment(frm.doc.creation).format('YYYY-MM-DD'),
to_date: to_date,
voucher_type: "Sales Order",
against_pick_list: frm.doc.name,
}
frappe.set_route("query-report", "Reserved Stock");
}
});

Expand Down
3 changes: 3 additions & 0 deletions erpnext/stock/report/reserved_stock/reserved_stock.js
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,9 @@ frappe.query_reports["Reserved Stock"] = {
company: frappe.query_report.get_filter_value("company"),
},
}),
get_options: function () {
return frappe.query_report.get_filter_value("voucher_type");
},
},
{
fieldname: "against_pick_list",
Expand Down

0 comments on commit 902f6e9

Please sign in to comment.