Component

Data Class Builder

This component could save developers unprecedented time and money.

If you use the class builder utility by Microsoft you know how useful and timesaving this tool can be in building class modules.

Do you encapsulate database functionality in class modules? If the answer is YES then you need this component.

What does it do? Well, basically it builds an entire class module from a database table. All properties relating to field names, useful Recordset parameters including RecordCount and all the methods required to ensure persistence once the object is destroyed are encapsulated in the *template.

The *template is well tested and designed to give excellent performance and reliability conveniently wrapped up into one consistently coded class module.

The Data Class Builder is going to revolutionise project developments by enabling developers to build hundreds of class modules in a fraction of the time and is compatable with any ODBC compliant database including SQL7.0, 2000 Server, Microsoft Access 2000 and 97.

An essential utility for Data driven object programming!

Fig 1.1
Data Class Builder setting table and connection properties before build

Fig 1.2
Data Class Builder showing class module built from database table

Other AJE Components..

Loan Engine

The Loan Engine is the ultimate component for all Finance, Loan, Installment Credit and the Repayment of Credit with or without Interest calculations and parameters. Additional items such as Fees and Insurance's are incorporated into the Loan Engine to ensure real world borrowing, money lending, repayment of credit and most other scenario's are covered.

Given the complexity of the mathematics involved in some of the calculations relating to interest and APR (Annual Percentage Rate) in paying back credit with interest this component has been developed for easy and quick integration into your finance projects. Because the component is modeled on real world environments, terminology is logical and intuitive to both developers and end users.

The component is structured as a hierarchy of objects with the Loan object being the main. The Loan object comprises of a number of properties and aggregated objects which relate to the properties of a real world Loan. For example, the Loan object comprises of an aggregated collection of Installments, Fees and Insurance's.

Fees and Insurance's can be added to each Loan and specified whether paid at the First Installment, Spread across the Installments or on the Final installment. Calculations for APR, IRR, Tax and many others have been included to make this component the most comprehensive and formidable finance component available.

The Loan Engine is an ActiveX DLL and has no visible interface. Designed to be usable by any developer, even those who have a very limited understanding of finance terminology and mathematics. However, it is recommended that in most cases the Loan Calculator be used to complement the Loan Engine as this provides a familiar and simple to use interface in the form of an ActiveX Control that can be dropped directly onto your forms.

Loan Calculator * Requires Loan Engine

The Loan Calculator is an ActiveX Control designed to complement the Loan Engine by adding a comprehensive User Interface. The Loan Calculator component comprises of a single control called the Installment Calculator and is designed to cover most Installment Credit scenario's. When added to the Visual Basic IDE the control can be simply dropped onto the forms of your desktop developments. Functionality for APR's, Interest, Fees, Insurances, Installment Schedules and Report generation have been incorporated in this very powerful and unique control.

To enhance the appeal of the Loan Calculator further, the control is multi-lingual with the option of five languages. English, French, German, Italian and Spanish can easily be selected from the Property pages. Additionally different currency and decimal notations are included to ensure a truly versatile and internationally compatible control.

Fig 1.3
Installment Calculator

Fig 1.4
Installment Calculator with Repayment details

User Manager and Security Component.

This component is designed to meet all your application security needs in a single ActiveX COM component.

If your Visual Basic application development requires advanced front-end security then this component offers everything you can imagine. It will no longer be necessary for a project to allocate time to developing code for end user security. Login screens, auditing, user profiles, groups and access rights are all handled by this component.

To present a familiar interface the component is loosely designed around the Windows NT User Manager to ensure a consistency and a familiarity to both the developer and the end user.

The component is unprecedented in its functionality, power and flexibility. It provides developers with a complete User Manager and Security component for project developments.

Because of the adaptive files structure the component does not require a database or any other data source. Simply reference the component in your project and tell it where you wish to store the security data files.

Encryption is state of the art and security can be assured through advanced encryption algorithms for passwords so end user and application security is guaranteed.

Fig 1.5
User Manager

Utility Library

In order to make the life of the developer easier the Utility Library was designed to incorporate a library of commonly used code and expanded it to cover virtually every Visual Basic development scenario and project. The Utility library will save time and money on your projects by allowing developers to utilise proven and well-tested code in a simple and easy to use ActiveX DLL.

By centralising functions into one component and forcing developers to use this resource removes the possibility of code replication/duplication and reduces development costs because the component already has most of the functions that many developers need from the outset.

With so many useful methods built into the Utility Library you suddenly have access to a wealth of resource and functionality that would take many months to develop from scratch. The quality and functionality of the Utility Library give it the competitive edge.

To make the component easy to use it has been logically and professionally structured to allow easy integration into existing projects with logical categorisation of properties and methods into self-explanatory objects with most methods not needing any explanation for experienced developers. This was the primary consideration in the design and structure of the component and a great deal of time and effort was spent getting it right.

The Library includes methods for Encryption, File Handling/Information, Registry, System, String Handling, Sorting, Network, Mathematics and many more. In fact, there are hundreds of powerful and invaluable methods and properties that cover all aspects of development no matter what your project.

The essence of the utility library is power and simplicity and that is what it delivers. If you are tired of lengthy project developments you really should consider using this component.

Error Utility

An ActiveX DLL Error Handler Utility, which includes logging and tracing. Easy to configure with logical presentation of information makes this component very powerful.

It can be easily integrated into any project by simple adding the appropriate reference and is suitable for both development and run time environments.

Furthermore, it saves time and takes all the hassle and effort out of writing your own error forms, messages and handling code while also incorporating additional functionality to log and trace errors. The enhanced functionality and ability to log errors will prove extremely useful for debugging projects during beta testing.

Fig 1.6
Error handler form presents user with default options.

Fig 1.7
Form expanded to show additional details on the error

Fig 1.8
Error Log form showing Error History

The user interface of the error handler has been given a great deal of thought and is designed to present logical and meaningful information which can be stored in the error log for later retrieval or printing.

The Error Logging form shows the error history for the defined applications. The log can be opened with Notepad or printed for more detailed analysis, copying or faxing.

This really is an essential component for any project.

Enhanced Controls

The Enhanced controls suite provides five enhanced ActiveX controls for the Visual Basic IDE.

The standard Visual Basic controls have certain limitations that prompted the development of the Enhanced Controls suite.

The suite comprises of five controls:-

Enhanced Textbox
Banner Control
Titlebar Control
Big Timer Control
Big Vertical Scroll Bar Control

Validation, formatting and Auto highlighting make the Enhanced Textbox a logical replacement for the standard textbox.

The Banner and Titlebar controls add more flare to your graphical presentation of your desktop developments. The Big Timer and Big Scroll Bar controls overcome the limitations that these standard controls place on developers.

Data Engines

Development architectures and methodologies vary from organisation to organisation. What is often inescapable is the pressure and demands of management to offer a quick fix or solution at the expensive of future flexibility and even more importantly a scalable system.

Often design constraints or overlooked or not even considered and the pressure to meet deadlines compounds things further.

Traditional applications are usually monolithic in nature and often companies release new products which are little more than revamped versions of old ones. They may look vastly different on the outside but scratch the surface and the same old rust is underneath.

Modern architecture calls for different approaches to development. Data Engines specifically detach business rules and user centric operations from the back end database.

The importance of adopting this approach, often referred to as 3-tier or even n-tier, is highlighted by the emergence of Client/Server systems (thin-client) and Internet/Intranet technologies.

What does all this mean? Well, by integrating Data Engines into your current developments or adopting them for new ones you will ensure the scalability of your projects.

The main application is transparent to the database and uses the Data Engine instead of explicit ADO or DAO references. This detachment from the database means that you need never change any code in the main application because everything is centralised in the Data Engine. Changes to database type or platform means only minor changes are necessary to the Data Engine normally limited to connection properties if the database is ODBC compliant.

My Data Engines are COM components and encapsulate all of the standard recordset navigation commands and some useful extra ones to give you complete and powerful control over your data. Because these components are COM based, compatibility is ensured with other languages and futures platforms.

Speed is another important factor when handling large volumes of data. I have developed special methods that ensure the response and performance of my Data Engines is unmatched. This is guaranteed to offer a significant improvement in speed over traditional approaches!

A J Evans can tailor Data Engines to any specific requirement and can build them fast and reliably using a series of tools developed to automate the process.

Reasons to consider using data engines in your software developments: -

  • Scalable architectures
  • Multi database platforms
  • Data engines are reusable components in other systems
  • Intuitive to use with easy to understand commands and syntax to control data
  • More reliable
  • COM based so future compatibility ensured
  • Speed (special methods ensure record retrieval and updating is instant)
  • Template based so coding issues are a thing of the past
  • Ease of upgrading
  • Main application is detached from direct access to database

NOTES:

*The template design for the Data Engine is licensed and the Intellectual property of A J Evans. No part of it may be copied or altered without the written consent of the author (“A J Evans.”)

For full details of AJEvans products and services click here

Send Feedback to AJE Components
©.2000/2001 AJEvans


Installation

AJE Components Installation Guide

ADO Data Class Builder Add-In Component

To install the ADO Data Class Builder run the Setup.exe program that came with your installation set and follow the on-screen instructions.

After the installation has finished, the component will be automatically registered with Visual Basic as an Add-In and should appear on the Add-In menu.

Evaluation and Licensing

To assess whether a particular component is suitable for your projects all AJE Components have a 5-day evaluation period in which you have access to full functionality. However, you will be prompted each time you use the component for the license key and after the evaluation period you will be locked out of the component until you purchase one.

The evaluation version only needs to be unlocked by entering a valid license key, which must be purchased from the vendor, and you will not be required to acquire or download another version.

Using and acquiring a AJE Component has been made as easy as possible for developers and managers alike and makes integration them into your existing projects a breeze.


License

AJE Software Component License

IMPORTANT: READ CAREFULLY – AJE Software Components, including any "online" or electronic documentation (collectively referred to as "Software Components"), are subject to the terms and conditions of the End-User License Agreement for AJE Components (each such license referred to individually as a "EULA"), for the applicable AJE software product which you licensed previously from AJE Components.. By installing, copying or otherwise using the Software Components, you agree to be bound by the terms and conditions described above.

NOTE: IF YOU DO NOT HAVE A VALID LICENSE YOU ARE NOT AUTHORIZED TO INSTALL, COPY OR OTHERWISE USE THE SOFTWARE COMPONENTS. EVEN IF YOU HAVE A RIGHT TO USE THE SOFTWARE COMPONENTS, YOU DO NOT HAVE ANY RIGHT TO INSTALL, COPY OR OTHERWISE USE ANY OF THE OTHER SOFTWARE COMPONENTS.

General.

AJE Components are licensed to you pursuant to the terms of the license agreement included with the original software, and is protected by copyright law and international treaties. Unauthorized reproduction or distribution may result in severe civil and criminal penalties, and will be prosecuted to the maximum extent possible under the law.

You also have the right to make additional copies of the Software Components equal to the number of validly licensed copies of each SOFTWARE PRODUCT which you have, and you may use each copy in the manner specified above.

License Agreement

PLEASE READ THIS DOCUMENT CAREFULLY BEFORE USING THE SOFTWARE.

BY USING THE SOFTWARE, YOU AGREE TO BE BOUND BY THE TERMS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO THE TERMS OF THE
AGREEMENT, DO NOT OPEN , INSTALL OR USE THE SOFTWARE. PROMPTLY RETURN, WITHIN 15 DAYS, THE SOFTWARE, ALL RELATED DOCUMENTATION AND ACCOMPANYING ITEMS TO THE PLACE OF ACQUISITION.

This is a legal agreement between you and AJE Components.

This Agreement states the terms and conditions upon which AJE Components offers to license the software together with all related documentation
and accompanying items including, but not limited to, the executable programs, drivers, libraries and data files associated with such
programs (collectively, the "Software").

1. Grant of License.
The Software is licensed, not sold, to you for use only under the terms of this Agreement. You own the disk or other media on which the Software is originally or subsequently recorded or fixed; but, as between you and AJE Components(and, to the extent applicable, its licensors), AJE Components retains all title to and ownership of the Software and reserves all rights not expressly granted to you.

2. For Use on a Single Computer.
The Software may be used only on a single computer by a single user at any time.

You may transfer the machine-readable portion of the Software from one computer to another computer, provided that:-
(a) the Software (including any portion or copy thereof) is erased from the first computer and
(b) there is no possibility that the Software will be used on more than one computer at a time.

3. Stand-Alone Basis.
You may use the Software only on a stand-alone basis, such that the Software and the functions it provides are accessible only to persons who are physically present at the location of the computer on which the Software is loaded. You may not allow the Software or its functions to be accessed remotely, or transmit all or any portion of the Software through any network or communication line.

4. Copyright.
The Software is owned by AJE Components and/or its licensees, and is protected by United Kingdom copyright laws and international treaty provisions. You may not remove the copyright notice from any copy of the Software or any copy of the written materials, if any, accompanying the Software.

5. One Archival Copy.
You may make one (1) archival copy of the machine-readable portion of the Software for backup purposes only in support of your use of the Software on a single computer, provided that you reproduce on the copy all copyright and other proprietary rights notices included on the originals of the Software.

6. Network Version.
If you have purchased a "network" version of the Software, this Agreement applies to the installation of the Software on a single "file server". It may not be copied onto multiple systems. Each "node" connected to the "file server" must also have its own license of a "node copy" of the Software, which becomes a license only for that specific "node".

7. Transfer of License.
You may transfer your license of the Software, provided that
(a) you transfer all portions of the Software or copies thereof,
(b) you do not retain any portion of the Software or any copy
thereof, and
(c) the transferee reads and agrees to be bound by the terms and
conditions of this Agreement.

8. Limitations on Using, Copying, and Modifying the Software.
Except to the extent expressly permitted by this Agreement or by the laws of the jurisdiction where you acquired the Software, you may not use, copy or modify the Software. Nor may you sub-license any of your rights under this Agreement. You may use the Software for your personal use only, and not for public performance or for the creation of publicly displayed videotapes.

9. Decompiling, Disassembling, or Reverse Engineering.
You acknowledge that the Software contains trade secrets and other proprietary information of AJE Components. and its licensors.
Except to the extent expressly permitted by this Agreement or by the laws of the jurisdiction where you are located, you may not
decompile, disassemble or otherwise reverse engineer the Software, or engage in any other activities to obtain underlying information that is not visible to the user in connection with normal use of the Software.

In particular, you agree not for any purpose to transmit the Software or display the Software's object code on any computer screen or to make any hardcopy memory dumps of the Software's object code. If you believe you require information related to the interoperability of the Software with other programs, you
shall not decompile or disassemble the Software to obtain such information, and you agree to request such information from AJE Components. at the address listed below. Upon receiving such a request, AJE Components. shall determine whether you require such information for a legitimate purpose and, if so, AJE Components. will
provide such information to you within a reasonable time and on reasonable conditions.

In any event, you will notify AJE Components. of any information derived from reverse engineering or such other activities, and the results thereof will constitute the confidential information of AJE Components. that may be used only in connection with the Software.

TERMINATION

The license granted to you is effective until terminated. You may terminate it at any time by returning the Software (including any portions or copies thereof) to AJE Components. The license will also terminate automatically without any notice from AJE Components. if you fail to comply with any term or condition of this Agreement. You agree
upon such termination to return the Software (including any portions or copies thereof) to AJE Components. Upon termination, AJE Components. may also enforce any rights provided by law. The provisions of this Agreement that protect the proprietary rights of AJE Components. will continue in force after termination.

LIMITED WARRANTY

AJE Components. warrants, as the sole warranty, that the disks on which the Software is furnished will be free of defects, as set forth in the Warranty Card or printed manual included with the Software. No distributor, dealer or any other entity or person is authorized to expand or alter this warranty or any other provisions of this
Agreement. Any representation, other than the warranties set forth in this Agreement, will not bind AJE Components.

AJE Components. does not warrant that the functions contained in the Software will meet your requirements or that the operation of the Software will be uninterrupted, error-free or free from malicious code. For purposes of this paragraph, "malicious code" means any program code designed to contaminate other computer programs or
computer data, consume computer resources, modify, destroy, record, or transmit data, or in some other fashion usurp the normal operation of the computer, computer system, or computer network, including viruses, Trojan horses, droppers, worms, logic bombs, and the like.

EXCEPT AS STATED ABOVE IN THIS AGREEMENT, THE SOFTWARE IS PROVIDED AS-IS WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED,
INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE. AJE Components IS NOT OBLIGATED TO PROVIDE ANY UPDATES, UPGRADES OR TECHNICAL SUPPORT FOR THE SOFTWARE.

Further, AJE Components. shall not be liable for the accuracy of any information provided by AJE Components. or third-party technical support personnel, or any damages caused, either directly or indirectly, by acts taken or omissions made by you as a result of such technical support.

You assume full responsibility for the selection of the Software to achieve your intended results, and for the installation, use and results obtained from the Software. You also assume the entire risk as it applies to the quality and performance of the Software. Should the Software prove defective, you (and not AJE Components, or its
distributors or dealers) assume the entire cost of all necessary servicing, repair or correction.

This warranty gives you specific legal rights, and you may also have other rights which vary from country/state to country/state. Some countries/states do not allow the exclusion of implied warranties, so the above exclusion may not apply to you. AJE Components disclaims all warranties of any kind if the Software was
customized, repackaged or altered in any way by any third party other than AJE Components.

LIMITATION OF REMEDIES AND DAMAGES

THE ONLY REMEDY FOR BREACH OF WARRANTY WILL BE THAT SET FORTH IN THE WARRANTY CARD OR PRINTED MANUAL INCLUDED WITH THE SOFTWARE. IN NO EVENT WILL AJE Components OR ITS LICENSORS BE LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES OR FOR ANY LOST PROFITS, LOST SAVINGS, LOST REVENUES OR LOST DATA ARISING FROM OR RELATING TO THE SOFTWARE OR THIS AGREEMENT, EVEN IF
AJE Components OR ITS LICENSORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN NO EVENT WILL AJE Components LIABILITY OR DAMAGES TO YOU OR ANY OTHER PERSON EVER EXCEED THE AMOUNT PAID BY YOU TO USE THE SOFTWARE, REGARDLESS OF THE FORM OF THE CLAIM.

PRODUCT RETURNS

If you must ship the software to AJE Components. or an authorized AJE Components distributor or dealer, you must prepay shipping and either insure the software or assume all risk of loss or damage in transit.

GENERAL

This Agreement is binding on you as well as your employees, employers, contractors and agents, and on any successors and assignees. Neither the Software nor any information derived therefrom may be exported except in accordance with the laws of the United Kingdom. or other applicable provisions.
This Agreement is the entire agreement between us and supersedes any other understandings or agreements, including, but not limited to, advertising, with respect to the Software. If any provision of this Agreement is deemed invalid or unenforceable by any country or government agency having jurisdiction, that particular provision will be deemed modified to the extent necessary to make the provision valid and enforceable, and the remaining provisions will remain in full force and effect.

For questions concerning this Agreement, please contact AJE Components at the address stated above. For questions on product or technical matters, contact the AJE Components technical support center nearest you.

Distribution

Please feel free to distribute the Unregistered version of this component.

However, we ask that you distribute the entire Unregistered version with no modification, and without any charge or fee. The Unregistered version can clearly be identified by the startup License Notification screen. The License screen is permanently removed only when the product is Registered.

To distribute this component with your installations you will need to distribute the Component License file. For instructions on how to do this please click here or read the section on distribution.

Limited Warranty:
EXCEPT AS STATED EARLIER IN THIS AGREEMENT, AND AS PROVIDED UNDER THE HEADING "STATUTORY RIGHTS", THE SOFTWARE IS PROVIDED AS-IS WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OR CONDITIONS OF MERCHANTABILITY, QUALITY AND FITNESS FOR A PARTICULAR PURPOSE.

General:

This Agreement is governed by the laws of the United Kingdom. The local language version of this agreement shall apply to Software acquired in the EU. This Agreement is the entire agreement between us and you agree that AJE Components will not have any liability for any untrue statement or representation made by it, its agents or anyone
else (whether innocently or negligently) upon which you relied upon entering this Agreement, unless such untrue statement or representation was made fraudulently.


Release

AJE Software Components

Release Notes

Welcome to AJE Component Software. Please refer to these release notes to obtain the most up-to-date information about installation, documentation, support, and other known issues.

Installing
Product Documentation
Other Known Problems and Limitations
Providing Feedback
Technical Support

Installing
  • Windows 95/98/NT4.0 or Windows ME/2000 must be installed.
  • Visual Basic 6.0 Service Pack 3 or higher must be installed.

Notes

Other Installation Considerations
Upgrading Considerations
  • If you are upgrading from previous versions just run the setup.exe program as normal. Your installation will be updated.
Setup.exe is not code signed
  • When running Setup from the CD from the setup Web page, Internet Explorer will display an error message indicating that Setup.exe has not been code signed. Setup.exe is a 16-bit file and 16-bit file formats cannot be code signed.
Product Documentation

All documentation for the product is available online. You can access the Help topics by clicking Start and pointing to the program group where the product is installed, or by using the Help menu of the administration tool. Context-sensitive help is also available by clicking the Help button on a property sheet or dialog box.

Using the Documentation

Please observe the following guidelines when using the online documentation:

  • Pages printed by using the Contents print icon will not include graphics or linked documents.
Other Known Problems and Limitations

None at present.

Providing Feedback

We welcome your feedback! It's important that we incorporate your feedback into our software. Please send any comments or suggestions to feedback@ajevans.com

Technical Support

If you have a technical question about AJE Components, use this online documentation or consult Help by clicking the Help button during a procedure.

Self-Help Tools to Find Answers Yourself

Technical Support Online: To help you access the most relevant technical information and resources to answer your support questions. Use the Troubleshooting Wizards and FAQ's to easily diagnose and answer technical questions. Or select technical articles, programming aids, or commonly asked questions from our Knowledge Base.

Visit http://www.ajevans.com/support

Copyright Information

© 2000/2001 AJEvans.

These materials are provided “as-is,” for informational purposes only.

Neither AJE Components. nor its suppliers makes any warranty, express or implied with respect to the content of these materials or the accuracy of any information contained herein, including, without limitation, the implied warranties of merchantability or fitness for a particular purpose. Because some states/jurisdictions do not allow exclusions of implied warranties, the above limitation may not apply to you.

Neither AJE Components nor its suppliers shall have any liability for any damages whatsoever including consequential, incidental, direct, indirect, special, and lost profits. Because some states/jurisdictions do not allow exclusions of implied warranties, the above limitation may not apply to you. In any event, AJE Components and its suppliers’ entire liability in any manner arising out of these materials, whether by tort, contract, or otherwise shall not exceed the suggested retail price of these materials.


Standards

This component has been developed and tested to the highest standards. AJE Components are always looking to improve the quality of the software and would welcome any feedback or suggestions on how this product may be improved. Please send any comments or suggestions to feedback@ajevans.com or click here to visit the site.

VERIFICATION AND VALIDATION

Verification involves checking that the component conforms to its specification. Validation involves checking that the component meets the expectations of the customer.

Requirements validation techniques, such as prototyping are useful here. However, flaws and deficiencies in the requirements can sometimes only be discovered when the system implementation is complete.

To satisfy the objectives of the Verification and Validation process, both static and dynamic techniques of component checking and analysis are used. Static techniques are concerned with the analysis and checking of component representations such as the requirements document, design diagrams and the source code and may be applied at all stages of the process. Dynamic tests involve exercising an implementation and can only be used when a prototype is available.

Static tests include component inspections, analysis and formal verification. Static techniques can only check the correspondence between a component and its specification. They cannot demonstrate that the component is operationally useful.

Component testing is still a good way of testing and involves exercising the component using data like the real data processed by the component. The existence of component defects or inadequacies is inferred from unexpected system outputs. Testing may be carried out during the implementation and after.

When defects are found these are removed by debugging. Defects in the code are located and the component modified to meet the requirements. Testing is repeated to ensure that the change has been made correctly.

THE TESTING PROCESS

The testing process proceeds in stages where testing is carried out incrementally in conjunction with system implementation.

UNIT TESTING

Individual components are tested to ensure that they operate correctly. Each component is tested independently, without other system components.

MODULE TESTING

A module is a collection of dependent components such as a collection of procedures or functions. A module encapsulates related components so that it can be tested without other system modules.

SUB-SYSTEM TESTING

This phase involves testing collections of modules that have been integrated into sub-systems. The Sub-system test will concentrate on the detection of interface errors by rigorously exercising these interfaces.

SYSTEM TESTING

The sub-systems are integrated to make up the entire system. The testing process in concerned with finding errors that result from unanticipated interactions between sub-systems and system components. It is also concerned with validating that the system meets its functional and non-functional requirements.

TESTING STRATEGIES

A testing strategy is a general approach to the testing process rather than a method of devising particular system or component tests. Different testing strategies may be adopted depending on the type of component to be tested and development process.

THREAD TESTING

Thread testing is an event based approach where tests are based on the events that trigger system actions. As part of the testing process the component is analyzed to identify as many threads as possible. Threads are not just associated with individual events but also with combinations of inputs that can arise.

Threads are identified from an architectural model of the system that shows interactions and from descriptions of system input and output.

For full details of AJEvans products and services click here

Send Feedback to AJE Components
©.2000-2002 AJEvans


Data Class

What is the Data Class Builder and how is it going to save time and money on my projects?

If you are using data aware class modules or are encapsulating data functionality within class modules for scalability or otherwise then this IDE Add-In component for Visual Basic is for you.

By using a well tested, proven and reliable Interface for database functionaility the Data Class Builder automatically generates all the code you need with minimal effort.

You simply select the *database and table you want to build and by clicking a button all the code you need to control the recordset the class module in based on is created for you.

This Add-In component is going to save you unprecedented time and money on coding projects.

If you have followed the installation instructions you can start the ADO Data Class Builder by going to the Add-Ins Menu as show below.

Click the ADO Data Class Builder Add-In menu option and the component will load and present you with the screen shown below.

You are now ready to start building your COM project.

Note: Read our recommendations for Database design and layout to avoid syntax problems in Visual Basic.

*NOTE: Database must be Microsoft Access 97.


Build

Build Class

Clicking the button will generate the code for the class module based on the Database table selected.

Once the code has been generated you can preview and change it in the preview window. This gives you the flexibility to amend or add code before updating the project.

Note: Read our recommendations for Database design and layout to avoid syntax problems in Visual Basic.


Class Name

This specifies the name of the class module to be added to the Visual Basic project after building the code and clicking Update.

Note: Read our recommendations for Database design and layout to avoid syntax problems in Visual Basic.


Clear

This will clear the code generated by the Data Class Builder and refresh the preview window.

The preview pane will be empty after the Clear button is clicked.


Close

Clicking the close button will finish the Data Class Builder session. If any changes have been made you will be prompted with a dialog asking if you wish to discard the changes.

Clicking Yes will discard any changes you have made to code in the Preview Window.


Connection

The Connection parameter specifies a data source by passing a detailed connection string containing a series of argument = value statements separated by semicolons.

The arguments used in the connecton parameter are the same as those in the ADO ConnectionString and are as follows:

Argument | Description
Provider= | Specifies the name of a provider to use for the connection.
File Name= | Specifies the name of a provider-specific file (for example, a persisted data source object) containing preset connection information.
Remote Provider= | Specifies the name of a provider to use when opening a client-side connection. (Remote Data Service only.)
Remote Server= | Specifies the path name of the sever to use when opening a client-side connection. (Remote Data Service only.)

The Database can be any ODBC compliant type including Microsoft Access 97,2000 and SQL Server 7.0 and 2000. Connections can be specified with or without a DSN.

Examples

Open a connection without using a Data Source Name (DSN).
Connection = "driver={SQL Server};server=myserver;uid=sa;pwd=;database=test"

Open a connection using a DSN and ODBC tags.
Connection = "DSN=test;UID=sa;PWD=;"

Open a connection using a DSN and OLE DB tags.
Connection = "Data Source=test;User ID=sa;Password=;"

Table names must not contain spaces, Visual Basic literals or reserved words. Similarly, the same care and attention must be taken when designing tables as the sames rules apply. No Reserved Words or literals can be used for field or table names.

Note: Read our recommendations for Database design and layout to avoid syntax problems in Visual Basic.

For more information on reserved words and literals consult your Visual Basic literature or the MSDN.


Data Layout

The Data Class Builder is fairly flexible in naming conventions. However, because it is Visual Basic and not this component that enforces restrictions there are certain conventions that must be adhered to when designing the structure of your database when using this component to build COM projects.

Spaces

Database, Table and Field names must not contain spaces.

Example;

[Customer Table] is Invalid.

But,

[CustomerTable] or [Customer_Table] is OK.

Reserved Words

Generally these are Visual Basic Commands, Properties and Events.

Example;

Date
Format
Time

are to be avoided.

General Guidelines

Care and attention must be taken when designing tables. If you follow the guidelines here then you should have no difficulties.

If you do find that you have inadvertently used a reserved word or literal you can use the preview window to check the code before updating the project. Any potential problems with syntax will be highlighted by Visual Basic and you can redesign the table to remove the problem and rebuild the class module again with the Data Class Builder.

For more information on reserved words and literals consult your Visual Basic literature or the MSDN.


Database is Microsoft Access

If this option is checked the ADO Dataclass Builder will allow you to browse for a Microsoft Access database. The screen will show the file parameter and the file browse command button. Clicking the browse button will bring up the file browse dialog where the required database can be selected.

The connection and provider parameters will be hidden as they are not needed for an Access database. Unchecking this option will reveal the connection and provider parameters.


DB Object

The DB Object parameter in the Data Class Builder specifies the name of the global database connection object in your applications. The class module will be built automatically using the parameter specified here as the database connection object.

Note: Read our recommendations for Database design and layout to avoid syntax problems in Visual Basic.


File

Clicking the Database command button brings up a file dialog to browse for the database you wish to connect to. Once selected the database will be loaded and you will be able to select the table which you wish to build the class module on.

The File Database can be either Microsoft Access 2000 or 97.

Table names must not contain spaces, Visual Basic literals or reserved words. Similarly, the same care and attention must be taken when designing tables as the sames rules apply. No Reserved Words or literals can be used for field or table names.

Note: Read our recommendations for Database design and layout to avoid syntax problems in Visual Basic.

For more information on reserved words and literals consult your Visual Basic literature or the MSDN.


Hide System Tables

If this option is checked the Database Class Builder will hide system tables and they will not be visible in the drop list.


Preview Window

Previews the code generated by the Data Class Builder from the selected table. The window is editable and changes can be made to the code before the project is updated.

Occasionally the Data Class Builder may generate invalid syntax in the code. You can check and screen the code before updating the project. Usually this is because of incompatable field and table names.

If reserved words are used for field names then you will get errors when you update the project. You must avoid spaces, reserved words or VB literals in the design of your database if you intend to use the Data Class Builder to automatically generate data aware class modules.

Note: Read our recommendations for Database design and layout to avoid syntax problems in Visual Basic.


Remove Table Prefix

Removes the prefix on the table name from the properties relating to field names in the selected database table.

For example,

Table Name= Customer
Field Name= CustomerName

If the Remove table prefix is checked then the property name generated by the Data Class Builder will be 'Name' and if the prefix is turned off then property generated will be 'CustomerName'.


Provider

Specifies the name of the Provider for the current connection string.

If the provider setting is blank then a default one will be used.

Note: Read our recommendations for Database design and layout to avoid syntax problems in Visual Basic.

For more information on reserved words and literals consult your Visual Basic literature or the MSDN.


Table Name

Specifies the name of the table in the currently selected database on which the code for the class module shall be generated by the Data Class Builder.

Table names must not contain spaces, Visual Basic literals or reserved words. Similarly, the same care and attention must be taken when designing tables as the sames rules apply. No Reserved Words or literals can be used for field or table names.

Note: Read our recommendations for Database design and layout to avoid syntax problems in Visual Basic.

For more information on reserved words and literals consult your Visual Basic literature or the MSDN.


Update

Updates the current Visual Basic project with the class module automatically generated by the Data Class Builder.

If a class is already present in the project with the same name you will be prompted to overwrite it.

Note: Read our recommendations for Database design and layout to avoid syntax problems in Visual Basic.


Components

Welcome to A J Evans Reusable Software Components
and Shared Developer Resources (SDR)

AJE Software Components provide enhanced Web and application development resources for COM Developers.

Please make sure to read through both the release notes and the licensing information before installing the software.

Your feedback is welcome. It's important that your feedback is incorporated into existing and future software developments. Please send any comments or suggestions to feedback@ajevans.com or click here to visit the site.

Synopsis

AJE Components addresses the core of business strategy - staying ahead of the competition or being the first with best. In order to remain competitive, organizations must be better, faster and more efficient. With IT as one of the key drivers of competitive advantage, software applications, specifically, must be better, faster and more efficient.

Now your applications can evolve rather than requiring periodical, very costly replacement, and by using AJE Components your business will not be constrained.

AJE Components has a number of specialized COM components and development tools that are competitively priced. Integrating them into existing and new projects will streamline your developments; reduce testing overhead, development times and costs thus ensuring your organizations competitive advantage.

Choosing AJE Components will be the best business decision you will make!

Increased Flexibility

Quickly responding to market changes and adapting to new business requirements are critical elements to succeeding in today's changing business environment. Such demands have created a growing need for organizations to develop flexible software systems that can stand the test of time. Organizations betting their businesses on component-based development and software reuse can quickly adapt, change and adjust their software without affecting entire systems. It is easy to modify specific components or add new functionality without changing existing systems, resulting in a flexible environment that can sustain changing market conditions.

Reduced Time to Market

Building software with pre-tested, pre-built components that can be reused time and time again dramatically shortens the development cycle and tremendously increases productivity. As a result, organizations can develop and deliver quality software faster than ever before possible. In today's business climate where time-to-market is critical to success, component reuse can provide the edge needed to dramatically accelerate software development and stay competitive.

Higher Quality

Developing software with pre-tested components provides a level of quality much higher than systems that are built from scratch. Component-based systems are more reliable and overall maintenance is therefore reduced, providing additional cost-savings to an organization. AJE Components are the result of many hours work of continual refinement, improvement and testing.