#9968 [BC-IN] TDS Amount Not Calculated on Initial TDS Section Selection in Bank Payment Voucher
TDS/GST/TCS taxes are now calculated on first entry of tax fields in Indian journal and voucher pages. The fix restores record saving before tax calculation and adds an event for advanced customization.
- 32files
- 32AL files
- 32objects
Pull request · merged into main (BC30) on 2026-08-12 by v-maheshsharma (community contribution) · 32 files (+197 -0), 32 AL · fix · tier official · reviewed (checked by Opus)
What changed
- TDS/GST/TCS amount now calculates correctly when tax section code or related fields are entered initially
- Restored CurrPage.SaveRecord() call in tax calculation flow across 31 India journal and voucher page extensions
- Added integration event OnBeforeUpdateTaxAmountOnGenJnlLine to codeunit Calculate Tax for extensibility
- Event allows subscribers to override save and tax calculation logic, useful for environments with complex approval workflows
- Fixes regression from earlier commit that removed the save call, which caused zero tax on first pass
- Behaviour changes for users or extensions.
AL objects touched
- Page extension 18251 “FA GL General”, INGST (IN layer): modified
- Page extension 18243 “GST Bank Payment Voucher Ext”, INGST (IN layer): modified
- Page extension 18244 “GST Bank Receipt Voucher Ext”, INGST (IN layer): modified
- Page extension 18245 “GST Cash Payment Voucher Ext”, INGST (IN layer): modified
- Page extension 18256 “GST Cash Receipt Journal Ext”, INGST (IN layer): modified
- Page extension 18252 “GST Cash Receipt Voucher Ext”, INGST (IN layer): modified
- Page extension 18246 “GST General Journal Ext”, INGST (IN layer): modified
- Page extension 18250 “GST Payment Journal Ext”, INGST (IN layer): modified
- Page extension 18248 “GST Purchase Journal Ext”, INGST (IN layer): modified
- Page extension 18249 “GST Sales Journal Ext”, INGST (IN layer): modified
- Page extension 18809 “General Journal TCS”, INTCS (IN layer): modified
- Page extension 18900 “Bank Payment Voucher”, INTCS (IN layer): modified
- Page extension 18901 “Bank Receipt Voucher”, INTCS (IN layer): modified
- Page extension 18902 “Cash Payment Voucher”, INTCS (IN layer): modified
- Page extension 18904 “Cash Receipt Journal Ext”, INTCS (IN layer): modified
- Page extension 18903 “Cash Receipt Voucher”, INTCS (IN layer): modified
- Page extension 18905 “Payment Journal TCS”, INTCS (IN layer): modified
- Page extension 18840 “Sales Journal”, INTCS (IN layer): modified
- Page extension 18667 “Cash Receipt Journal TDS”, INTDS (IN layer): modified
- Page extension 18767 “Bank Receipt Voucher”, INTDS (IN layer): modified
- Page extension 18769 “Cash Receipt Voucher”, INTDS (IN layer): modified
- Page extension 18766 “General Journal Ext”, INTDS (IN layer): modified
- Page extension 18770 “Journal Voucher”, INTDS (IN layer): modified
- Page extension 18768 “Purchase Journal TDS”, INTDS (IN layer): modified
- Page extension 18747 “Bank Payment Voucher”, INTDS (IN layer): modified
- Page extension 18748 “Cash Payment Voucher”, INTDS (IN layer): modified
- Page extension 18746 “Payment Jnl”, INTDS (IN layer): modified
- Codeunit 18543 “Calculate Tax”, INTaxBase (IN layer): modified
- Page extension 18575 “Cash Receipt Journal”, INTaxBase (IN layer): modified
- Page extension 18545 “General Journal”, INTaxBase (IN layer): modified
- Page extension 18549 “Payment Journal”, INTaxBase (IN layer): modified
- Page extension 18551 “Purchase Journal”, INTaxBase (IN layer): modified
Context
- Work items: AB#645153
- Labels: ADO: Sync, From Fork, Team: Finance
- Systems: finance, fixed-assets
Source: metadata of a merged pull request in microsoft/BCApps (bcapps): title, labels, changed paths and counts, with a summary in our words. No source text and no description beyond one short quote (D10, D61).