Features
- Adds an Item filter to sales and purchase trends reports, applying selected items to both the report rows and their totals. (#61707)
Bug Fixes
- Keeps the linked Purchase Order currency and exchange rate on Purchase Receipts created from a Subcontracting Receipt, so foreign-currency amounts retain their order values. (#60717)
- Updates the "Stock Balance" report to reflect quantities set by Stock Reconciliation; in dimension-wise views, it applies the change to the row without dimensions instead of counting stock from other dimensions again. (#60699)
- Dimension-wise rows in the "Stock Balance" report now value stock using the current rate for each item and warehouse; item totals remain unchanged. (#60696)
- Removes an empty status value from the filters on the “Annual Purchase” and “Annual Sales” cards and the “Material Request Analysis” chart, allowing eligible submitted orders and material requests to appear. (#60668)
- The "Job Card Summary" report shows each Job Card’s actual status and respects users’ access permissions; its chart includes cards dated on the start of a reporting period and shows zero for periods with no cards. (#60676)
- Allows Stock, Sales, and Purchase users and managers with the required permissions on Stock Reservation Entry to view the "Reserved Stock" report, with results limited by their user permissions. (#60687)
- Shows negative values in Expiry (In Days) for expired batches in the "Batch Item Expiry Status" report; batches expiring today show 0, and future expiries show positive values. (#60670)
- The dimension-wise "Stock Balance" report now shows leftover stock value with no quantity in a row without dimensions, adding the row when needed. (#60741)
- The "Kanban Board" action on Project now opens a Kanban Board filtered for that project instead of choosing one by name. It skips boards the user cannot access and gives any new board an available name. (#60730)
- The "Work Orders in Progress" report now excludes closed Work Order records, even when their planned quantity is not yet complete. (#60666)
- Updates the "Completed Work Orders" report to include Work Order records marked Completed even when process loss leaves the produced quantity below the planned quantity. (#60664)
- Caps bundle quantities at zero when component stock is negative in the "Product Bundle Balance" report, while still showing the component’s actual stock quantity. (#60662)
- When documents are combined, each source’s additional discount applies only to its own items, and the combined document shows the total of those discounts. (#60724)
- Updates the "Item-wise Sales History" report to respect user permissions and apply the Item Group, Customer Group, and date filters correctly. (#60403)
- Updates dialog actions to use the values collected when submitted, preventing filled mandatory fields from sometimes being reported as missing while a selection is still being checked. (#60799)
- Uses the values already provided by the "Set as Lost" dialog in Opportunity and Quotation, preventing selected Lost Reasons from being mistakenly flagged as missing while link checks are pending. (#60796)
- Updates "Open Work Orders" and "Work Orders in Progress" so only submitted Stock Entry records count as production activity, and excludes closed, stopped, and completed Work Orders from "Open Work Orders". (#60766)
- Applies user permissions to the "Payment Ledger" report, filtering results by the companies and customers or suppliers each user can access. (#59953)
- Updates the "Lost Quotations" report to include only quotations users can access and split each quotation’s lost value across its reasons instead of repeating the full value for each one. Adds lost-value totals and displays amounts in the company’s currency. (#60420)
- Uses buying exchange rates for Supplier Quotation and selling exchange rates for POS Invoice, rather than selecting the latest rate regardless of type. (#60899)
- Prefills Rate with the item’s valuation rate in the Item dashboard’s stock addition dialog and sends zero when Rate is blank, allowing the Stock Entry form to open. (#60903)
- Restricts results in the "Sales Partner Commission Summary" report to companies users are permitted to access. (#60896)
- Corrects target achievement totals across item groups and applies the viewer’s access permissions and relevant sales team when calculating achieved sales in target variance reports. (#60986)
- Checks that users can view the referenced document and that it belongs to the same company when saving a Payment Request. (#61001)
- Updates Issue and Timesheet portal lists to show records for customers who include the signed-in user in Portal Users, matching document views. Portal document checks apply only to users linked to a Customer or Supplier; other users follow their usual access rules. (#60997)
- The customer portal’s Project list now retrieves only the project details it displays, instead of loading every field. (#61008)
- Applies the selected On This Date cutoff in the "Available Batch Report", excluding stock movements posted afterward from the reported available quantity. (#60769)
- The "Available Batch Report" excludes batches that expired before the selected date when Include Expired Batches is unchecked, while including batches with no expiry date or an expiry date matching the selected date. (#60927)
- Updates comparisons between BOM records to report repeated component and operation rows separately, without treating a simple reorder as a change. (#60774)
- Blocks disabling a Mode of Payment while a POS Profile still uses it and identifies the linked profile. (#60843)
- When advance payments are not booked in a separate party account, Unreconcile Payment updates the Sales Order’s Advance Paid amount after an allocation is removed and returns the payment to its Unallocated Amount. (#60887)
- Updates the "Itemwise Recommended Reorder Level" report to include quantities from both Delivery Note and stock-updating Sales Invoice transactions when calculating reorder recommendations. (#60925)
- Checks that users can view a Sales Order before listing its items when they create a work order. (#61040)
- Limits which documents a Payment Request can refer to and rejects a Print Format that does not match the referenced document type. Resending a payment email uses the saved request details and checks the user’s permissions to email the request and view its referenced document. (#61048)
- Checks that users have permission to view an Asset before showing its depreciation schedule. (#61062)
- When saving a POS Profile, validates that Write Off Account and Write Off Cost Center belong to the profile’s company and aren’t group entries; Write Off Account must also be a profit and loss account. (#61052)
- Updates the saved columns in the "Serial No Status" report to include serial number, status, and customer details. (#60931)
- Portal lists for Quotation, Sales Order, and Sales Invoice now return only the details shown in each row, rather than additional document information such as costs and margins. (#61014)
- Adds a validation for “On Previous Row Total” taxes that checks the referenced row as well as earlier rows, preventing sales and purchase tax templates and invoices from being saved when any of those rows is not marked Included in Print Rate. (#60885)
- The item dashboard shows stock balances only for items and warehouses the user can access, and includes stock from child warehouses when they select a warehouse group. (#60929)
- Updates the Inactive Customers report to respect user permissions and account for credit notes and closed sales orders when identifying inactive customers. (#60337)
- Fixes pending quantity and purchase request matching in the "Pending SO Items for Purchase Request" report, and applies the current user's access scope to its results. (#60541)
- Updates the "Sales Order Analysis" report to respect user permissions and handle closed orders, credit notes, and warehouse filters. (#60792)
- Stores XML extracted by Import Supplier Invoice as a private file attached to the Purchase Invoice, rather than a publicly accessible file. (#61082)
- Adds read-permission checks to serial and batch summaries, Subscription Plan rate lookups, and opening invoice tools, limiting results to vouchers, items, plans, and companies users can access. (#61073)
- Corrects customer filtering in the "Quotation Trends" report, removes measure suffixes from chart labels, and places Company first in the report filters. (#60653)
- Hides the extra grand-total row in the "Sales Analytics" report when grouped by Order Type, since that view already includes the total. (#60707)
- “BOM Search” now excludes draft and cancelled BOM records. With Search Sub Assemblies enabled, it matches both direct components and items within sub-assemblies, and lists each matching record once. (#60938)
- Preserves discounts from Pricing Rule records when item quantities change on selling transactions, keeping the discounted rate and amount in place. (#61054)
- Skips a source document’s discount when it adds no items to an existing document, so the discount does not affect the items already there. (#61297)
- Adds checks to Subcontracting BOM and Subcontracting Order records for valid BOMs, positive quantities, and details that match the linked Purchase Order. Updates subcontracted quantities, order statuses, and material reservations to account for all related orders and supplier returns. (#60489)
- Updates Project gross margin calculations so stock materials are counted when they leave inventory, including through delivery notes, rather than also being counted as purchase costs. Purchase costs now include only non-stock or drop-shipped items, less landed costs added to project receipts. (#60749)
- Converts return and credit note quantities to the Sales Order unit before calculating delivery progress, billed quantities, and quantities still to invoice. (#61286)
- When creating a Sales Invoice from a Delivery Note, quantities from related returns and credit notes are converted to the delivery item’s unit, so the invoice reflects the correct remaining quantity when units differ. (#61287)
- Displays rates in each item price’s currency in the "Item Price Stock" report instead of the default currency. (#61316)
- Updates Stock Entry transactions used for Manufacture or Repack so the largest finished good receives any rounding remainder, keeping the total output value aligned with the consumed materials and additional costs. Batch- and serial-tracked finished goods also receive the corrected value in their tracking records. (#60395)
- Calculates received, returned, and billed quantities using the unit and conversion factor on each Purchase Order item, even when a Purchase Receipt or Purchase Invoice uses different values. This updates receipt progress and quantities in "Make Purchase Invoice" and "Purchase Order Analysis", and rounds billed quantities so fully billed items are not offered again. (#61288)
- Corrects quantities when creating a Purchase Invoice from a Purchase Order: debit notes that don’t update the order no longer reduce the quantity available to bill, and invoice returns no longer count ordinary Purchase Receipt quantities as returned. (#61337)
- The "Incorrect Serial No Valuation" report now uses earlier stock movements to calculate opening quantities and values, while showing only entries within the selected period. (#60935)
- The "Sales Partner Transaction Summary" now accounts for return entries by default, and its Account for Return Entries filter lets users exclude them. (#61119)
- Updates Subcontracting Receipt processing so the related Purchase Receipt includes all receipt rows and purchase-order charges, and can be created only once from a submitted receipt; receipts also reject orders with different currencies, taxes, or discounts. It returns raw materials for rejected goods at zero value, checks material consumption across all receipt rows, calculates additional costs on the server, and allows quality inspections after submission when the setting is enabled. (#60501)
- The Bank Reconciliation Tool now lists only matching vouchers the user can read. (#61412)
- Prevents the "Delete Transactions" action from launching duplicate background tasks, so the related Transaction Deletion Record no longer stops with a timestamp error on the Company record. Updates the reset step to change the company’s sales counters directly, avoiding further timestamp conflicts. (#61423)
- Displays each item’s quantity and amount once in the "Sales Person-wise Transaction Summary" and uses the transaction unit of measure to calculate amounts for closed documents. (#61293)
- The "Sales Person Commission Summary" report includes salespeople under the selected Sales Person group and shows each document’s amount only once, preventing documents shared among multiple salespeople from being counted repeatedly in totals. (#61181)
- Limits the “Prospects Engaged But Not Converted” report to Leads, Opportunities, Quotations, and Issues the user can read, and shows only communications linked to those records. (#61046)
- Edited notes on Lead and Opportunity records now save using the same permission checks as added or deleted notes. (#60893)
- When serial/batch fields and automatic bundle creation are enabled, Delivery Note, Sales Invoice, and POS Invoice assign serial numbers from the selected batch when creating the bundle, rather than filling the row’s Serial No field. Automatically assigned serial numbers are not reused across item and packed-item rows, and POS invoices can be submitted without entering those serial numbers manually. (#61536)
- Fixes incorrect amounts and permission handling in the "Territory-wise Sales" report. (#61531)
- Checks advances on Sales Invoices and Purchase Invoices using the company currency’s decimal precision, preventing valid advances from being rejected when it uses more decimal places than the invoice currency. (#61563)
- Rounds Qty in Stock UOM before checking whole-number stock units, allowing Purchase Order rows with converted quantities to be saved. It also rounds pending quantities on open Purchase Order and Subcontracting Order rows before totaling Ordered Qty. (#61575)
- Excludes cancelled GL Entry records when comparing voucher entries during Repost Item Valuation, so they don’t trigger false mismatches or unnecessary recreation of accounting entries. (#61056)
- Checks batches selected through Serial and Batch Bundle on Subcontracting Receipt against the batches supplied for the order, and continues checking later rows when a row has no materials transferred for that order. (#61623)
- Allows "Get Items" to load a manufacturing Stock Entry when no finished goods have a target warehouse, instead of raising an error; saving then displays the existing warehouse-required message. (#61629)
- Allows returns in Delivery Note without a linked Sales Order, even when the sales order requirement is enabled; regular delivery notes still require a Sales Order. (#61621)
- Corrects batch availability in Stock Reservation Entry when no reservation entry is specified for exclusion, so available stock is not reported as zero. (#61441)
- Updates Transaction Deletion Record to process deletion batches in record-name order instead of modification-date order, reducing the risk of temporary-storage errors during large deletions. (#61439)
- Corrects payment schedule balances in company currency when a Payment Entry is canceled, and rejects zero or negative payment amounts and exchange rates. (#61350)
- Requires the default account for each Mode of Payment to be an enabled Bank, Cash, or Receivable account rather than an account group, and blocks disabled payment modes on Payment Entry, Payment Request, Sales Invoice, and POS Invoice transactions. (#61344)
- Updates the letter example in Dunning Type to show the total overdue amount and list each overdue invoice with its outstanding amount and due date. (#61347)
- Updates Sales Order delivery progress to exclude rows marked Skip Delivery and counts reservations from all warehouses against each order row’s limit. Reservations also include the full quantity of packed items picked from multiple warehouses. (#61670)
- For manually depreciated assets consumed in Asset Capitalization, calculates their value on the capitalization date instead of using the salvage value, including depreciation since the last recorded depreciation period. (#59390)
- Fills an empty Target Warehouse on Work Order as soon as BOM items are loaded, using the BOM’s Default Target Warehouse first, then the company’s Default Finished Goods Warehouse, followed by item and item group defaults; existing selections remain unchanged. (#61691)
- Allows users to search for Dimension Value entries in Accounting Dimension Filter when the selected tree-based dimension has no Is Group field, avoiding a search error. (#61703)
- Limits the options loaded by the Party filters in the "General Ledger", "Accounts Receivable", and "Accounts Payable" reports, preventing large lists from freezing the browser when users open or search the filters. (#60855)
- Keeps needed rounding adjustments when a small debit/credit difference remains, preventing a one-cent imbalance in posted entries. (#61725)
- Using "Update Items" on a Sales Order with picked stock keeps existing reservations for undelivered items, including when you change rates or increase quantities. You must unreserve stock before reducing quantities below the delivered and reserved amounts, deleting reserved items, or changing their unit or conversion factor. (#61662)
Performance Improvements
- Speeds up stock valuation for items with serial numbers during submission and reposting by looking up incoming rates in batches. (#60818)
Authors: @barredterra, @ervishnucs, @Pandiyan5273, @Shllokkk, @nabinhait, @rohitwaghchaure, @Afsalsyed, @diptanilsaha, @mihir-kandoi, @Sudharsanan11 For these release notes, we used an LLM (OpenAI gpt-6-luna) to review and summarise the code changes, along with the associated issue and PR descriptions. It may contain typical errors and inaccuracies. You can read the prompt here.
Changes with the following labels were excluded:
Changes with the following types were excluded:
Reviewers: @barredterra, @diptanilsaha, @khushi8112, @mihir-kandoi, @Sudharsanan11
AI content