nB (nano Base) 97.01 Copyright (c) 1996-1997 Daniele Giacomini This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Send your comments, suggestions, bug reports and english text corrections to: Daniele Giacomini Via Turati, 15 I-31100 Treviso Italy daniele@tv.shineline.it First of all, I am sorry for my bad English. nB ("nano Base": "n" = "nano" = 10**(-9) = "very little") is a little DOS xBase written in CA-Clipper 5.2 that can help to access .DBF file created with different standards. nB can access files created with Fox Pro 2, dBASE IV, dBASE III, dBASE III PLUS and CA-Clipper. nB is: * a dot command interpreter, * a menu driven xBase, * a xBase program interpreter, nB may be useful because: * it is Freeware and contains the source code; * it is a all in one utility; * with nB, a commercial compiler is no more needed to make simple programs: * it can compile some simple xBase programs and then execute them, * may functions are added to the standard CA-Clipper language. nB is compiled in two versions: a small one to be used on old computers, tipically x86 with 640K ram, and a second one to be used on better computers, at least 286 (or better) with 2M ram. nB is composed from the following files, where "xx" is the the version code. NBASExx1.ZIP EXEs for small PCs NBASExx2.ZIP Runtime EXEs for small PCs NBASExx3.ZIP EXEs for 286 with 2M+ NBASExx4.ZIP DOCs NBASExx5.ZIP EXAMPLEs NBASExx6.ZIP SRCs for version 96.06.16 NBASExx7.ZIP SRCs for the current version Every archive file contains: COPYING.TXT GNU General Public Licence version 2 in Dos text format. README.TXT the readme file. FILE_ID.DIZ definition. The file NBASExx1.ZIP contains also the following files. NB.EXE the executable program for DBFNTX and DBFNDX files, linked with RTLINK. NB.HLP this manual in "Help Text File" format. The file NBASExx2.ZIP contains also the following files. NB.EXE the run-time to execute macro programs for DBFNTX and DBFNDX files handling, linked with RTLINK. The file NBASExx3.ZIP contains also the following files. NB.EXE the executable program for DBFCDX, DBFMDX, DBFNDX and DBFNTX files, linked with EXOSPACE. NB.HLP this manual in "Help Text File" format. The file NBASExx4.ZIP contains also the following files. NB.PRN this manual in printed text format. NB.RTF this manual in RTF format. NB.TXT this manual in ASCII text format. NB.HTM this manual in HTML format. The file NBASExx5.ZIP contains also the following files. _ADDRESS.DBF an example database file. _ADDRESS.NTX index file associated to _ADDRESS.DBF. _ADDRESS.LBL a label form file used to print data contained inside _ADDRESS.DBF. _ADDRESS.FRM a report form file used to print data contained inside _ADDRESS.DBF. _ADDRESS.RPT a RPT text file used to print data contained inside _ADDRESS.DBF. _MAINMNU.& a macro program source example of a menu that executes some others macro programs. This example is made to demonstrate how nB can execute directly a soruce code without compiling it. This example is made only to taste it: it is very slow and only a speady machine can give the idea of it. 0MAINMNU.& a macro program source example of a menu that executes some others macro programs. It is the same as _MAINMNU.& but it is made to start the execution of the compliled macros. 0MAINMNU.NB compiled macro program 0MAINMNU.& 0MAINMNU.BAT a batch file to show how to run the execution of 0MAINMNU.NB 1ADDRESS.& a macro program source example for handling a .DBF file containig addresses in various ways. 1ADDRESS.NB compiled macro 1ADDRESS.&. 2ADDRESS.& a macro program source example for handling a .DBF file containig addresses in various ways: a little bit more complicated than 1ADDRESS.&. 2ADDRESS.NB compiled macro 2ADDRESS.&. 3ADDRESS.& a macro program source example for handling a .DBF file containig addresses in various ways: a little bit more complicated than 2ADDRESS.&. 3ADDRESS.NB compiled macro 3ADDRESS.&. 4ADDRESS.& a macro program source example for handling a .DBF file containig addresses in various ways: a little bit more complicated than 3ADDRESS.&. 4ADDRESS.NB compiled macro 4ADDRESS.&. ABIORITM.& a macro program source example for calculating the personal bio wave. ABIORITM.NB compiled macro ABIORITM.&. _STUDENT.DBF a .DBF file used inside the BSTUDENT macro example. _STUDENT.NTX index file used for _STUDENT.DBF. _STUDSTD.DBF a .DBF file used inside the BSTUDENT macro example. _STUDENT.RPT a RPT text file used to print data contained inside _STUDENT.DBF. _STUDSTD.RPT a RPT text file used to print data contained inside _STUDSTD.DBF. BSTUDENT.& a macro program source example for students evaluation: a description about students is obtained linking other standard descriptions. BSTUDENT.NB compiled macro BSTUDENT.&. CBATMAKE.& a macro program source example to generate a batch file to be used to back up an entire hard disk. CBATMAKE.NB compiled macro CBATMAKE.&. BROWSE.& a macro program source example to start an automatic browse. BROWSE.NB compiled macro BROWSE.&. BROWSE.BAT batch file to start a .DBF browse with the BROWSE macro program. MENU.& a macro program source example for a Dos menu. MENU.NB compiled macro MENU.&. MENU.BAT batch file to use the MENU macro. The file NBASExx6.ZIP contains also the following files: source code for the version 96.06.16. NB.PRG the main source file for version 96.06.16. NB_REQ.PRG the source file conatinig links to all the standard functions. NB.LNK link file for compilation. NB_NRMAL.RMK rmake file to compile with RTLink. NB_EXOSP.RMK rmake file to compile with Exospace. NB_RUNTI.RMK rmake file to compile with RTLink defining RUNTIME to obtain a small nB runtime version. MACRO.LNK link file to compile and link a macro. MACRO.RMK rmake file to compile and link a macro. The file NBASExx7.ZIP contains also the following files: source code for the current version. NB.PRG the main source file. REQUEST.PRG the source file conatinig links to all the CA- Clipper functions. STANDARD.PRG the source file for standard functions. EXTRA.PRG the source file for other standard functions. STANDARD.CH general include file that subtitues all include file normally used for normal Clipper compilations. NB.CH include file specific for nB. NB.LNK link file for compilation. NB_RUNTI.LNK link file for runtime compilation. NB_NRMAL.RMK rmake file to compile with RTLink. NB_EXOSP.RMK rmake file to compile with Exospace. NB_RUNTI.RMK rmake file to compile with RTLink defining RUNTIME to obtain a small nB runtime version. MACRO.CH include file to compile and link a macro. MACRO.LNK link file to compile and link a macro. MACRO.RMK rmake file to compile and link a macro. CLIPMOUSE.ZIP a simple Freeware library for mouse support under Clipper (c) 1992 Martin Brousseau. nB normal syntax is: nB [] [] [] To run nB, just type the word "NB" and press [Enter] to execute. It will run in command mode, this means that it will look like an old xBASE command prompt. To run the program as a macro interpreter, type the word NB followed from the macro file name with extention (no default extention is supposed). If parameters are given, after the macro file name, these will be available inside the public variables: c_Par1, c_Par2, ..., c_Par9. c_Par0 will contain the macro file name (see the macro file BROWSE.&). nB will terminate execution when the macro terminates. These parameters are available for nB: -c Suppress the copyright notice. It is usefull when using nB for macro interpretation. -w Suppress the "Wait-Wheel" if not desired. It is the "Wheel" that appears at top-left when a macro is interpreted or other long elaborarions are executed. -? Shows a short help. nB macro "compilation" syntax is: nB -m [] With the -m parameter, nB "compiles" the ascii into . nB shows a "status line" at the top of the screen when the nB command prompt or the menu system is active. It shows some important informations. | |DBFNTX ||*| 1|ADDRESS | 1/ 4|ADDRESS.NTX | | | | | | | | | | | | | | | | | | | | | Last record (7). | | | | | | | | | | | Record pointer position (6). | | | | | | | | | Active Alias (5). | | | | | | | Current Work Area (4) | | | | | Deleted record appearence (3) | | | Actual default database driver (2). | Macro recorder indicator (1). | 1/ 4|ADDRESS.NTX | 1|ADDRESS | | | | | | | | | Order Tag Name (10) | | | Order number (9) | Order Bag name (8) (1) This is the place for the macro recorder indicator. The symbol used is "&". BLANK - means that the macro recorder is OFF; & blink - means that the macro recorder is ON; & - means that the macro recorder is PAUSED. (2) The name of the default database driver. It is not necessarily the database driver for the active Alias; it is only the database driver that will be used for the next open/create operation. (3) An asterisk (*) at this position indicates that SET DELETED is OFF. This means that deleted records are not filtered. When a BLANK is in this place, SET DELETED is ON, so that deleted records are filtered. (4) The active work area number, that is, the area of the active Alias. (5) The active Alias name. Note that the Alias name is not necessarily equal to the .DBF file name. (6) The actual record pointer position for the active Alias. (7) The number of records contained inside the active Alias. (8) The Order Bag name; that is the index file name. (9) The order number. (10) The order tag (name). When DBFNTX database driver is used, it correspond to the Order Bag name. Starting nB without parameters, the dot line appears. This is the place where commands in form of functions may be written and executed like a old xBase. The functions written inside the command line that don't result in an error, are saved inside a history list. This history list may be recalled with [F2] and then the selected history line may be reused (eventually edited). Key [up]/[down] may be used to scroll inside the history list without showing the all list with [F2]. [Enter] is used to tell nB to execute the written function. As the dot line is not an easy way to use such a program, a menu is available pressing [F10] or [Alt]+[M]. The [F10] key starts the ASSIST() menu. This menu may be started also entering the name of the function: "ASSIST()". nB includes a simple built-in text editor: DOC(). It may be started from the dot line entering "DOT()". No special key is dedicated to start this function. What's new: Mouse support: many standard functions are rewritten. TB() is modified: now more parameter are available. Bidimensional arrays may be directly edited with ATB(), a Tbrowse function for arrays. More functions are availables. Other minor changes. Other minor bug corrections. If you like the program, I will be happy to know it, for example receiving a e-mail where you say something like: "I use nB". Will you tell me if you like this work? Comments, suggestions, bug reports and english text corrections are welcome (and needed) to make a better nB. Write to: Daniele Giacomini Via Turati, 15 I-31100 Treviso Italy Send your e-mail to: daniele@tv.shineline.it The latest about nB may be found at: http://www.geocities.com/SiliconValley/7737/nanobase.html