AlphaDAO - AS/400 Databases - Improved support for AS/400 databases. Editable Grid Components based on AS/400 databases now work correctly.
Reports - Reports based on complex sets with multiple one-to-many links would not display any data as a result of an optimization in introduced in build 4369. Reports are now faster because of this optimization, but if you have a problem, turn if off on the 'Report', 'Optimize Report' menu item.
Grid Components - Edit on Demand - Client-side Enable Expression - If a checkbox, radiobutton or dropdownbox has an enable expression (example: state="MA") and the Grid is set to 'EditOnDemand', even if current row is for a state with a a value of 'MA', the controls should not have been enabled until the row was put into edit mode.
Web Applications - .dbf Tables - .mpx Files - Temporary .mpx files (that are created when a query on a .dbf table is created) were not being properly cleaned up in the Windows Temp folder. As a result, a large number of .mpx files would build up over time, resulting in a slow down of the Application Server. Now, all temporary .mpx files created by queries that are done in a background thread (which includes all queries done by the Application Server) are automatically cleaned up.
Web Project Settings- The Project Settings button on the Web Control Panel allows you to define several different project properties. These settings are published in the a5_application.a5i file. If you have never set any Project Properties in a particular web Project, the default settings for the Project Properties were not getting published. As a result, there were no restrictions on the types of files that a user could download because the list of allowed file types (which is one of the Project Properties) was not getting published.
Grid Component - Auto-Suggest Fields - Child Grids - Working Preview - Under these circumstances, the auto-suggest was not working. There are no issues when the Grid is being run in a browser.
Grid Component - Numeric Fields - 'Treat field as Logical Value' Property - If an integer field had this property checked, then client-side expressions that tested if the field was true or false were not working.
Oracle Synonyms - When getting a SQL::TableInfo object, Alpha Five was giving preference to a public synonym over a local table.
Grid Component - SQL Tables - Data Entry on Fields with More than 6 Decimal Places - Decimal places beyond the 6th place were getting truncated.
Set Editor - One-to-one Links - Order Expression - It was not possible to specify a sort order for links that were defined as one-to-one. This is actually important since the set can specify that the link is to the 'first' or 'last' matching record. This is functionality that previously existed, but got dropped when the set editor was rewritten in V10.
Grid Part - Detail View in Pop-up Window - Lookup Grid with Quick Search - If you opened a lookup Grid from a field in the Detail View, entered a value in the Quick Search field and then pressed Enter to execute the search, the search would execute, but it would also have the unfortunate side effect of closing the window in which the Detail View was shown. This only happened if you were entering a new Detail View record. It did not happen when editing an existing record.
Grid Part - Tree Control Navigator - If the branch in a tree contained an & character, you could not expand that branch.
Grid Component - Search Part - SQL Tables - Bit Fields - QBF Syntax - If you used QBF syntax to enter search criteria and you entered 1,0 or true,false (to find all records that were true or false, which would exclude records that were NULL), the search would fail.
Forms - Embedded Browse Object - Cryllic Fonts - Titles - If the title included the letter, 'в', (third letter in Russian alphabet), the title was truncated.
Upsize Genie - Date or Time Fields - Was failing for a table that has a lot of date or time fields.
Detail View - Lookup Field - If you did a lookup in a Detail View field and filled in multiple fields with values from the lookup Grid, the filled in fields (other than the primary lookup field) were not being saved unless you first manually made them dirty.
Grid Component - AfterDeleteRecord Server-side event - Detail View - Was generating an error if you deleted a record that was not the first record displayed in the Grid part.
CPU Usage - Under certain circumstances, if Alpha Five was maximized, the CPU utilization would be pegged at 100%. This is now fixed.
Grid Component - Detail View - Edit on Demand - Pre-Fetch On - If the Detail View was set to edit on demand and you clicked 'Enter new record', but then aborted and then tried to edit an existing record, the HTML shown shown was for 'edit mode' (should have been for view mode), but data was locked for editing - so you were effectively prevented from editing the record.
System Tables for Menus, Toolbars and Stylesheets - Desktop Applications - Under certain conditions, if you installed Alpha Five under one Windows account, but then ran it under a different account, Alpha Five would not be able to access certain system tables. This would result in errors, for example, when trying to create a new form because Alpha Five would not be able to access the stylesheets table. This problem has been solved by changing the location where these system tables are installed.
Grid Component - Search - Reset to Page 1 - If you were on page 2 or a subsequent page, when you performed a search, the page number was not resetting to page 1, as it should have.
Grid Component - Checkbox Column - DBF Tables - If you turned on the checkbox column and placed a button on your Grid to perform an ajax callback and perform a query to select all checked rows, you could get an error if you checked too many rows. This was because there is a limit of 1023 characters in the filter expression for a .dbf table, and the filter expression that was generated by Alpha Five was of the form:
recno() = 1 .or. recno() = 2, etc.
Now, a more concise filter expression is generated, and many more rows can be selected. For example:
Grid Component - HTML Editor - Internet Explorer - The insertion point would jump out of the text area as soon as you started to type. This did not occur in other browsers.
Web Applications - Reporting - Active-link Sets - A report that was based on a set made from active-link tables would fail when run from the stand alone Application Server, or in the full version if there was no database (.adb file) open.
Grid Builder - OnDetailViewRender Event - Was not showing in the builder if the Grid was read only.
Grid Component - Detail View - SQL Tables - Null Values - If you were updating a field that currently has a null value you would get a write conflict.
Grid Component - Detail View - SQL Tables - Editing Primary Key Value - If you edited the primary key value of a field in the Detail View, you would get an error after the table was updated.
Forms - Auto-suggest - The auto-suggest() function was failing if the data had trailing spaces.
AlphaDAO - MySQL - Support added for connection timeout property in the connection string for MySQL.
Grid Component - Detail View - Row Events - If you defined a row event for a Grid (e.g., onRowDblClick) the row events were being trigerred from the Detail View part.
Grid Component - Exporting to Excel - SQL Tables - Language Translation Strings
If the language translation strings for a Grid are being read from a SQL database or a text file, they are likely already in UTF8 format. The tmpl.encodeLanguageStringAsUTF8 property must therefore be set to .f. as explained in a previous release note.
In addition, if the Grid uses the Export to Excel feature, and if the Grid is based on a SQL table and the export specifies that Grid column headings should be used for the Excel column headings, then it might be necessary to set this new property as well:
tmpl.exportColumnHeadingsConvertToUTF8 = .f.
For example, the following code in the OnGridExecute event loads a language translation string from a text file on the server. The text file is already in UTF8 format.
e.tmpl.encodeLanguageStringAsUTF8 = .f.
e.tmpl.exportColumnHeadingsConvertToUTF8 = .f.
e.tmpl.languageDefinition = file.to_string("c:\data\string.txt")
The contents of the c:\data\string.txt file might be something like this:
<a5:r>Firstname</a5:r>="Translated Firstname with International
<a5:r>Lastname</a5:r>="Translated Lastname with International Characters"
If the tmpl.exportColumnHeadingsConvertToUTF8 property is not set to .f. then when the Grid is run, the column headings will look correct, but when the Grid is exported to Excel, the column headings in the Excel file will not look correct.
Grid Component - Auto-suggest and Edit-Combo - Autocomplete Attribute - The autocomplete="off" attribute is added to the <input> control so that the browser's built in auto-complete feature does not interfere with the Alpha Five control.
Grid Component - Client-side Enable Expressions - Radio Buttons and Checkboxes - Was not working in Firebox.
Grid Component - Linked Content Section - Wait Dialog Not Dismissed - If the option to turn on a wait dialog when Linked Content was being refreshing was turned on, and if the child grids were in an accordion, and if all accordion panes were closed, the wait dialog never cleared.
Web Applications - Security Framework -
Grid Component - Detail View - Edit on Demand - RadioButtons - The radio button was (correctly) shown as disabled when the Detail View was shown, but when navigating to the New Record, the control was still disabled. It should have been enabled.
Grid Component - Detail View - Editing Values in Non-Updateable Fields - If a Detail View control was set to 'not updateable' and the value in the control was edited, then after a submit, its value was not set back to its original value as it should have been.
Grid Component - Edit on Demand - Justification of Numeric Fields - When edit-on-demand is on, and Grid is in view mode, numbers are now right justified. Previously, they were left justified. This behavior can be controlled in both the Grid part and Detail view with these optional properties, which can be set in Grid Properties, Advanced, Other Properties
= .t. or .f.
tmpl.detailView.editOnDemand.rightJustifyNumbersInViewMode = .t. or .f.