Improvements and bug fixes
18 Dec 2018
- Several fixes for Analysis reports that ask for a search code when run
- Scroll wheel now works on date fields again (Mac)
- Job sheet entries from transactions now use transaction description if the detail description is blank (v8 regression)
- Bank statement import: Fixed a problem with importing multiple payments to the same creditor
- Daily Summary dashboard report performance optimisation (could be quite slow with many unposted transactions)
- Dashboard Overview Debtors graph now correctly handles foreigh currency accounts receivable
- Fixed Find related destination views for Receipts ➝ Details et al
- Fixed data corruption when Job Sheet item is created from a transaction with very long detail description
- Fixed a problem with window sizing on very small (unsupported) screen sizes on Windows. I guess that means they are semi-supported
- Holiday Updates: Holidays to 2024
- Fixed potential crash (reported on Mojave) when canceling emailing of report
- Age by Due Date Report: Remove fixed NZD currency label
- New Job Allocation report
- Fixed the initial recording of Buy/Sell checkboxes for new sticky notes
- Fixed enabling of Reports menu subfolders after modifying Document Preferences on Mac
- Partitioned user and system mutexes, and ensured autorelease of mutexes held by a client that loses its connection to the server (so Script Editor edit lock mutex now releases when Logged out due to idle connection)
- Fulltext Transaction Search now includes Freight docket field
- Updated Job detailed report
- Fixed crash when clicking Edit for an error in an Unload script while closing document (Edit is no longer available in that situation)
- Fixed heap buffer overflow in InsertListObject
- Form autosave no longer generates thumbnails while autosaving
- Fixed Memo importing
- Added Contact Person importing
- 64-bit update to internal Mac Console component that was still 32-bit
- Scripting improvements and bug fixes
- New Script editor now remembers scroll position of each script that has been edited in the session
- Scripting: GetActiveListRow function now works for selectable lists
- Scripting: User static text fields on transaction entry screen no longer format as numbers
- Scripting: Fixed crash with SetListContents on an active editable list (Windows)
- Scripting: Fixed crash with long running script that causes sticky notes to be displayed (Windows)
- New MWScript
Dawdle(winRef)
handler called periodically (10 second intervals) for custom MWScript windows - MWScript: Fixed CloseWindow() modality failure if it executes asynchronously while a modal window is up
- MWScript associative array keys no longer truncated to 31 characters (63 allowed).
- Resizing in Forms and UI editor: alignment guides now align to the edge not the mouse location within the drag handle
- Script editor autosaves all scripts periodically
- Lookup() function works for dates/numbers in Jobsheet
- New MWScript new function:
TransferFunds(from, to, date, period, ref, analysis, desc, amt [, recAmt])
. Creates a funds transfer payment between two bank accounts. recAmount must be supplied if the banks are different currencies. Each amount is specified in that bank’s currency. The return value is the sequence number of the payment transaction. - New Optional boolean parameter to Trim:
Trim(text, true)
to trim all whitespace (newlines and tabs, in addition to the normal ASCII 32 space) - New MWScript
DateFormTimestampMacEpoch
date format to get a numeric timestamp from a date/time (albeit as a string, when used withDateToText
) - New You can get the read-only status of a record entry window using pseudo-field -3 with GetFieldValue
- SetFieldValue no longer returns an error for overlay fields when the window is in read-only state due to the record being locked
- Removed forced numeric formatting on T_USRTEXT fields in transaction entry window
- MWScript: ReleaseMutex function now only allows releasing mutexes obtained by the calling client
- New MWScript
File_Path(fd)
to get the full path of an open file (that was opened with a partial path) - Resizing a custom list column in a custom window no longer has deleterious effects on window resizing
- Preliminary support for autoloaded script bundles
- Find Selected (Find Again) now works correctly in Script Editor when script contains multibyte unicode characters
- Scripting: UI Form buttons set to be disabled are now actually diasbled when form is instantiated
- Commands added to the Command menu by scripts are now cleaned up properly when the scripts unload
- CLI: No longer use libedit/readline when CLI stdin is connected to a pipe (since it can get into an infinite spinloop
- CLI:
diagnose
command no longer requires credentials to open the file when the document is opened in read-only mode (using-oe diagnose
) - Server improvements
- New Datacentre: REST API for server administration. Supersedes the old web admin interface which is removed
- Datacentre: Configurable cliSemaphoreTimeoutSeconds and cliLingerSeconds to control REST worker lifecycle
- Datacentre: Reworked port allocation on Windows to not make connections to existing running databases, resulting in spurious SSL error log entries
- Datacentre: Tidied up SSL connection code
- Mac Datacentre server no longer automatically sends a shutdown advisory to running databases when the service is stopped (database servers abandon their process group)
- Server operations that create transactions now set user initials for EnteredBy correctly
- Datacentre Backups: Pictures folder was not backed up when company name ended with a dot
- Serverside debtor aging was setting incorrect Aged_At date in log file when client and server were on different platforms. This would cause prolems for subsequent statements that relied on that date being stored accurately
- Fixed the attachment name for statements generated on the server for emailing
- REST Server: some changes to
Server:
header - Emailing server-generated statements now picks up email addresses for statements that go over one page
- Statement form thumbnail creation (which uses live data) can now run on the server, greatly improving performance when latency is high
- The idle-disconnect alert no longer suppresses all background redraws on Mac