Try OpenEdge Now
skip to main content
ABL Reference
Class, Interface, and Enumeration Reference : Progress.BPM.DataSlot class
 

Progress.BPM.DataSlot class

The DataSlot class is used to represent dataslot objects that reside on a Business Process server. A dataslot represents a specific piece of data used in a business process. Dataslots (Progress.BPM.DataSlot objects) are defined at the Progress.BPM.Process level and each workstep in a process may use some, all, or none of the dataslots for input, input-output, and output. A workstep can have one or more input or output dataslots attached; or it can have none.
The main purpose of a dataslot is to store data values. A dataslot object has additional properties that provide metadata about the dataslot, such as its name, data type, and access modifier (read-only, for example). A dataslot can also have an optional list of valid values; see the Choices property for more information.
You can pass data between worksteps by attaching the same dataslot to multiple worksteps—for example, you can attach a dataslot as an output from one workstep and an input to the next.
When ABL code sets the Value property of a DataSlot object, that value remains local to the ABL DataSlot object— it does not immediately affect the value of the corresponding dataslot object on the Business Process Server, nor does it affect the value of any other DataSlot instance in the ABL program that may represent the same server dataslot.
You can retrieve and set the dataslots associated with a task through the GetDataSlots( ) method on a Task object. Dataslots retrieved this way will be updated on the server when you call Complete( ) on the Task. You can also retrieve and update dataslots associated with the entire process through the Progress.BPM.Process class (using the GetDataSlots( ) method and the UpdateDataSlots( ) method, respectively).
Note: The fact that ABL dataslot objects are updated only when Complete( ) is called on a Task object has implications for use of the Reassign( ) and MakeAvailable( ) methods on that same object. If you call Reassign( ) or MakeAvailable( ), any changes you may have made to dataslots associated with the Task will never get sent to the server, since that action occurs only when you call Complete( ) on the Task. Additionally the local Task object is no longer current and should be deleted.

Serializable:

No

Constructors

This class contains a private constructor; you cannot instantiate it directly. You can retrieve the dataslots associated with a task through the GetDataSlots( ) method on a Process object.

Super Class

Progress.Lang.Object class

Interfaces

This class does not implement any interfaces at this time.

Public Properties

Public Methods

This class does not contain any methods at this time.

Public Events

This class does not implement any public events at this time.