CHT (Clarion Handy Tools)
Templates, Classes, Utilities, Apps, Projects

FEBRUARY 14, 2020

CHT 2020 BUILD RELEASED
BUILD 24A.01.00

SOME REVISED DEMO APPLICATIONS

• HNDSQLPOPFAVEXPB.APP
This application demonstrates CHT Explorerbrowse used in an SQL setting in conjunction with query template PopFavoriteQueries_EXPB.

It illustrates these concepts:
✓ An Explorerbrowse implementation
    running on SQL Data Tables.
✓ A CHT Query template called:
    PopFavoriteQueries_EXPB.

This demonstration application requires the sample data tables provided with MICROSOFT ACCESS, called Northwind (provided with your CHT installation). The application will find the .MDB and register it with ODBC if not already registered.

• HNDISAMPOPFAVEXPB.APP
This application demonstrates primarily, the use of a Clarion Handy Tools Template called ExplorerBrowse used in a ISAM setting.

ExplorerBrowse (acronym EXPB) is an extension template that extends a standard ABC browse with some 25+ features including header-click browse column sorting, built-in locators, greenbar support, and much more.

ExplorerBrowse itself can also be extended by adding a variety of extension templates. This application adds PopFavoriteQueries_EXPB to provide a way to inject prebuilt and user-saved queries into the browse to limit the records being displayed.

PopFavoriteQueries_EXPB provides a query control, a clear button, a favorites query selection control, a query builder button, a query save button and a query delete button.

The application also illustrates a procedure built with a CHT Jumpstart that allows you to manage and modify or insert pre-built queries.

SERVER SAFETY SWITCH
SERVER LOG SWITCH

The following example server applications have had a "Safety" switch and a "Log" switch added to the application interface.

These switches are added from the BrowserServerInitializationControls template on the "CTL" tab. This tab has a "User Installed Server Controls" tab with a similarly labelled button which when clicked exposes a new set of three tabs. On the "Set Three" tab just exposed, you can find the "Server Saftey Switch" and "Server Log Switch" check boxes and drop downs. Selecting a user-installed check box control into either, or both, of these two dropdowns, causes our template to write code into several server embed points, described below.

The "Server Log Switch" dropdown, when completed, writes into this server embed point.

Server.LogLastRequest PROCEDURE(STRING xRequest)

This embed causes the server to log all "legal" server requests.

Legal requests are those that result in the legitimate return of a page, image, data package etc. to the calling client or browser. Legal requests are defined as requests that the server understands and is therefore able to process and requests that make it through the request-vetting code written when the "Server Safety Switch" is added as described above.

The "Server Safety Switch" writes template-generated request filtering code into the following server embed points. Server code normally performs some native filtering of requests anyway, but with the "Server Safety Switch" feature implemented, when the switch is checked, a much expanded set of server request filtering features comes into play.

Server.CheckVirusIntercept PROCEDURE (*HND_SQ xFD_READSQ)

Server.GetDenyReferers PROCEDURE (*HND_SQ xFD_READSQ)

Server.GetDenyEarlyBrowsers PROCEDURE (*HND_SQ xFD_READSQ)

SERVER APPS THAT HAVE IMPLEMENTED
THE ABOVE-DESCRIBED SWITCHES

HNDSLFSV.APP
CHTTP PAGE SERVER (T4)

• HNDSLFSV.APP

HNDSLFSV.APP is a TYPE 4 CHT server, which means it serves files. It is our default web page server. Web pages and images are, after all, also files. Normal HTTP page views from a browser are public and do not require password enabled access privileges. File transactions into and out of server-visible directories are security-controlled via a 2-part server login. In both cases, of course, this server can be run in HTTPS mode for fully encrypted, tunnelling support.

HNDSLFSV.APP can securely transact file transfers with several CHT file client applications. All secure clients require this server to set up a single, 2-part server-level login (username + password), to control file upload/download permissions.

HNDSLFSV.APP is entirely template-built and contains almost no hand-embedded code. It may be used alone, via a standard HTTP communications link, or via an encrypted HTTPS tunnel communications link, when combined with a STUNNEL Proxy, configured with an SSL Certificate, download link below.

HNDSLFSVFX.APP
CHTTP FILE SERVER (T4)

• HNDSLFSVFX.APP

HNDSLFSVFX.APP is a TYPE 4 CHT server, which means it serves files. Normal HTTP page views from a browser are public and do not require password enabled access privileges. File transactions into and out of server- visible directories are security-controlled via a 2-part server login.

HNDSLFSVFX.APP can securely transact file transfers with several CHT file client applications. All secure clients require this server to set up a single, 2-part server-level login (username + password), to control file upload/download permissions.

HNDSLFSVFX.APP is entirely template-built and contains almost no hand-embedded code. It may be used alone, via a standard HTTP communications link, or via an encrypted HTTPS tunnel communications link, when combined with a STUNNEL Proxy, configured with an SSL Certificate, available here:

STUNNEL PROXY DOWNLOAD

HNDCLIENTSV.APP
CHTTP CLIENT SERVER (T3)

• HNDCLIENTSV.APP

HNDCLIENTSV.APP demonstrates a CHT Client Server (TYPE 3) acting as an interactive, remote data server to Clarion client application(s). Specifically this server packages CHT FORUM MESSAGES data so that it may be browsed, edited, and reported remotely, not from a browser but from a Clarion desktop application using CHT Client templates.

The HNDCLIENTSV.APP server provides both compressed and encrypted data streams consisting of browse data, form data, report and process data based on interactive queries placed from the client side targeted at pre-determined data views (single or multi-table) provided in the server.

The HNDCLIENTSV.APP server is configured for a two-piece login. It omits the Email Address Key on the BrowserServerInitialization control template. In a two-piece login only the Login ID and Last Name (in this case) are used. This is a client server for reading and posting remote messages from which to both learn and with which to build forward. The back end views portions of the server are already installed and working.

HNDCLIENTSV.APP is entirely template-built and contains almost no hand-embedded code. It may be used alone, via a standard HTTP communications link, or via an encrypted HTTPS tunnel communications link, when combined with a STUNNEL Proxy configured with an SSL Certificate.

CLARION + CHT CLIENTS FOR
THE ABOVE THREE SERVERS

FILE CLIENTS FOR
HNDSLFSV.APP AND HNDSLFSVFX.APP

HNDSLFCMD.APP

HNDSLFCMD.APP is a CHT "Batch-Bot" upload/download client application, enabling secure, password-enabled transfers into and out of the server root and any server subdirectory below the server root. "Batch-Bot"-style applications of this sort, may be used from the DOS command line, from DOS batch scripts and, naturally, inside Clarion applications where they are known as "CHT Snap-Ins".

HNDSLFCL.APP

HNDSLFCL.APP is a simple, example client single-file uploader, downloader illustrating four different, password enabled, client-side upload/download methods.

CHTSNAPGET.EXE

CHTSNAPGET.EXE is a pre-compiled C# utility application included with the full CHT Toolkit. It may be used to securely download files from this server when a server username:password combination is configured.

DATA CLIENT FOR HNDCLIENTSV.APP

HNDCLIENTCL.APP

HNDCLIENTCL.APP is a matching demonstration data client which uses the same data dictionary as the server, namely HNDCLIENTSV.DCT.

FEBRUARY 1, 2020

CHT TEMPLATE CATEGORIES STATIC LAYERS

AACHT CONTROL PANEL (12)
APP HELP SUPPORT (16)
APP TXA SUPPORT (5)
BACKUP SUPPORT (3)
BROWSE SUPPORT GENERIC (10)
CALCULATOR SUPPORT (5)
CODE SIGNING SUPPORT (1)
CONFIG CLASS SUPPORT (2)
DATA VIEW SUPPORT (4)
DATES AND CALENDARS (8)
DISK FILES SUPPORT (32)
EMAIL SUPPORT (30)
EMBEDDING SUPPORT (15)
ENCRYPTION SUPPORT (4)
ERROR HANDLING SUPPORT (3)
HEX CONVERSION SUPPORT (1)
HYPERLINK SUPPORT (2)
MEMORY AND STRING SUPPORT (2)
MENU SUPPORT (1)
MS OFFICE SUPPORT (5)
NETWORK SUPPORT (2)
PROGRESS SUPPORT (1)
PROJECT BUILDER SUPPORT (20)
QUERY SUPPORT (20)
REGISTRY SUPPORT (2)
REPORT SUPPORT (3)
SHORT CUT SUPPORT (2)
SMS SUPPORT (3)
SOCKETS SUPPORT (1)
SOUND AND VIDEO SUPPORT (1)
SOURCE CODE SUPPORT (3)
SPELL CHECK SUPPORT (3)
SPLASH SCREEN SUPPORT (2)
THREAD SUPPORT (1)
UPDATE FORM SUPPORT (5)
VERSIONING SUPPORT (18)
WINDOW CONTROLS SUPPORT (30)
WINDOWS O/S SUPPORT (15)

CHT TEMPLATE CATEGORIES USER-SWITCHABLE LAYERS
BROWSE SUPPORT LBX* (15)
BROWSE SUPPORT HMB* (16)
BROWSE SUPPORT EXPB* (13)
BROWSE SUPPORT LORC* (4)
XML2HTML SUPPORT (2)
HTTP SERVER T234 SUPPORT (29)
HTTP SERVER T1 SUPPORT (21)
HTTP CLIENT SUPPORT (21)
ZIP SUPPORT (14)
INSTALLATION SUPPORT (4)
JUMPSTART* SUPPORT (85)
SNAPIN SUPPORT (21)
FTP CLIENT SUPPORT (17)
DEPRECATE CANDIDATE (17)

LBX* - (L)ist(B)ox Browse E(X)tender = CHT-Only Browse
HMB* - (H)andy (M)arker (B)rowse = CHT+ABC Browse
EXPB* - (EXP)lorer(B)rowse = CHT+ABC Browse
LOCR* - (L)ocator (O)ver(R)ide (C)ontrol = CHT+ABC Browse
JumpStart* - Some overlap with other layers

 

Contact Us

Click the link below to contact us by email.
It will start your email client with our email address inserted:

Click To Contact Us