Make a backup of your current Servoy installation (directory and database) before installing.
This version will be available shortly through auto update for users of versions later than 3.5 b2 (check via help menu -> check for new version)
Changes
[new] databaseManager.mergeRecords function, see below
[new] DBTreeView.isNodeExpanded function, see below
[new] i18n.getTimezoneOffset function
[enh] changed names of auto-discovered relations from foreign key to allow multiple FKs to the same table
[enh] rich client I18N dialog showDialog call now accepts optional key_to_select
[enh] tooltips in webclient
[enh] form shortcuts can be used in form-in-dialog
[enh] remember form dialog boundaries when showing in a dialog
[enh] support for tags in html buttons
[enh] added the option to encrypt traffic over the http tunnel using the new SocketFactory.http.tunnel.encryption boolean property
[enh] labels defined with 'labelFor' property will follow enablement and visibility of the element
[enh] numpad decimal key will enter ',' or '.' depending on locale
[enh] DbTreeView bean will dynamically update tree on data changes in records
[chg] Launch Servoy Client web page offers to install Java 1.6 instead of 1.4
[chg] I18N editor focuses filter field rather than key field
[chg] improved hasRecordChanges: -1 or 0 or nothing means complete foundset
[chg] foundset.duplicateRecord not duplicating in find mode
[chg] all tab panels are transparent as long as the background color isn't set
[fix] requestFocus function fix in the web client
[fix] image update problems in web client
[fix] tabpanel repaint problem
[fix] if a form is disabled, do not disable the scroll-bars so that the form can still be seen
[fix] smart-client disable/enable on fields from table view had no effect
[fix] web client printPreview for Internet Explorer did not work
[fix] fields that have onFocusGained events registered on table view and list view forms could not be focused
[fix] media fields with scrollbars property set to 'never,never' on disabled forms would not update
[fix] foundsetUpdater would not update when on last row
[fix] valuelist based on relation didn't get updated after creating or deleting related records
[fix] rowbgcolor not working properly on a disabled field in table view
[fix] wrapping lines in HTMLAreas, Test Areas and Labels with HTML were chopped when printed
[fix] exception when exporting solutions with value lists on tables that have been dropped
[fix] incorrect xml in solution export
[fix] when forms were renamed, the new name didn't show in the menu
[fix] allow user override of auto-enter type for identity columns
[fix] security preferences screen would not show a list of users when there were many users
[fix] slow opening of preferences window when having many tables or views
[fix] type-ahead popup can be wider than type-ahead field width
[fix] bold and italic font styles can now be reset to plain in web client
[fix] empty strings treated as null for validators so the validator won't be called for them
[fix] on record edit start executed on entry in web client instead of on exit
[fix] printing popup window always correctly shown
[fix] web client portal headers no longer bold
[fix] isFormInDialog will only return true if the form is in a dialog and the dialog is visible
[fix] printpreview fixes when the print preview is shown in a dialog
[fix] protected solution security issue
[fix] workaround for text starting with 'W', because of JVM left side bearing issue
[fix] popup menu window position (popup plugin)
[fix] show tab for tabpanel if it has one tab and its orientation is not default
[fix] disabled browser autocomplete
[fix] screen not refreshed when using history.back() in web client
[fix] many DBTreeView bean fixes for web client
[fix] when deleting an entry in the I18N editor, the wrong entry might be deleted
[fix] elements.setImageURL() did not work in web client with AJAX turned on
[fix] joins and sorts on relations (based on calculations)
New functions
Servoy 3.5.1 introduces two new Javascript functions; databaseManager.mergeRecords and DBTreeView.isNodeExpanded
databaseManager.mergeRecords
This function is very handy in situations where duplicate data is inserted. It allows you to merge the two records and move all related records in one go. Say the sourceRecord is Ikea and the combinedDestinationRecord is IKEA, the Ikea record is deleted and all records related to it (think of contacts and orders, for instance) will be related to the IKEA record.
mergeRecords takes an optional array of column names. If provided, the data in the named columns will be copied from sourceRecord to combinedDestinationRecord.
The function returns a boolean indicating success or failure.
Note that it is essential for both records to originate from the same foundset, as shown in the example below.
Syntax: databaseManager.mergeRecords( sourceRecord, combinedDestinationRecord, [columnnamesarray_to_copy])
Example:
- Code: Select all
//Merge records from same foundset, updates entire datamodel (via foreign type on columns) with destination record pk, deletes source record, do use a transaction!
databaseManager.mergeRecords(foundset.getRecord(1), foundset.getRecord(2));
DBTreeView.isNodeExpanded
The isNodeExpanded function tells whether or not the given path is expanded, returning true if it is and false otherwise.
Syntax: DBTreeView.isNodeExpanded(path)
Example:
- Code: Select all
//Check the path (array with pk records values (only single pk key supported)) expanded status
var pathArray = new Array(14,24,45,67);
var isExpanded = elements.treeViewBean.isNodeExpanded(pathArray);
Previous release
http://forum.servoy.com/viewtopic.php?t=8834