Home | Previous Page | Next Page  

Contents

Introduction
In This Introduction
About This Manual
Organization of This Manual
Types of Users
Software Dependencies
Documentation Conventions
Typographical Conventions
Feature, Product, and Platform
Syntax Diagrams
Example Code Conventions
Additional Documentation
Installation Guides
Online Notes
Informix Error Messages
Manuals
Online Help
Accessibility
IBM Informix Dynamic Server Version 10.0 and CSDK Version 2.90 Documentation Set
Compliance with Industry Standards
IBM Welcomes Your Comments
Getting Started with DataBlade Module Development
In This Chapter
What is a DataBlade Module?
DataBlade Developer's Kit Tools
Preparing to Develop DataBlade Modules
Becoming Familiar with IBM Informix Software and Documentation
Designing Your DataBlade Module
Developing Your DataBlade Module
Editing and Compiling DataBlade Module Code
Debugging Your DataBlade Module
Packaging Your DataBlade Module
Designing DataBlade Modules
In This Chapter
Data Model
Data Type Design
Object Accessibility
Handling Large Objects
Query Language Interface
SQL Query Structure
The Target List
The Qualification
Query Processing
Predicate Evaluation
Grouping
Casts
Access Path Selection
Planning for Transaction Semantics
Interoperability
Orthogonality
Simple, Clean Interfaces
Programming Guidelines
In This Chapter
Programming Language Options
Options for Opaque Data Types
Options for Routines
Multilanguage DataBlade Module Issues
C Programming Guidelines
C++ Programming Guidelines
Java Programming Guidelines
DataBlade API Programming Tips
Creating DataBlade Objects Using BladeSmith
In This Chapter
Prerequisite Tasks
Task Overview
Windows
Creating a New Project
DataBlade Module Project Name
New Object Prefix
Server Compatibility
Description Locale
Project Version Numbers
Vendor Information
Importing Interfaces from Another DataBlade Module
Creating DataBlade Module Objects
Database Object Name Lengths
Creating Aggregates
Creating Casts
Defining Errors
Defining Interfaces
Creating Routines
Creating Data Types
Adding Functional Test Data
Test Data for Opaque Type Support Routines
Test Data for User-Defined Routines
Test Data for Cast Support Routines
Adding SQL Files
Importing SQL Text from a File
Object Dependencies
Adding Client Files
Generating Files
Setting Generated File Properties
Generating All Files
Generating SQL Scripts
Generating Source Files
Generating Test Files
Generating Installation Package Files
Regenerating Files
Opening the Project File in Visual C++
Programming DataBlade Module Routines in C
In This Chapter
Prerequisite Tasks
C Programming Task Overview
Source Files Generated by BladeSmith
C Header File
C Source Code Files
Microsoft Visual C++ Files
Warning File
Using Generated Code
Identifying the Source of Generated Code
Comments in Generated Code
MI_FPARAM Function Argument
Server Connection Handle
Tracing and Error Handling
Utility Functions Generated by BladeSmith
Editing Opaque Type Support Routines in opaque.c
Text Input and Output Functions
Binary Send and Receive Functions
Text File Import and Export Functions
Binary File Import and Export Functions
The Assign and Destroy Routines
LOhandles() Function
Comparison Functions
Mathematic Functions
Concat() Function
Hash() Function
Editing Statistics Routines in statistics.c
The Statistics Collection Function
The Statistics Print Function
The Statistics Minimum, Maximum, and Distribution Functions
Editing Routines in udr.c
Most User-Defined Routines
Cast Support Functions
Aggregate Functions
Selectivity Functions
Iterator Functions
Compiling DataBlade Module Code
Compiling with Tracing Support
Compiling on UNIX
Compiling on Windows
Creating ActiveX Value Objects
In This Chapter
Prerequisite Tasks
ActiveX Programming Task Overview
Source Files Generated by BladeSmith
Implementing ActiveX Value Objects
The Generated Code
Adding Project-Specific Logic to the Source Code
Files to Edit
ActiveX Properties
Accessing Properties Using Visual Basic
Compiling Client and Server Projects
Compiling a Windows Server Project
Compiling a Client Project
Support Methods Reference
Internal Object Methods
C++ Support Library
Using ActiveX Value Objects
In This Chapter
Installing and Using ActiveX Value Objects
Installing ActiveX Value Objects
Using ActiveX Value Objects
IRawObjectAccess Custom Interface
ITDkValue Custom Interface
ActiveX Custom Methods
Programming DataBlade Modules in Java
In This Chapter
Prerequisite Tasks
Java Programming Task Overview
Source Files Generated by BladeSmith
Java Source Code Files
SQLData Interface Method Support Code
Warning File
Using the Generated Code
Comments in Generated Code
Logging and Error Handling
BladeSmith Utility Classes
Editing Methods
Most User-Defined Methods
Iterators
Aggregates
Cast Support Methods
Compiling Java DataBlade Module Code
Debugging and Testing DataBlade Modules Written in Java
Preparing Your Environment
Debugging a DataBlade Module
Performing Functional Tests
Debugging and Testing DataBlade Modules on UNIX
In This Chapter
Prerequisite Tasks
Preparing Your Environment
Using the Shared Object File
Replacing a Shared Object File
Shared Object File Ownership and Permissions
Symbols in Shared Object Files
Installing and Registering DataBlade Modules
Installing a DataBlade Module
Registering a DataBlade Module
Debugging a DataBlade Module
Loading the DataBlade Module
Identifying the Server Process
Running the Solaris Debugger
Setting Breakpoints
Debugging a UNIX DataBlade Module with Windows
Performing Functional Tests
Functional Test Overview
Executing Functional Tests
Debugging and Testing DataBlade Modules on Windows
In This Chapter
Prerequisite Tasks
Preparing Your Environment
DBDK Visual C++ Add-In and IfxQuery
The Debug DataBlade Module Command
Other Add-In Commands
Debugging a DataBlade Module
Manually Loading the Add-In
Specifying Properties for a Project
Setting Breakpoints
Editing Unit Test Files
Performing Functional Tests on DataBlade Modules
Using BladePack
In This Chapter
Prerequisite Tasks
BladePack Overview
BladePack Projects
BladePack Online Help
BladePack Windows
Registry Keys for Windows
Packaging for UNIX Installations
Establishing Content
Managing Components
Customizing the Installation
Building the Installation
Creating Distribution Media
Packaging for InstallShield 3.1 Installations
Establishing Content
Managing Components
Customizing the Installation
Building the Installation
Creating Distribution Media
Packaging for InstallShield 5.1 Installations
Establishing Content
Managing Components
Customizing the Installation
Building the Installation
Creating Distribution Media
Appendix A. Source Files Generated for DataBlade Modules
C Source Code Files
ActiveX/C++ Source Code Files
Client Project Files
Client Files
Common Files
Server Project Files
Server Files
Java Source Code Files
SQL Script Files
Unit Test Files
Functional Test Files
Casting Function Tests
Opaque Data Type Support Routines Tests
User-Defined Routine Tests
Installation Packaging Files
Alphabetical List of Generated Files
Appendix B. Completing BladeSmith-Generated Code
Opaque Data Type Support Routines in C
User-Defined Routines in C
Opaque Data Type Support Routines in C++
User-Defined Routines in Java
Appendix C. Testing for an Sbspace
Appendix D. Accessibility
Dotted Decimal Syntax Diagrams
Glossary
Notices
Trademarks
Index
Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]