Ken's dBASE Page

Updated: May 17, 2024

Number of unique hits:


Note: if you are looking for technical support for dBASE™:

  • dBase, LLC provides support through the Tech Support email address: techsupport@dbasellc.com, but if you are having issues with licensing, and that kind of thing, please contact customerservice@dbasellc.com instead.
  • dBase, LLC also provides free newsgroups:
    If you click:
         dBase, LLC [dBASE pages]
    and use the "Support" menu option there, and then "Support Options" in the dropdown menu, the link to the instructions for the newsgroups is at the bottom of the page, which then includes a direct link to the newsgroups at the bottom of that page:
         dBASE newsgroups

    Note that the newsgroups link here will take you directly to the newsgroups in your browser. It may be a good ideatm to use the newsgroup web NTTP address (below) with a newsgroup reader such as Mozilla's free Thunderbird software.
         dBASE Newsgroups (news://news.dbase.com/).
    (Port numbers, in case your news reader requires them: NNTP = 119, SMTP = 25)

    There are many newsgroups provided, select the most appropriate one (if your issue is with ADO, then use the ADO newsgroup, etc.).
  • George Burt's newsgroups (also free) are at:
    news.dBaseTalk.com
    are still going strong [warning: If using Netscape or Firefox, there may be a problem connecting to these newsgroups from the link given.] There are more newsgroups than just the one (watercooler) -- start with dbase.watercooler, and then subscribe to the others using whatever your newsgroup software is. This has passed to another administrator (Ronnie MacGregor).

    NOTE: March 15, 2023, Ronnie had to update/change the server this is hosted on, if the standard URL above doesn't work for your reader, please use this ip address until George fixes the information needed: 165.220.172.124 (as shown, using a software package such as Thunderbird).

Please do not email the owner of this or any other website requesting technical support, unless they have specifically given you permission to do so. (See also 'News' below ...)

The icons being used on this page refer to which version of dBASE:

for Visual dBASE 5.5, 5.6 and 5.7
for Visual dBASE 7.0, 7.01 and 7.5
for dB2K (image by Gary White, used with permission)
for dBASE™ PLUS
for dBASE™ PLUS 2.5, 2.6, 2.7
for dBASE™ PLUS 2.8
for dBASE™ PLUS 8
for dBASE™ PLUS 9
for dBASE™ PLUS 10
for dBASE™ PLUS 11
for dBASE™ PLUS 12
for dBASE™ 2019
dBASE
dBASE™, dBASE™ Plus are trademarked by dBase, LLC

News

May 17, 2024

The dUFLP has been updated to version dUFLP2024B.zip (see dUFLP link in menu). See the Whats.new file for details.


February 23, 2024

The dUFLP has been updated to version dUFLP2024A.zip (see dUFLP link in menu). See the Whats.new file for details.


December 21, 2023

The dUFLP has been updated to version dUFLP2023B.zip (see dUFLP link in menu). See the Whats.new file for details.


August 17, 2023

The dUFLP has been updated to version dUFLP2023A.zip (see dUFLP link in menu). See the Whats.new file for details.


March 16, 2023

Ronnie MacGregor updated the server the unofficial newsgroups are hosted on (see above), but until George Burt updates things on his end, the standard url won't work (also see above).


Older news has been trimmed out ...

The dBASE Users' Function Library Project (dUFLP)

dUFLP for dBASE 2019™, version 2024B

The file is dUFLP2024B.zip (dated May 17, 2024; click the filename to download it). This file is approximately 5MB in size. As always see the WHATS.NEW file for details on what has been changed, and use the form Library.wfm to find items you may be looking for. Everything here should work in dBASE™ Plus 9 through dBASE™ 2019, the file has been renamed. There is little, if anything, that won't work in versions of dBASE™ from 9 on to the current. (If you do find something that doesn't work in your version of dBASE, please let us know ...)

Suggestion: you may wish to create a new folder for the latest version of the dUFLP, or if you use a more generic "dUFLP" folder, erase the contents of it first. Otherwise you may have some odd combinations of files in different places. As noted (below) the newer versions have completely re-organized the layout of the files in the dUFLP. If you choose to create a new folder, you will want to re-run the setup routine in the new folder, to ensure that the aliases are pointing to the correct location. (Navigate to the new dUFLP folder, in the Command Window type "do setup" without the quotes.)

NOTE: Version 2021A of the dUFLP completely reorganized the files for the dUFLP with over 80 folders to put demonstration code and such in, and more. This lightens up the root folder a bit, as well. It is vital that you use the SETUP routine as described below to set up this and later versions of the dUFLP, as not only a source code alias being used, but a User BDE Alias ...

Also note that there is now a "Problem Code" folder, which some code may be moved to if it doesn't function properly in current versions of dBASE. This allows a developer interested to look at and possibly try to fix these issues. Any code there may eventually be deleted from the dUFLP. (Added to 2021B.)

It is recommended that you unzip the downloaded file to a new location from previous versions of the dUFLP, open dBASE, navigate to the new location, and run the setup program.

Important: If you are developing in dBASE™ Plus 2.8 and dBASE™ Plus 8, through current versions (currently dBASE 2019), you should have different folders for the dUFLP, one for dBASE™ Plus 2.8, one for dBASE™ Plus 9, etc. The reason is that once code is compiled in dBASE™ Plus 8, or dBASE™ Plus 9, the compiled version is not readable by dBASE™ Plus 2.8, and vice versa. It can be very irritating to run some code and suddenly find it isn't working because you had compiled something in the dUFLP under a different version of the software. Typical error is a warning about bytecode problems ...

Putting Your Own Code in the dUFLP Folder?

I have seen a couple of developers post in the newsgroups that some code was available in the dUFLP when actually it wasn't. This is because they copied something from the newsgroups (or created something or ...) and placed it in the dUFLP folder. This is really a bad idea. With Source Code Aliases, you can just create your own custom library that gets used side-by-side with the dUFLP by putting that code in another folder, and setting up the Source Code Alias. Please do this to avoid confusion of what is in the library and what is not -- thanks!

New to the dUFLP? (This information is also in README.TXT in the library)
If you are new to the dUFLP, you need to know some basics, such as how to set things up, and get around in it. The following are the basics:

Create a folder on your hard drive, such as:

   C:\dUFLP

Run the file you downloaded (with a filename such as: dUFLP2021A.zip), and extract the contents to the folder above.

Set Up the dUFLP for Use: Once you have done this, start dBASE and use the Navigator to point to that folder (use the "Look in:" combobox at the top of the Navigator).

Click on the "Programs" tab, and double-click on this file to create the Source Alias for the dUFLP:

Setup.prg

(This program does the following:

  • Runs 'SetupSourceAlias.prg' to create a source code alias for the dUFLP,
  • Creates a User BDE Alias for the dUFLP tables folder,
  • Copies the .H files for the dUFLP (and BDE) to the appropriate INCLUDE folder (depending on the version of dBASE),
  • Runs ComponentPaletteUpdate.prg)

Finally, to get a sense of what is contained in this library, you should change the tab in the Navigator to "Forms", and find the one called:

   Library.wfm

Double-click this file. This will run a form that shows you what is in the library, allows you to search the library, and even open the source code files in the Source Code Editor of dBASE.

It should be noted that once you run the SETUP routine to install the dUFLP, you can call the Library form any folder on the computer by using the Source Code Alias:

   do :dUFLP:Library.wfm

(If that doesn't work, you need to make sure that both the User BDE Alias and the Source Code Alias are set correctly ...)

dUFLP for Visual dBASE 5.5/5.6: LIW55B.ZIP (dated March 2, 1997). This is freeware code, with the only caveat being that the authors all request that you include the documentation that credits them. There will be no further updates to this version of the library. All focus as far as the dUFLP goes is on the 32-bit version (just like with the product itself ...).

SEQVALUE.CC: Romain sent me this at my request, as it is not in the dUFLP for 5.x. The file is SEQVALUE.CC used for handling autoincrementing fields in Visual dBASE 5.5 and later. This should work "as is", it's just the .CC itself. Download seqvalue.cc -- read the comments at the beginning of this custom class to understand how to use it.

Sample Code

NOTE: Some of this code is pretty old, and there are no guarantees that it will work properly in the current versions of dBASE Plus (8, 9, 10 ...). If you are interested, please feel free to download and examine, try it ... if it works, great. But consider this a disclaimer for all of it ...

Working with TeeChart and dBASE PLUS Updated Jan. 25, 2006

The file here: TeeChart_And_dBASE.zip is an HTML document with a bunch of screen shots and David Stone's article on working with TeeChart in dBASE PLUS. Hopefully there is enough information here to help you get started working with this flexible, powerful, and very confusing, ActiveX control.

February, 2020: Have received word that TeeChart still works with dBASE Plus, and can be gotten from here:
https://www.steema.com/product/vcl.


Ken's Message Board 2.2

This is the second complete version of Ken's Message Board, nearly a year after the first (life's been crazy) -- with a few major changes in 2003. Updates include: encoding username when passing it by a link, which resolves issues with spaces in the username; dynamic external objects; ability to specify whether to allow profanity (and to specify what words are considered profane); ability to keep a user from posting destructive scripts as part of the text of a message; minor cleanup here and there. If you have an existing version, you will will want to run all three of the MAKE programs. After downloading it, unzipping to a folder, check out "readme.htm" for details on how to use it, set it up, etc. KenMessageBoard2_2.zip -- June 25, 2003.

Please note: There are no guarantees this will still work with current versions of dBASE, I have not looked at this in many years. (March, 2021)


A Wrapper for the MessageServer

Updates/wrapper for the MessageServer application provided as sample code in Visual dBASE 7.5 -- this gives a bit of functionality to the sample application, including allowing you to set your own table, and create fieldlists, or templates (mail-merge messages). MailServerWrapper.zip -- February 15, 2000. Check the README.TXT file contained in the .ZIP for details ... and the header code in the .CC for more details.

Please note: There are no guarantees this will still work with current versions of dBASE, I have not looked at this in many years. (March, 2021)


Vesper 9.03

This version of Vesper is even more of an overhaul than the previous versions. Vesper9_03.zip This one was modified based on needs of the current Vesper, some items were removed (subscription data, for example, as the heralds are putting the monthly minutes up on the web now), and others were added (heraldic certifications ...). This uses a few features of dBASE PLUS (mostly new form properties), and also does some limited web stuff (the website used by the heralds is run off a Linux server, and hence the software only generates a few static web pages, not a fully interactive web-based package). See the README.TXT file for, among other things, a description of the folder structure needed for the application. All source code is documented as usual. Some minor bug fixes from earlier versions have been added. Last updated: March 14, 2006

Please note: There are no guarantees this will still work with current versions of dBASE, I have not looked at this in many years. (March, 2021)

Other Sites

This is a list of websites you might find useful, they all deal with dBASE in some fashion or another. If you have a site that you feel belongs here, please click on the "Contact Ken" link at the top of the page, and let me know ...

dBASE Advisor Articles by Ken Mayer

A set of articles written by Ken Mayer during the time the magazine The dBASE Advisor existed. If nothing else it is sort of a blast from the past, showing where we've come from to the current versions of dBASE. The articles are just the ones I wrote, I don't have permission to publish the others (and frankly probably not enough space on my web server for everything). These are all PDF files:

  • January, 1995, dBASE 5.0 for DOS, "Create Pick Lists the 5.0 Way
  • March, 1995, dBASE 5.0 for Windows, Mover Dialogs in dBASE 5.0 for Windows
  • July, 1995, dBASE IV/5.0 for Windows, Hands-On Migration: Bringing a dBASE IV App to Windows
  • September, 1995, Visual dBASE 5.5, Introducing: Multi-Page Forms
  • November, 1995, dBASE IV, 5.0 for DOS, dBASE 5.0 for Windows, Print dBASE Data in Columns
  • January, 1996, dBASE IV, Create a Reusable Dialog
  • January, 1996, Visual dBASE 5.5, Custom Forms in Visual dBASE
  • May, 1996, dBASE 5.0 for DOS, Code Your Own Generic Dialog

Ken's dBCon Article from 2004 on Web Applications

In 2004 the last dBASE Conference in the North American continent was held, in Montreal. This paper on Web Applications is also in dBulletin, but I have updated some of it a tiny amount (links, etc.)

I have provided it here in case you may find it useful: Intro to Web Apps. However, you may find the new Web Tutorial (see menu at top of screen) more useful if you are planning on delving into Web Application development using dBASE.

Michael Nuwer's Tutorials:

These are the tutorials that I started, but Michael really polished and enhanced to make them more useful:

      dBASE Online Training (the main page)

It should be noted that Michael's tutorials include one on Web Development with dBASE as well as the previous version of the dBASE tutorial in the menu here. Both tutorials were updated to the ones that are in the menu above, but will likely find some useful information in Michael's tutorials as well (and the new web tutorial references Michael's in several places).

dBulletin -- dBASE Newsletter With Lots of Code Samples:

This is available from various websites around the World:
Canada http://www.jpmartel.com/bulletin.htm
Scotland http://www.dbasedeveloper.co.uk/dBulletin/bulletin.htm
USA http://www.charlescrumesoftware.com/dbulletin/bulletin.htm


It should be noted that the newsletter hit its final issue (#21) due to a lack of articles being written, and because the main editor (J.P. Martel) just doesn't really have the time to put into it anymore.

Marc Van den Berghen's VdB-Logic Page

Marc has had some utilities that you may find useful. Some of them are in the dUFLP, but there are some others here:
https://dbase.volleywiki.de/

Ronnie MacGregor's dBASE Page

Ronnie has some utilities that are worth checking out: http://www.dbasedeveloper.co.uk/. If you've never worked with Ronnie, he's extremely helpful and giving, but he's also very busy ... so if he doesn't answer immediately, don't give up ...

dBASE Web Application Resources

David Ball has posted a website with resources to help you work with dBASE on the web at: http://www.dbasehost.com/services/resources.php.
Please note, this address has changed ...

Visual FoxPro Command Mapping

This is on the dBASE support website, but for those coming to dBASE current versions from FoxPro and/or Visual FoxPro, an attempt was made to map commands from VFP to dBASE's dBL (dBASE Language):

https://www.dbase.com/Knowledgebase/faq/CompilingVFP.asp

Hopefully this will help migration of your applications a bit easier.