GENERATED: MAR 31,2012 - 4:01PM
CHT SQL Demonstration [V8.01.00]

Previous Page
This application demonstrates the added speed and convenience of the NATIVE SQL filtering capability built into the CHT query parser classes. Make sure to check the tutorial available with this application for more information about what this demonstration application illustrates about The Clarion Handy Tools.

The CHT query parser has the ability to generate optimised NATIVE SQL directly from your real-language queries. The SQL is then sent to your data base using View{PROP:SQLFilter} rather than via ABC.SetFilter(). In the O8A1.0 build we've added an optional QUERY BUILDER (OBJ.QBInterface()) to the ? button of the QueryParsingFilterControl template.

The CHT-generated SQL appears in the WHERE clause component of the SELECT string sent to your data base. The chief advantage of this is speed. Clarion's file drivers do not always translate clarion filter strings into effective SQL. In some cases, depending how complex your query, ABC.Setfilter() causes the driver to literally read large portions of the data base, forcing the driver to manage filtering rather than letting the data base handle it.

This demonstration application requires the sample data base provided with MICROSOFT ACCESS, called Northwind. The application will find the data base and register it with ODBC if not already registered.

Cheers,
Gus M. Creces
The Clarion Handy Tools Page
www.cwhandy.ca (CHT Website)
news.cwhandy.ca (CHT Forum)

Count Global Template Name Qty Global Template Description
(0001) AACHTControlPanel(HNDTools) 1 AACHTControlPanel - CHT Global Control Panel.
(0002) ApplicationImagesEx(HNDTools) 1 ApplicationImagesEx - A tool to better control the use of images and icons in your application.
(0003) HNDCMPControlPanel(HNDTools) 1 HNDCMPControlPanel - Interface to the CHT Compile Manager.
(0004) HandyVersionResource(HNDTools) 1 HandyVersionResource - Version Resource/Build Number Information To EXE
(0005) INIFile(HNDTools) 1 INIFile - Attach CHT .INI FIle and Registry extension classes - HNDIni - globally to your application.
(0006) VblFileNames(HNDTools) 1 VblFileNames - Incorporate variable file names and defaults into your app from the dictionary.
(6) Global Templates Found

1 - Procedure Template Type: Frame
MainEntryPoint ()
Count Local Template Name Qty Local Template Description
(0007) AppStartSplashProcedure(HNDTools) 1 AppStartSplashProcedure - Start the application Splash screen earlier with an option for threaded/unthreaded.
(0008) EmbedDiskFunctions(HNDTools) 1 EmbedDiskFunctions - An Instance Of:
(0009) EmbedRegistryFunctions(HNDTools) 1 EmbedRegistryFunctions - An Instance Of:
(0010) EmbedWindowFunctions(HNDTools) 1 EmbedWindowFunctions - An Instance Of:
(0011) HandyHelpFileFetch(HNDTools) 2 HandyHelpFileFetch - Build A Help File Request To Your Website.(7)
(0012) HandyHelpWhatsNew(HNDTools) 1 HandyHelpWhatsNew - Build A What's New Request To Your Website.(8)
(0013) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(7) Local Templates Found In MainEntryPoint

2 - Procedure Template Type: Report
MarkerBrowseDirectToOrdersReport ()
Count Local Template Name Qty Local Template Description
(0014) HandyMarkerBrowseReportLimiter(HNDTools) 1 HandyMarkerBrowseReportLimiter - Limit reported records with selected records from HandyMarkerBrowse.
(0015) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0016) PauseButton(ABC) 1 Pause the Process
(0017) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(4) Local Templates Found In MarkerBrowseDirectToOrdersReport

3 - Procedure Template Type: Source
RegisterODBC ()
Count Local Template Name Qty Local Template Description
(0018) EmbedObject(HNDTools) 2 EmbedObject - An Instance Of:
(0019) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(2) Local Templates Found In RegisterODBC

4 - Procedure Template Type: Process
CHTQueryToHTMLCustomerProcess (*STRING xQuery)
Count Local Template Name Qty Local Template Description
(0020) HandyQueryProcessLimiter(HNDTools) 1 HandyQueryProcessLimiter - Limit processed records via passed-in query or filter.
(0021) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0022) PauseButton(ABC) 1 Pause the Process
(0023) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(4) Local Templates Found In CHTQueryToHTMLCustomerProcess

5 - Procedure Template Type: Report
QPFC_ABCReport_HandyQueryReportLimiter ()
Count Local Template Name Qty Local Template Description
(0024) EmbedWindowFunctions(HNDTools) 1 EmbedWindowFunctions - An Instance Of:
(0025) HandyQueryReportLimiter(HNDTools) 1 HandyQueryReportLimiter - Limit reported records via passed-in query or filter.
(0026) HandyQueryTracingButton_HQRL(HNDTools) 1 HandyQueryTracingButton_HQRL - A button that enables DebugView-based query tracing on CHT HandyQueryReportLimiter(3)
(0027) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0028) HandyWindowsDebugViewButton_EWF(HNDTools) 1 HandyWindowsDebugViewButton_EWF - A button that opens MS Windows DebugView
(0029) PauseButton(ABC) 1 Pause the Process
(0030) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(0031) QueryParsingFilterControl(HNDTools) 1 QueryParsingFilterControl - An Instance Of: HNDBrwFilter
(8) Local Templates Found In QPFC_ABCReport_HandyQueryReportLimiter

6 - Procedure Template Type: Window
UpdateFormWithSQLBrowse ()
Count Local Template Name Qty Local Template Description
(0032) BrowseBox(ABC) 2 Browse on Order_Details
(0033) CancelButton(ABC) 1 Cancel the Current Operation
(0034) EmbedWindowFunctions(HNDTools) 1 EmbedWindowFunctions - An Instance Of:
(0035) ExplorerBrowse(HNDTools) 2 ExplorerBrowse - Explorer-like ABC browse with multi-column sorts on table: Order_Details
(0036) FormVCRControls(ABC) 1 Allow Form to be driven by Toolbar VCR Controls
(0037) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(0038) RecordValidation(ABC) 1 Validate a record against the dictionary
(0039) SaveButton(ABC) 1 Update Customers record on disk
(8) Local Templates Found In UpdateFormWithSQLBrowse

7 - Procedure Template Type: IniTableIOProcedure
IniTableIOProcedure (BYTE xIoType, STRING xSector, STRING xName, <STRING xValue>, <STRING xFilename>),STRING,PROC
Count Local Template Name Qty Local Template Description
(0040) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(1) Local Templates Found In IniTableIOProcedure

8 - Procedure Template Type: Process
QPFC_ABCProcess_HandyQueryProcessLimiter ()
Count Local Template Name Qty Local Template Description
(0041) EmbedWindowFunctions(HNDTools) 1 EmbedWindowFunctions - An Instance Of:
(0042) HandyQueryProcessLimiter(HNDTools) 1 HandyQueryProcessLimiter - Limit processed records via passed-in query or filter.
(0043) HandyQueryTracingButton_HQPL(HNDTools) 1 HandyQueryTracingButton_HQPL - A button that enables flexible query tracing on CHT HandyQueryProcessLimiter(7)
(0044) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0045) HandyWindowsDebugViewButton_EWF(HNDTools) 1 HandyWindowsDebugViewButton_EWF - A button that opens MS Windows DebugView
(0046) PauseButton(ABC) 1 Pause the Process
(0047) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(0048) QueryParsingFilterControl(HNDTools) 1 QueryParsingFilterControl - An Instance Of: HNDBrwFilter
(8) Local Templates Found In QPFC_ABCProcess_HandyQueryProcessLimiter

9 - Procedure Template Type: Splash
JumpStartSplashCHTBlue ()
Count Local Template Name Qty Local Template Description
(0049) AppBuildDateTimeStamp(HNDTools) 1 AppBuildDateTimeStamp - An application build date/time stamp.
(0050) AppBuildNumberStamp(HNDTools) 1 AppBuildNumberStamp - An application build number or version stamp.
(0051) AppCopyRightStamp(HNDTools) 1 AppCopyRightStamp - An application copyright stamp.
(0052) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0053) ProcedureImagesEx(HNDTools) 2 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(5) Local Templates Found In JumpStartSplashCHTBlue

10 - Procedure Template Type: Report
ClarionQueryDirectToOrdersReport (*STRING xQuery)
Count Local Template Name Qty Local Template Description
(0054) HandyQueryReportLimiter(HNDTools) 1 HandyQueryReportLimiter - Limit reported records via passed-in query or filter.
(0055) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0056) PauseButton(ABC) 1 Pause the Process
(0057) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(4) Local Templates Found In ClarionQueryDirectToOrdersReport

11 - Procedure Template Type: Report
CHTQueryDirectToOrdersReport (*STRING xQuery)
Count Local Template Name Qty Local Template Description
(0058) HandyQueryReportLimiter(HNDTools) 1 HandyQueryReportLimiter - Limit reported records via passed-in query or filter.
(0059) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0060) PauseButton(ABC) 1 Pause the Process
(0061) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(4) Local Templates Found In CHTQueryDirectToOrdersReport

12 - Procedure Template Type: Process
MarkerBrowseToHTMLOrdersProcess ()
Count Local Template Name Qty Local Template Description
(0062) HandyMarkerBrowseProcessLimiter(HNDTools) 1 HandyMarkerBrowseProcessLimiter - Limit processed records with selected records from HandyMarkerBrowse.
(0063) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0064) PauseButton(ABC) 1 Pause the Process
(0065) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(4) Local Templates Found In MarkerBrowseToHTMLOrdersProcess

13 - Procedure Template Type: Source
JumpStartHTTPRunHelpMediaWithAnimation (STRING xWinTitle, STRING xExeName)
Count Local Template Name Qty Local Template Description
(0066) EmbedObject(HNDTools) 3 EmbedObject - An Instance Of:
(0067) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(2) Local Templates Found In JumpStartHTTPRunHelpMediaWithAnimation

14 - Procedure Template Type: Report
MarkerBrowseDirectToCustomerReport ()
Count Local Template Name Qty Local Template Description
(0068) HandyMarkerBrowseReportLimiter(HNDTools) 1 HandyMarkerBrowseReportLimiter - Limit reported records with selected records from HandyMarkerBrowse.
(0069) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0070) PauseButton(ABC) 1 Pause the Process
(0071) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(4) Local Templates Found In MarkerBrowseDirectToCustomerReport

15 - Procedure Template Type: Window
SQLFilter_HandyMarkerBrowse ()
Count Local Template Name Qty Local Template Description
(0072) BrowseBox(ABC) 2 Browse on Orders
(0073) BrowseLazyDisplay(HNDTools) 1 BrowseLazyDisplay - Reduce Multiple Browse Flickering On Startup
(0074) BrowseUpdateButtons(ABC) 1 Update a Record from Browse Box on Customers
(0075) CloseButton(ABC) 1 Close the Window
(0076) EmbedWindowFunctions(HNDTools) 1 EmbedWindowFunctions - An Instance Of:
(0077) HandyMarkerBrowse(HNDTools) 2 HandyMarkerBrowse - Explorer-like ABC browse with record marking on table: Orders
(0078) HandyMarkerBrowseProcessButton(HNDTools) 2 HandyMarkerBrowseProcessButton - Start a HandyMarkerBrowseProcessLimiter procedure.(14)
(0079) HandyMarkerBrowseReportButton(HNDTools) 2 HandyMarkerBrowseReportButton - Start a HandyMarkerBrowseReportLimiter procedure.(17)
(0080) HandyThreadLimiter(HNDTools) 1 HandyThreadLimiter - Limit threaded procedures to one instance.
(0081) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(0082) QueryParsingFilterControl(HNDTools) 1 QueryParsingFilterControl - HMrkBrw8 An Instance Of: HNDBrwFilter
(0083) VisitMeControl(HNDTools) 1 VisitMeControl - Mouseover hyperlink to your web site.(2)
(12) Local Templates Found In SQLFilter_HandyMarkerBrowse

16 - Procedure Template Type: Window
SQLFilter_ExplorerBrowse ()
Count Local Template Name Qty Local Template Description
(0084) BrowseBox(ABC) 2 Browse on Orders
(0085) BrowseLazyDisplay(HNDTools) 1 BrowseLazyDisplay - Reduce Multiple Browse Flickering On Startup
(0086) BrowseUpdateButtons(ABC) 1 Update a Record from Browse Box on Customers
(0087) CloseButton(ABC) 1 Close the Window
(0088) EmbedInformation(HNDTools) 1 EmbedInformation - Code template to generate embed information.(18)
(0089) EmbedWindowFunctions(HNDTools) 1 EmbedWindowFunctions - An Instance Of:
(0090) ExplorerBrowse(HNDTools) 2 ExplorerBrowse - Explorer-like ABC browse with multi-column sorts on table: Orders
(0091) HandyQueryProcessButton(HNDTools) 4 HandyQueryProcessButton for procedure: CHTQueryDirectToOrdersReport
(0092) HandyThreadLimiter(HNDTools) 1 HandyThreadLimiter - Limit threaded procedures to one instance.
(0093) PostControlEvent(HNDTools) 1 Post an event to a control in a local window(10)
(0094) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(0095) QueryParsingFilterControl(HNDTools) 1 QueryParsingFilterControl - HBrw8 An Instance Of: HNDBrwFilter
(12) Local Templates Found In SQLFilter_ExplorerBrowse

17 - Procedure Template Type: Process
ClarionQueryToHTMLCustomerProcess (*STRING xQuery)
Count Local Template Name Qty Local Template Description
(0096) HandyQueryProcessLimiter(HNDTools) 1 HandyQueryProcessLimiter - Limit processed records via passed-in query or filter.
(0097) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0098) PauseButton(ABC) 1 Pause the Process
(0099) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(4) Local Templates Found In ClarionQueryToHTMLCustomerProcess

18 - Procedure Template Type: Process
QPFC_ABCProcess ()
Count Local Template Name Qty Local Template Description
(0100) HandyFileQueueBuilder(HNDTools) 1 HandyFileQueueBuilder - Build A Queue Based On Files/Tables In Your Dictionary.(5)
(0101) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0102) PauseButton(ABC) 1 Pause the Process
(0103) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(0104) QueryParsingFilterControl(HNDTools) 1 QueryParsingFilterControl - An Instance Of: HNDBrwFilter
(5) Local Templates Found In QPFC_ABCProcess

19 - Procedure Template Type: Report
QPFC_ABCReport ()
Count Local Template Name Qty Local Template Description
(0105) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0106) PauseButton(ABC) 1 Pause the Process
(0107) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(0108) QueryParsingFilterControl(HNDTools) 1 QueryParsingFilterControl - An Instance Of: HNDBrwFilter
(4) Local Templates Found In QPFC_ABCReport

20 - Procedure Template Type: Process
MarkerBrowseToHTMLCustomerProcess ()
Count Local Template Name Qty Local Template Description
(0109) HandyMarkerBrowseProcessLimiter(HNDTools) 1 HandyMarkerBrowseProcessLimiter - Limit processed records with selected records from HandyMarkerBrowse.
(0110) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0111) PauseButton(ABC) 1 Pause the Process
(0112) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(4) Local Templates Found In MarkerBrowseToHTMLCustomerProcess

21 - Procedure Template Type: Process
SQLQueryToHTMLCustomerProcess (*STRING xQuery)
Count Local Template Name Qty Local Template Description
(0113) HandyQueryProcessLimiter(HNDTools) 1 HandyQueryProcessLimiter - Limit processed records via passed-in query or filter.
(0114) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0115) PauseButton(ABC) 1 Pause the Process
(0116) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(4) Local Templates Found In SQLQueryToHTMLCustomerProcess

22 - Procedure Template Type: Report
SQLQueryDirectToOrdersReport (*STRING xQuery)
Count Local Template Name Qty Local Template Description
(0117) HandyQueryReportLimiter(HNDTools) 1 HandyQueryReportLimiter - Limit reported records via passed-in query or filter.
(0118) HandyTellMeControl(HNDTools) 1 HandyTellMeControl - Text box control to provide a message or help text.
(0119) PauseButton(ABC) 1 Pause the Process
(0120) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(0121) SetSQLAliasesToFilePrefix(HNDTools) 1 SetSQLAliasesToFilePrefix - Sets Aliases Of View Files To DCT File Prefixes
(5) Local Templates Found In SQLQueryDirectToOrdersReport

23 - Procedure Template Type: Window
QueryParser_ABCBrowse ()
Count Local Template Name Qty Local Template Description
(0122) BrowseBox(ABC) 1 Browse on Customers
(0123) BrowseUpdateButtons(ABC) 1 Update a Record from Browse Box on Customers
(0124) CloseButton(ABC) 1 Close the Window
(0125) EmbedWindowFunctions(HNDTools) 1 EmbedWindowFunctions - An Instance Of:
(0126) HandyHelpFileTopicEmbed(HNDTools) 1 Embed a call to launch help file topic.(10)
(0127) HandyThreadLimiter(HNDTools) 1 HandyThreadLimiter - Limit threaded procedures to one instance.
(0128) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(0129) QueryParsingFilterControl(HNDTools) 1 QueryParsingFilterControl - An Instance Of: HNDBrwFilter
(0130) VisitMeControl(HNDTools) 1 VisitMeControl - Mouseover hyperlink to your web site.(2)
(9) Local Templates Found In QueryParser_ABCBrowse

24 - Procedure Template Type: Window
SQLFilter_LocatorOverRideControl ()
Count Local Template Name Qty Local Template Description
(0131) BrowseBox(ABC) 2 Browse on Orders
(0132) BrowseLazyDisplay(HNDTools) 1 BrowseLazyDisplay - Reduce Multiple Browse Flickering On Startup
(0133) BrowseUpdateButtons(ABC) 1 Update a Record from Browse Box on Customers
(0134) CloseButton(ABC) 1 Close the Window
(0135) EmbedWindowFunctions(HNDTools) 1 EmbedWindowFunctions - An Instance Of:
(0136) HandyQueryProcessButton(HNDTools) 2 HandyQueryProcessButton for procedure: CHTQueryToHTMLCustomerProcess
(0137) HandyQueryReportButton(HNDTools) 2 HandyQueryReportButton - Start a HandyQueryReportLimiter-extended report procedure.(16)
(0138) HandyThreadLimiter(HNDTools) 1 HandyThreadLimiter - Limit threaded procedures to one instance.
(0139) LocatorOverRideControl(HNDTools) 2 LocatorOverRideControl - Explorer-like browse with locator and query control all-in-one.(8)
(0140) PostControlEvent(HNDTools) 2 Post an event to a control in a local window(13)
(0141) ProcedureImagesEx(HNDTools) 1 ProcedureImagesEx - A tool to better control the use of images and icons in your procedure.
(0142) VisitMeControl(HNDTools) 1 VisitMeControl - Mouseover hyperlink to your web site.(2)
(12) Local Templates Found In SQLFilter_LocatorOverRideControl

Copyright © 1996-2012
Gus M. Creces and The Clarion Handy Tools Page.
All Rights Reserved Worldwide

chtlogo001.gif Templates In Application: HNDACCES.APP