Contents:
About This Document
1. Building a Panther Application
Application Development Steps
Part I. Preparing for Development
2. Understanding the Panther Distribution
3. Defining the Project Requirements
4. Defining Application Architecture
Components of a Panther Application
Building Two-Tier Applications
Building Distributed Applications
5. Preparing the Application Server
JetNet Application Server
Oracle Tuxedo Application Server
WebSphere Application Server
6. Preparing the Development Clients
Copy Your Panther Distribution
Configure Your Panther Application
7. Initializing the Database
Initializing One or More Engines
Initializing the Database via the Executable
Dynamic Database Initialization
8. Connecting to Databases
Connecting to the Database in the Screen Editor
Programmatically Connecting to the Database
Checking the Status of Connections
Verifying Database Access
9. Connecting to the Middleware
Using JetNet and Oracle Tuxedo
Using MTS
Using WebSphere Application Server
10. Accessing Libraries
Configuring Your Library Access
Managing Library Access
Part III. Creating Application Building Blocks
11. Creating and Using a Repository
About Repositories and Inheritance
Using the Repository
Using Inheritance
12. Creating Service Components
Service Components for JetNet and Oracle Tuxedo
Service Components for COM Components and EJBs
13. Developing Client Screens
Creating Screens
Opening Screens
Closing Screens
Setting Screen Properties
14. Identifying Screen Widgets
Widget Types
Widget Identifiers
Arrays
Groups
ActiveX Controls
15. Including Menus and Toolbars
Loading Menus into Memory
Installing Menus
Displaying Toolbars
Changing Menus at Runtime
Uninstalling and Unloading Menus
Invoking Popup Menus
Calling Menu Functions From JPL
Outputting Menu Definitions to ASCII
16. Building Reports
Part IV. Preparing the Programming Interface
17. Understanding Application Events
Screen and Widget Events
Programming User-initiated Events
Transaction Manager Events
Database Interface Events
Web Application Events
Middleware Events
18. Programming Control Strings
Associating Control Strings with the Application
Displaying Screens
Executing Functions
Invoking Operating System Commands
19. Programming in JPL
JPL Modules and Procedures
Module Types
Writing JPL in the Editor
Calls
Variables
Constants
Setting Properties Using the Property API
Data Types, Operators, and Expressions
JPL Commands
Optimization
20. Writing C Functions
Types of C Functions
Writing C Functions
Calling C Functions
21. Java Event Handlers and Objects
Java Overview
Using Java in Panther
Event Handler Interfaces
Object Interfaces
Implementing Service Component Methods in Java
Working with Java Objects
Java Samples
22. Using XML Data
Defining XML Properties
Processing XML Properties
Generating XML
Importing XML
Sample XML File
23. Using Widgets
Changing Widget Display
Controlling Input
Traversing Widgets
Getting Widget Data
Changing Widget Data
Making Widget Selections
Accessing Tab Controls
Accessing ActiveX Controls
Checking Validation
24. Setting the Screen Sequence
Forms and Windows
25. Moving Data Between Screens
Sending and Receiving Data
Using Global Variables
Accessing Values on Other Screens
Using Local Data Blocks
26. Displaying Messages
Window Versus Status Line Display
Acknowledging Messages
Disabling Messages
Setting Display Defaults
Message Functions
Broadcasting Messages
Status Line Usage
Error Hook Function
Part V. Accessing the Database
27. Performing Database Operations
How Database Operations are Processed
About the Transaction Manager
About the SQL Generator
About the Database Interface
28. Writing SQL Statements
Database Development Process
Database Interface Commands
Using Database Cursors
Database Transaction
29. Reading Information from the Database
Fetching Data Using SELECT Statements
Targets for a SELECT Statement
Fetching Multiple Rows
Format of Select Results
30. Writing Information to the Database
Colon Preprocessing
Using Parameters in a Cursor Declaration
31. Building a Transaction Manager Screen
Development Process for Transaction Manger
Copying Repository Objects
Specifying the Traversal Order
Specifying Widget Properties
Specifying Transaction Manager Commands
Adding a Transaction Event Function
32. Writing Transaction Event Functions
The Nature of TM Event Functions
33. Using Automated SQL Generation
Guidelines for Automated SQL Generation
Generating SELECT Statements
Generating INSERT Statements
Generating UPDATE Statements
Generating DELETE Statements
Implementing Optimistic Locking
Viewing the SQL Statements
Validating Input Data against the Database
34. Specifying Transaction Manager Commands
Transaction Manger Commands
Setting the Transaction Mode
35. Generating Transaction Manager Events
Generating Transaction Manager Events
Traversing the Table Views
Generating Events in the Transaction Model
Using the Transaction Model with JetNet/Oracle Tuxedo
36. Runtime Transaction Manager Processing
Running Transaction Manager
Displaying Data
Updating the Database
Transaction Modes
Accessing Transaction Information
Processing Errors in the Transaction Manager
37. Processing Application Errors
Default Error Handlers
Variables for Logging Error and Status Information
Database Error Event Functions
Custom Error Handlers
Part VI. Testing Your Application
38. Testing Application Components
Test Mode Menu Bar
Testing Application Components
39. Using the Debugger
Debugging Services and Service Components
How the Debugger Works
Configuring the Debugger
Debugger Menu Bar
Viewing JPL
Viewing Application Screen Information
Stepping through Program Execution
Setting Breakpoints
Monitoring Variables and JPL Expressions
40. Identifying Users
Two-tier Applications
JetNet Applications
MTS Applications
41. Optimizing Applications
Part VII. Deploying the Application
42. Building Application Executables
Steps for Creating an Executable
Customizing Source Code for an Application
43. Preparing Applications for Release
Basic Deployment Steps
Required Files
Optional Files
Specifying Files and Directories
Customizing the Distribution
Part VIII. Advanced Development Topics
44. Installed Event Functions
Installed Function Types
Standard versus Non-standard Arguments
Installation
Prototyped Functions
Screen Functions
Field Functions
Grid Functions
Tab Control Functions
Group Functions
Client Authentication Functions
Client Post-Connection Functions
Help Function
Timeout Functions
Timer Functions
Key Change Function
Error Function
Insert Toggle Function
Check Digit Function
Initialization and Reset Functions
Record and Playback Functions
Control Functions
Status Line Function
Video Processing Function
Database Driver Hook Functions
Transaction Manager Event Functions
Sample Functions
45. Customizing the User Interface
Using Message Files
Configuration Map File
Translating Applications
46. Processing the Mouse Interface
Trapping Mouse Events
Getting Mouse Data
Changing the Mouse Pointer State
47. Dynamic Data Exchange
Panther as a DDE Server
Panther as a DDE Client
Execute Transactions
Poke Transactions
48. Writing Portable Applications
Panther Header Definitions
Terminal Dependencies
Language Dependencies
49. Sending Mail in Panther
Defining Global Mail Properties
Creating and Sending Email
A. Development Utilities
B. VideoBiz
Starting VideoBiz
VideoBiz Components
The User's Guide to VideoBiz
C. Panther Java Calculator
Repository Contents
Calculator Screen
Java Classes
D. Deployment Checklist for Two-tier Applications
Directory Structure for Two-tier Applications
Checklist for Deployment
Index