Preface
About this documentation
User types
Information on documentation
Conventions used in this manual
Product support contact information
OpenEdge Business Process Server overview
Business Process Server components
How Business Process Server works
Business Process Server user types
Introducing Business Process Server application development
Outlining Business Process Server application requirements
Developing an application
Application development stages
Constraints when naming applications
Using a sample application to demonstrate application development
Defining the process flow of an application
Assign_A_Task_V1 worksteps
Using dataslots to define the information flow
About predefined dataslots
About user-defined dataslots
Using dataslots in the process template
About LIST dataslots
Creating document dataslots
Document dataslot scenarios
Using performers in activity worksteps
Selecting workstep interfaces
Using the BPM Workflow Web interface generator
JSPs generated for a default presentation
Using BPM Workflow JSP tags
Using the getLabel tag
Determining duration, due date, and overdue periods
Setting overdue actions in a workstep
Action details for overdue and last overdue tasks
Using JavaScript in a workstep
Integrating JavaScript
Reading dataslot values
Using new datatypes in JavaScript
Updating dataslot values
Sending e-mail using JavaScript
Setting e-mail to a different language with JavaScript
Invoking Java methods in JavaScript
Invoking an adapter for communicating to BP Server API
Using 'blserver' in JavaScripts
Reading process information
Including a driver function
Understanding exceptions
Managing collections of commonly used JavaScript code
Improving JavaScript performance
Debugging the JavaScript code using writeLog
Publishing the application
Installing the application
Running the application
Removing and reinstalling an application
Suspending/Resuming installed applications
Resuming the suspended workstep
Using an LIST dataslot to invoke multiple subprocesses
Reviewing the publisher
Defining the main process worksteps
Defining the main process dataslots
User-Defined dataslots in the publisher application
Defining an LIST dataslot
Assigning an LIST dataslot as the subprocess performer
Adding a Subprocess workstep to the process template diagram
Running the application in Business Process Portal
Using custom dataslots
Reserved dataslot names
Defining custom dataslots with complex objects
Defining custom dataslots
Initializing the MyTable custom Object dataslot
Initializing custom dataslots
Custom dataslot sample code
Using the getPresentation function
Using getPresentation() with custom dataslots
Using template-based interface generator for custom dataslots
Using form validation
Developing Business Process Server adapters
About BP Server adapters
Synchronous adapters
Asynchronous adapters
Developing adapters
Defining set/get methods (setters and getters)
Adapter interface
Using setAllInputDataslots and getAllOutputDataslots
Sample code
Handling adapter exceptions
Creating adapters that call a C function through JNI
Data mapping
Example of mapping an object dataslot
Mapping existing methods from a predefined adapter
Using the setProcessContextData method
Dynamic reloading of adapters
Sample adapter code
Generating the sample adapter
Developing BPM Workflow adapters
Using system adapters
Properties required for system adapters
Using the PAKCreatePI adapter
Using the PAKUpdateDS adapter
Using the PAKReassignWI adapter
Developing custom adapters
Sample adapter code for BPM Workflow-style adapters
Sample adapter code for BP Server-style adapters
Adding custom adapters to the process template
Compiling adapters
Deploying adapters
Debugging adapters
Using Callback Adapter
Developing the Callback Adapter
Understanding the XML structure
Developing the Callback Adapter Java class
Implementing adapter methods
Using constructors
Invoking adapter methods
Compiling and testing the adapter
Enabling the Business Process Server components to invoke the adapter
Configuring for BP Server
Configuring for BPM Events
Executing the adapter
Troubleshooting the Callback Adapter
Developing applications with rollback support
Attributes of the compensatory enabled process
Creating rollback points
Selecting dataslots for replacement
Writing compensatory JavaScript code (optional)
Activating rollback points (optional)
Rollback restrictions
Rollback process example
Writing JavaScript code for rollback worksteps
Sample Javascript code
Using the Rule Wizard framework
Composing macros and editors
Controlling the layout
Specifying alternatives
Collecting macros
Using editors in separate dialogs
Code generation
Standard macro types
Properties common to all macros
Macro type: varname
Macro type: boolean
Macro type: date
Macro type: date-expression
Macro type: combo-box
Macro type: list-box
Macro type: enumeration
Macro type: scale
Macro type: dummy
Macro type: label
Macro type: description
Macro type: dynamic-description
Macro type: composite
Macro type: process
Macro type: workstep
Macro type: dataslot
Macro type: completeworkstep-action
Macro type: sendmail-action
Macro type: reassign-action
Macro type: changepriority-action
Macro type: module
How to write additional macros and editors
Sample macro implementation
Sample editor implementation
Skipping a macro
Understanding the Business Process Server repository
Understanding the BPM Process Store database
Business Process Server event management
Event and CommonEvent class
Schema for event tables
BizEvent table
BPM Process StoreEventCounter table
BPM EventsEventCounter table
Event database keys
ProcessEvents' keys and event values
ProcessInstance's events keys and event values
Workstep Events' keys and event values
Work Item Events' keys and event values
Dataslot Events' keys and event values
Schema for process tables
Process template tables
Dataslot tables for a process template
Process instance tables
Meta data information tables
Workstep tables
Work item tables
Dashboard database tables
STAT_APP_AVG_DURATION table
STAT_APP_PRIORITY table
STAT_APP_DUE_INFO table
STAT_APP_STATUS_HISTORY table
STAT_WI_DUE_INFO table
Developing management applications to control infopads
Creating a custom HTML application
Creating a Java applet
Using the setInfopadRequest service
Using the requestInfopadValues service
Using the updateInfopad service
Parameter values for applet HTML file definitions
Configuring BPM Events
Developing Balanced Scorecard applications
Understanding the Balanced Scorecard
Focus on four perspectives
Key performance indicators (KPIs)
Estimating relative importance of KPIs
Performance data collection and monitoring
Balanced scorecard rules
Balanced scorecard infopads
Defining rule file syntax for balanced scorecard infopads
BalancedScorecard infopad rule file syntax
BalancedScorecardimp infopad rule file syntax
Finance, customer, innovation/growth, and internal infopads rule file syntax
Rule file syntax for modifying each scorecard table
ACL manager
Activity workstep
Adapter
Administration
Application
Balanced scorecard
BAM
BPM Events
BPM Webflow
BPEL
BPMN
BP Server
Business calendar
Business flow
Business logic
Business object
Business process
Business Process Server application
Business Process Server Web services
Business Process Portal
Business process management
Business Process Modeler
Business rule
Control flow
Dashboard
Dataslot
Expression editor
Group
Heatmap
Home
Infopad
Instance
KPI
Managed Adapter
Management
Migration
Performer
Presentation flow
Process engine
Process refresh
Process template
Progress Developer Studio for OpenEdge
Role
Rollback
Rule wizard
Swim lanes
Task
User
Workflow
Preface
Workflow