Active Query Builder ASP.NET Edition 2.14 improves its JavaScript API.
We're glad to announce the new version of Active Query Builder ASP.NET Edition. You can evaluate the new version by requesting the trial. Customers can download the new version in the Customer's area.
What's new in the Active Query Builder ASP.NET Edition 2.14 since version 2.13?
Important changes:
MVC: The QueryBuilderControl.Init event can be replaced now with the Init method defined in the attribute of the controller method. This allows to get rid of the initialization code in Razor HTML helpers. All of the MVC demo projects and the MVC Quick Start Guides are updated accordingly.
The HttpCompressionEnabled and MultipleQueriesPerSession properties of the QueryBuilderControl have been replaced with respective 'web.config' file options and marked as obsolete.
The default location of JS and CSS files has been changed. The JS and CSS directories must reside in the directory of the web page or the parent control, formerly - in the server root folder. As before, you can override the default settings as needed. Please refer to the Quick Start Guides for details.
New and improved demo projects:
The "Alternate names" demo for MVC5 has been added.
The "Query Results" demo projects have been improved.
The new demo illustrating toggling of the UseAltNames property has been added for MVC 5 and Non-MVC ("ToggleUseAltNames").
The new demo projects for various environments have been made to illustrate changing of database connection in runtime ("Change connection").
API improvements:
The new QB.Web.Core.Events.SyncFinished event has been added. It's fired when the sync action is completed, and data from the server is applied to controls.
The new QB.Web.Core.unbind(event, callback) method has been added. It allows unsubscribing the given handler from an event.
The new QB.Web.CriteriaBuilder.Events.CriteriaBuilderChanged event lets check the state of the Criteria Builder control.
The new QB.Web.Application.getProcedureParameters method has been added to redefine default prompt for procedure parameters. It must accept the name of procedure name and the callback function to return the parameters string.
The new Canvas.LinkColor property has been added to specify the color of link lines on the Design Pane.
The new delegates have been added to the SessionStoreItem: BeforeSqlParsing, AfterSqlGeneration. They allow to perform pre- and post-processing of the SQL query text. The BeforeSqlParsing delegate allows to abort the parsing and return an error message to end-user.
The new QueryBuilder.MetadataLoadingOptions.AllowRecursiveVirtualObjects property has been made. Turning this option to True (default is False) prescribes to interpret the names found in SQL expressions of virtual objects as the names of other virtual objects. Note that this denies substitution of real objects with same-named virtual objects.
The new QB.Web.Application.TreeComponent.tooltipGetText method can be defined to set custom tooltip text for items in the Database Schema Tree.
The QueryBuilderControl.OnDatasourceFieldRemoved event, the OnCriteriaBuilderChanged and OnCriteriaBuilderError events of the CriteriaBuilder control haven't been fired. Fixed now.
The QB.Web.Core.updateSQL method now puts the SQL query text to the editor.
Client-side programmatic query creation API with aggregates and grouping has been fixed.
SQL Syntax improvements:
MySQL: Support for DateDiff, TimeDiff, TimestampDiff functions has been added.
MS SQL Server: Support for SELECT into local variable has been added. (SELECT @localVar = ...)
We have been using Active Query Builder for over a year and must say that both the product and support have been outstanding!
We chose Active Query Builder due to its flexibility and features, but have been truly pleased by its power and hidden capabilities. ...
In summary Active Query Builder provides excellent components, great support and a very flexible feature set. It has allowed us to provide features to our end users that I did not think would be possible in the first release of our new tools and in a timeframe that was much shorter than planned. I would recommend that anyone dealing with databases in the .Net world should be aware of this component and its capabilities!