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 >
Text File  |  1989-09-29  |  23KB  |  728 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.             
  10.                                      1 on 1 = 3!!
  11.  
  12.                                 ADDITIONAL INFORMATION
  13.                                 ----------------------
  14.             
  15.             
  16.           MEMORY REQUIREMENTS  
  17.           -------------------
  18.  
  19.           Most of the problems that people have encountered so far have
  20.           been because of memory. You must have at least 450K to 460K of
  21.           free memory to run 1 on 1 = 3!!. Before installing 1 on 1 = 3!!
  22.           do a CHKDSK.  The last number will tell you the amount of free
  23.           memory you have. If your number is lower then 450000 you will
  24.           have to remove some of your memory resident programs.  
  25.  
  26.           21344256 bytes total disk space   
  27.              45056 bytes in 2 hidden files   
  28.             155648 bytes in 59 directories  
  29.           19036160 bytes in 2000 user files 
  30.              20480 bytes in bad sectors 
  31.            1921024 bytes available on disk 
  32.            
  33.             655360 bytes total memory 
  34.             583760 bytes free 
  35.  
  36.  
  37.           VIDEO PROBLEMS LIKE TOO MUCH SNOW
  38.           ---------------------------------
  39.  
  40.           Edit the batch file 3!!.bat and change
  41.  
  42.           FOXPRUN 3!!  to FOXPRUN -NOTIBM 3!!
  43.  
  44.           USING A DIFFERENT DIRECTORY THEN \3!!
  45.           -------------------------------------
  46.  
  47.           You may move 1 on 1 = 3!! to any directory you want.  Just
  48.           replace  "\3!!" the two places it appears in 3!!.bat with the new
  49.           directory name.
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.                                           1
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.           USING THE NAME 3!!
  76.           ------------------
  77.  
  78.           It is not necessary to keep this name for executing 1 on 1 = 3!!. 
  79.           You can use any legal name you want. Just type in:
  80.  
  81.           REN 3!!.BAT  anyname.BAT{Enter}
  82.  
  83.           Then to execute 1 on 1 = 3!! you type in:
  84.  
  85.           anyname{Enter}
  86.  
  87.           IMPORTING DATA FROM ASCII FILES
  88.           -------------------------------
  89.  
  90.           * Formatted files - If the file you want to import data from is
  91.           formatted, create a database that corresponds in field size and
  92.           type of data with the ascii file.  If there are sections of data
  93.           you do not want in your final file you will still have to create
  94.           a dummy variable for alignment purposes.  After you import the
  95.           data you can modify the database and delete those fields.
  96.  
  97.           Go into the Command Mode of 1 on 1 = 3!! and type:
  98.  
  99.           USE <database name>
  100.           APPEND FROM <ascii file name> SDF{Enter}
  101.           USE{Enter}
  102.           QUIT{Enter}
  103.  
  104.           * UNFORMATTED FILES - If your ascii file has fields separated by
  105.           commas and character strings enclosed in quotes again create a
  106.           database with fields that correspond in order and type to the
  107.           ascii file.  You may have to remove any extra spaces after
  108.           commas.  These seem to cause problems for 1 on 1 = 3!!.
  109.  
  110.           Go to the Command Mode of 1 on 1 = 3!! and type:
  111.  
  112.           USE <database name>{Enter}
  113.           APPEND FROM <ascii file name> DELIMITED{Enter}
  114.           USE{Enter}
  115.           QUIT{Enter}
  116.  
  117.           A GOOD STARTING BOOK FOR LEARNING ABOUT dBASE III PLUS
  118.           ------------------------------------------------------
  119.  
  120.           Many people have asked us to recommend a good book to learn more
  121.           about dBASE III PLUS including programing.  We highly recommend
  122.           UNDERSTANDING dBASE III PLUS by Alan Simpson.  The feed back from
  123.           the people we recommended it to has been very positive.  For your
  124.           convenience we are going to stock some copies of this book.  The
  125.           total price will be $23 including s/h.
  126.  
  127.  
  128.                                           2
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.           PROBLEM IN CREATING MACROS
  143.           --------------------------
  144.  
  145.           In creating macros when trying to leave a level 3 menu {Esc} and
  146.           {Left Arrow} do not seem to work.  Try using {Right Arrow}.
  147.  
  148.           EXITING FROM 1 on 1 = 3!!  
  149.           -------------------------
  150.  
  151.           It is very important for you to exit normally from 1 on 1 = 3!!. 
  152.           While you are inputing data some of it is stored in memory to
  153.           speed up the operation.  When you are at a menu item in the Menu
  154.           mode, 1 on 1 = 3!! is set up to automatically write this data to
  155.           disk every 60 seconds.  Even so, if for some reason you have to
  156.           do {Ctrl} {Alt} {Del} or the power is shut off you may loose some
  157.           of the work you were doing at the time.  You may even destroy
  158.           some of the files that you were using.  
  159.  
  160.           If this does happen to you, go back into 1 on 1 = 3!!.  Open any
  161.           files you were using and recreate all indexes you were using.
  162.           Then check to see the condition of your file.  
  163.  
  164.           The software that was used to create 1 on 1 = 3!! also opens up
  165.           temporary files.  If you leave 1 on 1 = 3!! abnormally this can
  166.           result in lost clusters being created. Do a CHKDSK/F at the DOS
  167.           prompt.   You will get output that looks like the following:
  168.  
  169.           81 lost clusters found in 3 chains. 
  170.           Convert lost chains to files (Y/N)? y    
  171.             165888 bytes disk space would be freed.  
  172.           21344256 bytes total disk space   
  173.              45056 bytes in 2 hidden files   
  174.             155648 bytes in 59 directories  
  175.           19036160 bytes in 2000 user files 
  176.              20480 bytes in bad sectors 
  177.            1921024 bytes available on disk 
  178.            
  179.             655360 bytes total memory 
  180.             583760 bytes free 
  181.            
  182.           If lost clusters are reported, say you want them recovered. This
  183.           will create files call FILE*.CHK in the root directory. These
  184.           files can be deleted.  
  185.  
  186.           SKIPPING THE OPENING MENU  
  187.           -------------------------
  188.  
  189.           If you want 1 on 1 = 3!! to skip the opening menu and go right
  190.           into either the Menu Mode or the Command Mode all you need to do
  191.           is create a special file in the \3!! directory. To go right into
  192.           the Menu Mode create the file MENU.3!!.  To go right into the
  193.  
  194.                                           3
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.           Command Mode create the file COMMAND.3!!.  When you exit that
  208.           mode you will leave 1 on 1 = 3!! completely.  
  209.  
  210.           FAST AND EMERGENCY EXIT FROM MENU MODE
  211.           --------------------------------------
  212.  
  213.           {Ctrl Q} will now exit you from 1 on 1 = 3!! to DOS if you are on
  214.           a menu item in the Menu Mode.  If you run out of memory 1 on 1 =
  215.           3!! sometimes will not let you execute any menu items.  It will
  216.           continually give you an error message.  In this case when you do
  217.           get to a menu item try {Ctrl Q}.
  218.  
  219.  
  220.           CANCEL, IGNORE, SUSPEND
  221.           -----------------------
  222.  
  223.           At times you may get an error message followed by:
  224.  
  225.           Cancel, Ignore, Suspend
  226.  
  227.           Note the error messages and try 'I' for ignore and see if you get
  228.           back to the menu.  If you continually have this problem call us
  229.           for technical assistance.
  230.  
  231.           EXECUTING A PROGRAM RIGHT FROM DOS
  232.           ----------------------------------
  233.  
  234.           In order to execute a program right from DOS all you need to do
  235.           type in 3!! <program name>.  For example:
  236.  
  237.           3!! UPDATE
  238.  
  239.           CHANGING THE PROMPT FOR THE COMMAND MODE  
  240.           ----------------------------------------
  241.  
  242.           You may change the prompt in the command mode by changing the
  243.           value for the field 'PROMPT' in the database file III_SYS.FOX. 
  244.           You may change it temporarily by typing III_PROMPT = '<new
  245.           prompt>' in the command mode.
  246.  
  247.           NUMBER OF PAGES IN DOCUMENTATION  
  248.           --------------------------------
  249.  
  250.           The tutorial 3!!_TUT.DOC is about 45 pages.  
  251.           The help manual is about 85 pages.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.                                           4
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.           CHANGING COLORS
  275.           ---------------
  276.  
  277.           Changing colors are explained in the Help system under CHANGING
  278.           COLORS.  The following are the codes to use for different colors.
  279.  
  280.           BLACK          N         BLANK          X         BLUE      B
  281.           BROWN          GR        CYAN           BG        GREEN     G
  282.           MAGENTA        RB        RED            R         WHITE     W
  283.           YELLOW         GR+
  284.  
  285.           * IS USED FOR BLINKING, + FOR HIGH INTENSITY
  286.  
  287.  
  288.           On a monochrome monitor:
  289.  
  290.           U              UNDERLINE                I         INVERSE VIDEO
  291.  
  292.  
  293.           USING SET FORMAT TO 
  294.           -------------------
  295.  
  296.           In some of the old documentation it says that this command does
  297.           not work. On the contrary it does work and it is recommended that
  298.           you use it.  It can increase the speed of your input screens by
  299.           up to 40 times.  
  300.  
  301.  
  302.           SETTING AN ESCAPE FROM A PROGRAM
  303.           --------------------------------
  304.  
  305.           If you want to be able to escape out of your programs try putting
  306.           the following statements in:
  307.  
  308.           SET ESCAPE ON
  309.           ON ESCAPE DO III_DBER
  310.  
  311.           When you hit escape you will get an error message followed by:
  312.  
  313.           Cancel, Ignore, Suspend
  314.  
  315.           Cancel will end the program and bring you back to the Command
  316.           prompt.  Ignore will resume the program.  Suspend will bring you
  317.           to the Command prompt in suspended mode.  You will be able to
  318.           print out values, SET ECHO, SET STEP, SET TALK ON, ETC.  You will
  319.           be able to continue executing the program by typing RESUME.
  320.  
  321.  
  322.  
  323.                         TECHNIQUES FOR GETTING AROUND FASTER 
  324.                              IN 1 on 1 = 3!!'s MENU MODE
  325.  
  326.                                           5
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.                          ------------------------------------
  340.  
  341.           1 on 1 = 3!! has a number of special keys that allow you to
  342.           execute some of the more often used commands from any where in
  343.           the Menu mode except the top menu with a {Alt} or {Ctrl} key
  344.           combination.  You can use the {F4} or the {F3} keys to change the
  345.           Help window on the bottom of the screen until a list of these
  346.           keys are shown.
  347.  
  348.           Below is a copy of those screens.
  349.  
  350.            {Enter}        Choose menu item         {F2}       Macro    
  351.            {Up Arrow}     Previous menu item       {F5}       Browse with
  352.           update 
  353.            {Down Arrow}   Next menu item           {-}        Previous
  354.           record    
  355.            {Right Arrow}  Menu to the right        {+}        Next Record  
  356.            
  357.            {Left Arrow}   Menu to the left         {Home}     First Record 
  358.            
  359.            {Esc}          Previous menu            {End}      Last record  
  360.            {F1}           Help                         
  361.  
  362.            [Alt U]     Name database               [Alt Z]     browZe      
  363.               
  364.            [Alt I]     Name index                  [Alt C]     Command mode 
  365.              
  366.            [Alt P]     Name picture                [Alt D]     Directory
  367.           change 
  368.            [Alt E]     Edit                        [Alt K]     direKtory   
  369.               
  370.            [Alt A]     Append                      [Alt J]     eJect       
  371.               
  372.            [Alt S]     Seek                        [Ctrl O]    Output      
  373.               
  374.            [Alt L]     List                                                
  375.               
  376.  
  377.           Whenever possible use these keys to execute commands instead of
  378.           moving around the menu.
  379.  
  380.           When you do move around the menu, use the letters and numbers to
  381.           select menus and commands instead of using the arrow key.  This
  382.           is much faster.
  383.  
  384.           Below is the last of the special {Alt} key screens.  This one
  385.           shows that you can execute any of the 9 main top menus from any
  386.           other menu.  If you only have 512k memory you will be very
  387.           limited in using this function.  With 640k and no memory resident
  388.           programs I was able to get 25 overlays.  This was not very
  389.           functional but was pretty on an EGA monitor.
  390.  
  391.  
  392.                                           6
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.  
  405.            [Alt 1]     Name                        [Alt 8]     Extra  
  406.            [Alt 2]     Create                      [Alt 9]     Set    
  407.            [Alt 3]     Modify                                         
  408.            [Alt 4]     Report                                         
  409.            [Alt 5]     Arrange                                        
  410.            [Alt 6]     Position                                       
  411.            [Alt 7]     Update                        
  412.  
  413.           As an example of how I use these features.  I use the menu mode
  414.           of 1 on 1 = 3!! to help run I on I Computer Solutions.  So far I
  415.           have written just one dBASE program to create a merge file for
  416.           Word Perfect to do my invoicing.
  417.  
  418.           I have a database called ORDERS.  I have it indexed on last name,
  419.           company name, state, zip, and phone.  I have saved a Picture of
  420.           this call LOOKUP.  When I want to use this Picture for updating I
  421.           always use {Alt P} even if I happen to be in the Name menu
  422.           because I find it easier to remember 'P' for picture rather then
  423.           what ever number Picture is.  I then position myself in the
  424.           Arrange menu.  The reason I have all the different indexes is
  425.           that when some checks come in, and also when some returns come in
  426.           (BOO), there is not enough information in the name or company to
  427.           find that person.  I use the Order command to change to the
  428.           different indexes based on the order they were picked and use
  429.           {Alt S} to do a search.  I keep the current record in the Window
  430.           at the bottom of the screen to see who I have found.  
  431.  
  432.           When I search on state, or the first couple of numbers of zip and
  433.           phone  I go into the Browse mode using {Alt Z} to look around.
  434.  
  435.           When I find the person I want I use the {Alt E} to go into the
  436.           Edit mode to update that person.
  437.  
  438.           So far I haven't left the Arrange menu.  When I get an order in
  439.           with a check I usually process that right away.  I set the Order
  440.           (that is the Order in the menu under Arrange) to zero.  Then I
  441.           use {Alt A} for Append.  After I put 1 person in I escape out of
  442.           the append mode.  Since we are not indexed now that person is the
  443.           current record and shows up on the bottom of my screen.  
  444.  
  445.           I have created a macro I call 1LABELF8.  I call it this because
  446.           it is used to print 1 label and the key used to invoke it is the
  447.           {F8} key.  Since there is no {Alt} key to Name a macro, I use
  448.           {Alt 1} to overlay the Name menu.  Then a 7 to pick my macro and
  449.           when I am back to the Name menu pressing {Esc} returns me to the
  450.           Arrange menu.
  451.  
  452.           My 1LABELF8 macro is set up to do the following:  Escape to the
  453.           top menu, pick the Report menu, turn the printer on, select
  454.           label, specify next 1 records, execute label, put in the label
  455.           file name, tell the computer not to do a sample, press any key,
  456.           turn the printer off, go to the Arrange menu.
  457.  
  458.                                           7
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.           It might sound like that was a hard macro to create.  It wasn't. 
  473.           I just did every thing interactively and wrote down each key I
  474.           used.  Then I created the macro.  (See Macros in the Help file) 
  475.  
  476.           Below is the key sequence I put in to create the macro:
  477.  
  478.           {F2}           Go into the macro create mode.
  479.  
  480.           {F8}           Tell it the key to redefine.
  481.  
  482.           {Esc}{Esc}     I like to try and get to the top menu before
  483.                          starting my macro.
  484.  
  485.           R              Choose the Report menu.
  486.  
  487.           8              Choose Output.
  488.  
  489.           3              Turn the printer on.
  490.  
  491.           {Right Arrow}  You should be able to use {Esc} here but for some
  492.                          reason it doesn't work.  {Right Arrow} will get
  493.                          you out of the Output menu.
  494.  
  495.           4              Choose Label.
  496.  
  497.           3              Specify which records.
  498.  
  499.           3              Specify Next.
  500.  
  501.           1{Enter}       Tell it one record.
  502.  
  503.           1              Execute the label command.
  504.  
  505.           {Ctrl Y}       The computer would now be asking what the name of
  506.                          the menu control file is.  Just in case there is
  507.                          another name in there already we use {Ctrl Y} to
  508.                          clear the input line.
  509.  
  510.           IONI{Enter}    Put in the name of the label control file.
  511.  
  512.           N{Enter}       Tell it we do not want any samples.
  513.  
  514.           {any key}      The label will be printed and then you will be
  515.                          asked to hit any key.
  516.  
  517.           8              We are now back in the Report menu.  We again
  518.                          choose Output.
  519.  
  520.           4              We turn the printer off.
  521.  
  522.           {Right Arrow}  We return to the Report menu.
  523.  
  524.                                           8
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.           A              And back over to the Arrange menu.
  539.  
  540.           {F2}           Save this macro.
  541.  
  542.           {F2}           Go back to the menu.
  543.  
  544.           Now when I press {F8} I get a label for the current record.
  545.  
  546.           That will give you a little bit of an idea of what you can do to
  547.           speed up the use of the menu and make things easier for yourself. 
  548.           A lot of this you may not understand at first but it will become
  549.           clearer as you use 1 on 1 = 3!!.
  550.  
  551.  
  552.  
  553.  
  554.                             TECHNIQUES FOR FASTER PROGRAMS
  555.                                   USING 1 on 1 = 3!!
  556.                             ------------------------------
  557.  
  558.           DATA INPUT
  559.           ----------
  560.  
  561.           As mentioned before you should use SET FORMAT TO if at all
  562.           possible in creating screens for data input.  One of the problems
  563.           with this is in the checking of the input and then positioning
  564.           the person back at the field that has the error.
  565.  
  566.           1 on 1 = 3!! has a feature in the @ <row, col> GET command that
  567.           dBASE does not have.  This is the valid clause.  This allows you
  568.           to check the data while the person is putting it in.  The clause
  569.           should evaluate to true or false. example
  570.  
  571.           @ 12,2 SAY 'ENTER SEX' GET SEX  ;
  572.                          PICTURE '!' VALID SEX = 'M' .OR. SEX = 'F'
  573.  
  574.           In this example the user would have to enter 'M' or 'F'.  Any
  575.           other letter would leave the cursor in that field.  If the bell
  576.           was on it would beep.
  577.  
  578.           One problem with this method is that if the user doesn't enter
  579.           any data no checking is done.
  580.  
  581.           Another method  that can be used by itself or in conjunction with
  582.           the valid statement is to check for errors after all input is
  583.           done for the page.  On encountering an error  do another READ and
  584.           position the cursor to the corresponding input field using
  585.           another extension to dBASE the KEYBOARD  command.  This command
  586.           allows you to put keystrokes into the keyboard buffer.
  587.  
  588.           SET FORMAT TO COURSE
  589.  
  590.                                           9
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.  
  603.           APPEND BLANK
  604.           READ
  605.           GOOD = .F.
  606.           DO WHILE .NOT. GOOD
  607.                GOOD = .T.
  608.  
  609.           * TEST FOR SEX WHICH IS THE 5TH FIELD 
  610.  
  611.                IF SEX <> 'M' .AND. SEX <> 'F'
  612.  
  613.           * There is an error in the SEX field
  614.           * PUT 4 {Enter}'s in the keyboard buffer
  615.  
  616.                     KEYBOARD CHR(13)+CHR(13)+CHR(13)+CHR(13)
  617.                     SELECT COURSE
  618.  
  619.           * Doing a READ will bring up the format COURSE
  620.           * The read will find 4 {Enter}s in the keyboard buffer
  621.           * Reading these will bring the cursor to the 5th field
  622.  
  623.                     READ
  624.                     GOOD = .F.
  625.                ENDIF SEX <> 'M' .AND. SEX <> 'F'
  626.  
  627.           * TEST STATE THE 7 TH FIELD BY LOOKING UP IN ANOTHER FILE
  628.  
  629.                SELECT STATE
  630.                SEEK COURSE->STATE
  631.                IF .NOT. FOUND()
  632.                     KEYBOARD
  633.                     CHR(13)+CHR(13)+CHR(13)+CHR(13)+CHR(13)+CHR(13)
  634.                     SELECT COURSE
  635.                     READ
  636.                     GOOD = .F.
  637.                ENDIF .NOT. FOUND(STATE)
  638.  
  639.           * AND ANY OTHER FIELDS YOU HAVE
  640.                .
  641.                .
  642.                .
  643.           ENDDO WHILE .NOT. GOOD
  644.  
  645.  
  646.           MENUS
  647.           -----
  648.  
  649.           There are 3 good methods for doing menus.
  650.  
  651.                1.  The built in menu generator.
  652.  
  653.                2.  Using SET FORMAT TO
  654.  
  655.  
  656.                                           10
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.                3.  Using TEXT .... ENDTEXT
  670.  
  671.  
  672.           LOOPING THROUGH DATA BASES
  673.           --------------------------
  674.  
  675.           The general rule here is to go out of your way to use the power
  676.           of single commands to go through your database.  Avoid as much as
  677.           possible using DO WHILE ... ENDDO to process records in your
  678.           database.  When you do have to use these, try to minimize the
  679.           number of loops.
  680.  
  681.           Some ideas to keep in mind.
  682.  
  683.           Use your reporting commands like REPORT, LIST, COUNT, SUM
  684.           whenever you can.  You can do quite a bit of your reporting with
  685.           the REPORT command.
  686.  
  687.           Use SET FILTER TO when you do have to loop through the data base.
  688.  
  689.           Index your data base first, do a SEEK on the first record you
  690.           need and use DO WHILE FIELD = 'ABC'.
  691.  
  692.           Use the REPLACE command for updating if possible.
  693.  
  694.  
  695.           PLEASE WRITE US WITH ANY TECHNIQUES YOU HAVE FOUND FOR SPEEDING
  696.           UP EXECUTION.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.                                           11
  723.  
  724.  
  725.  
  726.  
  727.  
  728.