//------------------------------------------------------ // // // (c) 2002-2018 by Bright Software Pty. Ltd., Australia // ALL RIGHTS RESERVED // // // SOFTWARE RELEASE NOTES // // //------------------------------------------------------ //------------------------------------------------------ DATE : 18/Apr/2018 VERSION : 9.3.0 RELEASED BY : Bright Software RELEASED FOR : Production REPORT PROBLEMS TO : support@brightxpress.com //------------------------------------------------------ // ITEMS INCLUDED IN THIS RELEASE //------------------------------------------------------ |--BrightForms |--doc | |--en | |-- ReleaseNotes.txt (This file) | |-- INSTALL.txt (Installation notes) |--win32 | |-- BrightForms_X_Y_Z_Setup.exe | (Win32 installer) |--wince | |-- BrightForms_X_Y_Z.CAB | (Installer for Windows Mobile 5 or later) |--Upgrade |-- UpgradeBrightForms_X_Y_Z.CAB (Upgrade CAB) //------------------------------------------------------ // BUGS FIXES AND ENHANCEMENTS //------------------------------------------------------ -------------------------------------------------------- This release -------------------------------------------------------- BF-402 New ! New FileHandler Object with Open, Close, Read, ReadLine, Write, WriteLine methods. BF-930 New ! Database Engine : SQLite : Data length checking before saving data to SQLite db for preventing server side sync errors. BF-10043 New ! Array Object : A new method to mass add CSV strings into Array object. BF-10134 New ! SQLite database upgrade to 3.22.0. BF-10138 New ! File Object : New GetFileSize method. -------------------------------------------------------- Version 9.2.0 -------------------------------------------------------- BF-10127 Fix - SOAP Client : Not sending strings in a CDATA section. BF-10116 New ! Table Definitions - Support for 'Text Format' and 'Content Type' column properties. BF-10123 New ! Database Object: New methods to export and import data to and from CSV files. BF-10129 New ! SQLite Engine : Upgraded to Version 3.17.0. -------------------------------------------------------- Version 9.1.1 -------------------------------------------------------- BF-10114 Fix - Forms : Loading primary key values incorrectly in BXP edit dailog on load. BF-10112 Fix - Report : Uncompressed Data Field images do not render correctly in report. -------------------------------------------------------- Version 9.1.0 -------------------------------------------------------- BF-10101 Fix - Sync Engine : Even if device cannot consume records, sync will continue. This is an introduced bug in Version 9.0.0. BF-10102 Fix - Form Object : ShowSyncDialog() method does not return -10519 on app dist. BF-10089 New ! New ! Support for BXP projects. BF-10096 New ! New ! Upgrade to SQLite 3.13.0. BF-10099 New ! All Controls : Added ResetDirty method to mark a control that its value has been processed (e.g. saved) and it is no longer in dirty state. BF-10104 New ! Form Object : New IsDirty and ResetDirty methods to detect user edit changes on a form. -------------------------------------------------------- Version 9.0.1 -------------------------------------------------------- BF-10083 Fix - Cannot set base aspect with "_$DefaultAspect$_" string. BF-10092 Fix - Listview Control : Reporting "Encountered an improper argument" when refreshing content with Advanced SQL statement containing GROUP BY. -------------------------------------------------------- Version 9.0.0 -------------------------------------------------------- BF-488 New ! Auto upgrade tables on start-up. BF-681 New ! Sync Engine : File based large blob synchronization to and from server through external blob columns. BF-711 New ! List View : New method to reset column widths to default set at design time. BF-949 New ! Edit Control : New SetPrecision method for setting the number precision programmatically. BF-958 New ! All controls : New IsVisible and IsEnabled methods. BF-10001 New ! System Object : New EnableAspect method for including/ignoring a specified aspect from calculations. BF-10009 New ! System Object : New methods to set and get named settings. BF-10028 New ! System Object : New method GetPassword to return user password from settings. BF-10042 Fix - Background Sync : GetLastSyncError() and other methods are not reset between restarts. BF-10051 New ! Introduced internal API level to make new features available based on server license version. BF-10057 New ! Support for zlib 1.2.8. BF-10059 New ! DB Engine : Support for data binding for faster database operations. BF-10064 New ! DB Engine : SQLite is now the only database engine supported. BF-10065 New ! System Object : New method to return the line separator character. BF-10066 Fix - Sync Engine : Incorrectly triggering client image reset when there is a modified server record on the client. BF-10067 New ! Settings : Dial-up settings options are no longer supported. BF-10073 New ! Synchroniser Object : New GetSynchronisedTableName and GetExecutedSyncRuleName to return table and sync rule names of the last background synchronisation. BF-10075 New ! DB Engine : Upgrade to SQLite 3.9.2. BF-10082 Fix - Tabs : Should not eat into the form area. -------------------------------------------------------- Version 8.1.0 -------------------------------------------------------- PR6746 Fix - DateTime Object : UTC offset is always positive. PR6768 New ! String Object : Added new methods (Insert, IntToChar, CharToInt, Repeat, TrimRight, TrimLeft). PR6798 New ! Math Object : Added new methods (ToDegrees, ToRadians, Sign). PR6807 New ! System Object : New ResetObjectState SetObjectState and SetObjectStateAsLong methods. PR6818 New ! DateTime Object : New GetMillisecondsAsString method. BF-10003 Fix - List View Data Grid: Crashes when focus given to edit data grid field, if the list view control is on the main form. BF-10005 New ! Ability switch user database through the settings. BF-10010 New ! Ability to delete the application database on start-up through settings. BF-10016 Fix - List View : SetColumnValue not updating row state (colour/image/enable-disable rules not re-evaluated). -------------------------------------------------------- Version 8.0.0 -------------------------------------------------------- PR4043 New ! Query Objects : Methods in data source tree to navigate through result set similiar to the system's Query object. PR5552 Fix - Date-time calculations: On Windows platform, diff operations on datetime values read from database may cause 1 second margin of error. PR5569 Fix - Expressions : Unexpected results may occur when using query objects in expressions running concurrently. PR5619 New ! Using SQLite version 3.8.4.2. PR5568 Fix - List View : Rules for row enabled, colour, and image are re-evaluated again if all the defined rules fail. PR5739 Fix - Email Object : Error sending emails on 64 bit Unicode Windows platforms. PR5983 New ! SOAP Client : Sends UTC offset to server in login() method. PR5944 New ! Aspects : Support for different control colours on each aspect. PR6485 Fix - Forms : Aspect algorithm does not calculate uncovered screen area correctly. PR6503 Fix - License Manager : Support for server license wipe out request. PR6523 New ! String Object : New IsXXX methods. PR6535 New ! Expression Engine : New Map object for storing name-value pairs. PR6645 Fix - Edit Control : Mask is read into Numeric Pad control on edit, even if 'include mask' is false. PR6686 New ! Support for activation screen if no project to load. -------------------------------------------------------- Version 7.2.0 -------------------------------------------------------- PR3951 New ! Forms : New "Action - On Orientation Change" event. PR4854 New ! DateTime Object : New methods to convert datetime objects to UTC time, and get the UTC offset in seconds. PR5369 New ! Button/Radio Button/Checkbox/Groupbox Controls : New method to set control caption. PR5409 New ! System Object: New method to retrieve push listener port number. PR5465 New ! All Form Controls : New method to position control on form. PR5479 New ! Forms : On Windows Mobile platform, A new form option to show form scrollbars automatically if the form is larger than the screen. PR5487 New ! Form Object : A new method to return the name of the current form aspect PR5515 New ! DB Engine : Using SQLite 3.7.14.1. -------------------------------------------------------- Version 7.1.4 -------------------------------------------------------- PR5438 Fix - System Object : GetDeviceId method fails randomly on Windows Mobile. -------------------------------------------------------- Version 7.1.3 -------------------------------------------------------- PR5392 Fix - Button Control : Does not keep caption text changes when form aspect changes. -------------------------------------------------------- Version 7.1.2 -------------------------------------------------------- PR5356 Fix - Database Engine : When using SQLite, searches are case sensitive on 'string' primary key columns. -------------------------------------------------------- Version 7.1.1 -------------------------------------------------------- PR5301 Fix - List View : Multi line does not obey column formatting to display the cell text. PR5302 Fix - List View : Data grid cell does not obey formatting. PR5306 Fix - Settings : Projects that are run from BrightBuilder still default to SQL Server Compact edition. PR5320 Fix - Settings : Depreciated user id field error message preventing the entry of other settings, when bss file is missing or corrupt. PR5321 Fix - App Distribution : When using SQLite, a database lock error is reported when dropping tables during the database upgrade process. -------------------------------------------------------- Version 7.1.0 -------------------------------------------------------- PR1317 New ! List View : Ability to display multiple line records. PR4301 Fix - App Distribution : Fails if user specifies project name in project settings before synchronising application from server. PR4313 Fix - Button Control : Image text is displayed with the text colour regardless of 'Colour' property. PR4946 New ! Database Engine : SQL Server/MSDE2000 database type is no longer supported. PR4984 New ! List View : Added IsRowDirty, GetColumnValue and SetColumnValue methods. PR5036 Fix - App Distribution : While processing app dist on start up, reseting device may lead to corrupt image or executable files. PR5120 New ! Forms : New cursor form method to get current record position. PR5156 New ! Edit Control : Text change action can now be enabled/disabled by using EnableActionTextChange. PR5192 New ! Array Object : New InsertAt method. PR5202 New ! List View : Support for dragable columns. PR5203 New ! List View : Support for alternate row colouring without using colour rules. PR5219 New ! Support for BrightServer 7 series. PR5251 Fix - List View : Data grid does not render shaded selection colour correctly. Always using default Windows selection colour. PR5264 New ! List View : Show grid lines on Window Mobile/CE. PR5265 Fix - List View : Editing data grid combo causes glitch chars on Windows Mobile. PR5266 New ! Database Engine : SQLite is now "the default" database engine on all platforms. PR5267 New ! Database Engine : Bundle the latest SQLite 3.7.13 which fixes complex SELECT query ORDER BY performance issues. PR5273 New ! System : Added new method Exit to terminate application. -------------------------------------------------------- Version 6.2.4 -------------------------------------------------------- PR5224 Fix - List View : Editing Data grid values glitch out other columns' values on Windows Mobile. PR5252 Fix - List View : Hitting return key in data grid edit control causes BrightForms to crash on Windows Mobile 6.5 -------------------------------------------------------- Version 6.2.3 -------------------------------------------------------- PR5160 Fix - Edit Control : Autocomplete not working on Windows tablets. PR5199 Fix - SOAP Client : Serializing float objects may result in approximate float values when sent to server. -------------------------------------------------------- Version 6.2.2 -------------------------------------------------------- PR4881 Fix - List View : Data grid button cell text populated incorrectly. PR4882 Fix - Unique Device Id On Windows Mobile Platform : Motorola ES400 devices all return the same device id. ***** CAUTION : ON WINDOWS MOBILE DEVICES, THIS FIX WILL CHANGE THE DEVICE ID THAT IS SHOWN IN THE ABOUT BOX !!! BEFORE DEPLOYING THIS VERSION ON A WINDOWS MOBILE DEVICE, FIRST RETIRE DEVICE LICENSE ON SERVER. ***** -------------------------------------------------------- Version 6.2.1 -------------------------------------------------------- PR4823 Fix - Forms : Same form opening multiple times concurrently (for instance via a form timer expression) will freeze previously opened form(s). -------------------------------------------------------- Version 6.2.0 -------------------------------------------------------- PR2850 New ! Support for SQLite PR4249 Fix - Array Object : RemoveAt(String arrayName, int index) does not check index for out of range. PR4326 Fix - Synchroniser : Background sync receiver not responding, requires BrightForms restart. This occurs if BrightForms starts without a valid IP address. PR4679 Fix - CheckboxControl : DoClick does not toggle the checkbox. PR4700 Fix - Forms : Forms opening may lose focus and lock up BrightForms, if form open is triggered by a form timer, a background sync or a data push event. PR4701 Fix - Forms : Forms quickly losing focus on open results in OK unresponsive. Related to the above PR4700. PR4752 Fix - List View : Restores persisted sort column name and sort type even though it is no longer sortable. PR4768 Fix - Device Id : Excluding network interfaces containing WIRELESS keyword. PT4769 New ! Forms Manager : No longer caches form defs to reduce memory footprint. -------------------------------------------------------- Version 6.1.1 -------------------------------------------------------- PR4326 Fix - Synchroniser : Background sync receiver not responding due to socket read block, requires BrightForms restart. PR4471 Fix - Server SOAP Client : Sending credentials in incorrect sync mode potentially causing data loss on server if client session times out on server (introduced in 5.2.0). -------------------------------------------------------- Version 6.1.0 -------------------------------------------------------- PR3720 Fix - File Object : If it is unable to load/save files, expressions do not proceed. PR3721 Fix - File Object : IsFileFound() returns true even if no file is found. PR4078 Fix - Button Control : Image buttons no longer need all images be specified (for instance the 'Disabled' image will now be displayed without the 'Down' and 'Focused' images). PR4123 Fix - Debugging : In watches, double values with more than 2 decimal points are rounded. PR4124 Fix - Forms : Desktop Version - If the form title is hidden, then dialog does not have a border. PR4137 Fix - Button Control : Image Over Text does not obey the text colour. PR4149 New ! Phone Object : New object to initiate voice calls. PR4152 New ! Form : Support for new form actions to run expressions on completion of push and background sync events. PR4153 New ! Synchroniser Object : New methods to return the last server push message result code, the last successful push event time, the name(s) of tables in which the new data is received from server. PR4154 Fix - Synchroniser : Cannot consume server deletions if a primary key value is an empty string in compound primary key situations. PR4155 Fix - Protocol mode defaults back to old BrightServer 3.x if unable to read from Windows registry. PR4162 Fix - Forms : 'Hide Menu Bar' attribute does not hide the menu on Windows Mobile devices. PR4176 Fix - Languages : User defined resources do not work for "Default" language. PR4189 Fix - Combo Box : Now keeps current selection after background sync refresh. PR4205 New ! System Object : Added GetDeviceIdAsBase64 method to return the unique device id as a Base64 string. PR4206 Fix - Debugging: Freezes when setting form or child form properties in debug Watches window. PR4214 Fix - Query Advanced SQL : Unable to delete records if 'select * from ...' not used. PR4217 New ! System Object : Added GetIpAddress method to return IP address (or a comma separated list of addresses). PR4219 Fix - App Distribution : App update message box can block background synchronisation. PR4222 Fix - Synchroniser Object : Connect method can suspend expression execution if the app update message box is clicked away. -------------------------------------------------------- Version 6.0.0 -------------------------------------------------------- PR140 New ! Multi language support. PR821 New ! Query : New "Advanced SQL" type to specify direct SQL SELECT statements. This is aimed at advanced users. PR1358 New ! BrightForms Loader : Desktop version with splash screen. PR2092 Fix - Server Direct Access Mode : Server logins and logouts are now minimised for faster online mode operation. PR2157 Fix - List View : Column sort does not work with alias columns. PR2159 Fix - Numeric Keypad: Allow keyboard numeric keys to be used when entering numbers. PR2432 New ! Support for debugging. PR3403 Fix - Synchroniser : It now disables sync rule after ExecuteSyncRule() is executed. PR3470 Fix - Sync Engine : Error processing dates received from server greater than 03:14:07 UTC on Tuesday, 19 January 2038. PR3495 Fix - Sync Progress Dialog : Now auto scrolls to display the last sync message. PR3496 New ! Sync Progress Dialog : Larger dialog for desktop version. PR3544 New ! Database Engine : SQL Server Compact Edition support for desktop version. PR3554 Fix - BrightForms Loader : The timeout error dialog has been removed to eliminate user confusion. PR3557 New ! Forms : Added new methods to display system's Settings and Form Help dialogs under program control. PR3558 New ! Forms : Added new form properties to hide form title bar and help menu. PR3559 New ! List View : Added a new property to hide list view headers. PR3588 New ! Combo Box : Added the new "SetDisplayColumn" method to select the database column to be displayed at runtime. PR3593 New ! List View : Added new methods for managing listview columns. PR3596 New ! List View : Added a new property for disabling data load on form open. PR3597 New ! Combo Box : Added a new property for disabling data load on form open. PR3604 New ! List View : Added two new properties to disable data load when the listview is hidden and/or disabled. PR3605 New ! Combo Box : Added two new properties to disable data load when the combo box is hidden and/or disabled. PR3607 New ! Database Object : Methods to find the number of un-synchronised changed records in a table. PR3609 New ! System Object : Added the new 'GetDeviceName' method to fetch the name of the device. PR3619 New ! GPS Object : Added the new "CalculateDistance" method for finding distances between two GPS coordinates PR3622 New ! Math Object : New object providing new advanced math functions. PR3631 New ! Array Object : Added the new 'RemoveAt' method to remove a value at the specified index from the named array. PR3632 Fix - Forms : Maximised attribute is now correctly obeyed on PDAs so that forms smaller than screen can be created with or without a title bar as floating dialogs. PR3656 New ! Forms : Cursor form navigation via the Form object's cursor methods is now enabled even if the form does not have a cursor bar. PR3663 Fix - Button Control : Captions and button images stay the same on aspect changes when the device orientation is changed. PR3673 Fix - Server SOAP Client : It loops indefinitely if server is unable to process authentication messages due to incorrect cookies etc. PR3676 New ! Database Engine : SQL Server CE is now also the default database on desktop. PR3678 Fix - Bitmap Control : (Windows Mobile Only) Cached images now correctly return NULL when assigned NULL. PR3686 Fix - Forms - Aspect screen orientation changes no longer override explicitly called enabled/visible methods. PR3696 Fix - Blob Object : GetByte() method returns random values if byte index is out of bounds. PR3699 New ! System Object : New language methods to query and switch between languages in a multi lingual application. PR3710 Fix - DateTime Object - GetDayOfWeek results in incorrect values after SetDate method. PR3712 Fix - String Object : FormatNumber() crashes if format inputs too large. PR3719 Fix - String Object : FormatNumber() formats very large or very small doubles incorrectly. PR3722 Fix - File Object : Wildcards do not function properly for DeleteFile and FindFirst methods. PR3734 New ! Button/Radio/Label/Checkbox : Added DoClick() method to simulate user clicks. This works even if the control is hidden or disabled. PR3749 Fix ! List View : GetCurrentRowValue() does not return the correct value if selection is outside of internal cache limits PR3755 New ! Dropped protocol support for BrightServer 3.6.x or earlier versions. PR3757 Fix - String Object : SetChar() with incorrect input halts expression. PR3762 New ! Demo mode now limits number of controls that can be created on a form to 32. PR3812 New ! List View : Added methods SetSql and SetSqlParam to set a SQL SELECT statement and its parameters at run time to change the its content. PR3813 New ! Combo Box : Added methods SetSql and SetSqlParam to set a SQL SELECT statement and its parameters at run time to change the its content. PR3827 New ! Support for script queries. PR3832 Fix - Database Engine : Depending upon the naming of the primary key columns, BrightForms may save compound primary key values in incorrect order during the deletion of a record that has already been sent to server. PR3863 Fix - List View : It now does not revert to default header widths if any of headers is wider than the list view's width. Headers now can be wider than the list view's width. PR3883 New ! Synchroniser : Support for new Version 6 server sync reader API for managing sync data from server more efficiently and seamlessly. PR3920 Fix - Forms : Maximum no of controls on a form is no longer limited to 79. This limit has been removed. PR3979 FIx - Image Control: Windows Mobile Only - Images show up on top of text. -------------------------------------------------------- Version 5.3.1 -------------------------------------------------------- PR3635 Fix - Listview Control : Colour coding is not working. This is an introduced bug in 5.3.0 as result of the 'aspect' fix for addressing PR3613. PR3643 Fix - Forms : "Encountered an improper argument" error when using form child properties in pre-open and post-close form open expressions. PR3654 Fix - Combobox Control : Does not display the combo drop down after auto screen orientation changes in multi aspect mode. -------------------------------------------------------- Version 5.3.0 -------------------------------------------------------- PR3610 New ! Database Object : Added the new "SetCompactionSettings" method to set the database compaction settings. PR3611 New ! Database Object : Added the new "Compact" method to compact the database at runtime. PR3613 Fix - Aspects Backwards Compatibility : Does not correctly process form aspect definitions from previous versions. -------------------------------------------------------- Version 5.2.0 -------------------------------------------------------- PR3415 Fix - Expressions : Provided a fix so that "Condition - (Integer 0) == NULL" does not evaluate to TRUE any longer. "==" and "<>" operators now process the System "NULL" constant correctly. PR3420 New ! Added Japanese and Korean language options. PR3427 Fix - Form : ShowSyncDialog now returns -10519 to indicate that there was an application update from server. PR3436 Fix - Image Control : Images may not display empty regions when stretching porportionally. PR3437 Fix - Image Control : Assigning NULL will now clear the image with a white background. PR3438 Fix - Camera Helper : Utilises an external utility app (bscameraU.exe) to capture photos in order to minimise the memory footprint. PR3439 New - Image Control : (Windows Mobile Only) Added the "Cache Image" attribute to minimise the memory footprint. PR3466 New ! System Object : Added a new method that returns the BrightForms version. PR3450 Fix - System dialogs now update the title bar on Windows Mobile devices when they are opened. PR3455 Fix - Edit Control Numeric Keypad : If the initial value displayed in the edit field is a single digit, then the keypad does not register digit button clicks for the digit matching the initial value. PR3465 Fix - Stack overflow when unable to get the install directory from registry. PR3475 Fix - App Distribution - Server Direct Access Mode : Error (10087) trying to clear app dist table. PR3476 Fix - Database Engine (Windows Mobile - SQL Server CE Compact Edition 3.5 SP1) - Out of memory due to high number of concurrent database connections. Now database connections are managed to minimise the memory foot-print. PR3482 Fix - Bitmap Button : Now stretches button image if the image size is different to that of the button. PR3493 New ! Bitmap Button : Additional image attributes in aspects for more flexibility in setting bitmap button attributes in different aspects. -------------------------------------------------------- Version 5.1.0 -------------------------------------------------------- PR2976 New ! BrightForms Windows desktop version now ships in UNICODE. PR3298 New ! Scanner Object : Added EnableBeeper method to control the sound that the barcode scanner makes after a successful scan. PR3346 New ! NumberGenerator Object : Added GetMillisecondsSinceMidnight method that returns milliseconds since midnight. PR3360 Fix - Trace : Log files are now created using UTF8 encoding. PR3380 Fix - Trace : Changing trace level to "no trace" now closes the log file and releases it so that it can be copied without closing BrightForms. PR3389 Fix - Sync Progress Dialog : The user now cannot close the dialog while synchronising. PR3393 Fix - Scanner Object : Now enabled in Windows CE builds. -------------------------------------------------------- Version 5.0.1 -------------------------------------------------------- PR3310 Fix - Now logs error when unknown data type is received from server, and handles "short" and "byte" data types by converting them to "integer". PR3312 Fix - Forms : Now switches to the correct aspect as the device changes its orientation. -------------------------------------------------------- Version 5.0.0 -------------------------------------------------------- PR1495 New ! Forms : Added support for form menus. PR2468 New ! Support for SQL Server Compact Edition 3.5. PR2549 Fix - Scanner Object : Revamped the multi scanner architecture to fix parent and child form issues and user interface lock ups. PR2954 New ! Database Object : Add new transaction methods to start, commit or rollback a transaction. PR2986 New ! Image Control : Added style "Stretch Proportionally". PR3116 Fix - Reports : Now can print reports on Windows Vista. PR3118 New ! Radio Button Control : Added new methods to enable/disable or show/hide individual radio buttons in a group. PR3139 New ! Reports : (Windows Mobile Version) Updated print library PR3215 New ! License Manager : Multi MAC address support PR3241 New ! System Object : New methods for setting and getting the default aspect name, querying screen dimensions. PR3246 Fix - Forms : Default form (base) aspect is now also used when selecting the best aspect depending on the screen size. PR3251 New ! File Object : Added new methods FindFirst, FileNext etc. to iterate through files or subdirectories in a specified directory using wildcards. PR3256 New ! Listview Control : Added multiple selection support together with GetSelectedCount() and IsRowSelected() methods. PR3275 New ! Database Engine and Synchroniser : Support for BrightXpress "row id"-less mode. PR3278 New ! Number Generator : Added a new GetGUID method to return GUID strings. PR3293 Fix - Form Object : ShowSyncDialog() method now ensures disconnection from server in small dialog mode. -------------------------------------------------------- Version 4.2.0 -------------------------------------------------------- PR120 New ! BrightForms Loader : Added a new user-defined splash screen functionality. The loader can now display a user created "_splash_.bmp" image file if it exists in the BrightForms install "bin" directory. PR2854 Fix - Edit control : Handles exception when an invalid mask is specified. PR2862 New ! Image Control : Added the "Style" option to centre, stretch, and tile images. PR2967 New ! GPS Object : Provided an additional new implementation using native Windows Mobile GPS API. The serial port implementation is still available. PR2970 Fix - GPS Object : Open method returns the result code correctly rather than returning always success. PR2971 New ! GPS Object : Added new methods to return GPS clock, satellites in view and fix quality. -------------------------------------------------------- Version 4.1.0 -------------------------------------------------------- PR2713 New ! Scribble Control : Added a new option to control signature image format when it is saved. PR2761 Fix - BrightForms now does not crash when DB is setup as a MSDE database which accidentally happens to be a BrightServer database. PR2784 New ! Scanner Helper : Does not unload scanner DLL once it is loaded. PR2808 Fix - Scribble Control : Clear() method does now return the control to its original size after a smaller or bigger image is loaded. PR2816 New ! Scribble Control : Added a new method SaveJPEGFile to save the content into a JPEG file. PR2821 Fix - Edit Control : Small number keypad fix to handle focus loss. PR2827 Fix - BrightForms Loader : If BrightForms is already running, the loader does not time out anymore. The loader now activates the current instance of BrightForms on the device. -------------------------------------------------------- Version 4.0.0 -------------------------------------------------------- PR916 Fix - Settings : Changed the default server port from zero to 8080. PR2189 New ! Support for BrightXpress. BrightForms now can connect to BrightXpress and synchronise data to and from it. PR2212 New ! About - Device ID Dialog : Added "Save to File" button to allow the user to save the "Device ID" to a file. PR2281 New ! Edit Control and Combo Box Control : Added "SetInputMethod" method to switch to different software input panel types (keyboard, transcriber etc.). PR2329 Fix - BrightForms loader (launcher mini-app) now does not time out if there is no project. PR2333 Fix - Form Image and Background Colour - It now displays the form image if both properties are defined. PR2334 Fix - DateTimePicker Control : "Action DateTime Change" event is now fired once. PR2356 New ! File Object : "Delete" method now supports wildcard characters in file names. PR2366 New ! Edit Control : Added "SelectText" method to highlight text programmatically. PR2376 New ! System Object : Added new methods "GetOSMajorVersion" and "GetOSMinorVersion". PR2402 Fix ! DateTime Object : "CreateDate" and "CreateTimestamp" methods now create the datetime objects with the correct day of the week value. PR2556 New ! String Object : Added SetChar and GetChar methods. PR2634 New ! Data Entry Controls : Added a new "IsDirty" method to check if the user has changed the control value after it is loaded or programmatically set to a value. PR2635 Fix ! Listview Control : Search on and off icons are now correctly displayed for multi table queries. PR2652 Fix - NumberGenerator : Now Ensures each subsequent call returns a unique number. PR2664 Fix - Extended loader's BrightForms startup timeout from 30 secs to 60 secs for larger projects to load without an error. PR2682 New ! List View : Support for hiding/showing list view columns via the new method "ShowColumn". PR2699 Fix - List View : Sortable - Cannot sort non-aliased columns if there are columns with the same name from multiple tables. -------------------------------------------------------- Version 3.5.1 -------------------------------------------------------- PR2651 Fix - Camera Object : SetResultion method now works on O2 Atom devices. -------------------------------------------------------- Version 3.5.0 -------------------------------------------------------- PR154 New ! List View : Built-in dialog to search the list view content. PR165 New ! Expressions - Introduced expression "local" variables that are only in the scope of the expression being executed. PR280 Fix - List View - First column now displays its defined alignment style correctly. PR694 New ! Sound support : System object now provides new methods to play Windows sound (*.wav, *.avi) files. PR790 New ! 'Automatic BrightForms Engine Distribution' is now supported via a loader application. PR818 New ! Server Time Synchronisation : If the server time is sent from server, BrightForms can now update the local device time with the server time sent. Note that the server time is sent as a GMT(UTC) time to device. This time is then converted to local time using the device time zone settings. PR848 New ! Synchroniser : It now allows the application designer to set an execution order for a sync rule via the new "SetExecutionOrder" method to execute sync rules in a predetermined order. PR970 New ! SMS Object : Added support for sending SMS text messages from BrightForms applications via "SMS" object. PR983 New ! Button, Checkbox, Radio Button and Groupbox Controls : Now support text and background colours. PR1232 New ! Camera Object : Added a new object to unify the camera functionality through the standard camera API available on the Windows Mobile 5.0 or later devices. PR1337 Fix - Scribble Control : On desktop, the mouse cursor does not disappear anymore when the cursor is in the scribble. PR1349 New ! System Object : Added new methods to get battery level and available disk space. PR1354 New ! ConnectionManager object : Added support for Pocket PC Connection Manager this new object. Use this object for establishing connections to server network (e.g. via GPRS or RAS). PR1411 Fix - Synchroniser : BrightForms now prevents the automatic power down from occurring while synchronising with server. PR1428 Fix - List View : Column sort attributes and header widths are now saved using the "ProjectName-->FormName-->ListViewName" hierarchy to prevent multiple project overwriting each other's values. PR1488 Fix - Form Colour/Form Background Image property is now rendered correctly if the form has tabs. PR1568 Fix - Symbol and Intermec Scanner support : Now dynamically loads scanner DLLs so that a single BrightForms CAB file can be used on all platforms. PR1641 Fix - Form System Event Notification : "On Cradle Detect" event now works correctly on the new Windows Mobile 5 devices. PR1642 New ! List View : Each row can now be "enabled" or "disabled" based on a rule defined. PR1643 New ! Edit Control : Added the small numeric keypad functionality for easy data entry on especially PDAs. PR1814 Fix - Upgrade CAB : Application name for Upgrade CABs is changed to "BrightForms Upgrade" so that they can be installed on WinCE 5.0 devices without trying to uninstall the existing BrightForms instance. PR1914 Fix - List View Data Grid : Now hides the SIP when an edit cell loses focus. PR1921 Fix - List View Data Grid : To prevent multiple records being updated when the user changes data and clicks on a list view header, the listviews are not sortable anymore in data grid mode. PR1951 New ! System Object : Added new methods to get the settings user name, database name, project path and new methods to set the settings user name, password, database name, and project path. PR1968 New ! Communications Statistics : When the trace 'Info' level is turned on, BrightForms now logs the estimated number of bytes sent and received during a synchronisation together with the estimated transmission times for GSM and GPRS to the trace file. PR1977 Fix - App Distribution : Now merges application settings changes even if the definition version is less than the one already on the device to handle the distribution of older versions of an application. PR1978 New ! Form : Form timer interval is now configurable via the new method "SetTimerInterval" of the "Form" object. PR2028 New ! Button Control : Now buttons can display images and defined button text (caption) together at a location specified on the image. PR2042 Fix - Sync Engine : Now correctly tracks message sequence numbers and table names to ensure correct delivery order of messages sent to and from BrightServer. PR2054 New ! List View : Added header sort and search visual indicators. PR2077 New ! Introduced the new "Scanner" object to unify the scanner functionality. Symbol and Intermec objects are now deprecated. PR2078 New ! Forms : Now forms can be minimised and maximised on desktop. PR2085 New ! String object: Added the following new methods : IndexOf, ReverseIndexOf, Compare, CompareIgnoreCase, IsEmpty. PR2117 New ! Label Control : Introduced "Action Click" property similiar to buttons. PR2120 New ! Settings : Added an option on the Dialup page to configure BrightForms to use Pocket PC "Connections" via the built-in Connection Manager platform. PR2147 New ! Form Tabs : Added a new attribute to define the tab text colour. PR2153 New ! Label Control : Added the new attribute "Underline" so that the label text can be underlined for hypertext purposes together with the desired text colour. PR2129 Fix - Forms : Background image is now correctly refreshed if SIP is open. PR2145 Fix - Form Default Button - Now works on Windows Mobile 5 devices. PR2175 Fix - List View - Sortable : Now disables sorting of list view string fields which are larger than 255 characters in a SQL Server CE database on Windows CE devices. PR2185 New ! Form Object : Added the new method "SetHelptext" to programmatically set the form's help text. PR2206 New ! Form Controls : The background colour and text colour can now be set at runtime using SetBackgroundColor and SetTextColor methods in expressions. PR2203 Fix - Forms : On desktop, if a form is a cursor form and has a background image, the background image is now correctly displayed. PR2207 New ! Forms : Added new methods to set the background and tab text colour in expressions at runtime. PR2213 New ! Scribble Control : Added the new method "IsDirty" to check if scribble is dirty. PR2258 Fix ! Application Distribution Framework : Now deletes the processed app distribution records from the database to save disk space. -------------------------------------------------------- Version 3.0.3 -------------------------------------------------------- PR788 Fix - DB Engine - SQL Server CE : Too slow to execute UPDATE statements -------------------------------------------------------- Version 3.0.2 -------------------------------------------------------- PR1982 New ! Settings : Added a new dialup option to keep the current dialup connection. If this option is selected, BrightForms will now not disconnect the dialup connection to reuse it later. This is useful especially when using packet based networks such as GPRS to minimise the time to establish a server connection. PR1996 Fix - XML Parser : Rolled back to the 2.x parser as the new version of the XML parser does not seem to be correctly handling the creation of the CDATA sections when wrapping texts containing CDATA tags during web services connector API calls. PR2002 Fix - Intermec Build Only : Incorrect insufficient stack size linker settings causing BrightForms to crash on Intermec devices due to stack overflow. -------------------------------------------------------- Version 3.0.1 -------------------------------------------------------- PR1958 Fix - Intermec Scanner : Now "null" terminates data buffer read from the scanner. -------------------------------------------------------- Version 3.0.0 -------------------------------------------------------- PR156 New ! List View : Now supports displaying images to indicate the status of the row data using a rule based framework. PR693 New ! Added a new object that can interface to NMEA 0183 GPS devices. PR695 New ! Data Grid Support : List view control now supports editing database records directly with the built-in data grid controls including dropdown box, checkbox, edit control, data-time picker etc. PR731 New ! Form Multi Layout Support : Added support for multiple aspects (layouts) for forms to be displayed on different devices with different screen dimensions. PR775 New ! Added support for global expressions and variables. PR973 New ! Added support for a simple DLL function invocation via the new DLL object. PR1175 New ! Added a new object to handle serial port communications in both text and binary modes. PR1178 New ! List View : New support for colour coded rows using a rule based framework. PR1423 New ! File Object : Added new methods to create and remove folders (directories). PR1434 Fix - Report : Calculation order for report data elements is now correctly implemented. PR1526 New ! A new background push listener component to process unsolicited messages sent by BrightIntegrator from a backend system. PR1527 New ! A new background synchroniser component to send and receive data in background without the user intervention. PR1528 New ! List view, combo and cursor forms are now automatically notified and refreshed when the data is updated in the background by the push listener or the background synchroniser. PR1529 New ! Added support for Intermec scanners via a new object called "Intermec". PR1530 New ! Added the support for serial port magnetic swipe card. PR1531 New ! Added a new Blob object for creating and manipulating binary streams. PR1533 New ! Number Object : Added new methods to process byte values. PR1534 New ! Synchroniser Object : Added new methods to support background synchronisation. PR1535 New ! System Object : Added GetOS method to identify the OS that BrightForms is running on. PR1536 New ! Security Object : Added new encryption methods. PR1553 New ! List View - Added GetValue and SetValue methods for updating listview cell value, mainly for listview grid data update purposes. PR1561 New ! Added a new "Array" object to provide a named container object for storing values in expressions. These named arrays are global in nature. PR1601 Fix - Report: Reporting engine now uses floating point values for millimetre coordinates rather than integer values to prevent rounding errors. PR1869 Fix - Sync Progress Dialog - Now displayed maximised correctly in landscape mode when used in expressions. PR1879 Fix - Data Unpacker: Now handles "Resultset is empty,10141" scenario. -------------------------------------------------------- Version 2.4.2 -------------------------------------------------------- PR1850 Fix ! Server SOAP Client : Now processes login page requests from multiple server contexts to address Vodafone network issues. -------------------------------------------------------- Version 2.4.1 -------------------------------------------------------- PR1474 Fix - Data Packer : Now handles the case where there is no column criteria correctly. -------------------------------------------------------- Version 2.4.0 -------------------------------------------------------- PR777 New ! Database Engine : The desktop (Win32) version now suports MSDE and SQL Server databases as its local store. PR1441 Fix - Sync Engine : Now tracks server messages correctly in order not to get the child table records from server unnecessarily, which may occur only under special circumstances for small packets of child data. PR1452 New ! List View Control : Added a new 'Read Only' attribute together with a ReadOnly method to disable or enable the control in expressions. -------------------------------------------------------- Version 2.3.0 -------------------------------------------------------- PR1333 New ! Report : The application developer now has the ability to assign the binary image data column to a report element for printing. PR1347 New ! BrightForms engine has been updated to run on non-PocketPC Windows CE devices. Please refer to "KNOWN BUGS AND ISSUES" section below for the related issues. PR1351 Fix - Sync Progress Indicator : The progress indicator is now removed if there was a server time-out error. PR1352 Fix - Application Distribution : It now does not proceed with application distribution if there was a synchronisation error during application distribution from the server. This prevents partial application updates occurring. PR1353 New ! Form : Now supports a new attribute 'Maximised' to display the form as a maximised window when it is opened. PR1359 New ! Form : Added support for JPGs. PR1363 Fix - Form : background image does not centre, if the image is larger than the form. PR1364 Fix - Soap Client : Removed retries for sending user credentials to server as it could result in bad sequence numbers on the server during synchronisation data from client to server. PR1366 New ! Edit control: Added multi line auto-scroll property. PR1367 Fix - Button: If the default button is disabled, it now does not execute the action-click expression on ENTER key press. PR1372 Fix - Form/Sync Progress Dialog : Form's ShowSyncDialog method now returns an error code correctly when the server communications times out. PR1381 Fix - Cursor Form : It now keeps the current record index correctly When a record is deleted by the user. PR1382 New ! Report Data Element : Added a new Stretch-To-Fit property. PR1383 New ! Report Bitmap Element : Added a new Stretch-To-Fit property. PR1402 New ! Scribble Control : Added read-only attribute so that the scrollbars can still function. PR1403 Fix - License Manager/Device Id : If the device does not provide the unique device id (serial number), BrightForms now generates an unique id when it is used first time. PR1409 Fix - System Object : RunProgramAndWait now does not block BrightForms and the external program that has been spawned. PR1412 Fix - Bitmap Control - Can now display base64binary field values from a database table column. PR1413 Fix - Scribble Control : Fixed the GDI memory leak when loading images. PR1422 Fix - Desktop version of BrightForms now uses HKEY_CURRENT_USER area in registry to store settings instead of HKEY_LOCAL_MACHINE which is still used by Windows CE versions. This fixes the user privilege related install and execution issues. BrightForms can now be installed and can run under "Limited User" accounts on the desktop. -------------------------------------------------------- Version 2.2.1 -------------------------------------------------------- PR1350 Fix - Sync Engine : It now does not rollback the transactions incorrectly in the event of a communications error when the last sync message is sent to server with the transaction complete flag on. -------------------------------------------------------- Version 2.2.0 -------------------------------------------------------- PR898 New ! Email : New object has been added for sending emails from BrightForms clients. PR1095 Fix - Edit control : Now accepts negative numbers in "Number" mode. PR1148 Fix - Sync Dialog : Now displays the correct error message when there are no licenses available on the server. PR1181 New ! List View Control : Now has the option to keep current scroll position after refresh. PR1182 New ! Report : Added a new option to directly print the report without the printer dialog is displayed for further confirmation. PR1210 New ! Report : Added a new option to the report group definition to print the group at the bottom of the page, if needed. PR1218 New ! Sync Dialog : Now has an activity indicator to tell the user that the synchronisation is taking place. PR1233 New ! Form : Now supports Windows CE system notification events. Now "on cradle detect" or "wake up" (turning the device on) events can be captured and an expression can be triggered from these events. PR1234 Fix - Sync Engine : It now returns the error codes correctly when a client-to-server sync request fails. PR1245 New ! Thin Client Mode : In BrightServer direct access more, added support for LockRecord and ReleaseLock API for locking individual rows on the server for multiple user backend applications. PR1254 Fix - Report : Data field calculation is carried out even if the report element is invisible. PR1255 New ! Form : Cursor form's built-in "You have made some changes. Do you wish to save the changes? " is now configurable. PR1256 New ! Form : Added a new configurable option for cursor forms to ignore the user changes without a user prompt. PR1257 New ! File Dialog : File path can now be specified by using SetPath method. This method does not work on Pocket PC devices as the default path is always set to "\My Documents". PR1261 New ! Report : Added a new option to reset page number by group. Page number can now be set back to 1 after a group is printed. PR1263 New ! Report : Added a new option to specify the number of copies to be printed. PR1264 Fix - List View Control : Now automatically goes down to the selection on SetSelection() method (i.e. it makes the list view selection visible.) PR1267 New ! Combobox Control: Added "number", "min", "max" and "precision" properties PR1269 New ! List View Control : Added new methods to get and set vertical scroll position. PR1282 New ! Form : Added a new method to jump to a required record programmatically in expressions. PR1296 New ! List View Control : Added a new action event to execute an expression on selection change. PR1302 Fix - Form : Cursor forms now does not jump back to the original jump location when the form is opened first time. PR1303 Fix - Form : Cursor forms now remain in the current cursor position on a cancel save event after form refresh. PR1304 New ! Edit Control: Added a number precision property to eliminate unnecessary expressions when loading data. PR1307 Fix - Form : If the form is read-only, then it now disables "New", "Save" and "Delete" cursor form buttons. PR1316 New ! Form : Added a new method enable/disable the display of the record position (Current Index/Total Count) on the form title. PR1319 Fix - System Dialogs : System dialogs now support PocketPC 2003 Second Edition landscape mode correctly. PR1320 Fix - CAB Installer : Handles "The program you have installed may not display properly.." warning message when installing BrightForms on PocketPC 2003 Second Edition devices. PR1321 Fix - Scribble: Enhanced the signature capture on Windows CE devices to enable user to input signature more accurately and faster. PR1325 New ! List View COntrol : Added a new method to return the number of row (records) in the list. PR1343 New ! Edit Control : Added a method to set "Read-Only" attribute programmatically. PR1344 New ! Edit and ComboBox Control : Added methods to launch or hide software input panel (software keyboard) programmatically on Windows CE devices. PR1345 New ! All controls : Added a new method "SetFont" to change the control's font at run time. -------------------------------------------------------- Version 2.1.1 -------------------------------------------------------- PR1179 Fix - Application Distribution : Now handles the project password file correctly without an error. -------------------------------------------------------- Version 2.1.0 -------------------------------------------------------- PR155 New ! List View : Now supports checkbox columns. The checkbox state is stored into the database table column selected. PR344 New ! Bitmap Control : Now supports horizontal and vertical bars. PR548 Fix - Edit Control : Default value property is not correctly used in a cursor form. PR682 New ! List View Control : The user now can sort the list content at runtime by clicking on the list view column headers. PR712 New ! Scribble Control : Now supports horizontal and vertical bars. PR733 Fix - Edit Control - Alignment now works correctly on Windows CE PDAs. PR734 Fix - BrightForms now handles the application distribution correctly when a different project or a previous version of the existing project is received from the server by clearing the application distribution table and resetting its sync timestamp. PR827 New ! Form : Now supports background bitmaps with different styles. PR884 Fix - Reports: Report parameters are now assignable to data-fields correctly. PR961 New ! Edit Control : Now supports minimum and maximum values for an integer data entry. PR972 New ! Security : New object has been added to provide security helper methods such as calculating MD5 digest. PR974 New ! Form : Added a new IsFormDataChanged method to check programmatically if the form data has been changed by the user. PR976 New ! DateTime Object : Added a new method "GetDayOfYear" to return the day number of the year. PR982 Fix - Form : "Action - New" is now executed only during the form open and post record deletion when there is no record in form data. PR991 Fix - Settings : Database compaction options are now hidden when BrightServer Direct Access is selected. PR998 Fix - Edit Control : Now implements format functionality correctly. PR1008 New ! BrightForms now supports branding by allowing the about box dialog to be specified by the application developer. PR1015 Fix - Settings File : Possible errors during load and save of the settings file are handled better with more informative user messages. PR1016 New ! System Object : Added a new method "GetProjectReleaseNumber" that returns the server assigned release number. PR1021 Fix - Sync Dialog : Does not continue with the synchronisation if a new application update is received. PR1032 New ! BrightForms now supports for commenting out statements in expressions. PR1041 New ! License Management : BrightForms now stores the license key also in bss settings file for easy recovery purposes. This is also useful for development for accessing multiple servers from multiple projects. PR1057 New ! Checkbox and combobox controls: Added new default value property for eliminating the need for an expression on form open or on new record creation. PR1059 New ! DateTimePicker and Button Controls : Both of the controls now provide new properties for 'Got Focus' and 'Lost Focus' events. PR1066 New ! Settings Password: Provides support for the password defined by the application developer which overrides the daily password for easier customer support. PR1088 New ! BrightForms can now handle large applications by processing form files split into individual separate bff form files. PR1089 New ! List View : The application designer can now change the sort order at runtime by using the SetSortOrder method. PR1108 Fix - Sync Dialog does not show timeout message unnecessarily even after successfully disconnected from server after another server connection timeout elapses and the sync dialog is not closed. PR1115 New ! Dial-up : BrightForms now prompts the user with a dialog if the user name and/or password is empty before initiating the dial-up. PR1120 New ! String Object : Added a new method "Replace" for searching and replacing texts in a string. PR1130 New ! System Object : Added a new method "GetTodaysPassword" that returns today's BrightForms settings password. -------------------------------------------------------- Version 2.0.8 -------------------------------------------------------- PR1024 Fix - Forms : Hitting ENTER (Return) key on SIP (Software Input Panel) on Pocket PC devices does not close the form anymore. It now executes the default button's action similar to the desktop version. -------------------------------------------------------- Version 2.0.7 -------------------------------------------------------- PR1024 Fix - Sync Engine : It now does not update client row ids with server assigned ids for tables marked as 'Auto delete' as they are deleted from device anyway. When considerable number of records are involved, updating takes a very long time on the PDAs and causes a timeout. -------------------------------------------------------- Version 2.0.6 -------------------------------------------------------- PR623 New ! BrightForms can now compact the application database when the application is started, if the database compaction options are set in the Settings dialog. PR899 Fix - Trace : 'Error 10671' - "Could not find settings" appears for unknown reason. PR944 New ! Report : Data field and label elements now have a new word wrapping attribute. PR945 Fix - Report : A datafield in the group header will not display data, if it appears after a data field with a column function. PR953 Fix - Trace ; Changed trace level from ERROR to DEBUG for the result code 10042. PR957 New ! Trace : It now logs the BrightForms version when the tracing is turned on. PR958 New ! Report Object : New 'AssignIf' method for assigning conditional values to report data elements. PR960 Fix - HTTP Client : Calls to server fail when using SSL in 2.0 BrightForms http client component. PR992 Fix - "Help-->Project" menu selection sometimes causes BrightForms to hang under Windows 2000. PR993 Fix - Unzip Utility : Generates an 'Out of Memory' message and causes BrightForms to crash when decompressing massive amount of compressed data received from server. -------------------------------------------------------- Version 2.0.5 -------------------------------------------------------- PR819 New ! Trace Object : New object that allows application programmer to create log entries in the BrightForms trace file. PR911 Fix - Form Object : DisableTimer method now works correctly if it is called in a form Open expression. PR912 Fix - Forms : BrightForms does not close the current form anymore, if the user is prompted for saving changes and an input rule fails. PR916 New ! Settings : Default server port is now 8080. PR922 New ! Cursor Form: (Record Position/Record Count) indicator is now moved in front of the form title text. PR929 Fix - Scribble : When loaded with a smaller image (smaller than its size), it now clears the rest of its rectangle with the backgrund colour selected. PR932 Fix - Query Object : Now handles online query results as well PR933 Fix - If a cursor form is empty, BrightForms calls the expression assigned to 'Action - New' and does not dirty the form data anymore. PR934 Fix - Radio Button: if value being set is NULL, then the radio group value is set to the default radio button value. PR935 Fix - Query Object : SetSql method now returns void, as it only stores the SQL statement, but nothing else. PR941 New ! Report label and data fields: Added "clipped" property. -------------------------------------------------------- Version 2.0.4 -------------------------------------------------------- PR930 Fix - Online Queries : In expressions, updated online query results can now be reloaded. The user just needs to set one of the query parameters to trigger the reload. PR931 New ! Synchroniser Object : It now returns a negative result (-10519) indicating that new application updates have been received from server so that the application designer has the option to abort the synchronisation process, if needed. -------------------------------------------------------- Version 2.0.3 -------------------------------------------------------- PR924 Fix - Synchroniser : Implemented a mechanism for the calls made to server to timeout properly (a workaround for Microsoft WinInet API timeout bug). PR927 Fix - Report Data Field: It now clips to its rectangle. -------------------------------------------------------- Version 2.0.2 -------------------------------------------------------- PR913 Fix - Data Unpacker : Optimised the data store layer to speed the processing of the data from web services. -------------------------------------------------------- Version 2.0.1 -------------------------------------------------------- PR787 New ! Server message timeout now can be configured in the "System" tab with a default of 300 seconds (5 minutes). PR904 New ! Trace : BrightForms does not have to be restarted anymore when the trace level is changed. The new trace level now takes effect immediately. PR909 Fix - Synchroniser : "Connect" method now prompts the user when new application updates are received from server. PR910 Fix - Query Helper : SetQuery, SetSQL and SetQueryParam methods now force Query object to re-run the query. -------------------------------------------------------- Version 2.0.0 -------------------------------------------------------- PR524 New ! Support for printing on CE and Windows desktops PR525 New ! Support for barcode devices on Symbol PDAs PR820 New ! System Object : A new method to return device id PR823 New ! Form : A new method to return current tab number PR860 New ! Synchroniser : New methods for connecting, executing sync rules and disconnecting from server PR861 New ! System Object : A new method to set the current dialup RAS name PR862 New ! DateTime Object : A new method to get the current date-time as string using a user format PR859 New ! System Object : New methods to return project id, description, author, version PR864 New ! Support for accessing BrightServer via a proxy server PR867 Fix - Form : ShowTab method now functions correctly. PR869 Fix - Synchroniser : Does not crash anymore when synchronising tables with same names but different table structures from server. PR876 New ! During startup, BrightForms now provides more informative messages in the event of any error. PR888 Fix - Application Settings : Datetime values are now saved correctly in UTC format. PR893 Fix - Label : It now refreshes its text while being updated in an expression. PR894 New ! Query Object : Has added a new method HasRecord. HasNext method has been deprecated. PR895 New ! System Object : Has added a new Sleep method. PR903 New ! Increased the maximum number of forms to 3 (three) in demo mode. -------------------------------------------------------- Version 1.6.0 -------------------------------------------------------- PR721 New ! Form : Added a new method to check whether the form data has been loaded successfully or not. PR728 New ! Listview: Added a new method SetSelection to change list view selection. PR730 New ! Form : Displays form specific user help written by the application designer ("Help-->Form Help..." menu option). PR745 New ! Query : Added a new Query object for expressions where a query or a SQL SELECT statement can used. PR764 Fix - System : RunProgram and RunProgramAndWait does not work if the application name specified contains spaces. PR783 New ! Database : Added a new method to reset the timestamp for the table specified. PR784 New ! Project File : Can process encrypted forms bsf files. -------------------------------------------------------- Version 1.5.5 -------------------------------------------------------- PR780 Fix - Now sends the client trace file to server from the correct location (bin\log directory) PR786 Fix - Synchroniser : When sending data to server, it now sends the records in blocks, rather than a single big block -------------------------------------------------------- Version 1.5.4 -------------------------------------------------------- PR774 Fix - Synchroniser : Processing large number of deleted records is slow, and causes time-outs and sometimes crashes BrightForms -------------------------------------------------------- Version 1.5.3 -------------------------------------------------------- PR748 Fix - MS SQL Server CE database engine now returns BigInt values. PR749 New ! Database Object : Added new methods to execute SQL statement directly on the database engine and to discover the database engine type -------------------------------------------------------- Version 1.5.2 -------------------------------------------------------- PR732 Fix - Edit Control : Under Pocket PC, If read only, it does not display SIP anymore on get focus event. PR736 New ! BrightForms Settings : The user can now specify separate dial-up user name/password in "Dialup" settings tab. -------------------------------------------------------- Version 1.5.1 -------------------------------------------------------- PR729 Fix - Form : Cursor form throws exception if the form data is refreshed in new record mode. -------------------------------------------------------- Version 1.5.0 -------------------------------------------------------- PR598 Fix - List view does not refresh if all of the query parameter values are not available PR643 New ! Trace log files are now stored under a new "log" directory where the BrightForms is installed. PR662 Fix - Settings dialog will be password-protected only if the project setting is set to true. If no project can be loaded, then the user are permitted to change the settings. PR666 New ! Buttons now supports 'Default Button' attribute. PR672 New ! Multiline edit controls now has 'Horizontal Scrollbar' option. PR683 New ! Added new methods to convert the signature object to a scribble object. Now the user can load and save bitmaps from the scribble object. PR686 New ! Added a new expression WHILE statement for implementing loops. PR687 New ! Added a new expression CALL statement for executing other expressions within the same form. PR692 New ! Added a new Zip Object that helps the user zip/unzip binary streams. PR697 New ! List view now displays NULL values as empty strings. PR698 Fix - Form : Now control value changes in expressions do mark form data as 'dirty'. PR708 Fix - Form : Cursor form now stays at the current record being modified after user cancels the ‘Save’ dialog after clicking on the ‘New’ toolbar button. PR717 New ! Database Object : Added a new method to export data to an external database (e.g. a pocket access cdb database) PR719 Fix - Form : It now displays en error when the form data cannot be loaded. PR720 Fix - List view now displays an error when the listview cannot be refreshed. PR723 Fix - System : RunProgram and RunProgramAndWait methods now work correctly under Windows CE. PR724 New ! DateTime : Added new methods to get date and time details (day, month, hour, minute etc.). -------------------------------------------------------- Version 1.4.2 -------------------------------------------------------- PR680 Fix - Edit control now displays new line characters properly. A CR is inserted before a new line charater, if there is not one. PR668 New ! Added new methods to Number object to validate integers and doubles PR669 New ! Added GetChildFormVariable method to Form object to get child form variables on post close expressions PR670 New ! Added cursor form navigation API to Form object to drive the record navigation from expressions -------------------------------------------------------- Version 1.4.1 -------------------------------------------------------- PR645 New ! Group Box : Now allows its caption to be changed PR647 New ! Query now allows the user to define a NULL constant in query conditions and a new NULL system constant is available for use in expressions -------------------------------------------------------- Version 1.4.0 -------------------------------------------------------- PR153 New ! List View : It now saves the listview header widths set by the user PR168 New ! Bitmap buttons are now supported PR171 New ! Edit Control : It has now a user defined mask to control the user inputs more strictly PR589 New ! Forms have now a timer object that can run user defined expressions (e.g. implement auto sync on a defined interval) PR604 Fix - Sync Progress Dialog now correctly displays the number of changed and deleted records received from server PR608 Fix - Sync Engine CE : SQL Server CE was returning the error 8007000e after inserting multiple records (over 50) in a single transaction PR620 New ! Tracing : BrightForms now can transfer the client's trace file to the server when requested by the sys admin at the management console. PR624 Fix - BrightForms Win32 Setup program now creates file associations correctly for bss files PR627 Fix - Sync engine now synchronises the tables in the relationship order set by the user PR631 New ! Added a new "Number" object for numeric conversion and manipulation PR634 Fix - Control "SetFocus" method now switches to the tab if the control is on a different tab PR635 New ! Form : New method "ShowTab" to switch between tabs, if the form has a tab control -------------------------------------------------------- Version 1.3.1 -------------------------------------------------------- PR576 New ! Bitmap : Now has an optional flag to display or hide its border PR581 Fix - Sync Engine : Now resets the sequence number for each table during synchronisation from server PR583 New ! Form : Form object now has a 'CancelClose' flag to control the form closing action -------------------------------------------------------- Version 1.3.0 -------------------------------------------------------- PR572 New ! Form : Added a new 'Refresh' method to re-load form data PR574 New ! Form Cursor Form Navigation Bar : Enables/Disables navigation buttons depending upon the cursor location PR437 New ! Application Distribution : BrightForms now uses the flag sent by the server to drop or alter existing tables with data. PR563 New ! Sync Progress Dialog : When auto-close flag is set to true, it now displays a smaller dialog with a simple message displayed to the user. PR569 New ! BrightForms now uses the latest version 2.0 of the SQL Server 2000 CE Engine. PR213 Fix - Introduced a single 'Colour' flag.Two colour enable flags were not working independently on edits and labels. Introduced a single flag. PR553 Fix - Forms display background colour correctly. PR513 New ! Thin Client Support : Implemented a new DBEngine to directly interact with the server over SOAP. Users can design thin client applications that can run at the back-office or in the field over packet based data networks. PR514 New ! Query : Implemented support for calling stored procedures directly on BrightServer PR515 Fix - Radio Button : Changed notification handling from radio buttons that are not part of load map PR521 New ! Form : Added a new method to prepare the form for creating new records PR522 New ! Controls : Added a new method to set the focus to the selected control PR523 New ! Settings Dialog : Access to this dialog now can be password protected. PR530 New ! Edit and Combo box Control : Added a new control attribute to display SIP (Soft Input Panel) when focused (Under Windows CE Only). PR543 Fix -Listview.GetCurrentRowColumn now works correctly if listview items is selected through the keyboard PR544 New ! New method added to System object to verify the user name and password so that a proper login form can designed. PR545 Fix - Signature control now handles the control size changes. PR546 New ! Online Query : If the online query cache directory does not exist, it now creates it PR551 New ! Signature : New supports backgroung and pen colour -------------------------------------------------------- Version 1.2.0 -------------------------------------------------------- PR489 Fix - Online QueryExecuter not positioning the cursor to the first record. Cursor forms were not functioning properly because of this bug. PR492 New ! Sync dialog now displays the error descriptions. PR425 New ! Table : Added a new table attribute to identify a table as 'Online Table' PR426 New ! Form : Added new action attributes (OnChangeTab, OnSave, OnDelete) PR427 New ! Impemented support for Online Queries PR472 Fix : Combobox - Does not select the correct string -------------------------------------------------------- Version 1.1.0 -------------------------------------------------------- PR253 New ! Include some default settings when creating BSS file so that BrightBuilder can run new projects without errors PR413 Fix - Controls displayed on the wrong tab PR414 New ! Settings/User tab - Allow user id = 0 PR415 New ! Change Project File open file filter only *.bss files PR404 Fix - Combo box out-of-bound bug PR409 New ! Some RASClient improvements PR410 Fix - Dial-up passsword bug in RAS Client PR160 New ! Embedded resource strings into the application string table for I18N PR167 New ! Added a new signature control PR332 New ! Added Distinct qualifier to the queries so that the database engine can return distinct rows PR333 New ! Added a new File object PR335 New ! Added a new String object PR365 New ! Combo Box - Added new methods PR367 New ! Cursor form now can jump to a record specified by the user by its primary key values PR376 New ! Implemented timeout in sync progress dialog PR379 New ! Added a new System object PR398 New ! Implemented licensing -------------------------------------------------------- Version 1.0.0 -------------------------------------------------------- PR358 Fix - Child.HasCursorBar=true is issuing a BSFormExecuter MFC Application error. PR358 Fix - Form.Title not working for Action-Click, post-close and pre-open expressions -------------------------------------------------------- Version 1.0.0-RC3 -------------------------------------------------------- PR346 Fix - Syntax problem in GROUP BY clause PR164 Fix - FormData object now removes the non parent columns PR271 Fix - Multiple app windows on the Start Bar in Win32 PR347 Fix - Form data now calculates the result set correctly when column functions used. -------------------------------------------------------- Version 1.0.0-RC2 -------------------------------------------------------- PR339 Fix - Combo box : In combo mode the Change selection event is not triggered. PR340 Fix - List View : No selection click is filtered PR341 New ! Added DateTime:Format method to convert datetime to string //------------------------------------------------------ // KNOWN BUGS AND ISSUES //------------------------------------------------------ PR173 List View - Immediate refresh sometimes does not work with the MS Access databases PR351 List View - When column functions are used in the listview query, the listview scroll bar does not reflect the correct number of items. PR480 Radio Button:(BrightForms Desktop Version Only) For forma with tabs, default radio button for the last button on the last tab not adhered to with tabs. On tab change, it also reverts to the last radio button on the last tab of the form. The workaround is to define Tab Order values for the radio button. PR519 Combo Box - Combo's drop down pane is not shown properly under XP using Windows Classical theme. Because of that controls under that (even though they are visible) do not get click events. PR709 DB Engine - MS Access: Updating a Memo field with a large binary data does not work. MS Access does not return any error, however it does not update the column either. Creating new records with large binary data is OK though. PR1062 Button Control - It does not properly indicate visually that it has been focused after a SetFocus method call. PR1257 File Dialog : SetPath method does not have any effect on Pocket PC devices as the file open or save dialogs do display by default "\My Documents" folder when they are launched. PR1314 Email - During testing it was found that on Pocket PC 2002, sending an email using an account other than the default ActiveSync message store (or account) will result in failure to send. Email sent using the default account on ActiveSync will succeed. PR1356 Email - Is not supported for non-PocketPC Windows CE devices. PR1357 Windows CE : BrightForms icon does not disappear from the system tray after BrightForms is closed until the user click onto the system tray. PR1374 List View : Invalid format strings specified for listview columns result in an unhandled exception, and causes BrightForms to close. PR1378 Form/Control SetFocus method : SetFocus method of form controls does not function when called from an Action-Open expression, as the form (and the controls on it) has not yet been displayed. PR1394 Edit/ComboBox Control : Min and max values are checked regardless whether the control value is saved or not. PR1399 Edit Control : Flickers when the content is updated too often when displaying progress messages to the user. PR1980 Initiating GPRS via RAS Dialup : Driving GPRS via a RAS dialup option seems to put the RAS connectivity into an unstable state after few connections and disconnections. Use ConnectionManager to avoid this issue. PR2039 Reports: If a report section is greater than the length of the page, then only the first page of the section is printed. PR2205 Forms : The "Form.Close" method in a Pre-Open expression marks the parent form to be closed. The parent form will be closed after the child form is closed. PR2858 Form Tabs : On Windows CE devices, a tab name containing double ampersand (&&) causes the tab name to be displaed on a completely different location on the form. PR3727 System Object : PlaySound() method always returns 0. If the sound file is not found or cannot be played, it plays the default sound. PR3918 List View : Column sort on function columns does not appear to work with the MS Access databases. MS Access seems to be ignoring the ORDER BY clause. //------------------------------------------------------ // INSTALLATION PROCEDURES //------------------------------------------------------ Please refer to "Install.txt" provided. //------------------------------------------------------ // NEXT PLANNED RELEASE //------------------------------------------------------ TBA