Dec 132017
Turbo Pascal/Topaz query TPU. Sets the filter ala dBase III+ assist for any Topaz application. Boolean logic supported.
File QNR.ZIP from The Programmer’s Corner in
Category Pascal Source Code
Turbo Pascal/Topaz query TPU. Sets the filter ala dBase III+ assist for any Topaz application. Boolean logic supported.
File Name File Size Zip Size Zip Type
QNR.HED 266 161 deflated
QNR.TPU 11552 4987 deflated
QNRDEMO.PAS 2411 793 deflated
QNRDOT.PAS 1860 660 deflated
READ.ME 5082 2362 deflated

Download File QNR.ZIP Here

Contents of the READ.ME file

QNR - V01.00
(C)opyright 1991 - Caboose Software Engineering


QNR, or Query N' Report, was developed to provide a more powerful filter for
Topaz. Currently, user defined queries were difficult or impossible. Now,
with the additon of the initial release of QNR, the filter can be a powerful
xBase like query. The query is built ala a dBase III+ Assist query build, but
can also be typed in on a command line and parsed. For syntax sake, the first
method is preferred and recommended.

For those of you creating professional systems in Topaz, I promise you that
this unit is now and will progress to be a powerful query add-on. As with
typical xBase filters and even Topaz filters, the speed of a system utilizing
a query is greatly reduced. But for subsets and reports, QNR is truly

As in virtually the first release of all units hacked together to fill a
specific need, there are some powerful features and some noticable ommissions.
As comments, and registrations, come in I will gladly update the software
to include a host of powerful features.


READ.ME - This file of limited documentation.
QNR.HED - Header file for QNR.
QNR.TPU - A pre-compiled TPU, using Turbo Pascal 6.0 and Topaz 3.0.
QNRDEMO.PAS - A demonstration program showing a possible QNR implementation.
QNRDOT.PAS - A program to simulate a "dot prompt" query.


The latest shareware release of QNR can be downloaded from the following
BBS systems:

Software Science BBS @ 1-415/467-6786
Programmers Corner @ 1-301/586-1180

or you can always receive the absolute latest version directly from
the author for the $25 registration fee at his Silver Spring address.


Procedure GetQuery ( VAR QueryString : String );
+ This procedure is similar to assist and can be used to retrieve a
query in a QNR syntactically correct format.

Function ProcessQuery : Boolean;
+ This function validates whether a query is valid for processing.

Function ParseQuery : Boolean;
+ This function is used as the actual SET_FILTER_TO() condition. Please
note that the string which contains the query to be processed MUST be
moved into QueryString.

Procedure InitializeQuery;
+ This procedure initializes the internal tables for the query function.
It is recommended that this is only initialized before a ProcessQuery


The best suggestions I have is to closely examine the demonstration included
in this ZIP file, QNRDEMO. A long tutorial of QNR is not necessary nor
is it going to happen in this short READ.ME.

You will note that you can type in a condition based on another field. Try
a query like 'AGE > WIFES_AGE' to compare fields within a database instead
of versus a literal value. This feature was just added so there may be bugs
related to this.

Also note that a string must be enclosed with double quotes, not single. For

STATE = "MD" is valid but,
STATE = 'MD' is not.


+ Data dictionary support.
+ Relational database support.
+ The R. In other words, a configurable report writer and generator.
+ Possibly a unit to graph dBase data.
+ More intelligent parser for "dot prompt" entry.
+ Ability to edit, expand and contract queries.
+ Expanded demonstration software supporting cataloging frequent queries.
+ Support of non-exact queries via UPPERCASE conversion of data.
+ Increase in speed of query processing via assembler routines.


If you find QNR useful in your computing activities, please consider
sending a donation to cover development time and ingenuity. If you use QNR
in your systems, please think of life without this valuable unit! A $25
donation is suggested, which I believe is an extremely reasonable sum for
this initial release. Registered users will receive a free upgrade to the
all minor releases of QNR, and a substantial discount on any major releases.
If you send a diskette with a pre-stamped (three stamps) disk mailer, I will
send along the latest version of QNR and any other shareware utilities I have
produced. Source code for all Caboose Software Engineering software is
available on request for an additional cost.

All shareware libraries may freely distribute this package provided I am
notified of the inclusion.

Thanks for your support. As always, comments are welcome and appreciated.

-Barry Smith

Caboose Software Engineering
2921 Bluff Point Lane
Silver Spring, MD 20906


V01.00 (09 Aug 91)

o First public release. Written in Turbo Pascal 6.0 using the Topaz
commercial dBase library.

 December 13, 2017  Add comments

Leave a Reply