From 5070a9cdd51c31059888e50e2d0606bb6f4c4ae5 Mon Sep 17 00:00:00 2001 From: Sanket322 Date: Sat, 10 Aug 2024 16:23:15 +0530 Subject: [PATCH] fix: rename report to ICUtility --- .../purchase_reconciliation_tool.js | 52 +++++++++++-------- .../purchase_reconciliation_tool.json | 13 ++--- .../purchase_reconciliation_tool.py | 28 ++++------ .../__init__.py | 0 .../icutility.js} | 2 +- .../gst_india/report/icutility/icutility.json | 33 ++++++++++++ .../icutility.py} | 1 + .../purchase_reconciliation_tool.json | 35 ------------- 8 files changed, 80 insertions(+), 84 deletions(-) rename india_compliance/gst_india/report/{purchase_reconciliation_tool => icutility}/__init__.py (100%) rename india_compliance/gst_india/report/{purchase_reconciliation_tool/purchase_reconciliation_tool.js => icutility/icutility.js} (69%) create mode 100644 india_compliance/gst_india/report/icutility/icutility.json rename india_compliance/gst_india/report/{purchase_reconciliation_tool/purchase_reconciliation_tool.py => icutility/icutility.py} (94%) delete mode 100644 india_compliance/gst_india/report/purchase_reconciliation_tool/purchase_reconciliation_tool.json diff --git a/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.js b/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.js index 94964ca7e..e24bb498e 100644 --- a/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.js +++ b/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.js @@ -94,27 +94,27 @@ frappe.ui.form.on("Purchase Reconciliation Tool", { await frappe.require("purchase_reconciliation_tool.bundle.js"); frm.trigger("company"); frm.doc.__reconciliation_data = null; - set_date_range_description(frm); add_gstr2b_alert(frm); + set_date_range_description(frm); setup_filter_onchange_events(frm); frm.purchase_reconciliation_tool = new PurchaseReconciliationTool(frm); frappe.realtime.on("report_generated", message => { - frm.call("attachment_data", { + frm.call("publish_reconciliation_data", { name: message.name, }); }); frappe.realtime.on("data_reconciliation", message => { - const { data, filters, creation, report_name} = message; + const { data, filters, creation, report_name } = message; - frm.report_name = report_name - frm.is_latest_data = true + frm.report_name = report_name; + frm.is_latest_data = true; - const same_filter = filter_fields.every( + const is_filter_same = filter_fields.every( field => frm.doc[field] === filters[field] ); - if (!same_filter) return; + if (!is_filter_same) return; frappe.after_ajax(() => { frm.doc.__reconciliation_data = JSON.stringify( @@ -166,14 +166,14 @@ frappe.ui.form.on("Purchase Reconciliation Tool", { method: "frappe.core.doctype.prepared_report.prepared_report.get_reports_in_queued_state", args: { filters: filetrs_to_pass, - report_name: "Purchase Reconciliation Tool", + report_name: "ICUtility", }, }); if (message.length) { - frappe.msgprint("A report is alerady in queued"); + frappe.msgprint(__("A report is alerady in queued")); return; } - frm.call("generate_reconciliation_data", { + frm.call("get_reconciliation_data", { force_update: force_update, }); }); @@ -220,10 +220,6 @@ frappe.ui.form.on("Purchase Reconciliation Tool", { } }, - before_save(frm) { - frm.doc.__unsaved = true; - }, - async purchase_period(frm) { await fetch_date_range(frm, "purchase"); set_date_range_description(frm, "purchase"); @@ -298,7 +294,9 @@ frappe.ui.form.on("Purchase Reconciliation Tool", { setTimeout(() => { frm.dashboard.clear_headline(); }, 2000); - frm.save(); + frm.call("get_reconciliation_data", { + force_update: true, + }); }, 1000); } }); @@ -335,7 +333,6 @@ class PurchaseReconciliationTool { this.tabs[`${tab}_tab`].refresh(this[`get_${tab}_data`]()); }); - this.rendered_data = this.filtered_data; this.setup_footer(data_reconciled_on); } @@ -1127,13 +1124,22 @@ class DetailViewDialog { } } - update_report_status(){ - if(this.frm.is_latest_data == false) return; - frappe.call({ - method: "india_compliance.gst_india.doctype.purchase_reconciliation_tool.purchase_reconciliation_tool.update_report_filters", - args : { report_name : this.frm.report_name }, - }) - this.frm.is_latest_data = false + async update_report_status() { + if (this.frm.is_latest_data == false) return; + + const filters = {}; + filter_fields.forEach(field => { + filters[field] = this.frm.doc[field]; + }); + filters["is_latest_data"] = 1; + + await frappe.db.set_value( + "Prepared Report", + this.frm.report_name, + "filters", + JSON.stringify(filters) + ); + this.frm.is_latest_data = false; } _get_button_css(action) { diff --git a/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.json b/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.json index 779eb8a1c..c111f0da7 100644 --- a/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.json +++ b/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.json @@ -24,7 +24,8 @@ "not_reconciled", "no_reconciliation_data", "is_modified", - "section_break_cmfa" + "section_break_cmfa", + "__reconciliation_data" ], "fields": [ { @@ -126,6 +127,10 @@ "fieldtype": "Section Break", "hidden": 1 }, + { + "fieldname": "__reconciliation_data", + "fieldtype": "JSON" + }, { "default": "0", "fieldname": "is_modified", @@ -138,17 +143,13 @@ "fieldname": "include_ignored", "fieldtype": "Check", "label": "Include Ignored" - }, - { - "fieldname": "__reconciliation_data", - "fieldtype": "JSON" } ], "hide_toolbar": 1, "index_web_pages_for_search": 1, "issingle": 1, "links": [], - "modified": "2024-06-20 13:19:57.316043", + "modified": "2024-08-10 16:20:48.790753", "modified_by": "Administrator", "module": "GST India", "name": "Purchase Reconciliation Tool", diff --git a/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.py b/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.py index df53d6710..1b5becca0 100644 --- a/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.py +++ b/india_compliance/gst_india/doctype/purchase_reconciliation_tool/purchase_reconciliation_tool.py @@ -1,7 +1,6 @@ # Copyright (c) 2022, Resilient Tech and contributors # For license information, please see license.txt import gzip -import json import re from collections import defaultdict from typing import List @@ -66,23 +65,20 @@ def get_reco_doc(self): return {field: self.get(field) for field in fields} @frappe.whitelist() - def generate_reconciliation_data(self, force_update=False): - # reconcile purchases and inward supplies + def get_reconciliation_data(self, force_update=False): if frappe.flags.in_install or frappe.flags.in_migrate: return - frappe.enqueue(self.reconcile, queue="short", force_update=force_update) - def reconcile(self, force_update=False): doc_name = get_completed_prepared_report( - self.get_reco_doc(), frappe.session.user, "Purchase Reconciliation Tool" + self.get_reco_doc(), frappe.session.user, "ICUtility" ) if doc_name and not force_update: - self.attachment_data(doc_name) + self.publish_reconciliation_data(doc_name) else: - make_prepared_report("Purchase Reconciliation Tool", self.get_reco_doc()) + frappe.enqueue(make_prepared_report("ICUtility", self.get_reco_doc())) @frappe.whitelist() - def attachment_data(self, name): + def publish_reconciliation_data(self, name): attachments = frappe.get_all( "File", fields=["name", "file_name", "file_url", "is_private", "creation"], @@ -91,14 +87,16 @@ def attachment_data(self, name): "attached_to_doctype": "Prepared Report", }, ) + + self.reconciliation_data = None + self.file_name = None + if attachments: attached_file = frappe.get_doc("File", attachments[0].name) self.reconciliation_data = frappe.parse_json( frappe.safe_decode(gzip.decompress(attached_file.get_content())) ) self.file_name = attachments[0].name - else: - self.reconciliation_data = None frappe.publish_realtime( "data_reconciliation", @@ -455,14 +453,6 @@ def _get_link_options(self, data): return data -@frappe.whitelist() -def update_report_filters(report_name): - filters = frappe.db.get_value("Prepared Report", report_name, "filters") - filters = json.loads(filters) - filters["is_latest_data"] = 1 - frappe.db.set_value("Prepared Report", report_name, "filters", json.dumps(filters)) - - def download_gstr( company_gstins, date_range, diff --git a/india_compliance/gst_india/report/purchase_reconciliation_tool/__init__.py b/india_compliance/gst_india/report/icutility/__init__.py similarity index 100% rename from india_compliance/gst_india/report/purchase_reconciliation_tool/__init__.py rename to india_compliance/gst_india/report/icutility/__init__.py diff --git a/india_compliance/gst_india/report/purchase_reconciliation_tool/purchase_reconciliation_tool.js b/india_compliance/gst_india/report/icutility/icutility.js similarity index 69% rename from india_compliance/gst_india/report/purchase_reconciliation_tool/purchase_reconciliation_tool.js rename to india_compliance/gst_india/report/icutility/icutility.js index 3befe00bf..db3cdfd47 100644 --- a/india_compliance/gst_india/report/purchase_reconciliation_tool/purchase_reconciliation_tool.js +++ b/india_compliance/gst_india/report/icutility/icutility.js @@ -1,7 +1,7 @@ // Copyright (c) 2024, Resilient Tech and contributors // For license information, please see license.txt -frappe.query_reports["Purchase Reconciliation Tool"] = { +frappe.query_reports["ICUtility"] = { "filters": [ ] diff --git a/india_compliance/gst_india/report/icutility/icutility.json b/india_compliance/gst_india/report/icutility/icutility.json new file mode 100644 index 000000000..46c9dd5ad --- /dev/null +++ b/india_compliance/gst_india/report/icutility/icutility.json @@ -0,0 +1,33 @@ +{ + "add_total_row": 0, + "columns": [], + "creation": "2024-08-07 15:29:53.228497", + "disabled": 0, + "docstatus": 0, + "doctype": "Report", + "filters": [], + "idx": 0, + "is_standard": "Yes", + "letter_head": "", + "letterhead": null, + "modified": "2024-08-07 15:31:18.427400", + "modified_by": "Administrator", + "module": "GST India", + "name": "ICUtility", + "owner": "Administrator", + "prepared_report": 0, + "ref_doctype": "Purchase Reconciliation Tool", + "report_name": "ICUtility", + "report_type": "Script Report", + "roles": [ + { + "role": "System Manager" + }, + { + "role": "Accounts Manager" + }, + { + "role": "Accounts User" + } + ] +} \ No newline at end of file diff --git a/india_compliance/gst_india/report/purchase_reconciliation_tool/purchase_reconciliation_tool.py b/india_compliance/gst_india/report/icutility/icutility.py similarity index 94% rename from india_compliance/gst_india/report/purchase_reconciliation_tool/purchase_reconciliation_tool.py rename to india_compliance/gst_india/report/icutility/icutility.py index 2c4790820..337559472 100644 --- a/india_compliance/gst_india/report/purchase_reconciliation_tool/purchase_reconciliation_tool.py +++ b/india_compliance/gst_india/report/icutility/icutility.py @@ -10,6 +10,7 @@ def execute(filters=None): + # reconcile purchases and inward supplies _Reconciler = Reconciler(**filters) for row in ORIGINAL_VS_AMENDED: _Reconciler.reconcile(row["original"], row["amended"]) diff --git a/india_compliance/gst_india/report/purchase_reconciliation_tool/purchase_reconciliation_tool.json b/india_compliance/gst_india/report/purchase_reconciliation_tool/purchase_reconciliation_tool.json deleted file mode 100644 index 1841e8791..000000000 --- a/india_compliance/gst_india/report/purchase_reconciliation_tool/purchase_reconciliation_tool.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "add_total_row": 0, - "columns": [], - "creation": "2024-08-01 18:13:58.075869", - "disabled": 0, - "docstatus": 0, - "doctype": "Report", - "filters": [], - "idx": 0, - "is_standard": "Yes", - "json": "{\"columns\":[{\"label\":\"Item Code\",\"fieldname\":\"item_code\",\"fieldtype\":\"Link\",\"options\":\"Item\",\"width\":120,\"id\":\"item_code\",\"name\":\"Item Code\",\"editable\":false,\"compareValue\":null},{\"fieldname\":\"place_of_supply\",\"fieldtype\":\"Autocomplete\",\"label\":\"Place of Supply\",\"insert_after_index\":0,\"link_field\":\"invoice\",\"doctype\":\"Sales Invoice\",\"options\":\"01-Jammu and Kashmir\\n02-Himachal Pradesh\\n03-Punjab\\n04-Chandigarh\\n05-Uttarakhand\\n06-Haryana\\n07-Delhi\\n08-Rajasthan\\n09-Uttar Pradesh\\n10-Bihar\\n11-Sikkim\\n12-Arunachal Pradesh\\n13-Nagaland\\n14-Manipur\\n15-Mizoram\\n16-Tripura\\n17-Meghalaya\\n18-Assam\\n19-West Bengal\\n20-Jharkhand\\n21-Odisha\\n22-Chhattisgarh\\n23-Madhya Pradesh\\n24-Gujarat\\n26-Dadra and Nagar Haveli and Daman and Diu\\n27-Maharashtra\\n29-Karnataka\\n30-Goa\\n31-Lakshadweep Islands\\n32-Kerala\\n33-Tamil Nadu\\n34-Puducherry\\n35-Andaman and Nicobar Islands\\n36-Telangana\\n37-Andhra Pradesh\\n38-Ladakh\\n96-Other Countries\\n97-Other Territory\",\"width\":100,\"id\":\"place_of_supply\",\"name\":\"Place of Supply\",\"editable\":false,\"compareValue\":null},{\"fieldname\":\"shopify_order_number\",\"fieldtype\":\"Small Text\",\"label\":\"Shopify Order Number\",\"insert_after_index\":0,\"link_field\":\"invoice\",\"doctype\":\"Sales Invoice\",\"width\":100,\"id\":\"shopify_order_number\",\"name\":\"Shopify Order Number\",\"editable\":false,\"compareValue\":null},{\"fieldname\":\"irn\",\"fieldtype\":\"Data\",\"label\":\"IRN\",\"insert_after_index\":0,\"link_field\":\"invoice\",\"doctype\":\"Sales Invoice\",\"width\":100,\"id\":\"irn\",\"name\":\"IRN\",\"editable\":false,\"compareValue\":null},{\"fieldname\":\"gstin\",\"fieldtype\":\"Autocomplete\",\"label\":\"GSTIN / UIN\",\"insert_after_index\":0,\"link_field\":\"customer\",\"doctype\":\"Customer\",\"width\":100,\"id\":\"gstin\",\"name\":\"GSTIN / UIN\",\"editable\":false,\"compareValue\":null},{\"fieldname\":\"billing_address_gstin\",\"fieldtype\":\"Data\",\"label\":\"Billing Address GSTIN\",\"insert_after_index\":0,\"link_field\":\"invoice\",\"doctype\":\"Sales Invoice\",\"width\":100,\"id\":\"billing_address_gstin\",\"name\":\"Billing Address GSTIN\",\"editable\":false,\"compareValue\":null},{\"fieldname\":\"is_return\",\"fieldtype\":\"Check\",\"label\":\"Is Return (Credit Note)\",\"insert_after_index\":0,\"link_field\":\"invoice\",\"doctype\":\"Sales Invoice\",\"width\":100,\"id\":\"is_return\",\"name\":\"Is Return (Credit Note)\",\"editable\":false,\"compareValue\":null},{\"fieldname\":\"is_return\",\"fieldtype\":\"Check\",\"label\":\"Is Return (Credit Note)\",\"insert_after_index\":0,\"link_field\":\"invoice\",\"doctype\":\"Sales Invoice\",\"width\":100,\"id\":\"is_return\",\"name\":\"Is Return (Credit Note)\",\"editable\":false,\"compareValue\":null},{\"fieldname\":\"gst_hsn_code\",\"fieldtype\":\"Link\",\"label\":\"HSN/SAC\",\"insert_after_index\":0,\"link_field\":\"item_code\",\"doctype\":\"Item\",\"options\":\"GST HSN Code\",\"width\":100,\"id\":\"gst_hsn_code\",\"name\":\"HSN/SAC\",\"editable\":false,\"compareValue\":null},{\"fieldname\":\"gst_hsn_code\",\"fieldtype\":\"Link\",\"label\":\"HSN/SAC\",\"insert_after_index\":0,\"link_field\":\"item_code\",\"doctype\":\"Item\",\"options\":\"GST HSN Code\",\"width\":100,\"id\":\"gst_hsn_code\",\"name\":\"HSN/SAC\",\"editable\":false,\"compareValue\":null},{\"fieldname\":\"gst_hsn_code\",\"fieldtype\":\"Link\",\"label\":\"HSN/SAC\",\"insert_after_index\":0,\"link_field\":\"item_code\",\"doctype\":\"Item\",\"options\":\"GST HSN Code\",\"width\":100,\"id\":\"gst_hsn_code\",\"name\":\"HSN/SAC\",\"editable\":false,\"compareValue\":null},{\"label\":\"Item Name\",\"fieldname\":\"item_name\",\"fieldtype\":\"Data\",\"width\":120,\"id\":\"item_name\",\"name\":\"Item Name\",\"editable\":false,\"compareValue\":null},{\"label\":\"Item Group\",\"fieldname\":\"item_group\",\"fieldtype\":\"Link\",\"options\":\"Item Group\",\"width\":120,\"id\":\"item_group\",\"name\":\"Item Group\",\"editable\":false,\"compareValue\":null},{\"label\":\"Description\",\"fieldname\":\"description\",\"fieldtype\":\"Data\",\"width\":150,\"id\":\"description\",\"name\":\"Description\",\"editable\":false,\"compareValue\":null},{\"label\":\"Invoice\",\"fieldname\":\"invoice\",\"fieldtype\":\"Link\",\"options\":\"Sales Invoice\",\"width\":120,\"id\":\"invoice\",\"name\":\"Invoice\",\"editable\":false,\"compareValue\":null},{\"label\":\"Posting Date\",\"fieldname\":\"posting_date\",\"fieldtype\":\"Date\",\"width\":120,\"id\":\"posting_date\",\"name\":\"Posting Date\",\"editable\":false},{\"label\":\"Customer Group\",\"fieldname\":\"customer_group\",\"fieldtype\":\"Link\",\"options\":\"Customer Group\",\"width\":120,\"id\":\"customer_group\",\"name\":\"Customer Group\",\"editable\":false,\"compareValue\":null},{\"label\":\"Customer\",\"fieldname\":\"customer\",\"fieldtype\":\"Link\",\"options\":\"Customer\",\"width\":120,\"id\":\"customer\",\"name\":\"Customer\",\"editable\":false,\"compareValue\":null},{\"label\":\"Customer Name\",\"fieldname\":\"customer_name\",\"fieldtype\":\"Data\",\"width\":120,\"id\":\"customer_name\",\"name\":\"Customer Name\",\"editable\":false,\"compareValue\":null},{\"label\":\"Receivable Account\",\"fieldname\":\"debit_to\",\"fieldtype\":\"Link\",\"options\":\"Account\",\"width\":80,\"id\":\"debit_to\",\"name\":\"Receivable Account\",\"editable\":false,\"compareValue\":null},{\"label\":\"Mode Of Payment\",\"fieldname\":\"mode_of_payment\",\"fieldtype\":\"Data\",\"width\":120,\"id\":\"mode_of_payment\",\"name\":\"Mode Of Payment\",\"editable\":false,\"compareValue\":null},{\"label\":\"Territory\",\"fieldname\":\"territory\",\"fieldtype\":\"Link\",\"options\":\"Territory\",\"width\":80,\"id\":\"territory\",\"name\":\"Territory\",\"editable\":false,\"compareValue\":null},{\"label\":\"Project\",\"fieldname\":\"project\",\"fieldtype\":\"Link\",\"options\":\"Project\",\"width\":80,\"id\":\"project\",\"name\":\"Project\",\"editable\":false,\"compareValue\":null},{\"label\":\"Company\",\"fieldname\":\"company\",\"fieldtype\":\"Link\",\"options\":\"Company\",\"width\":80,\"id\":\"company\",\"name\":\"Company\",\"editable\":false,\"compareValue\":null},{\"label\":\"Sales Order\",\"fieldname\":\"sales_order\",\"fieldtype\":\"Link\",\"options\":\"Sales Order\",\"width\":100,\"id\":\"sales_order\",\"name\":\"Sales Order\",\"editable\":false,\"compareValue\":null},{\"label\":\"Delivery Note\",\"fieldname\":\"delivery_note\",\"fieldtype\":\"Link\",\"options\":\"Delivery Note\",\"width\":100,\"id\":\"delivery_note\",\"name\":\"Delivery Note\",\"editable\":false,\"compareValue\":null},{\"label\":\"Income Account\",\"fieldname\":\"income_account\",\"fieldtype\":\"Link\",\"options\":\"Account\",\"width\":100,\"id\":\"income_account\",\"name\":\"Income Account\",\"editable\":false,\"compareValue\":null},{\"label\":\"Cost Center\",\"fieldname\":\"cost_center\",\"fieldtype\":\"Link\",\"options\":\"Cost Center\",\"width\":100,\"id\":\"cost_center\",\"name\":\"Cost Center\",\"editable\":false,\"compareValue\":null},{\"label\":\"Stock Qty\",\"fieldname\":\"stock_qty\",\"fieldtype\":\"Float\",\"width\":100,\"id\":\"stock_qty\",\"name\":\"Stock Qty\",\"editable\":false,\"compareValue\":null},{\"label\":\"Stock UOM\",\"fieldname\":\"stock_uom\",\"fieldtype\":\"Link\",\"options\":\"UOM\",\"width\":100,\"id\":\"stock_uom\",\"name\":\"Stock UOM\",\"editable\":false,\"compareValue\":null},{\"label\":\"Rate\",\"fieldname\":\"rate\",\"fieldtype\":\"Float\",\"options\":\"currency\",\"width\":100,\"id\":\"rate\",\"name\":\"Rate\",\"editable\":false,\"compareValue\":null},{\"label\":\"Amount\",\"fieldname\":\"amount\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"amount\",\"name\":\"Amount\",\"editable\":false,\"compareValue\":null},{\"label\":\"CGST Rate\",\"fieldname\":\"cgst_rate\",\"fieldtype\":\"Float\",\"width\":100,\"id\":\"cgst_rate\",\"name\":\"CGST Rate\",\"editable\":false,\"compareValue\":null},{\"label\":\"CGST Amount\",\"fieldname\":\"cgst_amount\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"cgst_amount\",\"name\":\"CGST Amount\",\"editable\":false,\"compareValue\":null},{\"label\":\"GST Output Tax Payable IGST - 18% Rate\",\"fieldname\":\"gst_output_tax_payable_igst___18%_rate\",\"fieldtype\":\"Float\",\"width\":100,\"id\":\"gst_output_tax_payable_igst___18%_rate\",\"name\":\"GST Output Tax Payable IGST - 18% Rate\",\"editable\":false,\"compareValue\":null},{\"label\":\"GST Output Tax Payable IGST - 18% Amount\",\"fieldname\":\"gst_output_tax_payable_igst___18%_amount\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"gst_output_tax_payable_igst___18%_amount\",\"name\":\"GST Output Tax Payable IGST - 18% Amount\",\"editable\":false,\"compareValue\":null},{\"label\":\"IGST Rate\",\"fieldname\":\"igst_rate\",\"fieldtype\":\"Float\",\"width\":100,\"id\":\"igst_rate\",\"name\":\"IGST Rate\",\"editable\":false,\"compareValue\":null},{\"label\":\"IGST Amount\",\"fieldname\":\"igst_amount\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"igst_amount\",\"name\":\"IGST Amount\",\"editable\":false,\"compareValue\":null},{\"label\":\"Output Tax CGST @ 9.0 Rate\",\"fieldname\":\"output_tax_cgst_@_9.0_rate\",\"fieldtype\":\"Float\",\"width\":100,\"id\":\"output_tax_cgst_@_9.0_rate\",\"name\":\"Output Tax CGST @ 9.0 Rate\",\"editable\":false,\"compareValue\":null},{\"label\":\"Output Tax CGST @ 9.0 Amount\",\"fieldname\":\"output_tax_cgst_@_9.0_amount\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"output_tax_cgst_@_9.0_amount\",\"name\":\"Output Tax CGST @ 9.0 Amount\",\"editable\":false,\"compareValue\":null},{\"label\":\"Output Tax IGST Rate\",\"fieldname\":\"output_tax_igst_rate\",\"fieldtype\":\"Float\",\"width\":100,\"id\":\"output_tax_igst_rate\",\"name\":\"Output Tax IGST Rate\",\"editable\":false,\"compareValue\":null},{\"label\":\"Output Tax IGST Amount\",\"fieldname\":\"output_tax_igst_amount\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"output_tax_igst_amount\",\"name\":\"Output Tax IGST Amount\",\"editable\":false,\"compareValue\":null},{\"label\":\"Output Tax IGST Rate\",\"fieldname\":\"output_tax_igst__rate\",\"fieldtype\":\"Float\",\"width\":100,\"id\":\"output_tax_igst__rate\",\"name\":\"Output Tax IGST Rate\",\"editable\":false,\"compareValue\":null},{\"label\":\"Output Tax IGST Amount\",\"fieldname\":\"output_tax_igst__amount\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"output_tax_igst__amount\",\"name\":\"Output Tax IGST Amount\",\"editable\":false,\"compareValue\":null},{\"label\":\"Output Tax IGST @ 18.0 Rate\",\"fieldname\":\"output_tax_igst_@_18.0_rate\",\"fieldtype\":\"Float\",\"width\":100,\"id\":\"output_tax_igst_@_18.0_rate\",\"name\":\"Output Tax IGST @ 18.0 Rate\",\"editable\":false,\"compareValue\":null},{\"label\":\"Output Tax IGST @ 18.0 Amount\",\"fieldname\":\"output_tax_igst_@_18.0_amount\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"output_tax_igst_@_18.0_amount\",\"name\":\"Output Tax IGST @ 18.0 Amount\",\"editable\":false,\"compareValue\":null},{\"label\":\"Output Tax SGST @ 9.0 Rate\",\"fieldname\":\"output_tax_sgst_@_9.0_rate\",\"fieldtype\":\"Float\",\"width\":100,\"id\":\"output_tax_sgst_@_9.0_rate\",\"name\":\"Output Tax SGST @ 9.0 Rate\",\"editable\":false,\"compareValue\":null},{\"label\":\"Output Tax SGST @ 9.0 Amount\",\"fieldname\":\"output_tax_sgst_@_9.0_amount\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"output_tax_sgst_@_9.0_amount\",\"name\":\"Output Tax SGST @ 9.0 Amount\",\"editable\":false,\"compareValue\":null},{\"label\":\"SGST Rate\",\"fieldname\":\"sgst_rate\",\"fieldtype\":\"Float\",\"width\":100,\"id\":\"sgst_rate\",\"name\":\"SGST Rate\",\"editable\":false,\"compareValue\":null},{\"label\":\"SGST Amount\",\"fieldname\":\"sgst_amount\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"sgst_amount\",\"name\":\"SGST Amount\",\"editable\":false,\"compareValue\":null},{\"label\":\"Total Tax\",\"fieldname\":\"total_tax\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"total_tax\",\"name\":\"Total Tax\",\"editable\":false,\"compareValue\":null},{\"label\":\"Total Other Charges\",\"fieldname\":\"total_other_charges\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"total_other_charges\",\"name\":\"Total Other Charges\",\"editable\":false,\"compareValue\":null},{\"label\":\"Total\",\"fieldname\":\"total\",\"fieldtype\":\"Currency\",\"options\":\"currency\",\"width\":100,\"id\":\"total\",\"name\":\"Total\",\"editable\":false,\"compareValue\":null}],\"filters\":{\"from_date\":\"2023-05-01\",\"to_date\":\"2023-05-31\",\"company\":\"Madanapalle Retail Private Limited\"}}", - "letter_head": "Madanapalle Retail Private Limited", - "letterhead": null, - "modified": "2024-08-01 18:58:44.433409", - "modified_by": "Administrator", - "module": "GST India", - "name": "Purchase Reconciliation Tool", - "owner": "Administrator", - "prepared_report": 0, - "ref_doctype": "Purchase Reconciliation Tool", - "reference_report": "", - "report_name": "Purchase Reconciliation Tool", - "report_type": "Script Report", - "roles": [ - { - "role": "Accounts User" - }, - { - "role": "Accounts Manager" - }, - { - "role": "Employee Self Service" - } - ] -} \ No newline at end of file