Query Constructor

Users are getting more and more used to creating custom reports with tools like the Microsoft Access Reports Wizard, Crystal Reports, and SQL Server Reporting Services.   This is easy to do as long as the data in the report corresponds to a single table in the database.  Once it becomes necessary to construct a relational join, most users get lost.  In many cases the only thing that changes from run to run are certain parameters, such as a start date and end date, customer number, product, status, or selection code; the table relationships themselves are identical from run to run.

The Query Constructor application supplants generic query designers with a customized interface using combo boxes, drop down menus, check boxes, date pickers, and other controls that correspond to fields and columns the user sees all the time in their data entry forms.  The user will be able to select the criteria they want without having to understand SQL.  This system will, at the discretion of the client, construct relational joins with dozens of tables and perhaps hundreds of columns.  The resulting generated SQL can be viewed, copied, and pasted into the query designer of the reporting tool, as appropriate.

This is a customized system developed around the database of the users application.   The database engine might be SQL Server, Oracle, Microsoft Access, PostGreSQL, or MySQL, or even simple XML or Microsoft Excel files.  The database application is arbitrary, but would frequently involve order entry, inventory, accounts receivable, medical billing, job cost, or sales analysis.  The code implementation would be in Visual Basic for Applications (VBA), C#, Visual Basic.NET, or Javascript.  The Javascript implementation is normally used in webpages, so the query designer can be invoked through a web interface.  SQL produced by web based designers can be used in any application, including standalone reporting tools.