From 160c9df86c136a8fb15910fc44a716368a70e940 Mon Sep 17 00:00:00 2001 From: Prateek Karamchandani Date: Fri, 18 Apr 2025 06:30:03 +0000 Subject: [PATCH] feat: Ledger Preview for Stock Entry --- erpnext/controllers/stock_controller.py | 4 +-- erpnext/public/js/utils/ledger_preview.js | 34 +++++++++++-------- .../stock/doctype/stock_entry/stock_entry.js | 2 ++ 3 files changed, 23 insertions(+), 17 deletions(-) diff --git a/erpnext/controllers/stock_controller.py b/erpnext/controllers/stock_controller.py index 5ec120c70bb..588d30a0498 100644 --- a/erpnext/controllers/stock_controller.py +++ b/erpnext/controllers/stock_controller.py @@ -1581,7 +1581,7 @@ def get_accounting_ledger_preview(doc, filters): doc.docstatus = 1 - if doc.get("update_stock") or doc.doctype in ("Purchase Receipt", "Delivery Note"): + if doc.get("update_stock") or doc.doctype in ("Purchase Receipt", "Delivery Note", "Stock Entry"): doc.update_stock_ledger() doc.make_gl_entries() @@ -1622,7 +1622,7 @@ def get_stock_ledger_preview(doc, filters): "stock_value_difference", ] - if doc.get("update_stock") or doc.doctype in ("Purchase Receipt", "Delivery Note"): + if doc.get("update_stock") or doc.doctype in ("Purchase Receipt", "Delivery Note", "Stock Entry"): doc.docstatus = 1 doc.update_stock_ledger() columns = get_sl_columns(filters) diff --git a/erpnext/public/js/utils/ledger_preview.js b/erpnext/public/js/utils/ledger_preview.js index 9e17ac0c5af..bba2803abd5 100644 --- a/erpnext/public/js/utils/ledger_preview.js +++ b/erpnext/public/js/utils/ledger_preview.js @@ -60,23 +60,27 @@ erpnext.accounts.ledger_preview = { }, make_dialog(label, fieldname, columns, data) { - let me = this; - let dialog = new frappe.ui.Dialog({ - size: "extra-large", - title: __(label), - fields: [ - { - fieldtype: "HTML", - fieldname: fieldname, - }, - ], - }); + if (data.length === 0 && fieldname === "accounting_ledger_preview_html") { + frappe.msgprint("" + __("No Impact on Accounting Ledger") + ""); + } else { + let me = this; + let dialog = new frappe.ui.Dialog({ + size: "extra-large", + title: __(label), + fields: [ + { + fieldtype: "HTML", + fieldname: fieldname, + }, + ], + }); - setTimeout(function () { - me.get_datatable(columns, data, dialog.get_field(fieldname).wrapper); - }, 200); + setTimeout(function () { + me.get_datatable(columns, data, dialog.get_field(fieldname).wrapper); + }, 200); - dialog.show(); + dialog.show(); + } }, get_datatable(columns, data, wrapper) { diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.js b/erpnext/stock/doctype/stock_entry/stock_entry.js index fcbab1793f2..223a4132ae1 100644 --- a/erpnext/stock/doctype/stock_entry/stock_entry.js +++ b/erpnext/stock/doctype/stock_entry/stock_entry.js @@ -1160,6 +1160,8 @@ erpnext.stock.StockEntry = class StockEntry extends erpnext.stock.StockControlle } erpnext.hide_company(this.frm); erpnext.utils.add_item(this.frm); + erpnext.accounts.ledger_preview.show_accounting_ledger_preview(this.frm); + erpnext.accounts.ledger_preview.show_stock_ledger_preview(this.frm); } serial_no(doc, cdt, cdn) { -- GitLab