Your office {{ scopeName }} does not match any branch in the ledger, so no figures can be
shown. Ask an administrator to align your office name with a branch.
}
@for (r of reports; track r.code) {
}
@if (activeReport === 'trial-balance') {
Closing Dr ₹{{ tbClosingDebit | number: '1.2-2' }} · Closing Cr
₹{{ tbClosingCredit | number: '1.2-2' }} —
{{ tbBalanced ? 'trial balance tallies' : 'OUT OF BALANCE — investigate before closing the period' }}
Compares the closing position as at {{ range.to }} against the position immediately before this
period began. Change the filter above to compare a different span.
Off-balance-sheet commitments outstanding as at {{ range.to }}. These are memoranda accounts and are deliberately excluded from the Trial Balance and Balance Sheet totals.
GL Code
Particulars
Group
Amount (₹)
@for (r of data.contingent; track r.code) {
{{ r.code }}
{{ r.name }}
{{ r.group }}
{{ r.amount | number: '1.2-2' }}
} @empty {
No contingent exposures outstanding for this selection.
}
Total Contingent Liabilities
{{ contingentTotal | number: '1.2-2' }}
}
@if (activeReport === 'gl-wise-dr-cr') {
Debit and credit turnover posted between {{ rangeLabel }} for {{ branchLabel }}. Every voucher
is double-entry, so the debit and credit totals below must match.
Every miscellaneous-expense voucher posted between {{ rangeLabel }} for
{{ branchLabel }} — {{ miscRows.length | number }} entries.
Date
Voucher No
Branch
GL Code
Account
Narration
Amount (₹)
@for (r of miscRows; track r.voucherNo + r.code) {
{{ r.date }}
{{ r.voucherNo }}
{{ branchName(r.branchCode) }}
{{ r.code }}
{{ r.name }}
{{ r.narration }}
{{ r.amount | number: '1.2-2' }}
} @empty {
No miscellaneous expenses posted for this selection.
}
Total Miscellaneous Expenses
{{ miscTotal | number: '1.2-2' }}
}
@if (activeReport === 'gl-average-balance') {
Average of each account's closing balance across every day in
{{ rangeLabel }} for {{ branchLabel }}. Banks work from average balances rather than a closing
snapshot for interest, CRR/SLR and profitability, because a single day's figure can be dressed up.
GL Code
Account
Group
Opening
Closing
Average Daily
Peak
Lowest
Active Days
@for (r of averageRows; track r.code) {
{{ r.code }}
{{ r.name }}
{{ r.group }}
{{ r.opening | number: '1.2-2' }}
{{ r.closing | number: '1.2-2' }}
{{ r.average | number: '1.2-2' }}
{{ r.peak | number: '1.2-2' }}
{{ r.lowest | number: '1.2-2' }}
{{ r.activeDays }}
} @empty {
No ledger activity for this period and branch.
}
TOTAL ({{ averageRows.length }} accounts)
{{ avgTotalAverage | number: '1.2-2' }}
}
@if (activeReport === 'gl-mapping') {
Which General Ledger accounts feed each RBI return line. Mappings are created on the OSS 1, OSS 2 and OSS 3
screens using Add / Remove GLs; this is the consolidated view of them, with the value each
mapping currently produces from the ledger.
Mapped return lines ({{ mappingRows.length }})
Return
Return line
Mapped GL accounts
Ledger value (₹ thousands)
@for (r of mappingRows; track r.returnCode + r.lineKey) {
{{ r.returnLabel }}
{{ r.lineKey }}
@for (c of r.codes; track c) {
{{ c }}
}
{{ r.value | number: '1.2-2' }}
} @empty {
No return lines mapped yet. Open OSS 1, 2 or 3 and use “Add / Remove GLs” to pin accounts to a line.
}
Unmapped GL accounts ({{ unmappedAccounts.length }}) — not feeding any return line
GL Code
Account
Group
@for (a of unmappedAccounts; track a.code) {
{{ a.code }}
{{ a.name }}
{{ a.group }}
} @empty {
Every GL account feeds at least one return line.
}
}
@if (activeReport === 'account-wise-balance') {
Closing balance of every account as at {{ range.to }}, broken out by branch — which branch is actually carrying each balance.
Customer balances are derived from the General Ledger — each relationship holds a share of its branch's balance
in that head — so this report always reconciles to the GL rather than drifting as a second source.
CIF
Customer
Branch
Account No
Product
Side
Balance (₹)
@for (r of clientRows; track r.cif) {
{{ r.cif }}
{{ r.name }}
{{ branchName(r.branchCode) }}
{{ r.accountNo }}
{{ r.product }}
{{ r.side }}
{{ r.balance | number: '1.2-2' }}
} @empty {
No customer relationships for this period and branch.
}
}
@if (activeReport === 'banker-head') {
Head-wise abstract for {{ rangeLabel }} — the trial balance rolled up to principal heads, with
opening, turnover and closing for each. Debit and credit turnover must agree.
Outstanding items in the sundry, suspense and bills-payable heads as at {{ range.to }}, aged from their posting date. These heads are where unreconciled entries collect, so ageing is the point of
the register.
No sundry or suspense items outstanding for this selection.
}
Total outstanding ({{ sundryRows.length }} items)
{{ sundryTotal | number: '1.2-2' }}
}
@if (activeReport === 'voucher-register') {
0">
{{ voucherRows.length | number }} voucher(s) raised in {{ rangeLabel }} for {{ branchLabel }} —
{{
unbalancedVouchers
? unbalancedVouchers + ' voucher(s) do NOT balance and must be investigated'
: 'every voucher is double-entry and balances'
}}
Date
Voucher No
Branch
Narration
Debit account(s)
Credit account(s)
Amount (₹)
Legs
@for (r of voucherRows; track r.voucherNo) {
{{ r.date }}
{{ r.voucherNo }}
{{ branchName(r.branchCode) }}
{{ r.narration }}
{{ r.debitAccounts }}
{{ r.creditAccounts }}
{{ r.amount | number: '1.2-2' }}
{{ r.legs }}
} @empty {
No vouchers raised in this period for this branch.