home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Share Gallery 1
/
share_gal_1.zip
/
share_gal_1
/
DB
/
DB009B.ZIP
/
1.ZIP
/
README
< prev
next >
Wrap
Text File
|
1989-09-29
|
23KB
|
728 lines
1 on 1 = 3!!
ADDITIONAL INFORMATION
----------------------
MEMORY REQUIREMENTS
-------------------
Most of the problems that people have encountered so far have
been because of memory. You must have at least 450K to 460K of
free memory to run 1 on 1 = 3!!. Before installing 1 on 1 = 3!!
do a CHKDSK. The last number will tell you the amount of free
memory you have. If your number is lower then 450000 you will
have to remove some of your memory resident programs.
21344256 bytes total disk space
45056 bytes in 2 hidden files
155648 bytes in 59 directories
19036160 bytes in 2000 user files
20480 bytes in bad sectors
1921024 bytes available on disk
655360 bytes total memory
583760 bytes free
VIDEO PROBLEMS LIKE TOO MUCH SNOW
---------------------------------
Edit the batch file 3!!.bat and change
FOXPRUN 3!! to FOXPRUN -NOTIBM 3!!
USING A DIFFERENT DIRECTORY THEN \3!!
-------------------------------------
You may move 1 on 1 = 3!! to any directory you want. Just
replace "\3!!" the two places it appears in 3!!.bat with the new
directory name.
1
USING THE NAME 3!!
------------------
It is not necessary to keep this name for executing 1 on 1 = 3!!.
You can use any legal name you want. Just type in:
REN 3!!.BAT anyname.BAT{Enter}
Then to execute 1 on 1 = 3!! you type in:
anyname{Enter}
IMPORTING DATA FROM ASCII FILES
-------------------------------
* Formatted files - If the file you want to import data from is
formatted, create a database that corresponds in field size and
type of data with the ascii file. If there are sections of data
you do not want in your final file you will still have to create
a dummy variable for alignment purposes. After you import the
data you can modify the database and delete those fields.
Go into the Command Mode of 1 on 1 = 3!! and type:
USE <database name>
APPEND FROM <ascii file name> SDF{Enter}
USE{Enter}
QUIT{Enter}
* UNFORMATTED FILES - If your ascii file has fields separated by
commas and character strings enclosed in quotes again create a
database with fields that correspond in order and type to the
ascii file. You may have to remove any extra spaces after
commas. These seem to cause problems for 1 on 1 = 3!!.
Go to the Command Mode of 1 on 1 = 3!! and type:
USE <database name>{Enter}
APPEND FROM <ascii file name> DELIMITED{Enter}
USE{Enter}
QUIT{Enter}
A GOOD STARTING BOOK FOR LEARNING ABOUT dBASE III PLUS
------------------------------------------------------
Many people have asked us to recommend a good book to learn more
about dBASE III PLUS including programing. We highly recommend
UNDERSTANDING dBASE III PLUS by Alan Simpson. The feed back from
the people we recommended it to has been very positive. For your
convenience we are going to stock some copies of this book. The
total price will be $23 including s/h.
2
PROBLEM IN CREATING MACROS
--------------------------
In creating macros when trying to leave a level 3 menu {Esc} and
{Left Arrow} do not seem to work. Try using {Right Arrow}.
EXITING FROM 1 on 1 = 3!!
-------------------------
It is very important for you to exit normally from 1 on 1 = 3!!.
While you are inputing data some of it is stored in memory to
speed up the operation. When you are at a menu item in the Menu
mode, 1 on 1 = 3!! is set up to automatically write this data to
disk every 60 seconds. Even so, if for some reason you have to
do {Ctrl} {Alt} {Del} or the power is shut off you may loose some
of the work you were doing at the time. You may even destroy
some of the files that you were using.
If this does happen to you, go back into 1 on 1 = 3!!. Open any
files you were using and recreate all indexes you were using.
Then check to see the condition of your file.
The software that was used to create 1 on 1 = 3!! also opens up
temporary files. If you leave 1 on 1 = 3!! abnormally this can
result in lost clusters being created. Do a CHKDSK/F at the DOS
prompt. You will get output that looks like the following:
81 lost clusters found in 3 chains.
Convert lost chains to files (Y/N)? y
165888 bytes disk space would be freed.
21344256 bytes total disk space
45056 bytes in 2 hidden files
155648 bytes in 59 directories
19036160 bytes in 2000 user files
20480 bytes in bad sectors
1921024 bytes available on disk
655360 bytes total memory
583760 bytes free
If lost clusters are reported, say you want them recovered. This
will create files call FILE*.CHK in the root directory. These
files can be deleted.
SKIPPING THE OPENING MENU
-------------------------
If you want 1 on 1 = 3!! to skip the opening menu and go right
into either the Menu Mode or the Command Mode all you need to do
is create a special file in the \3!! directory. To go right into
the Menu Mode create the file MENU.3!!. To go right into the
3
Command Mode create the file COMMAND.3!!. When you exit that
mode you will leave 1 on 1 = 3!! completely.
FAST AND EMERGENCY EXIT FROM MENU MODE
--------------------------------------
{Ctrl Q} will now exit you from 1 on 1 = 3!! to DOS if you are on
a menu item in the Menu Mode. If you run out of memory 1 on 1 =
3!! sometimes will not let you execute any menu items. It will
continually give you an error message. In this case when you do
get to a menu item try {Ctrl Q}.
CANCEL, IGNORE, SUSPEND
-----------------------
At times you may get an error message followed by:
Cancel, Ignore, Suspend
Note the error messages and try 'I' for ignore and see if you get
back to the menu. If you continually have this problem call us
for technical assistance.
EXECUTING A PROGRAM RIGHT FROM DOS
----------------------------------
In order to execute a program right from DOS all you need to do
type in 3!! <program name>. For example:
3!! UPDATE
CHANGING THE PROMPT FOR THE COMMAND MODE
----------------------------------------
You may change the prompt in the command mode by changing the
value for the field 'PROMPT' in the database file III_SYS.FOX.
You may change it temporarily by typing III_PROMPT = '<new
prompt>' in the command mode.
NUMBER OF PAGES IN DOCUMENTATION
--------------------------------
The tutorial 3!!_TUT.DOC is about 45 pages.
The help manual is about 85 pages.
4
CHANGING COLORS
---------------
Changing colors are explained in the Help system under CHANGING
COLORS. The following are the codes to use for different colors.
BLACK N BLANK X BLUE B
BROWN GR CYAN BG GREEN G
MAGENTA RB RED R WHITE W
YELLOW GR+
* IS USED FOR BLINKING, + FOR HIGH INTENSITY
On a monochrome monitor:
U UNDERLINE I INVERSE VIDEO
USING SET FORMAT TO
-------------------
In some of the old documentation it says that this command does
not work. On the contrary it does work and it is recommended that
you use it. It can increase the speed of your input screens by
up to 40 times.
SETTING AN ESCAPE FROM A PROGRAM
--------------------------------
If you want to be able to escape out of your programs try putting
the following statements in:
SET ESCAPE ON
ON ESCAPE DO III_DBER
When you hit escape you will get an error message followed by:
Cancel, Ignore, Suspend
Cancel will end the program and bring you back to the Command
prompt. Ignore will resume the program. Suspend will bring you
to the Command prompt in suspended mode. You will be able to
print out values, SET ECHO, SET STEP, SET TALK ON, ETC. You will
be able to continue executing the program by typing RESUME.
TECHNIQUES FOR GETTING AROUND FASTER
IN 1 on 1 = 3!!'s MENU MODE
5
------------------------------------
1 on 1 = 3!! has a number of special keys that allow you to
execute some of the more often used commands from any where in
the Menu mode except the top menu with a {Alt} or {Ctrl} key
combination. You can use the {F4} or the {F3} keys to change the
Help window on the bottom of the screen until a list of these
keys are shown.
Below is a copy of those screens.
{Enter} Choose menu item {F2} Macro
{Up Arrow} Previous menu item {F5} Browse with
update
{Down Arrow} Next menu item {-} Previous
record
{Right Arrow} Menu to the right {+} Next Record
{Left Arrow} Menu to the left {Home} First Record
{Esc} Previous menu {End} Last record
{F1} Help
[Alt U] Name database [Alt Z] browZe
[Alt I] Name index [Alt C] Command mode
[Alt P] Name picture [Alt D] Directory
change
[Alt E] Edit [Alt K] direKtory
[Alt A] Append [Alt J] eJect
[Alt S] Seek [Ctrl O] Output
[Alt L] List
Whenever possible use these keys to execute commands instead of
moving around the menu.
When you do move around the menu, use the letters and numbers to
select menus and commands instead of using the arrow key. This
is much faster.
Below is the last of the special {Alt} key screens. This one
shows that you can execute any of the 9 main top menus from any
other menu. If you only have 512k memory you will be very
limited in using this function. With 640k and no memory resident
programs I was able to get 25 overlays. This was not very
functional but was pretty on an EGA monitor.
6
[Alt 1] Name [Alt 8] Extra
[Alt 2] Create [Alt 9] Set
[Alt 3] Modify
[Alt 4] Report
[Alt 5] Arrange
[Alt 6] Position
[Alt 7] Update
As an example of how I use these features. I use the menu mode
of 1 on 1 = 3!! to help run I on I Computer Solutions. So far I
have written just one dBASE program to create a merge file for
Word Perfect to do my invoicing.
I have a database called ORDERS. I have it indexed on last name,
company name, state, zip, and phone. I have saved a Picture of
this call LOOKUP. When I want to use this Picture for updating I
always use {Alt P} even if I happen to be in the Name menu
because I find it easier to remember 'P' for picture rather then
what ever number Picture is. I then position myself in the
Arrange menu. The reason I have all the different indexes is
that when some checks come in, and also when some returns come in
(BOO), there is not enough information in the name or company to
find that person. I use the Order command to change to the
different indexes based on the order they were picked and use
{Alt S} to do a search. I keep the current record in the Window
at the bottom of the screen to see who I have found.
When I search on state, or the first couple of numbers of zip and
phone I go into the Browse mode using {Alt Z} to look around.
When I find the person I want I use the {Alt E} to go into the
Edit mode to update that person.
So far I haven't left the Arrange menu. When I get an order in
with a check I usually process that right away. I set the Order
(that is the Order in the menu under Arrange) to zero. Then I
use {Alt A} for Append. After I put 1 person in I escape out of
the append mode. Since we are not indexed now that person is the
current record and shows up on the bottom of my screen.
I have created a macro I call 1LABELF8. I call it this because
it is used to print 1 label and the key used to invoke it is the
{F8} key. Since there is no {Alt} key to Name a macro, I use
{Alt 1} to overlay the Name menu. Then a 7 to pick my macro and
when I am back to the Name menu pressing {Esc} returns me to the
Arrange menu.
My 1LABELF8 macro is set up to do the following: Escape to the
top menu, pick the Report menu, turn the printer on, select
label, specify next 1 records, execute label, put in the label
file name, tell the computer not to do a sample, press any key,
turn the printer off, go to the Arrange menu.
7
It might sound like that was a hard macro to create. It wasn't.
I just did every thing interactively and wrote down each key I
used. Then I created the macro. (See Macros in the Help file)
Below is the key sequence I put in to create the macro:
{F2} Go into the macro create mode.
{F8} Tell it the key to redefine.
{Esc}{Esc} I like to try and get to the top menu before
starting my macro.
R Choose the Report menu.
8 Choose Output.
3 Turn the printer on.
{Right Arrow} You should be able to use {Esc} here but for some
reason it doesn't work. {Right Arrow} will get
you out of the Output menu.
4 Choose Label.
3 Specify which records.
3 Specify Next.
1{Enter} Tell it one record.
1 Execute the label command.
{Ctrl Y} The computer would now be asking what the name of
the menu control file is. Just in case there is
another name in there already we use {Ctrl Y} to
clear the input line.
IONI{Enter} Put in the name of the label control file.
N{Enter} Tell it we do not want any samples.
{any key} The label will be printed and then you will be
asked to hit any key.
8 We are now back in the Report menu. We again
choose Output.
4 We turn the printer off.
{Right Arrow} We return to the Report menu.
8
A And back over to the Arrange menu.
{F2} Save this macro.
{F2} Go back to the menu.
Now when I press {F8} I get a label for the current record.
That will give you a little bit of an idea of what you can do to
speed up the use of the menu and make things easier for yourself.
A lot of this you may not understand at first but it will become
clearer as you use 1 on 1 = 3!!.
TECHNIQUES FOR FASTER PROGRAMS
USING 1 on 1 = 3!!
------------------------------
DATA INPUT
----------
As mentioned before you should use SET FORMAT TO if at all
possible in creating screens for data input. One of the problems
with this is in the checking of the input and then positioning
the person back at the field that has the error.
1 on 1 = 3!! has a feature in the @ <row, col> GET command that
dBASE does not have. This is the valid clause. This allows you
to check the data while the person is putting it in. The clause
should evaluate to true or false. example
@ 12,2 SAY 'ENTER SEX' GET SEX ;
PICTURE '!' VALID SEX = 'M' .OR. SEX = 'F'
In this example the user would have to enter 'M' or 'F'. Any
other letter would leave the cursor in that field. If the bell
was on it would beep.
One problem with this method is that if the user doesn't enter
any data no checking is done.
Another method that can be used by itself or in conjunction with
the valid statement is to check for errors after all input is
done for the page. On encountering an error do another READ and
position the cursor to the corresponding input field using
another extension to dBASE the KEYBOARD command. This command
allows you to put keystrokes into the keyboard buffer.
SET FORMAT TO COURSE
9
APPEND BLANK
READ
GOOD = .F.
DO WHILE .NOT. GOOD
GOOD = .T.
* TEST FOR SEX WHICH IS THE 5TH FIELD
IF SEX <> 'M' .AND. SEX <> 'F'
* There is an error in the SEX field
* PUT 4 {Enter}'s in the keyboard buffer
KEYBOARD CHR(13)+CHR(13)+CHR(13)+CHR(13)
SELECT COURSE
* Doing a READ will bring up the format COURSE
* The read will find 4 {Enter}s in the keyboard buffer
* Reading these will bring the cursor to the 5th field
READ
GOOD = .F.
ENDIF SEX <> 'M' .AND. SEX <> 'F'
* TEST STATE THE 7 TH FIELD BY LOOKING UP IN ANOTHER FILE
SELECT STATE
SEEK COURSE->STATE
IF .NOT. FOUND()
KEYBOARD
CHR(13)+CHR(13)+CHR(13)+CHR(13)+CHR(13)+CHR(13)
SELECT COURSE
READ
GOOD = .F.
ENDIF .NOT. FOUND(STATE)
* AND ANY OTHER FIELDS YOU HAVE
.
.
.
ENDDO WHILE .NOT. GOOD
MENUS
-----
There are 3 good methods for doing menus.
1. The built in menu generator.
2. Using SET FORMAT TO
10
3. Using TEXT .... ENDTEXT
LOOPING THROUGH DATA BASES
--------------------------
The general rule here is to go out of your way to use the power
of single commands to go through your database. Avoid as much as
possible using DO WHILE ... ENDDO to process records in your
database. When you do have to use these, try to minimize the
number of loops.
Some ideas to keep in mind.
Use your reporting commands like REPORT, LIST, COUNT, SUM
whenever you can. You can do quite a bit of your reporting with
the REPORT command.
Use SET FILTER TO when you do have to loop through the data base.
Index your data base first, do a SEEK on the first record you
need and use DO WHILE FIELD = 'ABC'.
Use the REPLACE command for updating if possible.
PLEASE WRITE US WITH ANY TECHNIQUES YOU HAVE FOUND FOR SPEEDING
UP EXECUTION.
11