From c1e0930e16adb8d47d4ff8e06cd3f50e9a5702fa Mon Sep 17 00:00:00 2001 From: Sagar Vora Date: Sat, 22 May 2021 13:22:10 +0530 Subject: [PATCH 1/3] fix(Workspace): broken links for reports created with Report Builder --- frappe/public/js/frappe/utils/utils.js | 8 +++++--- frappe/public/js/frappe/widgets/links_widget.js | 12 +++++++++--- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/frappe/public/js/frappe/utils/utils.js b/frappe/public/js/frappe/utils/utils.js index fe80ac8231..484d9c65f1 100644 --- a/frappe/public/js/frappe/utils/utils.js +++ b/frappe/public/js/frappe/utils/utils.js @@ -1197,10 +1197,12 @@ Object.assign(frappe.utils, { route = ""; } } - } else if (type === "report" && item.is_query_report) { - route = "query-report/" + item.name; } else if (type === "report") { - route = frappe.router.slug(item.name) + "/view/report"; + if (item.is_query_report) { + route = "query-report/" + item.name; + } else { + route = frappe.router.slug(item.doctype) + "/view/report/" + item.name; + } } else if (type === "page") { route = item.name; } else if (type === "dashboard") { diff --git a/frappe/public/js/frappe/widgets/links_widget.js b/frappe/public/js/frappe/widgets/links_widget.js index 05280a22c8..70a6242589 100644 --- a/frappe/public/js/frappe/widgets/links_widget.js +++ b/frappe/public/js/frappe/widgets/links_widget.js @@ -61,11 +61,17 @@ export default class LinksWidget extends Widget { }; this.link_list = this.links.map(item => { - const route = frappe.utils.generate_route({ + const opts = { name: item.link_to, type: item.link_type, is_query_report: item.is_query_report - }); + } + + if (item.link_type == "Report" && !item.is_query_report) { + opts.doctype = item.dependencies; + } + + const route = frappe.utils.generate_route(opts); return $(` Date: Sat, 22 May 2021 13:31:12 +0530 Subject: [PATCH 2/3] fix: condition for is_query_report --- frappe/public/js/frappe/widgets/onboarding_widget.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/frappe/public/js/frappe/widgets/onboarding_widget.js b/frappe/public/js/frappe/widgets/onboarding_widget.js index 88cae57086..e552a7dd55 100644 --- a/frappe/public/js/frappe/widgets/onboarding_widget.js +++ b/frappe/public/js/frappe/widgets/onboarding_widget.js @@ -157,9 +157,7 @@ export default class OnboardingWidget extends Widget { let route = frappe.utils.generate_route({ name: step.reference_report, type: "report", - is_query_report: ["Query Report", "Script Report"].includes( - step.report_type - ), + is_query_report: step.report_type !== "Report Builder", doctype: step.report_reference_doctype, }); From 8513fdd34ac6de1d5d8f683be8601bef6a28925b Mon Sep 17 00:00:00 2001 From: Sagar Vora Date: Sat, 22 May 2021 13:39:19 +0530 Subject: [PATCH 3/3] fix: missing semicolon --- frappe/public/js/frappe/widgets/links_widget.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frappe/public/js/frappe/widgets/links_widget.js b/frappe/public/js/frappe/widgets/links_widget.js index 70a6242589..84758db592 100644 --- a/frappe/public/js/frappe/widgets/links_widget.js +++ b/frappe/public/js/frappe/widgets/links_widget.js @@ -65,7 +65,7 @@ export default class LinksWidget extends Widget { name: item.link_to, type: item.link_type, is_query_report: item.is_query_report - } + }; if (item.link_type == "Report" && !item.is_query_report) { opts.doctype = item.dependencies;