Dec 122017
Ashton Tate DBASE IV Tech Notes for Nov 90.
File TN9011.ZIP from The Programmer’s Corner in
Category Dbase Source Code
Ashton Tate DBASE IV Tech Notes for Nov 90.
File Name File Size Zip Size Zip Type
DIALOGUE.TXT 3723 1722 deflated
DIYPOPUP.TXT 39788 8064 deflated
ENVPRES.TXT 9833 3419 deflated
ETC.TXT 9974 4095 deflated
LETGO3P.TXT 13201 5566 deflated
LIFNOMAC.TXT 9735 3892 deflated
POPCAL.TXT 7584 2501 deflated

Download File TN9011.ZIP Here

Contents of the DIALOGUE.TXT file

Questions and Answers

Sluggish Hyperdisk

Q: I'm devastated! I was expecting great performance increases when I installed my 1.1 update but it has turned out to be even slower than the original version. A procedure that used to take all of 10 seconds in 1.0 now takes over three minutes. This can't be right. Please tell me I've not set something correctly.

A: We've discovered that third-party cache utilities can interfere with dBASE IV and it's caching mechanism. Check your Autoexec.bat file to see what software is being loaded that may interfere. Remove it and compare the difference in performance. dBASE IV version 1.1 is faster.

Snagged By a Left Arrow

Q: I'm having difficulty trapping the leftarrow key (Ctrl-S) in my program using INKEY(). Sometimes it doesn't seem to work and my program seems to hang. What is the correct way?

A: If you use INKEY() to trap the leftarrow, you should put INKEY() into a continuous wait with an argument of zero-INKEY(0). INKEY(0) will wait for a keypress. If you try to trap Leftarrow in a DO WHILE structure, dBASE IV may regard it as a Ctrl-S and pause the program execution. This occurs when you press the leftarrow key while dBASE IV is processing a line other than the one with the INKEY() function. So instead of coding like so:

DO WHILE i = 0
i = INKEY()
use only a single line which would appear as

i = INKEY(0)

Hiding Your Echo

Q: I have created a report and am working from the Control Center. I do not want the output echoed to the screen. I have created a .prf file and set my destination to PRINTER, and the Echo to screen option to NO. My program which calls the report contains the statement

_pform = "PRS"

where PRS is the name of the print form file previously created and saved. After the above, I issue the REPORT FORM command but still get the output echoed to the screen. How do I prohibit this?

A: In a program, you must issue the command SET CONSOLE OFF prior to a report run. The Print: Output options: Echo to screen choice is valid only for those reports run from the Reports panel in the Control Center.

It should be noted that changing the setting in the Print menu does not set the value of any system memory variable, nor does it cause the command SET CONSOLE OFF to be placed into the .frg file.

How Executable Do You Mean?

Q: I'm confused about how dBASE IV compiles programs. I was under the impression that dBASE IV compiles code into .exe files which can be run from DOS. In the dBASE For Developers booklet on page 16-1, it reads

"BUILD can invoke DBLINK if you wish to link all the dependent object files into one executable file".

But all that are present in my directory after I run BUILD are .dbo files. Could you better explain the compiling process?

A: You're thinking of the dBASE Professional Compiler, which is a separate product from dBASE IV and is still in development. The quotation you cited could lead one to the conclusion that BUILD has evolved into the Professional Compiler in the latest 1.1 version. However, BUILD with DBLINK will give you one large .dbo object file which can be executed only from within dBASE IV.

A PostScript Landscape

Q: How do I use the PostScript driver to print in landscape mode?

A: You must include in the following code in Print: Control options: Starting control codes prompt:


The Ending control code to reset the printer back to portrait mode is:


Make sure to set your lines per page to 45.

 December 12, 2017  Add comments

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>