This chapter describes EAServer-specific modifications for developing PowerBuilder components.
For general instructions on developing PowerBuilder components, see Application Techniques.
EAServer hosts the PowerBuilder virtual machine natively. This means that EAServer can communicate directly with PowerBuilder nonvisual user objects, and vice versa. EAServer components developed in PowerBuilder can take full advantage of the ease of use and flexibility of PowerScript and the richness of PowerBuilder’s system objects.
The PowerBuilder IDE runs on Windows platforms, but you can deploy PowerBuilder components to EAServer on any platform for which a compatible PBVM is available, including most UNIX platforms. For more information, see the EAServer Release Bulletin for your platform.
PowerBuilder provides full-fledged support for EAServer component technologies, including:
Instance pooling, by configuring the Pooling setting in the wizards and optionally implementing lifecycle methods to control whether specific instances are pooled.
Server-managed transactions, by configuring the Transactions settings in the wizards and by calling the methods in the TransactionServer context object.
Database connection caching, when using DataStore objects or embedded SQL in your implementation code.
Result sets, by using the PowerScript DataStore, ResultSet, and ResultSets objects. You can use the DataStore object to return result sets that are presented in the client using DataWindow controls. You can also use the ResultSet and ResultSets objects to return tabular results to clients of other types.
Intercomponent calls, using the CreateInstance method in the TransactionServer object to obtain proxies for components.
Logging, using the ErrorLogging object to write error or status messages to the server log file.
Running independent of client interaction, using the EAServer thread manager or service component model.