Developing an IP to access a data source using the OpenAccess SDK SQL engine involves the following steps:
1. Define the tables and stored procedures to model the data access to your data source and enter this information into the Schema Database or implement your own schema manager to expose it from the SCHEMA operation of the IP.
2. Determine the level of commands that your data source can handle (for example, row-based or parsed SQL query). What kind of index-based optimization can be pushed down? Does your data source support join processing? Does it include transaction control – COMMIT and ROLLBACK?
3. Determine the functionality that you need to support (for example, READ, INSERT, UPDATE, DELETE). You can start with supporting only SELECT, and then add UPDATE/INSERT/DELETE later.
4. Design the algorithms to implement each of the required IP functions for the selected functionality.
5. Write code for the IP, starting from the template and examples that are installed with OpenAccess SDK.
6. To test SELECT and other operations your IP supports, use the Interactive SQL tool (ODBCISQL, JDBCISQL, or OLEDBISQL executable installed with OpenAccess SDK Clients).
7. For ODBC, you can customize the Setup dialog box that is displayed when the user uses Microsoft ODBC Administrator to create a new DSN.
8. Test your implemented driver/provider using the client applications that your customers will be using. Because your IP code is decoupled from the client-side API, your finished product does not impact any compatibility that is provided by OpenAccess SDK. The client APIs have already been tested with Progress DataDirect’s extensive test suite.
9. Use the branding tools to create a branded version of the driver/provider and package it for distribution by using the customizeable installer that is provided with the OpenAccess SDK, or by creating your own custom installers. For more information, refer to OpenAccess SDK Distribution Guide.
End user documentation is available as Adobe FrameMaker documents.
This chapter uses the Example database to explain the following concepts and topics:
• The development of an IP
• How to configure the OpenAccess SDK Schema database
• Functions that an IP must implement
• Programming considerations for multi-threading and Unicode
For information on setting up the development environment to implement and test your IP, refer to the specific OpenAccess SDK SQL Engine Programmer’s Referencefor your programming language.