Active Query Builder Java Edition History

February 21, 2012

Active Query Builder Java Edition v.

+ The new ComponentCreated and ComponentDestroying events notifying about 
  query UI components created and destroying are added.
= Sub-query tab captions display sub-query alias instead of query text now.

February 10, 2012

Active Query Builder Java Edition v.

- CTE fields visibility in sub-query in some cases is fixed.
- Workaround for issues of JDBC-ODBC bridge for Microsoft SQL Server ODBC driver
  related to concurrent statements and random ResultSet fields reading is made.

February 06, 2012

Active Query Builder Java Edition v.

= Improved loading of stored procedure fields.
= MS SQL Server: Now FOR XML clause can be used in subqueries too.
= Firebird: The new aggregate function LIST, WEEKDAY and YEARDAY keywords in
  EXTRACT function are added.
- Resizing of CTE datasources on hidden tabs on field list changes is fixed.
- The minor issue in parsing of ORDER BY clause of simple queries is fixed.
- MySQL, PostgreSQL: Loading of column precision and scale from server system
  catalogs is fixed.
- MySQL: Parsing of sub-queries in criteria cells is fixed.
- Loading of stored procedure fields is fixed.

January 09, 2012

Active Query Builder Java Edition v.

+ The new properties were added for more customizable SQL query text formatting:
  PlainTextSqlBuilder.get/setDynamicIndents(): allows to indent the next item in 
  the list to the same position as the first item;
  PlainTextSqlBuilder.get/setDynamicRightMargin(): instructs the component not
  to take into account leading spaces when counting line lenght to wrap;
  SQLBuilderFromClauseFormat: get/setNewLineBeforeComma(),
  SQLBuilderItemListFormat (formats SELECT list, GROUP BY and ORDER BY items):

December 21, 2011

Active Query Builder Java Edition v.

- DB2: The bug with EXISTS clause parsing is fixed.

December 16, 2011

Active Query Builder Java Edition v.

+ The new property PlainTextSQLBuilder.get/setTargetQueryPart is added. 
  It allows you to generate the SQL query text not for the whole query, 
  but for active part of the query only. Possible values are the following:
  Query (default): generate SQL text for the whole query;
  SubQuery: generate text for the currently active sub-query tab;
  UnionSubQuery: generate text for the currently active union sub-query.
+ PlainTextSQLBuilder.get/setSQL property become writable to apply changes in
  the currently active query part to the query builder.
+ The new QueryBuilder.get/setFilterTabsByActiveQueryPart property is added. It
  allows to hide the tabs that do not belong to the currently active query part.
  Possible values are the same as for the PlainTextSQLBuilder.TargetQueryPart.

December 05, 2011

Active Query Builder Java Edition v.

- The bug with losing the link type during the link place conversion is fixed.

December 02, 2011

Active Query Builder Java Edition v.

- The bug with link type switching from context menu is fixed.

November 30, 2011

Active Query Builder Java Edition v.

+ Then new helping methods are added to the Link class: getLinkExpressionString(),

November 25, 2011

Active Query Builder Java Edition v.

+ The new row controlling toolbar is added to the leftmost column of 
  CriteriaListControl. You can control visibility of this column and it's state 
  by using the is/setRowControllerVisible() and is/setRowControllerExpanded() 
+ The check box is added to the Grouping column header. It allows to toggle 
  the grouping for all criteria items at once.
+ The new get/setCreateWhereJoinsByDefault() property is added to all syntax 
  providers. The newly created link conditions will be added to the WHERE clause
  instead of creating of joins in the FROM clause.
+ The new SQLBuilder.BeginBuildSQLForNode, SQLBuilder.EndBuildSQLForNode, 
  BaseSQLBuilder.BeginBuildSQLForNode, BaseSQLBuilder.EndBuildSQLForNode events 
  are added to perform additional processing on building the SQL query text.
+ The new properties are added to LinkOptions property group: 
  get/setAddLinkedObjects(), get/setDeleteUnusedObjects(). The first property 
  instructs the component to add the necessary objects to join the newly added
  object with existing objects. For example, using the Northwind database, 
  by adding Orders and Products tables to the query, the [Order Details] table 
  will be added automatically and joins will be set according to the foreign 
  keys. The DeleteUnusedObjects property instructs the component to remove 
  objects from the query if their fields are not used in the query and these 
  objects are no longer used to link other objects.
+ The new is/setCreateLinksByIdenticalFieldNames() property is added. It may be
  helpful for the databases that does not foreig keys, but suppose to link
  objects in the query by identical field names.
+ The new UnionSubQuery.addLinksFromExpression() method is added.
+ The new methods are added to help iterating through sub-queries in the query:
  QueryBuilder.getSubQueryList(), QueryBuilder.getUnionSubQueryList(), 
+ The new GetProcedureParameters event is added to let provide procedure 
  parameter values without showing of the embedded dialog.
= SQLite: Loading of fields and foreign keys is made using PRAGMA queries.
= Formatting options for CTE sub-queries are added via the
  PlainTextSQLBuilder.get/setCTESubQueryFormat() property.
= LinkCreating and LinkCreated events will be also fired for links being 
  created automatically from foreign keys now.
= Default value of "Criteria for" for non-aggregated query columns is changed
  "For groups" (HAVING) to "For values" (WHERE).
- PostgreSQL: undocumented SUBSTRING function syntax "SUBSTRING('a','b','c')" 
  will being automatically converted to "SUBSTRING('a' FROM 'b' FOR 'c') during
  the parsing.
- Oracle: The bugs with "ORDER SIBLINGS BY" clause and "TRANSLATE" function 
  are fixed.
- Oracle: The bug when removing references to datasources from "CONNECT BY"
  clause. is fixed.
- MSSQL: The bug with "OPENQUERY" function is fixed.
= MSSQL: Definition of the "FOR XML" clause is updated according to the latest
  server version.
- MySQL: The missing built-in functions are added: COALESCE, GREATEST, LEAST 
- SQLite: Fixed list of aggregate and built-in functions.
- PostgreSQL: Parsing of logical expressions from criteria cells is fixed.
- Firebird: The "INT" alias is added for INTEGER type.
- Column aliases generation in ORDER BY is fixed.
- Metadata object names hash was not rebuilt after MetadataContainer assignment.
  Fixed now.
- The UnionSubQuery.setSQL() method did not remove the previous union sub-query 
  content. Fixed now.
- The QueryBuilder.clear() method is fixed.
- The bug with generating invalid SQL when object and database names are equal
  is fixed.
- The bug with adding derived table of CTE into the same CTE is fixed.
- The bug when "ORDER BY" is added to a query with miltiple UNIONs is fixed.
- A link might be attached to wrong datasource on the design pane in some rare 
  conditions. Fixed now.
= Spanish translation is updated.
= Performance optimizations are made, memory leaks are eliminated.
= Other minor bugfixes are made.

Product Summary

 Active Query Builder WinForms .NET Edition:

 Active Query Builder WPF .NET Edition:

 Active Query Builder ASP.NET Edition:

 Active Query Builder Java Edition:

 Active Query Builder ActiveX Edition:

 Active Query Builder VCL Edition:



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!

Social networks