Announcing...


©1999 Q&D Software Development
Logo design by Design Revelation
Generate your business object and data object VB source code in seconds!!
Cut your development time by up to 90%!!
Works with the most ODBC data sources and OLE DB providers!!

COM-Gen 2000TM is a Visual Basic AddIn. With it, you can automatically generate your data objects in their entirety in a matter of a few seconds. COM-Gen 2000TM works with the most popular ODBC databases and creates clean, readable code, including all the supporting VB and SQL code necessary to insert, update, delete, and retrieve data. All code generated by COM-Gen 2000TM is guaranteed compilable, and to work as advertised without modification.
COM-Gen 2000TM will even generate error handling code as well if you so desire.

System Requirements...
Frequently Asked Questions (FAQ)...
Installation Instructions...
Revision History...
Join Our Mailing List(s)...
Bug Reports and suggestions...
Known Issues...


System Requirements: Top of Page

Visual Basic 6.0 - Service Pack 3 recommended, but not required.
MDAC 2.1 - Included with VB6 SP3. For the lastest version, go to http://www.microsoft.com/data.
Disk Space - 2.5MB
DCOM98 - Windows 95/98 users only. Not required on Windows NT systems.

Please Note: When downloading COM-Gen 2000TM, users of the English language version of VB can choose to download either a small package with only the COM-Gen 2000TM program, or a larger package which includes MDAC 2.1. Users of non-English language versions of VB must download the smaller package, and then, if you do not have MDAC 2.1 already on your machine, download the MDAC 2.1 version for your particular language from Microsoft at http://www.microsoft.com/data and install it prior to installing COM-Gen 2000TM.


Frequently Asked Questions (FAQ): Top of Page

Question 1: What is COM-Gen 2000TM?
Question 2: What is a VB6 Add-In?
Question 3: How does COM-Gen 2000TM work?
Question 4: Can I customize the way COM-Gen 2000TM works? What are the available options?
Question 5: Which ODBC databases does COM-Gen 2000TM work with?
Question 6: What does the source code created by COM-Gen 2000TM look like?
Question 7: What does COM-Gen 2000TM cost?


Question 1: What is COM-Gen 2000TM?
Answer 1: COM-Gen 2000TM is a VB6 Add-In. It can generate VB class modules based on most popular ODBC databases and OLE DB providers, thereby saving the developer weeks or months of development time by automatically creating an application's data objects. These can be used as is, or customized as you see fit from within the VB development environment.

Question 2: What is a VB6 Add-In?
Answer 2: As a VB developer interested in creating COM objects, we assume that you are already familiar with the concept of an Add-In. However, simply put, a VB Add-In is a program that can be added to Visual Basic's menu for easy access while in development mode. To install a VB Add-In, click 'Add-Ins->Add-In Manager' from VB6's main menu to access the Add-In Manager. Also, see the installation instructions above.

Question 3: How does COM-Gen 2000TM work?
Answer 3: Once loaded, COM-Gen 2000TM asks several questions about which of its options you wish to implement, where you wish to store the generated class modules, and which of your available ODBC databases or OLE DB providers you would like to work with. Once you've chosen your options, you are asked to choose the tables within your database upon which you would like COM-Gen 2000TM to base your data objects, as well as to indicate which fields are primary key fields. Seconds later, COM-Gen 2000TM will have created two classes for each table chosen; one object class which includes a property for each field in the selected table, and one "collection" class which includes methods for inserting, updating, deleting, and retrieving records from that table, along with all the necessary VB and SQL code to do so. COM-Gen 2000TM also provides interfaces for creating sort orders and filters when refreshing/retrieving a collection object or set of records.

Question 4: Can I customize the way COM-Gen 2000TM works? What are the available options?
Answer 4: There are several options available to you when creating class modules with COM-Gen 2000TM:

You can choose to have COM-Gen 2000TM produce all of the supporting SQL code and VB code within each method thereby creating fully functional Add, Update, Remove, Refresh, Item, and Count methods for each table, OR you can have the program simply create empty methods which you can fill in yourself.

You can choose whether or not to include error handling code in your properties and methods.

You can choose the directory into which the generated code will be placed.

You can choose whether you want to use an ODBC DSN connection, an ODBC DSN-less connection, or an OLE DB provider, and the specific database and tables upon which you would have COM-Gen 2000TM base your data objects.

You can choose to have the generated classes added to an existing project (either currently loaded in VB or not), or you can choose to have a new project created out of your generated classes.

Question 5: Which databases does COM-Gen 2000TM work with?
Answer 5: COM-Gen 2000TM has been tested successfully with SQL Server 6.5 and 7.0, Oracle 8.0, and MS-Access 95 and 97. We have yet to test with Sybase, but hope to be able to do so in the near future.

Question 6: What does the source code created by COM-Gen 2000TM look like?
Answer 6: Here's a sample based on a table named 'user' in a database whose DSN is '21stCentury'. Remember, for each table, two classes are generated; a single object class and a collection class, which returns a collection of single objects. In our example, the generated class modules were named clsUser and clsUserColl, based on the name of the table ('user'). The field 'user_id' was chosen as an auto-generated field and a primary key field. Keep in mind that the code you are about to see was not modified in any way after it was generated by COM-Gen 2000TM.

View clsUser
View clsUserColl

Question 7: What does COM-Gen 2000TM cost?
Answer 7: The cost to purchase a single user license for COM-Gen 2000TM is $59.00 (US).


Known Issues: Top of Page

Issue: Due to some incompatibilities between ADO and the Oracle 8.0 ODBC driver (the one that ships with Oracle), when connecting to a data source using the Oracle 8.0 ODBC driver, only the first 8 characters of the Data Source Name are returned via ADO. This causes COM-Gen 2000TM to generate a faulty connection string if your data source name is longer than 8 characters. In addition, Primary Key fields are not detected when using this driver, and must be indicated manually.
Solution: Use Microsoft's ODBC driver for Oracle 8.0. The problem only appears with Oracle's own driver.


Revision History: Top of Page

Version 1.04 - 9/17/99:
Fixed bug that caused Error 13 (Type Mismatch) upon program load when using European Windows settings. (This bug was introduced in version 1.03.)
Version 1.03 - 9/14/99:
Fixed bug that caused Error 52 (Invalid path) and/or Error 76 (Path not found) when clicking the Finish button on the Choose Keys screen after choosing to generate a brand new, unloaded project.
Fixed bug that caused error 20477 (Invalid file name) when attempting to save report to disk after creating a new, unloaded project, or when using an MS-Access database.
Fixed bug that caused error 424 (Object Required) which would occur in various parts of the program after going to either the Choose Tables screen or the Choose Keys screen, then clicking the 'Back' button, changing some options, and then going forward again.
Fixed bug that caused Choose Tables screen not to unload properly.
Version 1.02 - 9/4/99:
Fixed bug that caused Error 3251 (The operation requested by the application is not supported by the provider) after clicking the Next button in the Choose Connection screen. (This was actually a bug in ADO for which Microsoft provided a workaround.)
Version 1.01 - 9/2/99:
Fixed bug that caused Error 53 (File not found) after file generation when adding files to any VB project that was not currently loaded.
Fixed bug that caused 'clsCG2KConn' connection object not to be included in project file when working with any VB project that was not currently loaded.
Version 1.0 - 8/31/99:
Official Release


Installation Instructions: (Print this page) Top of Page

Step 1: Run the setup program included with this package. This will install and register COM-Gen 2000TM. If you downloaded the larger package that includes MDAC 2.1, the setup program will install that as well.

IMPORTANT: COM-Gen 2000TM requires MDAC 2.1 to work correctly. If you do not have MDAC 2.1 installed, the program may appear to run correctly, but will have trouble opening database connections. To ascertain whether or not you have MDAC 2.1 installed on your machine, search for the file MDAC_TYP.EXE on your machine and check the version by right-clicking on the file name in Windows Explorer. If you downloaded our larger package which includes the English language version of MDAC 2.1, the COM-Gen 2000TM setup routine will also install MDAC 2.1. Otherwise, you must also download the MDAC 2.1 version for your particular language from Microsoft at http://www.microsoft.com/data . MDAC 2.1 should be installed prior to installing COM-Gen 2000TM.

Step 2: Run Visual Basic and install COM-Gen 2000TM onto the VB AddIn menu. (From the VB6 menu, click 'Add-Ins->Add-In Manager', then choose COM-Gen 2000TM from the Add-In Manager's list of available applications. Make sure that both the 'Loaded/Unloaded' checkbox and the 'Load on Startup' checkbox in the Add-In Manager screen are checked before you click the OK button.


Bug Reports and Suggestions: Top of Page

Please let us know about any problems you experience or any suggestions you may have via our short bug report form.


Join Our Mailing List(s): Top of Page

We have two different mailing lists with two different purposes. You may subscribe to one or both:
COMGen2000: The COMGen2000 mailing list is a discussion forum in which you can exchange questions, opinions, and ideas about the COM-Gen 2000TM program with other users and potential users.
Subscribe to the COMGen2000 list.
COMGen2000Status: The COMGen2000Status mailing list is an announcement only list. This list will be used by us to inform members of updates and important information regarding COM-Gen 2000TM. Members may not post messages to this list.
Subscribe to the COMGen2000Status list.