Archive-name: databases/foxpro/general
Posting-frequency: monthly

[This is FAQ version 1.0.1.0 - Last Updated 07/03/94.  New sections or
altered text are marked with ">" in the left hand column.  Please send
all questions, comments, and whatnot to kcochran@nyx.cs.du.edu]

Welcome to comp.databases.xbase.fox.  This message is posted monthly,
and can be found here, in news.answers, or you can receive a copy of
this or any of the other comp.database.xbase.fox FAQ's by e-mailing me at
kcochran@nyx.cs.du.edu.

This FAQ is available for anonymous FTP from rtfm.mit.edu.  For more
information about the FAQ archive at rtfm.mit.edu, consult the newsgroup
news.announce.newusers.

This FAQ is also available for anonymous FTP from rahul.net   These
files are compressed, and located in the /pub/coneill directory.
***WARNING*** The FAQ's at rahul.net may or may not be the most current
versions, depending on exactly which day I send them in, and which
day you pick them up.

This message is split into the following sections:

0.0 - What is an FAQ?
0.1 - What is comp.databases.xbase.fox?
0.2 - What is FoxPro?
0.2.1 - What are FoxBase, FoxBase+, and the rest?
0.3 - How do I get information?
0.3.1 - What other FAQ's are available?

1.0 - I just bought FoxPro; now what?
1.1 - The FoxPro books.
1.2 - Third-Party books.
1.3 - Database and FoxPro magazines.
1.4 - MicroSoft technical support.
1.5 - FTP locations.
1.6 - Other locations for information.

2.0 - What are the parts of FoxPro?
2.1 - The Developers kit.
2.2 - The Distribution kit.
2.3 - The Library Construction kit.
2.4 - The Connectivity kit.
2.5 - FoxPro 2.6 "Standard Edition"/"Professional Edition"

3.0 - I'm having a problem...
3.1 - Problems of "general" nature.
3.2 - Problems of "specific" nature.
3.3 - Problems with third-party add-ins.
[Note:  Users have requested that we compile a "standard problem - solution"
        list for inclusion in this section.  I'll be keeping that as a
        seperate FAQ.]

[Note:  Sections are split with "******".]

Before we begin, I'd like to thank the following people not already
mentioned in the FAQ for their assistance in putting this together:
   1092143@MAINE.maine.edu (Donna Foster)
   blank@silver.ucs.indiana.edu (Doug Blank)
   davec@wsti.demon.co.uk (David Churcher)
   Garrett@heidi.demon.co.uk (Garrett Trant)
   kruckenb@sal.cs.utah.edu (Pete Kruckenberg)
   OB71216@IBMH1.ORL.MMC.COM (Steve)
   pgoudswa@etc.cln.bc.ca (Peter Goudswaard)
   peace@world.std.com (Jeremy Stark)
   russel@atl.sofkin.ca (Paul Russell)
   tdh@dweebus.telemax.com (Thomas D. Halter)
   tonemb@mtfs.unit.no (Tone Merethe Berg)

******
0.0 - What is an FAQ?
      FAQ is short for "Frequently-asked-questions".  Over the course of
      the net, especially in the technical areas, a lot of questions get
      asked over and over and over ("How do I get my foo to bar in green
      instead of red?").

      These questions get collected into a single message that is then
      posted to the newsgroup at regular intervals (usually about once
      a month).

>      In the case of c.d.x.f, there are about a half-dozen FAQ's floating
>      around in various stages.  As I get approval to archive these at
>      rtfm.mit.edu and rahul.net, I'll be including them in my postings.

      FAQ's also tend to have a lot of background information about the
      newsgroup in question, information about the newsgroup, historical
      persons important to the newsgroup, and I've even seen some that
      have court cases in them.

>      Basically, FAQ's are a lot of things for a lot of different people.
>      If you have an idea for an FAQ, write it up and mail it to me at
>      kcochran@nyx.cs.du.edu.  I'll be more than happy to maintain the
>      FAQ for you or to accept updates as needed.  You, of course, would
>      receive full credit for authorship.

******
0.1 - What is comp.databases.xbase.fox?
      comp.databases.xbase.fox (or c.d.x.f for short) is a newsgroup for
      discussion about the Fox database management packages.  Technical
      questions about Rushmore, the power tools, FoxBase, and other issues
      are all relevant to c.d.x.f.

      General questions that relate specifically to FoxPro or the related
      products (NetLib, dGE, etc) or technical questions about these items
      are certainly relevant to the newsgroup.

      General questions about databases in general (I'm looking for a good
      database package; How do I normalize my tables) should probably be
      addressed in either comp.databases.xbase.misc or comp.databases.misc.
      If you have a question of a general nature, you should also look
      around the newsgroups list to see if there isn't a more relevant
      group.

      c.d.x.f is not an advocacy group; please do not start discussions
      about whether your Mac is better than the next guys IBM box.  Also,
      you should avoid general slamming of products.  A conversation about
      the differences between the FoxPro and Paradox screen builders would
      be extremly informative; a post stating that "Paradox Sucks" is in
      poor taste.

******
0.2.1 - What are Foxbase, Foxbase+, and those other things?
      The Fox database management packages are available for many
      different operating systems and environments.  The various
      packages are:

      Microsoft:
         FoxPro 2.5 (DOS)
         FoxPro 2.5 (Windows)
         FoxPro 2.5 (Macintosh)
>         FoxPro 2.6 "Standard Edition" (DOS)
>         FoxPro 2.6 "Professional Edition" (DOS)
>         FoxPro 2.6 "Standard Edition" (Windows)
>         FoxPro 2.6 "Professional Edition" (Windows)
>         FoxPro 2.6 "Standard Edition" (Macintosh)
>         FoxPro 2.6 "Professional Edition" (Macintosh)

         FoxPro 2.5 (Unix, to be released in 1994)
>         [Anybody know if this is going to be 2.5 or 2.6?  Is there going
>         go be the Standard/Professional split?]

      Fox Software*:
         FoxBASE+ (DOS)
         FoxBASE+ (Macintosh)
         FoxPro 1.1 (DOS)
         FoxPro 2.0 (DOS)

      SCO (Santa Cruz Operation):
         SCO FoxBASE+ (Unix)

      *Fox Software has been bought by Microsoft.  Their products are no
       longer available, but are included here since many of their products
       are still in use.

******
0.3 - How do I get information?
      This depends on what sort of information you need.  One of the best
      places to get information is from the manuals.  If they don't give
      you what you want, there are a wide variety of magazines, books,
      FTP sites, and comp.* groups that may be able to provide you with
      the information you need.

******
0.3.1 - What other FAQ's are there?
>      Welcome To The Machine
>         (FAQ #0, currently under request for archiving at rtfm.mit.edu)
>         This FAQ contains a quick introduction to usenet etiquette,
>         pointers on how to compose posts, and pointers to some additional
>         newsgroups where you may be able to find information.  Originally
>         written by Pete Kruckenberg, and maintened by Keith Cochran.

      You Say You Want A Revolution:
         (FAQ #1, archived at rtfm.edu under databases/foxpro/general)
         This FAQ contains information of a general nature about c.d.x.f
         It also contains address information for Microsoft, third-party
         books about the Fox database management products, how to get
         information from Microsoft, compuserve, and information about
         FTP.

      See Fox.  See Fox Run.  Run, Fox, Run:
         (FAQ #2, archived at rtfm.edu under databases/foxpro/rushmore)
         This FAQ contains information of both a general and a specific
         nature about the Rushmore technology.

      Things Your Mamma Never Told You About:
>         (FAQ #3, archived at rtfm.edu under databases/foxpro/misc)
         This FAQ contains information about functions and commands in
         FoxPro that "should" do something, but "don't", and those
         commands that "shouldn't" do something, but "do".

      Variations On A Theme:
         (FAQ #4, currently in "development" stage)
         I'm still collecting information on other database packages
         vs FoxPro for this FAQ.  If you have anything, contact me
         at kcochran@nyx.cs.du.edu.  Don't bother asking for this FAQ.

      WHERE resource = onthenet
>         (FAQ #5, currently under request for archiving at rtfm.edu)
         This FAQ contains an exhaustive listing of FoxPro resources
         available through the net.  FTP sites, mailing lists, and
         newsgroups are all covered.  I'd like to extend my deepest
>         gratitude to Pete Kruckenberg (kruckenb@sal.cs.utah.edu)
         for developing this listing.

>      SET LIBRARY TO
>         (FAQ #6, currently in "development" stage)
>         This FAQ contains information on third-party add-ons for
>         FoxPro such as the FoxFire! report writer, or the GPLib
>         shareware Netware library.  If you'd like to include your
>         favorite add-in, mail a short description along with the
>         address/phone of the company to kcochran@nyx.cs.du.edu.

******
1.0 - I just bought FoxPro; now what?
      The *FIRST THING TO DO* is to fill our your registration card,
      and mail it off to Microsoft.  This will give you the ability
      to call Microsoft Technical Support with your problems.

      Calling Microsoft support is a mixed blessing.  It may get your
      question answered, but you may have no hair left by the time it
      works.  Then again, MicroSoft support is _the place_ to make sure
      that you are not working against a program bug.

******
1.1 - The FoxPro books.
      One of the best places to find information is within the FoxPro books
      that you got when you brought your package.  The Language Reference
      Manual is the first place you should look when a command doesn't work
      the way you expected it to.

      The Developer's Guide also has a lot of information on things that they
      don't really mention in the language reference.  If you are having
      problems getting your procedures to work correctly in your screens,
      try taking a look there.

******
1.2 - Third-Party books.
      There are many, many books on how to develop and program in FoxPro.

      Some of the ones you may find useful are:
      [Note:  Your milage may vary.]

      peace@world.std.com (Jeremy Stark) recommends:
      "FoxPro 2.5 Developing Full-Scale Applications For Windows"
      Written by Nelson King, and published by MIS:Press.

      "It's actually a beginners book and includes sections on
      table normalization, project planning, and other topics related
      to the consulting end of database design."

      It comes with a disk, costs $34.95, and also has a cute fox on
      the cover.

      pgoudswa@etc.cln.bc.ca (Peter Goudswaard) recommends:
      "FoxPro 2.5 - Programmer's Reference" by John Hawkins,
      Editor-In-Chief of Data-Based Advisor Magazine, published
      by Que, ISBN 1-56529-210-3.

      "Programming FoxPro 2.5" by Miriam Liskin, by Ziff-Davis Press,
      ISBN 1-56276-164-1.

      tonemb@mtfs.unit.no (Tone Merethe Berg) Recommends:
      Using FoxPro 2.5 for Windows, by Lisa Slater and Steven Arnott.
      ISBN 1-56529-002-X.
      "This is an excellent book for people like me, starting close to
       zero, as well as for some like me, getting closer to 'experienced'.
       As for you guru's, I guess it isn't too bad, either."

      FoxPro 2.5 Advanced Developers Handbook.  Brady Publishing, 1993.
      ISBN 0-13-325341-4.  According to the author, it includes
      "undocumented secrets, strategies, and tips from the experts, and
       is especially written for those developing applications for a
       network.  Data security and corruption protection, as well as
       error-handling, user-interfaces, UDF-creation and other programming
       techniques are main chapters."

******
1.3 - Database and FoxPro magazines.
      In addition to the books available, there are several magazines that
      deal with xbase products, and some that deal exclusivly with FoxPro.

      FoxPro Advisor:
      Advisor Communications International, Inc.
      (The same people that do Data Based Advisor, Clipper Advisor,
      dBase Advisor and Access Advisor).

      Published monthly.  $4.95/issue, or yearly subscription for $65.00
      FoxPro Advisor Subscription Dept
      PO Box 469032
      Escondido CA  92046
      (800) 336-6060

      FoxTalk Magazine:
      FoxTalk
      Pinnacle Publishing, Inc.
      PO Box 888
      Kent, WA 98035-0888
      COMPUSERVE Address: 72600,140
      Editorial Hotline: (800) 788-1900
      BBS (2400) (206) 251-6217
      BBS (9600) (206) 251-6218

      As of March, 1993 the numbers for Pinnacle Publishing are:
      Pinnacle Publishing
      18000 72nd Avenue South Suite 217
      Kent, WA  98032

      Shipping and Receiving:
      18030 72nd Avenue South
      Kent, WA  98032

      Mailing Address:
      PO Box 888
      Kent, WA  98035-0888

      Phone Numbers:
      General Line:  (206) 251-1900
         (Weekdays 8am - 5pm PACIFIC time)
      Sales:  (800) 788-1900
      Fax:  (206) 251-5057
      Tech Support:  (206) 251-3513
         (Weekdays 8am - 5pm PACIFIC time)
      BBS:  (206) 251-6218 (9600 Baud)
            (206) 251-6217 (2400 Baud)

      They can also be reached on Compuserve by GO PINNACLE.

******
1.4 - Microsoft technical support.
      Microsoft technical support is available from 6am to 6pm pacific
      time monday through friday, except for holidays.  In the US, call:
 
      (206) 635-7191 (FoxPro/DOS and FoxPro/Windows)
      (206) 635-7192 (FoxPro/Macintosh)
 
      In Canada, support engineers are available at (905) 568-3503.

      Microsoft FastTips is available 24 hours a day, 7 days a week at
      (800) 936-4300 with a touch-tone phone.   You can receive automated
      answers to common questions and problems, or access a library of
      technical notes, all delivered by recording or fax.

      Microsoft can also be reached via compuserve.  Their "wish line"
      on the net is foxwish@microsoft.com

******
1.5 - FTP locations.
      You can FTP anonymously to microsoft.com, and look in the directory
      /developer/devtools/fox for support and patch files, upgrade
      information, and other stuff.  The IP address is 198.105.232.1

      There is also an FTP site at rahul.net, in the /pub/coneill/
      directory.  The IP address is 192.160.13.1  This FTP site contains
      lots of useful information, including GENSCRNX and GENMENUX.

******
1.6 - Other sources of information.
      COMPUSERVE:  At any ! prompt, type "go microsoft" to access the
      Microsoft forums, "go mskb" to access the Microsoft Knowledge Base,
      or "go foxforum" to access FoxPro specific information.

      There is an existing FoxPro mailing list:

      To subscribe to the FoxPro mailing list, send the following in a
      mail message to fileserv@polarbear.rankin-inlet.nt.ca:

      JOIN FOXPRO-I kcochran@nyx.cs.du.edu
      QUIT

     [Note that you would use your e-mail address to subscribe, not
     mine.]

      [Note: That's "I" as in "GHIJ", not "1" as in "1234".  You can
      also get a digest version of the list by doing a JOIN FOXPRO-D
      instead of JOIN FOXPRO-I.  The list is archived at rahul.net,
      in the /pub/coneill directory.

      To get help for this mailing list, send email to
      foxpro-help@polarbear.rankin-inlet.nt.ca.  The subject and message
      are unimportant.  You can also contact the list administrator at
      coneill@polarbear.rankin-inlet.nt.ca.  Responses may take 48-72
      hours because polarbear is on a daily dial-up connection.

      And there may be a second list forming:

         foxpro-l@ukanvm.cc.ukans.edu

      For information on subscribing, send email to LISTSERV@UKANVM.BITNET
      with "HELP" as the first word of the message to receive a help file.

      If anybody has any additional information on mailing lists or
      FTP sites, please contact me.

      The BCNN FoxPro electronic newsletter is published monthly in
      comp.databases.xbase.fox.  The newsletter is archived at
      ftp.rahul.com as bcnn*.zip.  Subscriptions are free, and the
      information on how to subscribe is included at the bottom of
      each newsletter.

******
2.0 - What are the parts of FoxPro?
      There are many different parts to FoxPro, even within FoxPro itself.
      Just because you have a compiled application doesn't mean that it will
      work correctly.  For example, if your application uses printer drivers,
      then you will have to include genpd.app as part of your project.

      Some of the other external parts of FoxPro are:
      genscrn.prg - Generates your .spr file from the screen database.
      genmenu.prg - Generates your .mpr file from the menu database.
      beautify.app - Used to beautify applications brought over from other
         platforms.  It is not yet available for the DOS platform.
      foxdoc.app - Documentation generator.  This is known as foxdoc.exe
         in the DOS platform.
      gengraph.app - Graph generator.
      spellchk.app - Spell checker.
      genxtab.prg - Generation cross-tabulations from a database.
      transport.prg - Used to migrate applications across platforms.

******
2.1 - The Developers kit.
      This is the "best known" of the FoxPro parts.  This the set that
      gives you the "command window", and allows you to create applications,
      databases, compile them, etc.

******
2.2 - The Distribution kit.
      In order to run a FoxPro application, you have to have FoxPro, right?
      Wrong.  Instead of forcing everybody to spend the $$$ to buy the
      development kit just so they can run their accounting software, you
      can purchase the Distribution Kit.

      The distribution kit allows you to distribute and run an application
      without providing the full FoxPro interface (command window, filer,
      etc).  This distribution is done ROYALTY-FREE.  Once you have brought
      the distribution kit, and compiled your executable, you do not have
      to pay MicroSoft anything in order to sell your application to
      another person.

      Note that the Distribution Kit does not actually compile your
      FoxPro code into machine language.  Instead, it produces an .EXE
      file containing a copy of the FoxPro interpreter and your program
      compiled into pseudo-code.

******
2.3 - The Library Construction kit.
      Found something that FoxPro won't do?  Want it to be able to do it?
      Purchase the Library Construction kit, and teach FoxPro new tricks!

      The LCK allows you to write your own functions in C, and then link
      them into FoxPro as a .plb file.  The functions have _NONE_ of the
      limitations of .bin files (used by LOAD and CALL), and can take
      full advantage of FoxPro's memory management, windowed i/o, and
      other features.  You can even call FoxPro commands from within
      your external function.

      The LCK covers DOS and Windows platforms (Windows files have the
      extension .fll instead of .plb).  A C compiler is not included.
      The supported C compilers are Microsoft C v8 and Watcom C v8.5.  It
      is possible to use Borland C++ v3.1 to produce Windows .FLL files,
      but this is not officially supported.

******
2.4 - The Connectivity kit.
      What's that?  Human Resources has 10 years of information stored on
      the server in SYBASE format, and they want you to analyze it?  With
      the connectivity kit, this is no problem.  Just attach to the server,
      log yourself into the database, and start analyzing.

      The connectivity kit comes in two "flavors".  DOS and Windows.
      The DOS version is a .plb file that allows you to attach to Sybase
      and Oracle servers.  No other servers are supported.  The Windows
      .fll driver allows you to connect via ODBC to a wide range of
      database servers.

      In order to use the Windows version, you must also buy the ODBC
      Desktop Drivers from Microsoft.

      Data access is performed by using a CK function to register yourself
      to your data source, and then using other CK functions to pass and
      retrieve SQL statements to the server.

*****
2.5 - FoxPro 2.6 "Standard Edition"/"Professional Edition"
      Versions of FoxPro prior to 2.6 came in many different "sections"
      (described above).  FoxPro/MAC 2.5, and FoxPro/DOS 2.6, and
      FoxPro/Windows 2.6 only come in two "flavors".  These are:

      Standard Edition:  This contains what used to be called the
      Development Kit.

      Professional Edition:  This contains:
      Development Kit
      Distribution Kit
      Library Construction Kit
      Connectivity Kit
      Windows for WorkGroups Extensions (FP/WIN only)

      Also, the "Standard Edition" and "Professional Edition" only
      come as one license/package.  No bundling.

******
3.0 - I'm having a problem...
      Join the club.  Fortunatly, the kind folks of c.d.x.f will be more
      than happy to help solve your FoxPro problems.

      SOME RULES TO MAKE YOUR LIFE EASIER:

      (1)Please be sure to mention what VERSION and ENVIRONMENT of Fox*
         you are using.  Some of the things you can do in FoxPro 2.5
         will not work at all under FoxBase+, or on the Unix flavors.

      (2)Please be sure to mention anything odd that you are doing.
         Specifically, .plb files and SQL tends to cause "strange"
         things to happen.  If you have the files in a project, please
         be sure to mention that.  If you are using the distribution kit,
         and the problem only appears when you are running it under the
         distribution kit, please mention that.

         IF YOU ARE MIGRATING AN APPLICATION FROM ANOTHER XBASE PRODUCT,
         MENTION IT!

      (3)Do _NOT_ end your question with "Please e-mail me the answer,
         as I don't read this newsgroup".  I mention this for a couple
         of reasons:
         
         (1)Not everybody has the ability to cc: people on postings.
            The problem you are having may be the same problem that
            many other people are having.

         (2)The problem that I have next week is something that you
            might be able to solve for me in an instant.  I don't think
            it's really fair for you to get help from us if we have no
            chance of getting help from you.

******
3.1 - Problems of "general" nature.
      These problems are generally of a "how do I..." nature, and are probably
      most quickly solved by reading the manual.  I cannot emphasis enough
      that the manuals and on-line help should be your first defense against
      problems.
  
      For example, we recently had a poster ask "how do I generate a random
      number between x and y?"  This problem can be solved by looking at
      the RAND() function in the Language Reference Manual.

******
3.2 - Problems of "specific" nature.
      If you've got specific problems, please be sure provide enough detail
      with your post to allow us to help you.  Code samples are always
      nice, as is a short (or long) description of what it is you are
      trying to do.  If you have databases linked with SET RELATION, please
      be sure to mention this.

******
3.3 - Problems with third-party add-ins.
      Probably the best place to solve problems with .plb files is with
      the company that produces it.  But you may be able to get better
      response by fishing in c.d.x.f
-- 
=kcochran@nyx.cs.du.edu | B(0-4) c- d- e++ f- g++ k(+) m r(-) s++(+) t | TSAKC=
=My thoughts, my posts, my ideas, my responsibility, my beer, my pizza.  OK???=
=       Fools rush in where angels fear to dance upon the head of a pin.      =
