From e536f6d13fd4e2b87240daffa9c55dab0d827d6f Mon Sep 17 00:00:00 2001 From: Frappe PR Bot Date: Thu, 19 Aug 2021 13:30:50 +0530 Subject: [PATCH] fix: assigning values to rows in sales register reports (#26546) (#27020) * fix: assigning values to rows in sales register reports * fix: check for is_internal_customer for unrealized_profit_loss_account (cherry picked from commit ecd6584c50718adb6bae1da3de0d66a2b7d3985b) Co-authored-by: Afshan <33727827+AfshanKhan@users.noreply.github.com> --- erpnext/accounts/doctype/sales_invoice/sales_invoice.json | 1 + .../item_wise_sales_register/item_wise_sales_register.py | 3 ++- erpnext/accounts/report/sales_register/sales_register.py | 5 +++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.json b/erpnext/accounts/doctype/sales_invoice/sales_invoice.json index 5f4a2a211af..f7b60f10f46 100644 --- a/erpnext/accounts/doctype/sales_invoice/sales_invoice.json +++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice.json @@ -1934,6 +1934,7 @@ "description": "Unrealized Profit / Loss account for intra-company transfers", "fieldname": "unrealized_profit_loss_account", "fieldtype": "Link", + "ignore_user_permissions": 1, "label": "Unrealized Profit / Loss Account", "options": "Account" }, diff --git a/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.py b/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.py index 2e794da8425..08065a204ef 100644 --- a/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.py +++ b/erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.py @@ -76,7 +76,7 @@ def _execute(filters=None, additional_table_columns=None, additional_query_colum 'company': d.company, 'sales_order': d.sales_order, 'delivery_note': d.delivery_note, - 'income_account': d.unrealized_profit_loss_account or d.income_account, + 'income_account': d.unrealized_profit_loss_account if d.is_internal_customer == 1 else d.income_account, 'cost_center': d.cost_center, 'stock_qty': d.stock_qty, 'stock_uom': d.stock_uom @@ -380,6 +380,7 @@ def get_items(filters, additional_query_columns): `tabSales Invoice Item`.name, `tabSales Invoice Item`.parent, `tabSales Invoice`.posting_date, `tabSales Invoice`.debit_to, `tabSales Invoice`.unrealized_profit_loss_account, + `tabSales Invoice`.is_internal_customer, `tabSales Invoice`.project, `tabSales Invoice`.customer, `tabSales Invoice`.remarks, `tabSales Invoice`.territory, `tabSales Invoice`.company, `tabSales Invoice`.base_net_total, `tabSales Invoice Item`.item_code, `tabSales Invoice Item`.description, diff --git a/erpnext/accounts/report/sales_register/sales_register.py b/erpnext/accounts/report/sales_register/sales_register.py index 909959323f7..f38bd78c0d2 100644 --- a/erpnext/accounts/report/sales_register/sales_register.py +++ b/erpnext/accounts/report/sales_register/sales_register.py @@ -84,7 +84,7 @@ def _execute(filters, additional_table_columns=None, additional_query_columns=No # Add amount in unrealized account for account in unrealized_profit_loss_accounts: row.update({ - frappe.scrub(account): flt(internal_invoice_map.get((inv.name, account))) + frappe.scrub(account+"_unrealized"): flt(internal_invoice_map.get((inv.name, account))) }) # net total @@ -258,6 +258,7 @@ def get_columns(invoice_list, additional_table_columns): unrealized_profit_loss_accounts = frappe.db.sql_list("""SELECT distinct unrealized_profit_loss_account from `tabSales Invoice` where docstatus = 1 and name in (%s) + and is_internal_customer = 1 and ifnull(unrealized_profit_loss_account, '') != '' order by unrealized_profit_loss_account""" % ', '.join(['%s']*len(invoice_list)), tuple(inv.name for inv in invoice_list)) @@ -284,7 +285,7 @@ def get_columns(invoice_list, additional_table_columns): for account in unrealized_profit_loss_accounts: unrealized_profit_loss_account_columns.append({ "label": account, - "fieldname": frappe.scrub(account), + "fieldname": frappe.scrub(account+"_unrealized"), "fieldtype": "Currency", "options": "currency", "width": 120