home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / dbase / look11.zip / MANUAL.TXT < prev   
Text File  |  1993-03-19  |  24KB  |  525 lines

  1. CB
  2.  
  3.  
  4.  
  5.  
  6.  
  7.             Looker  Version 1.10  for Foxpro 2.x             01/05/1991
  8.             Shareware Distribution Copy.
  9.             
  10.             Looker is  copyrighted by  Creative Concepts  Software.  All
  11.             rights are reserved world-wide. Unauthorized users of Looker
  12.             are subject to prosecution. A formal licence can be found at
  13.             the end  of this document. Information on registering Looker
  14.             may be  found at the end of this document or by leaving me a
  15.             message on this board (70162,1545) If you like, you may also
  16.             leave me a message by phone (305) 864-7738.
  17.             
  18.             
  19.             About Looker:
  20.             *************
  21.             
  22.                  For years,  the idea  of the perfect lookup/help system
  23.             has been  waiting in  the rafters.  Mainly technology  under
  24.             Foxbase  and   Foxpro  1.x  have  been  the  key  issues  in
  25.             preventing this idea from springing to life. Finally, Foxpro
  26.             2.x comes  to the  rescue! With the advent of the structural
  27.             compound index as well as other major achievements from Fox,
  28.             the "Looker" system is made possible!
  29.             
  30.                  "Looker" is my idea of a complete, self contained, user
  31.             definable  lookup/help system with complete data validation.
  32.             The user is able to define either a memo table type popup or
  33.             an indexed  database pop-up  on any key field. The lookup is
  34.             based off  of a  program-variable key  reference.  The  help
  35.             system utilizes  the same  keys  but  internally  links  the
  36.             foxpro help  facility. The  help system  allows for the same
  37.             function as  Foxpro's help. "See also", "Topics", "Previous"
  38.             and "Next"  keys are all available to the user. To call this
  39.             routine only  the following lines need be inserted somewhere
  40.             at the top of one's application:
  41.             
  42.             
  43.             If you need a lookup on any character or numeric field:     
  44.             
  45.                   on key label F2 do looker with program(),varread();
  46.                   ,"'CHANGE'"|"'NOCHANGE'","'F2'","LOOK"
  47.             
  48.             If you need user definable help on any key field:
  49.             
  50.                   on key label F1 do looker with program(),varread();
  51.                   ,"'CHANGE'"|"'NOCHANGE'","'F1'","HELP"
  52.             
  53.             A recent enhancement now allows data validation at the GET
  54.             level! To validate on a field for which a lookup has been
  55.             defined, simply use the valid clause after your GET
  56.             statement:
  57.             
  58.                   valid looker(program(),varread();
  59.                   ,"'CHANGE'"|"'NOCHANGE'","'F2'","VALIDATE")
  60.             
  61.  
  62.  
  63.  
  64.  
  65.  
  66.             If a data validation was called for a variable/field with no
  67.             prior lookup  definition, the  following will  occur: If the
  68.             "CHANGE" option  was passed  with the  validation, the  user
  69.             will be  given a  warning message  and allowed  to define  a
  70.             lookup. If  the "NOCHANGE"  option was  passed, the  user is
  71.             simply given  a warning  and returned back the GET. The "F2"
  72.             parameter signifies  the hot  key used to call up the lookup
  73.             definition utility.
  74.             
  75.             
  76.             Ex. 1.
  77.                   To  allow any  user to  do a  lookup on  F5 as well as
  78.             define one  if none exists, the following line of code could
  79.             be added to the application:
  80.             
  81.                   on key label f5 do looker with program(),varread();
  82.                   ,"'CHANGE'","'f5'","LOOK"
  83.             
  84.             Note: Notice the 'CHANGE' and 'f5' enclosed within double
  85.             quotes.
  86.  
  87.  
  88.  
  89.  
  90.  
  91.             
  92.             Ex. 2.
  93.                     To allow  any user  to do  a lookup on F5 but do not
  94.             allow him  the option  to define a new lookup, the following
  95.             line of code could be added to the application:
  96.             
  97.                   on key label f5 do looker with program(),varread();
  98.                   ,"'NOCHANGE'","'f5'","LOOK"
  99.             
  100.             Note: Notice the 'NOCHANGE' and 'f5' enclosed within double
  101.                  quotes.
  102.             
  103.             
  104.             Ex. 3.
  105.                   To  allow any  user to do a help call on F1 as well as
  106.             define help if none exists, the following line of code could
  107.             be added to the application:
  108.             
  109.                   on key label f1 do looker with program(),varread();
  110.                   ,"'CHANGE'","'f1'","HELP"
  111.             
  112.             Note: Notice the 'CHANGE' and 'f1' enclosed within double
  113.             quotes.
  114.             
  115.             Ex. 4.
  116.                     To allow any user to do a help call on F1 but do not
  117.             allow him  the option to define new help, the following line
  118.             of code could be added to the application:
  119.             
  120.                   on key label f1 do looker with program(),varread();
  121.                   ,"'NOCHANGE'","'f1'","HELP"
  122.             
  123.             Note: Notice the 'NOCHANGE' and 'f1' enclosed within double
  124.                  quotes.
  125.             
  126.             
  127.             Ex. 5.
  128.                    To set up a data validation for a fictitious field
  129.             called ZIP, Your get statement might look like the
  130.             following:
  131.             
  132.                   @ 5,5 say 'Zip:' get zzip valid looker(program();
  133.                   ,varread(),"'CHANGE'","'f5'","VALIDATE")
  134.             
  135.             Note: "CHANGE"  will allow  the definition  of a lookup on a
  136.                  validated  field   with  no  previous  lookup  defined.
  137.                  "NOCHANGE" will  simply return  to the  validated field
  138.                  with an  "INVALID  INPUT"  message  if  no  lookup  was
  139.                  previously defined.  If this happens, a lookup may then
  140.                  be define  with the  standard lookup  hot key sequence.
  141.                  That is, assuming the "CHANGE" option was specified. Of
  142.                  course, as  a developer,  you should  have made  sure a
  143.                  lookup was  already defined  for a  validated field. In
  144.  
  145.  
  146.  
  147.  
  148.  
  149.                  addition, the  validated field  must be  a key  in  the
  150.                  lookup index for the validation to function properly.
  151.             
  152.                  Remember !!!
  153.             
  154.                  A. The  lookup index  must be keyed off of the field to
  155.                     be validated.  This is  so a  quick  validation  can
  156.                     occur.
  157.             
  158.                  B. The  field to  return from  a data  base lookup must
  159.                     represent the validated field.
  160.             
  161.             
  162.             In Actuality,  any hot key could call a lookup or help! Once
  163.             the pop-up  has been  brought to  the screen,  providing the
  164.             user has  the authority,  a  maintenance  routine  could  be
  165.             brought fourth by pressing the same hot key.
  166.             
  167.             
  168.             Creating lookups:
  169.             *****************
  170.             
  171.                  The table  maintenance routine  is the  core of looker.
  172.             Say for  example, you  are in  an edit  screen  within  your
  173.             application. On  any field you want a lookup or help, simply
  174.             press the  appropriate hot  key. If  you have  proper rights
  175.             ("CHANGE" is  specified in  your  call  line)  a  window  is
  176.             brought up  and you  can specify  whether this is a database
  177.             lookup, a  fixed options  table (Similar  to a  pop-up) or a
  178.             call to  help. If  you specify  an options list, you will be
  179.             asked to  key in  your list  into a  memo type  area. If you
  180.             specify a  call to  help, you  will be  asked to key in your
  181.             help in a similar area. If you specify a database lookup you
  182.             will be  taken through  a list  of steps which will create a
  183.             structural index  on the  database file  for purposes of the
  184.             lookup. This  list will  determine and  save  the  following
  185.             information for future lookups:
  186.             
  187.             1. The database to be used for the lookup.
  188.             2. The  structural index  tag to  be used. You will have the
  189.                  option to  create a new structural index tag and define
  190.                  it unique if you like.
  191.             3. The fields and column titles to display for the pop-up
  192.                  list selection.
  193.             4. The field(s) to return upon selection.
  194.             5. The table name for this particular lookup.
  195.             
  196.             
  197.                  Once a  options list table, help or database lookup has
  198.             been defined,  the table  name will  be  available  for  all
  199.             future definitions.  Any time  a user with the proper rights
  200.             calls Looker,  he will be able to define a new options list,
  201.             call to  help,  database  lookup  or  tie  into  an  already
  202.             existing lookup table or help document. If he chooses to tie
  203.  
  204.  
  205.  
  206.  
  207.  
  208.             into an  already existing  database lookup, he is only asked
  209.             to specify the database field(s) to return from the lookup.
  210.             
  211.             
  212.             Maintenance system:
  213.             *******************
  214.             
  215.                  In addition  to defining  a new lookup, there is also a
  216.             maintenance  option.   This  option   will  bring  fourth  a
  217.             maintenance view screen which will display all lookup tables
  218.             and  ties  to  selected  databases.  While  in  this  screen
  219.             pressing "M"  will bring up a maintenance menu which has the
  220.             following options:
  221.             
  222.             1. Delete a lookup program key variable or a lookup table.
  223.             2. Reindex the Looker system files.
  224.             3. Reindex all associated structural index defined through
  225.                  Looker.
  226.             4. Set additional filters to view only certain information.
  227.             
  228.             Associated programs with this application:
  229.             ******************************************
  230.             
  231.             LOOKER.APP:   The main application.
  232.             
  233.             Associated databases with this application:
  234.             *******************************************
  235.             
  236.             LOOKUP1.DBF
  237.             Structural CDX file:   LOOKUP1.CDX
  238.             
  239.             LOOKUP2.DBF :
  240.             Structural CDX file:   LOOKUP2.CDX
  241.             
  242.             Setup instructions:
  243.             *******************
  244.             
  245.                  I designed  Looker as a easy installation utility which
  246.             could be  tacked onto  any Foxpro2 application with only the
  247.             addition of  one or  two lines of code. As always, just when
  248.             you think  it's perfect  your bounced  back into  the  harsh
  249.             reality of programming. I am working towards perfection. But
  250.             in the  meantime, here  are a  few things I have found which
  251.             may cause some problems for the unsuspecting programmer:
  252.             
  253.             1. When  using this  routine, make  sure all  calls to  your
  254.                  application index (.idx) files are of the form "use xyz
  255.                  index xyz.idx".  This must  be done this way because if
  256.                  you   say   use   customer   index   customer   meaning
  257.                  customer.idx, customer.cdx will be active if there is a
  258.                  structural  index  on  the  file.  Specifying  the  IDX
  259.                  extension ensures  you are  using the correct index. Of
  260.                  course, if  you only  use the structural compound index
  261.                  type, there  is no  need to  specify the IDX extension.
  262.  
  263.  
  264.  
  265.  
  266.  
  267.                  Many  applications  I  design  are  carried  over  from
  268.                  foxbase. These systems have .idx files of the same name
  269.                  as the  database.   When I  started defining .cdx files
  270.                  this problem came to light. Then again, why continue to
  271.                  use the .idx format when the structural compounds do so
  272.                  much more?  Well, sometimes  you just may want to avoid
  273.                  having an  index open during a massive update. Wouldn't
  274.                  it be  great if  you  could  shut  off  the  structural
  275.                  compound index from being updated until a later time.
  276.  
  277.  
  278.  
  279.  
  280.  
  281.             
  282.             
  283.             Shareware and Registration:
  284.             ***************************
  285.             
  286.                  The shareware  version  of  Looker  is  limited  to  15
  287.             available lookup  key definitions.  This means you will only
  288.             be able  to define  a lookup  on 15  fields. By  registering
  289.             your copy  of Looker, you will receive the unlimited version
  290.             along with a serial number. Furthermore, I will be available
  291.             and grateful for any comments, suggestions, and problems you
  292.             encounter while  using this  utility. Since  this is a first
  293.             release, please  play with  it and  try to  break it.  I  am
  294.             always available  for messages on this board (70162,1545) or
  295.             message by  phone at  (305) 864-7738.  Let me  know what you
  296.             think, or  if you  experience any problems. Any help returns
  297.             my sincere gratitude.
  298.             
  299.  
  300.  
  301.  
  302.  
  303.  
  304.             
  305.             Licence and Registration:
  306.             *************************
  307.             
  308.             FORMAL LICENSE AGREEMENT
  309.             
  310.             Details concerning  the cost of registration can be found at
  311.             the end of this licence agreement.
  312.             
  313.             NON-EXCLUSIVE END USER SOFTWARE LICENSE FOR LOOKER VER. 1.1
  314.             
  315.             THIS AGREEMENT IS BOUND TO VERSION 1.0 OF THE LOOKER UTILITY
  316.             AND SHALL  BE CONSIDERED  THE EFFECTIVE  AGREEMENT  FOR  ALL
  317.             RELEASES OF THIS VERSION.
  318.             
  319.             
  320.             EFFECTIVE DATE: 01/01/1991
  321.             
  322.                  This Agreement  is between "Creative Concepts Software"
  323.             hereinafter referred  to as  "Vendor", and  the "end user of
  324.             this software",  hereinafter referred  to as "Company".  The
  325.             agreement  concerns   the  use   of  "Looker  version  1.1",
  326.             hereinafter referred  to as  "Software" as  a utility  which
  327.             enhances a  Foxpro 2.x  program designed by the Company. The
  328.             program is hereinafter referred to as "Application".
  329.             
  330.             Please read this License carefully BEFORE using the
  331.             software.
  332.             
  333.                  Any use  of  the  Software,  AT  ALL,  by  the  Company
  334.             indicates that  the Company  has agreed  to be bound by this
  335.             agreement.   This includes  BOTH registered  use, and use of
  336.             the 'shareware'  version which is distributed via public and
  337.             private  bulletin   board  services   and  shareware  access
  338.             services.
  339.             
  340.             
  341.             LICENSE TO USE VENDOR'S PROGRAM
  342.             
  343.                  Vendor, for  the consideration  named, hereby grants to
  344.             Company  and   its  corporate  affiliates,  a  non-exclusive
  345.             license to  use  the  proprietary  computer  program  called
  346.             Looker Ver.  1.1 ("Software") in accordance with all aspects
  347.             of this license agreement.
  348.             
  349.                  If company  is evaluating  the shareware version of the
  350.             Software, the  Software should  be registered within 30 days
  351.             of beginning it's use.
  352.             
  353.             The Software may be licensed for use in one of three ways.
  354.  
  355.  
  356.  
  357.  
  358.  
  359.             
  360.                  A license  may  be  obtained  for  use  with  a  single
  361.             internal company application (site licence). In this fashion
  362.             the application using the Software may not be distributed in
  363.             any fashion. If another internal application needs reference
  364.             the software another licence must be obtained.
  365.             
  366.                  A  license  may  be  obtained  which  would  allow  the
  367.             Software to  be distributed  along with  the application for
  368.             purposes of  resale.  Each  application  distribution  would
  369.             warrant a fee be paid to the vendor.
  370.             
  371.                  Finally,  a  license  may  be  obtained  for  unlimited
  372.             distribution of  the software along with the application for
  373.             purposes of resale. With this licence no additional fee need
  374.             be paid to the vendor.
  375.             
  376.             
  377.             TITLE TO SOFTWARE
  378.             
  379.                  Title to  the Software and all related material is with
  380.             Creative Concepts Software.  Except as expressly provided in
  381.             this  License,  Company  may  not  use,  copy,  disseminate,
  382.             modify, lend,  sell,  distribute,sub-license,  rent,  lease,
  383.             give or  in any  other way  transfer, by any means or in any
  384.             medium,  the  licensed  Software.  Company  understands  and
  385.             agrees  that  the  Software  is  the  valuable  property  of
  386.             Creative Concepts Software and is protected by the laws of
  387.             copyright, trade secret, and contract.
  388.             
  389.             
  390.                  Company agrees  to use  its best efforts to prevent any
  391.             and all  unauthorized persons  from acquiring  the Software,
  392.             and will exercise the same care and diligence to protect the
  393.             Vendor's proprietary property as it does to protect its own.
  394.             
  395.             
  396.             TERMS OF AGREEMENT
  397.             
  398.                  The term  of this  Agreement shall begin on the date at
  399.             the beginning  of  this  agreement  and  shall  continue  in
  400.             perpetuity unless  replaced by a new Agreement OR terminated
  401.             upon failure  of Company  to comply with any of the terms of
  402.             this agreement.
  403.             
  404.                  This Agreement  is FINAL. This means that there will be
  405.             NO refunds  of  money  paid  for  registered  use  once  the
  406.             registered version is mailed, UNLESS the package is returned
  407.             within thirty (30) days of registration, AND the seal on the
  408.             diskette pouch  is  unbroken  AND  the  seal  has  not  been
  409.             tampered with.
  410.  
  411.  
  412.  
  413.  
  414.  
  415.             
  416.                  The Vendor  shall not publish any information about the
  417.             Company's use  of the  software  or  software  documentation
  418.             without prior written approval of the Company, nor shall the
  419.             Vendor use  the  Company's  name  in  any  advertisement  or
  420.             promotion or other solicitation for business without written
  421.             approval from the Company.
  422.             
  423.                  Company which Purchases an Agreement for 'internal' use
  424.             of the  software (site  license) will  be furnished with the
  425.             source code  for the  program IF  and ONLY  IF Vendor can no
  426.             longer provide  Maintenance to keep the program operational.
  427.             This applies  to the  source code  for version 1.0 ONLY, not
  428.             future releases.  Company AND Vendor must both agree to this
  429.             release of source code.
  430.             
  431.                  If source code is obtained by the above method, Company
  432.             agrees to use the source code for maintenance of the program
  433.             used  internally   by  Company   ONLY.  Company  must  NEVER
  434.             redistribute the program, or any part of the program, in ANY
  435.             form, for  ANY reason.  Once the  source code is released to
  436.             Company,   Vendor    is   relieved    of   ALL   maintenance
  437.             responsibilities to Company for this program.
  438.             
  439.             
  440.             LIMITATIONS OF LIABILITY
  441.             
  442.                  Vendor makes NO warranties with respect to the licensed
  443.             program or  the  'shareware'  version.  The  obligations  of
  444.             Vendor shall be:
  445.             
  446.                  To make  a reasonable  effort to  fix any  operations /
  447.             execution problems  that are  found  by  the  Company  which
  448.             prevent the registered program from performing the functions
  449.             described in Vendor-supplied documentation.
  450.             
  451.                  To make  available to  the Company, as a replacement to
  452.             the program  initially supplied  under this  Agreement,  any
  453.             maintenance upgrades  which solve  operational problems with
  454.             the software  published by  or on  behalf of  Vendor  at  no
  455.             charge to Company.
  456.             
  457.                  The Vendor  warrants that  it is the legal owner of the
  458.             software described  herein, and  that it has the full right,
  459.             title and  interest in  said software; and that the software
  460.             has been  developed by  Vendor or  that the Vendor currently
  461.             has any  and all  necessary authority  to  enter  into  this
  462.             license agreement.   The Vendor shall defend, indemnify, and
  463.             hold harmless the Company, it's officers, agents, employees,
  464.             assigns and  successors in interest from and against any and
  465.             all liability  or claims and costs including attorney's fees
  466.             arising from  third party  claims regarding ownership of the
  467.             software.
  468.  
  469.  
  470.  
  471.  
  472.  
  473.             
  474.                  Company  makes   no  warranties  with  respect  to  the
  475.             distribution  of  the  software  other  than  those  covered
  476.             elsewhere in  this Agreement. Vendor agrees that the Company
  477.             shall  not   be  liable   for  any   lost  profits  for  the
  478.             unauthorized use  or distribution  of the program so long as
  479.             the other terms of this Agreement are complied to.
  480.             
  481.                  The foregoing  warranties are  in  lieu  of  all  other
  482.             warranties expressed  or implied, including, but not limited
  483.             to, the  implied warranties  of merchantability  and fitness
  484.             for a particular purpose. Company further agrees that Vendor
  485.             shall not be liable for any lost profits, or lost resources,
  486.             or for  any claim  or demand  against Company  by any  other
  487.             party, except  as provided herein.  In no event shall Vendor
  488.             be liable  for ANY consequential damages, even if Vendor has
  489.             been advised of the possibility of such damages.
  490.             
  491.             
  492.             LAWS GOVERNING
  493.             
  494.                  Regardless  of  the  place  of  contracting,  place  of
  495.             performance,  or   otherwise,   this   Contract,   and   all
  496.             amendments,  modifications,   alterations,  or   supplements
  497.             thereto, shall  be governed  by the  laws of  the  State  of
  498.             Florida, as  to the  nature,  validity,  and  interpretation
  499.             thereof.
  500.  
  501.  
  502.  
  503.  
  504.  
  505.             Looker Registration :
  506.             *************************
  507.             
  508.             
  509.                  If you  find Looker to be of value, please register. To
  510.             register and  order the unlimited version of Looker leave me
  511.             a message on this form (70162,1545) or leave me a message at
  512.             (305) 864-7738.
  513.             
  514.             
  515.             Pricing:
  516.             ********
  517.             
  518.             Please call for latest pricing information.
  519.             
  520.             **************************************
  521.             Thank You for taking a look at Looker.
  522.             **************************************
  523.             
  524.             
  525.