TABLE OF CONTENTS
- New Enhancement List
- E-Invoice Malaysia Module Enhancement
- Inventory Module Enhancement
- Supplier Module Enhancement
- Customer Module Enhancement
- POS Management Module Enhancement
- Promotion Module Enhancement
- Meter Reading Enhancement
- System Usability Enhancement
- Reports Enhancement
- SST Malaysia Enhancement
- Subsidiary Company Enhancement
- Online Store Enhancement
- Smart Updater 2026.2 Enhancement
- Closed Issues List
- E-Invoice Malaysia Module Fixes
- Costing Mechanism Fixes
- Supplier Module Fixes
- Customer Module Fixes
- POS Management Module Fixes
- Inventory Module Fixes
- Reports Fixes
- Miscellaneous Fixes
- DynaMod Client Socket Fixes
- DynaMod Process Manager Fixes
- SST Malaysia Fixes
- Email Fixes
- Promotion Fixes
- Online Store Module Fixes
New Enhancement List
E-Invoice Malaysia Module Enhancement
E-Invoice Setup Related Enhancement
- Set Tourism Tax Registration Number as compulsory field when setup Company & Location. Can set as NA if Not Applicable.
- Added bulk submission for e-invoice in e-invoice dashboard.
- Added consolidate generate process run in process manager by scheduled it.
- Added update Einvoice Date when generate consolidate.
- Added IsDocumentConsistsStockForceEinvoice in E-invoice Dashboard.
- Added IsEnableSVDP in company default settings.
E-Invoice Transactions Related Enhancement
- Enhance the E-Invoice Document save validation to alert the user when e-invoice date is previous date than current. (Ticket: 171154)
- Transaction document E-Invoice Item Tax Type ID will follow Tax Code Setup. (Ticket: 170291)
Enhance the Consolidate E-Invoice delete posting script to handling Credit Note and Debit Note when update original Is Consolidated flag.
- Exclude overpaid amount when calculate e-invoice prepayment for Cash Sales.
- Enhance the Consolidate E-Invoice by Range Generate script to handle the document number end with non-numeric to prevent error.
- Enhance Einvoice send multiple email via process manager. (Ticket: 171977)
- Enhance Level-1 Checking
- Check Master and Detail Amount (Ticket: 173216).
- Error Message : "The master and detail amounts do not match. Please check."
- Check Master and Detail Amount (Ticket: 173216).
- Enhance the transaction detail where the AcEInvoiceItemTaxTypeID will first determine by AcTaxID. (Ticket: 174831)
- Allow to maintain the E-Invoice Item Classification Code for Self-Billed E-Invoice Supplier at Supplier Master Setup and transaction will default follow the classification code maintain in supplier master if selected supplier is Self-Billed E-Invooce Supplier.
- Exclude customer's documents from consolidation when 'Force submit as Individual E-Invoice' is ticked.
- Added Excluded Documents tab and prompt message in Generate Consolidated Invoice Simulate to show the documents not included in the consolidation and the reason.
- Added for user to submit SVDP.
- Transaction document E-Invoice Item Tax Type ID will follow Tax Code Setup for non-stock.
E-Invoice Report Related Enhancement
Inventory Module Enhancement
- Stock Gross Profit for location change to calculate by location cost instead company cost.
- Fixed location cost profit margin percentage able show negative amount.
- Included Stock Price 1-5 column into transaction stock popup screen, column visibility is depend on user show price access right. (Ticket: 172291)
- Enable Void Item feature for Stock Transit Document.
- Added Location Stock Remark editable per location synced to POS and shown on Cash Sale Delivery Order Customer Invoice and Smart Inspector.
- Added serial number support for BOM stock in stock assembly.
- Added FEFO and LEFO for Batch Sell Method.
- Added checking for exist batch transaction when untick the batch control stock. (ticket: 177487)
- Stock transfer and stock transit report added stock department ID and Description column.
- Added "Change Cost" access right for stock maintenance. (Ticket: 179463)
- Large Data Handling – Stock Month End Closing Process and Regenerate Stock Cost now run much faster on large databases, and the month-end close runs in the background on the server with checkpoint, resume and cancel.
- Regenerate Stock Cost (Weighted Average) slowed down sharply as a stock’s transaction history grew, because every ledger row was looked up one at a time against an unindexed working table. The working table is now indexed and rows are processed in a fixed order. Measured on a large production database (372 GB, 9,163 stocks, Weighted Average): the full Regenerate Stock Cost step takes about 55 minutes instead of about 27 hours, and the deepest single stock about 17 seconds instead of about 39 minutes.
- Closing Stock Value by Location and by Company recalculated the company-wide as-at cost once for every location (67 times on the test database) although it does not depend on location. It is now calculated once per period, with supporting indexes: about 4 minutes instead of about 60 minutes. The whole month-end close now completes in about 1 hour instead of about 27 hours.
- The Most Recent, Fixed Cost and Manual Cost engines were reviewed on production databases and found to be already efficient, so they are deliberately unchanged and produce exactly the same figures as before. Databases on those methods still gain from the faster Closing Stock Value steps and the background flow below.
- Start the close and close the screen – the run continues on the server (SQL Server Agent; DynaMod Process Manager on SQL Express; otherwise in-process). Re-open the screen at any time to re-attach and follow the live progress log, or request a cancel. Every step, period and location is checkpointed, so an interrupted run resumes where it stopped instead of starting over. Month-end and the Process Manager deferred cost recalculation no longer block each other on the same stock.
- A pre-flight checklist runs before Start and blocks the close when there is a deferred cost-recalculation backlog, a stuck recalculation, an out-of-sequence close, a missing period or a stock with no cost, and warns on re-close, negative balances and open stock transit. Each check comes with plain-language guidance on how to resolve it; backlog checks are cleared automatically when Regenerate Stock Cost is part of the close.
- New optional "Regenerate changed stocks only" setting (off by default) skips stocks with no new transactions since the last recalculation. Best for low-activity months – about 23% faster on the Regenerate Stock Cost step in testing, same figures.
- Stock costs and closing figures are unchanged – the new process was compared row by row against the original method on production data: identical stock cost for every stock, and identical Closing Stock Value across all 134,272 detail, location and company rows.
- Added Stock Transaction Type Control screen – block a stock item from being used on Sales, Purchase or Inventory documents, by unit of measure and by location, so a discontinued item can keep selling down its remaining balance while reordering stops.
- Stock Activity Insight Enquiry added Location filter and included Open Status GRNA as Location count.
Supplier Module Enhancement
Enhance SiteGiantERP with a location setting to filter purchase orders. Must use the most recent versions of Process Manager (2026.1 0001) and Server Socket (2026.1 0001).
Added Sales Trend Calculation PO Method.
Prompt alert message if the selected supplier has advance payment at Supplier Payment Voucher screen, and redirect to the Settle Credit or Advance screen.
Centralized POA grid detail for user to choose stock that they want to reorder.
- Added user access control to 'Edit Cost' for Good Receive Note Approval.
- Added Good Receive Note Approval Number and Good Receive Note Approval Status for Good Receive Record.
- Added user access control to 'Allow import from GRR only' for Good Receive Note Approval.
- Added user access control to 'Allow import from GRNA only' and 'Disallow import from GRR' for Good Receive Note.
- Added highlight function in Good Receive Note Approval and Good Receive Note which is not exist in the source document.
- Added Goods Return Advise.
- Added Goods Return Advise (GRA) outstanding alert when selecting supplier in Purchase Order.
- Added delivery date and expiry date for details in Purchase Order.
- Enhance the control for Good Receive Note Advise document, where user restricted to edit the price if GRNA is imported by GRR associate with Purchase Order, for those not with PO will follow the EDIT COST access right.
- Added Supplier Stock Department Control.
- Added DocumentApprovalRemark for PO.
- Added column Balance Quantity for selected item detail in document Purchase Order and Purchase Order Approval.
- Added GRNA access right (edit cost - import from GRR with PO).
- Centralized POA import screen to allow user to add items and quantity themselves.
- Add GRR Variance in GRNA and GRN screen.
- Added Purchase Plan Supplier 1 -5 Unit Price column field into preview report.
- Added account selection by Account Description (Item) at payment voucher and supplier adjustment screens.
- Added date tab for Centralized Purchase Order Approval generate screen.
- Extended Reference field from 20 to 50 characters for all Supplier transaction and approval documents, consistent with Customer documents.
- Added date range option to Reload Detail in Payment Voucher to load outstanding documents by document date, with the option to append or replace existing records in the grid.
- Added and editable column unit price and discount for Centralized Purchase Order Approval generate screen.
Customer Module Enhancement
- Enhance the customer invoice posting so that only will create SVT Transaction after payment. (Ticket: 170816)
- Prompt alert message if the selected customer has advance payment at Customer Receipt screen, and redirect to the Settle Credit or Advance screen.
- Enhance customer invoice and customer delivery order default format by add stockbatchdetail dataset. (Ticket: 175460)
- Added auto bom stock assign serials number to child items.
- Added auto select batch in customer invoice.
- Added account selection by Account Description (Item) at customer receipt and customer adjustment screens.
- Extended Reference field maximum length from 20 to 50 characters for the remaining customer documents (Quotation, Quick Invoice, Receipt, Receipt PDC, Adjustment)
- Enhance the Import from Sales Order with Deposit to allow partial import with 3 option (Full Amount, Proportionate, or Manual Input thought popup screen).
- Added BomRawMaterial tab in customer invoice screen and report.
- Added date range option to Reload Detail in Customer Receipt to load outstanding documents by document date, with the option to append or replace existing records in the grid.
POS Management Module Enhancement
- Enhance EPay screen by split into AcEPayServiceStoreM and AcEPayServiceStoreD table.
- Enhance EPay structure.
- Added Check All / Uncheck All buttons in Copy Voucher/Coupon to Subsidiary Company screen (INCard Voucher Campaign).
- Enhance dynamic menu.
Promotion Module Enhancement
- Added Promotion Stock Enquiry.
- Allow user to setup the cash rebate promotion with option "Exclude Promotion Item" whether the minimum purchase amount need to include the promotion item or not.
- Added Print Barcode Label screen show Promotion info.
- Added multi select function for select stock in wizard.
- Introduced New Promotion Mode - Priority mode.
- Introduced Promotion Studio to simplify promotion setup process.
- Setting up a promotion used to mean knowing which of eight different screens to open, then hoping it actually reached the till. Promotion Studio is a single console for every promotion in the company, and Promotion Builder is one editor that replaces all eight of the old promotion wizards.
- One console for every promotion.
- Every plan of every type in one list — search or filter by type, status, or reference.
- Health tiles across the top: Live now, Upcoming 7 days, Drafts, Sync health, Failed pushes and Pending price impacts. Click a tile to jump straight to that list.
- An attention queue showing the plans in the worst shape first, so you know what to look at.
- One editor instead of eight.
- Promotion Builder handles all eight promotion types — Stock, Mix & Match, Range Quantity Discount, Buy & Free, Purchase With Purchase, Cash Rebate, Add On and Member Group — through the same four steps: Plan → Schedules → Batches & rules → Items.
- The steps stay in the same place whichever type you pick; only the rules step changes shape.
- A new Confirm schedule + batch button confirms both in one click — the most common reason a promotion never reached the till was confirming only one of them.
- The existing promotion screens are unchanged and still available. The builder writes exactly the same records, so you can move across at your own pace.
- Know it will reach the till, before it goes live
- Readiness check — a single check per plan covering the things that quietly stop a promotion working: unconfirmed schedules or batches, no locations, no items, expired windows and more.
- Items & Overlaps — shows which items appear in more than one promotion and which one actually wins at the till, so clashes are found before customers do.
- Know your outlets actually have it
- POS sync monitor — see which outlets have confirmed they hold the current promotion data, and which are stale, silent or reporting errors.
- Pushing promotions to subsidiary companies.
- The Push board handles sending promotions from the head office to subsidiary companies, and is honest about the result.
- Each push is all-or-nothing per company, so a promotion is never left half-created in a subsidiary.
- Results are reported item by item — “2 of 13 completed, 11 failed” — rather than a single success or failure message that hides what really happened.
- Retrying is safe: pushing the same promotion again will not duplicate what already arrived.
- Every push is recorded, so you can see what was sent, when, by whom, and what came back.
- Failures surface on the Failed pushes tile on the Overview, so they don't go unnoticed.
- Price changes no longer slip past
- When a cost or selling price changes on an item that a live promotion covers, that promotion is now queued for a decision instead of quietly going out of step. Each one can be applied, acknowledged, deferred or removed, and a nightly sweep catches anything changed outside the usual screens.
- Faster on larger promotions
- Building and validating large promotions is significantly faster. In our testing, staging a stock promotion of around 6,000 items completed in a few seconds.
- Readiness checks and the overlap explorer return in well under a second on typical plans, so checking a promotion is now something you do while working, not a report you wait for.
- Results are unchanged — the faster routines were verified to produce identical output to the previous ones across every promotion type.
- Where to find it.
- Promotion Studio is on the Promotion menu. The builder opens from inside the Studio — from the create-by-type buttons, the nav rail, or Edit plan… on any row in the list.
- Access from Promotion Module - Enquiry - Promotion Studio
Meter Reading Enhancement
- Remove duplicate print the minimum copies detail in Meter Reading info (Ticket: 171550)
Batch Module Enhancement
Accounting Module Enhancement
- New Document Type under Accounting Module - Contra Settlement.
- Large Data Handling – Account Month End Process and Year End Process now run in the background on the server, with checkpoint, resume and cancel.
- Start the process and close the screen – the run continues on the server. Re-open the screen at any time to re-attach and follow the live progress log, or request a cancel.
- Every step is checkpointed. An interrupted run (lost connection, server restart, machine shutdown) resumes from the last completed step instead of starting over.
- Safer step order – stock and account opening balances are now created before the purge steps, so a broken session can no longer leave a company with openings created but not posted.
- Year End Process on a large production database (400 GB+): previously could not complete (still running after 27 hours); now completes in about 13 minutes.
- Account Month End Process – new one-pass engine closes all locations for a period in a single pass: about 7 minutes per month instead of about 1.9 hours (tested on 294 locations). A 42-month backlog now takes about 5 hours instead of about 81 hours.
- Accumulated retained earnings for completed fiscal years is now pre-summarised and reused instead of being recalculated on every request. This also speeds up General Ledger Listing (Show B/F), Trial Balance and Balance Sheet.
- Closing figures are unchanged – the new process was verified against the original method on production data (74 of 74 affected tables matched by checksum; row-level report comparisons showed zero differences).
- Large Data Handling – Financial reports now run much faster on large databases: Profit and Loss, Trial Balance, Balance Sheet (including the Multi-Level versions) and General Ledger Listing with Show B/F.
- Profit and Loss, Trial Balance and Balance Sheet used to build every account against every location, department and job before discarding the empty combinations – millions of rows on a multi-location database. The reports now build only the combinations that actually carry figures. The gain is largest on multi-location / multi-department / multi-job databases with Suppress Zero on; small databases are unaffected.
- Measured on a large production database (273 locations, 131 jobs, This Year Only): Profit and Loss about 8 seconds instead of about 8 minutes; Balance Sheet about 15 seconds instead of about 9 minutes; Trial Balance about 75 seconds instead of about 14 minutes; Profit and Loss Multi-Level about 1 minute instead of about 8.5 minutes; Balance Sheet Multi-Level about 1.2 minutes instead of about 5.5 minutes.
- General Ledger Listing with Show B/F no longer re-runs a full Profit and Loss for every completed fiscal year to work out the brought-forward retained earnings – it reuses the pre-summarised figures above. Preview now takes about 31 seconds instead of about 50 seconds without filter, and about 18 seconds instead of about 48 seconds with a location filter (3 completed fiscal years; the saving grows with the number of fiscal years).
- Trial Balance, Balance Sheet and Balance Sheet Multi-Level (This Year Only) are now fully prepared on the server – the retained earnings and current-year profit adjustment previously calculated in the DynaMod client is now done in the database. Together with Profit and Loss and Profit and Loss Multi-Level, they can be run in the background (see Reports Enhancement – Run in Background).
- Report figures are unchanged – every changed report was compared row by row against the original method on production data with zero differences. Other grouping options and customised report queries continue to use the original method.
System Usability Enhancement
Enhance to auto add the next fiscal year in one month before the last fiscal year due.
Enhance the manual cost module to support maintain customer credit note cost and ensure the invoice manual cost will imported to credit note.
- Enhance the POS Simulation to handle multiple barcode for Buy Any Free Any promotion.
- Support whatsapp upload chinese and malay version. (Ticket: 172887 & 173094)
- Provide Supplier Default Price (Company System Setting Setup)
- Provide 4 type
- Last Purchase
- Last Purchase Include Quantity & Discount
- Supplier SKU Price
- Reference Cost
- System Cost
- Please note that when the selection type is 0, DynaMod will prioritize the price selection in the following order: Supplier SKU > Reference Cost > System Cost.
- Provide 4 type
- Allow users to select multiple Location IDs in the Stock Price Updater screen.
- Added TEXTFILE selection for RFID Module For POS in company system setting.
- Prompt confirmation message to confirm whether follow source document date or using current system date when user using clipboard function to copy and paste the document from existing document to new document. (Ctrl+Alt+C & Ctrl+Alt+ V)
- Added new task into DynaMod Process Manager to execute the scheduled stock price updater task.
- Require DynaMod Process Manager 2026.1 Build 0004
- Database Validate - Handle check multi deposit collection.
- Added Price Markup by Cost button in transaction document detail navigation control.
- Enhance 'Import Customer' not allow duplicate member no
- Implemented an enhancement to sort the Currency Rate History by Effective Date in descending order. (Ticket: 175724)
- Change default SarawakPay base url - https://xservice.spayglobal.my/xservice (Ticket: 177306)
- Database Maintenance revamped (System Utility > Database Maintenance):
- Revamped Database Maintenance screen with Smart Index Maintenance — indexes are now maintained based on their actual fragmentation level (rebuild heavily fragmented indexes, reorganize lightly fragmented ones, skip healthy ones) followed by update statistics, instead of rebuilding every index blindly. Much faster on large database.
- Provide 2 run modes: "Scan Only" to report the index fragmentation without changing anything, and "Full" to rebuild + reorganize + update statistics. Options include Online rebuild (Enterprise edition only), Sort in TempDB, MaxDOP, statistics sample %, time limit and resume prior run.
- Maintenance now runs in the background on the SQL Server (fire-and-forget) — user can close the screen and continue working; re-open the screen to attach to the running job, view the live progress log or cancel it. This also resolves the middleware out-of-memory error when maintaining very large database.
- Background mode requires SQL Server Agent to be running (the Agent job is created automatically by the upgrade script). On SQL Server Express or when Agent is not running, the screen automatically falls back to foreground mode — the active mode is shown in the log header.
- Database upgrade script no longer runs the full index maintenance inline during upgrade (which could take up to an hour) — it now queues the maintenance as a background request and the upgrade completes immediately.
- Fixed update statistics phase failing on non-Enterprise editions when "Online rebuild" is ticked — the live log now shows "[INFO] EDITION [ONLINE not supported — rebuilding OFFLINE]" and the run continues offline.
- Database Housekeeping — new screen (System Utility > Database Housekeeping):
- Added new "Database Housekeeping" screen which allow user to view the database data/log file size and the size of each log & history table group, and clean up old records by retention period to keep the database size under control.
- Provide 12 cleanup groups, each with default retention period and danger level (SAFE / CAUTION / HIGH): Project Task Logs (E-Invoice / WMS / BI ETL / Integration run logs), POS Logs, System Error Log & E-mail Log, BI Plus ETL Snapshots, FIFO Ghost Records, System Audit Trail, Document Change History (SysAudit tables), E-Invoice Cash Sales legacy rows, Document File Attachments, POS Sync Run History, Closed POS Sync Commands and Stock Price Change Log. CAUTION and HIGH groups show a disclaimer and require explicit confirmation before delete.
- "Estimate" button shows the affected rows and reclaimable size before anything is deleted.
- Cleanup runs in the background on the SQL Server (fire-and-forget) in small batches so other users are not blocked — user can close the screen and continue working, and check the progress anytime from the Requests tab. Runs can be cancelled and resumed.
- Document File Attachments cleanup support "Archive" option — attachments are copied to the companion archive database (<Database>_Archive) before delete, to keep the documents for the 7-year e-invoice retention requirement. Optional "Reclaim space" step (LOB compaction / shrink) after cleanup.
- System Audit Trail (ims72770) truncate / delete up-to-date functions now run through the Database Housekeeping background queue.
- Free disk space is checked before every run — the run is refused with a clear message stating the space needed vs available if there isn't enough space (checks the source data/log, archive database and snapshot volumes).
- If the disk runs out of space during the run, the run is stopped cleanly with status CANCELLED and can be resumed after space is freed.
- Fixed DynaMod crash when closing the Database Housekeeping screen while a cleanup is running; run log durations are now millisecond-exact.
- Background mode requires SQL Server Agent (the Agent job is created automatically by the upgrade script); falls back automatically to foreground mode when Agent is not available.
- Prompt confirmation message before the Cancel button discards unsaved changes.
Message shown:"You have unsaved changes. Are you sure you want to cancel and discard them?"
Only prompt when the record was actually changed after Add or Edit. Clicking Add or Edit then
Cancel without any input will not prompt.
Yes is the default button, so pressing Enter will discard the changes.
Apply to all data entry screens that have a Cancel button, and also to the Ctrl+U shortcut.
Cancellation triggered by the system itself will not prompt. For example when the document is
already matched or locked, or when a file import failed and the entry is rolled back.
Closing the screen with unsaved changes is unchanged. Still prompt "Do you want to save the
changes before exit?" once only, and answering No closes the screen without a second message. (Ticket 179735)
Large Data Handling – Faster start-up: the login-to-ready transition is now branded, shows continuous progress, and no longer freezes on the first login after the Server Socket has been idle.
- The Server Socket now warms up every database alias at start-up (previously only the first one) and re-warms every 5 minutes, so the first login into any database after a server restart or a long idle period no longer pauses for about 20 seconds with a blank window. Licence checks now take about 0.2 seconds instead of about 20 seconds in that case.
- The licence phase of login used to make about 80 separate calls to the Server Socket; it now makes about 3. The gain is largest over branch or VPN links – about 2.5 seconds saved per login on a 40 ms link and about 7.5 seconds on a 120 ms link. The full saving needs the 2026.2 Server Socket; an older Server Socket still works, the client simply falls back to the previous calls. Deploy the Server Socket before the clients. The splash message now reads "Reading licence from server socket" – the old "Verifying license with activation server" wording was misleading, as no activation server is contacted.
- The version check at login makes 4 calls instead of 11, and the company-settings load has been split so the first login of the day no longer pays for rebuilding the query plan after overnight maintenance: about 0.35 seconds instead of about 2.2 seconds cold, and about 0.02 seconds instead of about 0.07 seconds warm.
- The blank white window after login is replaced by a branded boot screen (Smart DynaMod logo, version footer) that reports real phases – Verifying licence, Checking version updates, Loading company settings, Validating fiscal/tax, Checking integrations, Opening menus, Ready – with a moving progress bar on longer phases so the application never looks frozen. A bridge screen covers the gap between the login dialog closing and the main window appearing.
- The pre-login splash has been removed, so the login dialog appears in about 0.5 seconds instead of about 2 to 4 seconds. Non-critical start-up work (version check, Shopee and SQL Express checks, DynaMod Update, Tip of the Day, GST/SST/E-Invoice tips, fiscal and tax validators, alerts, unread-message badge) now runs about half a second after the menu is usable, so no pop-ups interrupt the loading screen. Measured login-to-ready on a warm start: about 3 to 4 seconds instead of about 3 to 9.5 seconds.
- For support: boot timings are logged to %LOCALAPPDATA%\SmartAcc\DynaMod\BootTelemetry\boot-timing.csv on each client.
- Large Data Handling – Transaction screens open, search and page through large record sets much faster.
- The pager record count on 54 transaction screens now counts from the base table instead of the wide listing view: 14 to 123 times faster depending on the table.
- 67 new indexes on the transaction tables match the screens’ default sort (document date descending, then document number). Measured on a customer database: the Cash Sales listing sort takes about 0.14 seconds instead of about 89 seconds; Customer Invoice and Supplier Invoice listing sorts are 2 to 3 times faster. The indexes are created by the 2026.2 upgrade script.
- Page-by-page loading has been rewritten on 55 screens. Each page now fetches exactly one page of rows however deep into the list you are, instead of re-fetching everything from the first page. Scrolling to the bottom loads the next page; scrolling to the top loads the previous page and keeps the current record in view; the page selector only fetches pages that are not already loaded. Ordering now includes the document key, so pages can never overlap or skip records. Stock Maintenance gains scroll paging (it was not connected before).
- Fixed an "Object reference not set to an instance of an object" error on the Last Page button of the pager on 18 transaction screens: Cash Sales, Customer Invoice, Supplier Invoice, Customer Receipt, Supplier Payment, Customer Delivery Order, Supplier Credit Note, Supplier Goods Receive Note, Customer Sales Order, Supplier Purchase Order, Stock Assembly, Stock Take, Stock Transfer, Supplier Goods Return Note, Stock Transit, Supplier Purchase Order Request, Customer Credit Note and Customer Quotation.
- Recommended for large databases: turn on Enable Search Limit Control in Company System Setting (200 rows per page) so an unfiltered search no longer loads every row at once. Cash Sales Advance Search on very large databases is otherwise unchanged in this release.
- For support: place an empty file named ScreenLoadTiming.enabled next to the DynaMod client executable to log each screen’s Open, Load Detail and Page Next timings to ScreenLoadTiming.log.
- Moved ACIntegrate AutoCount DLLs out of the DynaMod release package to on-demand download.
Reports Enhancement
Added print centralized PO approval.
- E-Invoice Transaction Listing report "date" parameter allow user to select either based on Document Date or E-Invoice Date.
- Added column "DocumentRemark" for pfims71470StockSalesAnalysisDetail procedure which allow user to display in Stock Sales Analysis Detail report (Ticket: 171436).
- GRN Remaining Balance now also deducts Supplier Goods Return Note quantity (FIFO) in Print Goods Received Note.
- GRN Remaining Balance now also deducts Stock Adjustment Out quantity (FIFO) in Print Goods Received Note.
- Added 'Remark Date 1' and 'Remark Date 2' to display in Stock Sales Analysis Enquiry.
- Enhance Stock Value Closing - Location Month End Details report able to multi-select location.
- Added pickup info columns for Print Goods Return Note, Goods Return Note Listing, Goods Return Note Outstanding Listing
- Added the stock minimum & maximum level quantity column at stock purchase history by supplier enquiry screen.
- Added Document Type filter at stock transaction enquiry screen.
- Add location filter in Debtor Ledger Listing, Creditor Ledger Listing, Customer Statement Listing, Supplier Statement Listing, Debtor Aging Report and Creditor Aging Report.
- Added report format service card summary in print service card screen.
- Added Filter by Brand option to Sales Order Outstanding Report. (Ticket: 177971)
- Added column StockBarcode for Salesman Commission by Item Price (Ticket: 178169)
- Report Engine enhancement:
- Added "Run in Background" option on reports. Long-running report is now prepared on the server side without blocking DynaMod — user can continue working and open the report from My Reports once it is ready.
- Added "My Reports" screen (Tools > My Reports) which allow user to view their own background report runs with status (Queued / Running / Ready / Failed), rows, size and requested/completed time. User can open a Ready report, cancel a running preparation or delete old runs; the screen auto-refreshes.
- Cancelling a background report run now actually stops the running query on the server, releasing the database immediately.
- Added "Report Background Runs" admin screen (System Utility > Report Background Runs) which allow administrator to view all users' background report runs with Cancel Run / Delete / Purge Now, and configure the background report policy (max active runs per user, query timeout, max result size, max rows, retention days).
- Enhance financial report performance on large database — Trial Balance, Profit & Loss, Profit & Loss Multi-Level, Balance Sheet and Balance Sheet Multi-Level now generate up to 8–37× faster (procedures pfims71900, pfims71910, pfims72460, pfims71920, pfims72470), with identical report results.
- Enhance financial statements (Trial Balance, Profit & Loss, Profit & Loss Multi-Level, Balance Sheet, Balance Sheet Multi-Level) to be fully prepared on the server for the "This Year Only" grouping, so they also support Run in Background.
SST Malaysia Enhancement
Enhance the customer invoice posting so that only will create SVT Transaction after payment. (Ticket: 170292 & 170816)
- Enhance the customer credit note and refund note posting so that create SVT Transaction positive amount in 13a column with tax code SVCN6 and SVCN8. (Ticket: 170755)
Subsidiary Company Enhancement
- Added centralized PO approval.
- Added barcode and stock description column in Generate Centralized PO screen.
- Enhance Generate Centralized PO screen to become matrix view.
- Added delivery date and expiry date for details CPOA.
- Added location filter for Subsidiary Centralized Purchase Order Approval Report.
- New document type - Subsidiary Purchase Order Approval added for Subsidiary Company Module
- New Stock Request screen for Subsidiary Company Module — request stock from another location/subsidiary by Stock ID / Description / Barcode; requests are auto-numbered and tracked in Saved Item / Processing / Rejected / Completed tabs.
- New Process Stock Request screen — supply location reviews incoming requests, adds them into a Picking List, enters Accepted Qty, then rejects with reason or generates DO / Stock Transit Request (cross-database supported).
- New Picking List report — printable picking list showing item, stock description, UOM, request and accepted quantity, grouped by Supply (From) and Request (To) location.
- Enhance Stock Request
- Allow dropdown select To Location under current company location.
- Allow edit Quantity/Remark/ExpectedDeliveryDate/ExpiredDate in detail and update by "Update" button.
- Show sales trend 1/3/6/12 month and average.
Online Store Enhancement
- GrabFood allow to setup campaign.
- Added GrabMart integration.
- Added Smart Storage Platform Integration
- Added Image upload to SSP for GrabMart and Grab
Smart Updater 2026.2 Enhancement
- Smart Updater 2026.2 – Faster and More Reliable Downloads and Upgrades
Smart Updater is the shared update tool that DynaMod, DynaMod Server Socket, DynaMod Client Socket, DynaMod Process Manager, TouchPOS and TouchFNB open from Check for Updates. Version 2026.2 replaces the 2025.1 updater. It is installed automatically by DynaMod 2026.2 and TouchPOS at login; on other machines, open Smart Updater from any product and press Upgrade to Latest Version once. From then on it keeps itself up to date.
New Enhancement List
- Downloads from the Smart Storage Platform – update, upgrade and hotfix packs are now downloaded over HTTPS from the Smart Storage Platform (SSP), Smart-Acc’s cloud file storage, instead of the FTP server. Downloads no longer depend on FTP ports being open on the customer’s firewall or router, which was the most common reason a site could not download an update. If SSP cannot be reached, the updater falls back to the FTP server for that run automatically, so an update is never blocked by one server being unavailable.
- Resumable downloads with automatic retry – a download interrupted by a Wi-Fi drop, a VPN reconnect or a timeout no longer starts again from zero. The updater keeps the partially downloaded file and resumes from where it stopped, retrying up to 5 times with waits of 5, 10, 20 and 40 seconds between attempts. Pressing Cancel also keeps the partial file, so pressing the same button again, or opening Smart Updater later, continues the download instead of repeating it. The progress bar shows the real pack size and the point the download resumed from.
- Pack verified before the product is touched – the downloaded pack is checked against the server’s file size, against a published SHA-256 checksum when one exists, and by a full test extraction, all before the product is closed. A corrupt download is discarded and downloaded again automatically; if it fails a second time the updater stops with a message and the product is left exactly as it was. A bad download can no longer leave a product half updated.
- The screen no longer freezes – checking the server, downloading and applying all run in the background. The Smart Updater window stays responsive throughout, the progress bar and status line keep moving, and Cancel works at any time. Previously a slow or stalled transfer froze the window and looked like a hang.
- Full backup and automatic rollback – every file the pack will replace is backed up first, including files in subfolders (previously only the top-level folder was backed up), to a zip in the product’s Online Updates folder named after the update being applied. If applying the pack fails, the backup is restored and the product restarted automatically.
- Smart Updater keeps itself up to date – each time a product opens Smart Updater, it first checks whether a newer Smart Updater is available (a newer version, build or hotfix), installs it and then continues with the product’s own update check. Support no longer needs to reinstall Smart Updater by hand, and future updater improvements reach every site on the next Check for Updates. If the self-update cannot be completed for any reason, the product’s update check goes ahead as normal.
- Closes only the product being updated – the updater now closes only the program instance it was opened from, asks it to close normally first and waits 10 seconds before forcing it. Another copy of the same program running from a different folder (for example a second DynaMod installation on the same PC) is no longer closed by mistake.
- Fewer clicks – pressing Update, Hot Fix or Upgrade to Latest Version is the decision; there is no second “Are you sure?” prompt. When the update completes, the product is restarted and Smart Updater closes by itself. The unused Change Log tab has been removed.
- For support: a log of every run – each run is written to <product folder>\Online Updates\SmartUpdater.log (which server answered, what was found, each download attempt, every file applied or skipped). A Smart Updater self-update continues in C:\SmartAcc\SmartUpdater\Online Updates\SmartTransfer.log. Please attach both when reporting an update problem.
- Closed Issues List
- Fixed an update or upgrade failing with “the previous files could not be restored automatically” and leaving the product folder half restored when the ElecKey licence agent (Ekag20.exe or Ekag20nt.exe) was running. Support previously had to end the agent in Task Manager before the update would go through. The updater now leaves a running licence agent at its current version, applies every other file in the pack, and shows a warning naming the file that was left behind. The product’s licence continues to validate with the older agent. Any other file that is in use still stops the update and restores the backup, as before. (2026.2 Build 0005)
- Fixed the Smart Updater self-update repeating endlessly on PCs where the virus scanner keeps the updater’s files open. This affected only Builds 0003 and 0004, which were withdrawn the same day they were published. Build 0005 waits for the old updater to exit, copies the new files, and on any failure reports what was in the way and stops. (2026.2 Build 0005)
- Fixed a hotfix published for Smart Updater itself never being offered. The self-update check now also reads the hotfix folder and installs a hotfix for the running build. (2026.2 Build 0002)
- Fixed Smart Updater showing “Update found” and then failing when the DynaMod database was already on a newer build than the program and that build was no longer on the server. The updater now reports that no update is available and says why in the log.
- Fixed the wrong pack being applied when a release folder on the server held more than one zip file; only the last one listed was extracted. The updater now stops with a clear message instead.
- Fixed the FTP login details being written in clear text to the Windows registry every time Smart Updater was closed. Nothing is written to the registry any more.
Closed Issues List
E-Invoice Malaysia Module Fixes
| N/A | Fixed Einvoice Profile show '0' for 'Year ID' after add. |
| N/A | Fixed E-invoice dashboard tooltip. |
| N/A | Fixed E-invoice Dashboard double click navigate to wrong document. |
E-Invoice Transaction Related Fixes
| N/A | Fixed AcPostCusCashSalesEinvoice by update EInvoiceTotalIncludingTax, EinvoiceTotalPayableAmount and AcEinvoiceCurrencyID. |
| 171494 | Fixed Consolidate Delete update. |
| 172837 | Fixed IsEnableEInvoiceMYS='Y' for cash sales. |
| N/A | Refresh E-Invoice Document Flow ID Status before perform update document flow id status.
|
| 172837 | Fixed IsEnableEInvoiceMYS='Y' for cash sales. |
| N/A | Fixed e-invoice document type when change document flow from Not Applicable to Open. |
| N/A | Fixed itemtaxrate when generate consolidate using range method. |
| N/A | Fixed same document number not allow seperate batch when generate consolidate e-invoice using range method. |
| N/A | Rectified Error "An exception occured on the server: Could not find stored procedure 'pfEInvoiceConsolidate_Level1_ValidateChecl.' due to script missing. |
| N/A | Fixed update Einvoice Date 72 hours for normal and consolidate einvoice. |
| N/A | Fixed consolidate einvoice when generate by range hit error 'Cannot insert duplicate key row in object 'dbo.AcEinvoiceConsolidateD' with unique index 'IX_AcEinvoiceConsolidateD''. |
| N/A | Fixed consolidate e-invoice generate by range by seperate tax exemption details. |
| N/A | Fixed posting customer cash sales einvoice to calculate the prepayment amount. |
| N/A | Fixed set the source transaction's EInvoiceDate/EInvoiceDateTime to its own DocumentDate when generate consolidate E-invoice |
Costing Mechanism Fixes
Supplier Module Fixes
| 171492 | Fixed Other Payement screen allow edit field (E-invoice state ID and E-Invoice Country ID) |
| N/A | Fixed Einvoice TIN not allow to edit when Validated. |
| 172772 | Fixed posting e-invoice after knock-off if e-invoice not validated - success. |
| 173488 | Fixed sales trend quantity calculation and display on Purchase Order (PO) and Purchase Order Requisition (POR) screens. |
| N/A | For GRNA and GRN, change the red colour line for insert manually when mixed with import from PO only. |
| N/A | Fixed Goods Return Advise stock pop up based on stock department control. |
| N/A | Fixed Error 'The select list for the INSERT statement contains fewer items than the insert list' for centralized POA when generate PO into subsidiary database. |
| N/A | Fixed update script to check wheter subsidiary database exist and online or not. |
| 176425 | Fixed documents knock-off applied amount cannot be negative. |
| 177012 | Fixed supplier side trasnsaction insert item hit 'Value cannot be null' (Ticket : 177012)
|
| 176170, 177076 | Fixed Goods Receive Note edit save hit Database internal index was corrupted '5' (Ticket: 176170. 177076) |
| 177234 | Fixed wrong account description when importing Purchase Order into Supplier Invoice. |
| N/A | Fixed Goods Return Note filter stock department when import Goods Return Advise. |
| N/A | Fixed stock department validate before save. |
| N/A | Fixed GRTN stock department import issue. |
| 177293 | Fixed supplier payment payment amount is not auto calculate so the payment amount is not tally with applied amount and cause the user cannot save the payment. |
| N/A | Fixed currency issue to throw it to gain and loss. |
| N/A | Fixed Sotck Description 1 and Stock Barcode for Centralized Purchase Order Approval. |
| N/A | Fixed Subsidiary Company Stock Balance Location Registration drop down Location ID prompt error DataTable internal index is corrupted: '5'. |
| N/A | Fixed transaction screen import files stock department id. |
| N/A | Fixed block edit supplier ID when in edit mode. |
Customer Module Fixes
| 171900 | Fixed matched detail should not be select when import sales order. |
| 169368 | Fixed sorting problem when import Sales Order. |
| N/A | Fixed Einvoice TIN not allow to edit when Validated. |
| N/A | Fixed Customer Invoice open back the form for insert the detail when add. |
| 172508 | Fixed service charges calculation for cash sales. |
| 172772 | Fixed posting e-invoice after knock-off if e-invoice not validated - success. |
| 172389 | Voided-with-Refund deposits now include the parent Cash Sales GL entries so the refund reversal is visible in the Inspector. |
| 171211 | Fixed Invoice Amount not deducting discount on Salesman Collection Commission Listing. |
| 171212 | Credit Note now shown in its own column on Salesman Collection Commission Listing. |
| N/A | Salesman commission now applies to deposit (Advance) collected on Salesman Collection Commission Listing. |
| 170757 | Fixed Deposit Receipt showing as Unapplied even after the related Sales Order is imported to Invoice. |
| N/A | Fixed Cus Invoice import Sales order itemdiscounttype null error. |
| 176226 | Fixed Import Customer Open Balance prompt error "Column 'AccountNo' does not belong to table Table1" when import file does not contain optional columns. |
| 176425 | Fixed documents knock-off applied amount cannot be negative. |
| 177542 | Fixed supply tax code for import customer invoice multi document. |
| N/A | Fixed single click and double click for manual and auto bom/serial/batch. |
| N/A | Fixed by remove stock department control from customer debit note. |
| N/A | Fixed Customer Sales Order Outstanding Listing allow filter by brand. |
| 178487 | Fixed by remove space for buyer BRN information customer screen. |
| N/A | Fixed currency issue to throw it to gain and loss. |
| N/A | Fixed transaction screen import files stock department id. |
| 179837 | Fixed deposit posting inspector to show all the deposit number posting account |
POS Management Module Fixes
| 172025 | Fixed paymentcode pop up. |
| 172031 | Fixed Mix & Match promotion showing incorrect discount price for multi-tier quantity purchases. |
| 173284 | Fixed the inactive POS Stock Combo sync to POS. |
| N/A | Fixed amount shown in POS Terminal Collection Transaction Details popup to follow the selected payment type instead of the full document total. |
| N/A | Fixed Pos Terminal Collection calculation for cash sales. |
| N/A | Fixed location logic of finalized button in AcPOSTerminalCollectionFinalised. |
| 176777 | Added editable Sequence No. in Weighing Machine Setup Export to Grid to let user control the export row order. |
| 176768 | Refunded deposits now appear as a separate DEPOSIT(REFUND) line with a negative amount that offsets the original deposit collection, so the totals reconcile correctly. |
| N/A | Fixed Sales Live enquiry department sales show wrong terminal and sales amount. |
| 178286 | Fixed missing posting sales order matching when create a new cash sales with Import from Sales Order. |
Inventory Module Fixes
| 170761 | Disable "Auto BOM" checkbox in BOM Assignment when not in Edit Mode. |
| N/A | Set Price1GrossProfit read only when edit. |
| 171433 | Resolved an issue in the month-end stock closing process that caused the error: "An exception occurred on the server: Column name or number of supplied values does not match table definition. " |
| 173114 | Fixed by disable stock id in stock UOM updater when change Uom. |
Fixed Stock Transfer (Receive) Batch control not working. | |
| 176167 | Fixed Stock Adjustment select stock hit error 'prompt error object reference not set to an instance of object' |
| 175847 | Fixed Stock Activity Insight Report prompt error "String or Binary data wiould be truncated" due to AcLocationDesc over maximum length. |
| 177484 | Fixed batch stock prompt error in quick assembly. |
| N/A | Fixed stock assembly screen when copy stock id. |
| N/A | Fixed transaction screen import files stock department id. |
Reports Fixes
| 171975 | Fix Article Sales Analysis total inflation when an article has SKUs tagged with different Brand/Category/Group/UDGroup values. |
| 172111 | Fix negative qty (refund/credit note) inflating totals on Stock Sales Analysis By Serial Number report. |
| 173337 | Fixed Report naming so that adobe acrobat open the pdf with the filename. |
| 173693 | Fixed Stock Aging Enquiry Screen hit missing parameter @StockDepartmentFilter (Ticket: 173693) |
| 174828 | Fixed enquiry 2nd time that no response when generate stock balance report. |
| 176779 | Fixed Retained Earnings in comparison layouts the Last Year column was accumulating profit & loss up to the current year instead of stopping one year earlier. |
| N/A | Fixed Barcode label report delete gridview item hit error "Deleted row information cannot be accessed....". |
| N/A | Fix BI report designer retrieving back removed field when loading |
Miscellaneous Fixes
| 171548 | Fixed not able to open the fiscal year setup screen. |
| 171844 | Fixed an issue where the "E-Invoice Date is different than Document Date" message keeps prompting repeatedly. |
| 172896 | Fixed all Supplier Refund Note show as Account Missing in Database Validation. |
| 173342 | Matrix Order detail sequence aligned with Color/Size ItemDisplaySeq. |
| 175162 | Fixed whatsapp auto close 'What's new' and auto refresh to send when first time log in. |
DynaMod Client Socket Fixes
| 178982 | Fixed sync update and delete customer. |
DynaMod Process Manager Fixes
| N/A | Fixed suddenly closed when generate consolidate task running. |
SST Malaysia Fixes
| N/A | Fixed Sales Tax simulation. |
| 172714 | Fixed SST02 submission detail no come out. |
| N/A | Fixed by update AcTaxID SV8 for previous record. |
| 173338 | Fixed services tax supply listing report show CN double. |
| 175579 | Fixed 'E-SV' cannot see in SVT report with the code 'E-SVOE' government tax id. |
Email Fixes
| 171022 | Fixed scheduled email processing via Brevo Service API to properly handle failure responses. |
Promotion Fixes
| N/A | Fixed promotion buy n free location filter and page bug. |
| N/A | Fixed upload either empty photo prompt message for Incard Voucher Campaign. |
Online Store Module Fixes
| N/A | Fixed hit error when open SiteGiant ERP Stores Mangement screen. |