Merge pull request #32526 from frappe/mergify/bp/version-13/pr-32523

fix: Tax withholding related fixes (backport #32522) (backport #32523)
This commit is contained in:
Deepesh Garg
2022-10-07 18:36:57 +05:30
committed by GitHub
2 changed files with 10 additions and 3 deletions

View File

@@ -1428,6 +1428,7 @@
"fieldname": "tax_withheld_vouchers", "fieldname": "tax_withheld_vouchers",
"fieldtype": "Table", "fieldtype": "Table",
"label": "Tax Withheld Vouchers", "label": "Tax Withheld Vouchers",
"no_copy": 1,
"options": "Tax Withheld Vouchers", "options": "Tax Withheld Vouchers",
"read_only": 1 "read_only": 1
} }
@@ -1436,7 +1437,7 @@
"idx": 204, "idx": 204,
"is_submittable": 1, "is_submittable": 1,
"links": [], "links": [],
"modified": "2022-09-13 23:39:54.525037", "modified": "2022-10-07 14:19:14.214157",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "Accounts", "module": "Accounts",
"name": "Purchase Invoice", "name": "Purchase Invoice",
@@ -1500,4 +1501,4 @@
"timeline_field": "supplier", "timeline_field": "supplier",
"title_field": "title", "title_field": "title",
"track_changes": 1 "track_changes": 1
} }

View File

@@ -240,6 +240,9 @@ def get_tax_amount(party_type, parties, inv, tax_details, posting_date, pan_no=N
) )
else: else:
tax_amount = net_total * tax_details.rate / 100 if net_total > 0 else 0 tax_amount = net_total * tax_details.rate / 100 if net_total > 0 else 0
# once tds is deducted, not need to add vouchers in the invoice
voucher_wise_amount = {}
else: else:
tax_amount = get_tds_amount(ldc, parties, inv, tax_details, tax_deducted, vouchers) tax_amount = get_tds_amount(ldc, parties, inv, tax_details, tax_deducted, vouchers)
@@ -419,7 +422,10 @@ def get_tds_amount(ldc, parties, inv, tax_details, tax_deducted, vouchers):
): ):
# Get net total again as TDS is calculated on net total # Get net total again as TDS is calculated on net total
# Grand is used to just check for threshold breach # Grand is used to just check for threshold breach
net_total = frappe.db.get_value("Purchase Invoice", invoice_filters, "sum(net_total)") or 0.0 net_total = 0
if vouchers:
net_total = frappe.db.get_value("Purchase Invoice", invoice_filters, "sum(net_total)")
net_total += inv.net_total net_total += inv.net_total
supp_credit_amt = net_total - cumulative_threshold supp_credit_amt = net_total - cumulative_threshold