IexecuteCollaboration()
Executes a
collaboration,
sending in a business object as the
triggering
access data in the access request.
Syntax
IBusinessObject IexecuteCollaboration
(string collabName, string portName, IBusinessObject busObj);
Parameters
- collabName
- The name of the collaboration to execute.
- portName
- The name of the external collaboration port to which the access
client is bound.
- busObj
- The generic business object that contains the triggering access
data for the collaboration.
Return Values
An IBusinessObject object that contains the business object that the collaboration returns.
Exceptions
- IExecuteCollaborationError
- Thrown when the collaboration is not active or the maps have
failed. This exception contains a status value set to one of the
following constants to indicate the details of the call when the
exception occurred. For more information on how to access this status,
see IExecuteCollaborationError.
Constant Name |
Description |
UNKNOWNSTATUS |
The status of the call to the IexecuteCollaboration() method is unknown. |
FAILEDTOREACHCOLLABORATION |
The access request did not reach the collaboration. |
FAILEDINEXECUTIONOFCOLLABORATION |
The access request failed while executing the
collaboration. |
FAILEDINRETURNTOCLIENT |
The collaboration executed but an error occurred
while delivering the response to the access client. |
Notes
The IexecuteCollaboration() method requests execution of the collabName collaboration. To initiate the collaboration, Server
Access Interface sends the triggering access data in the busObj business object to the portName port of the collabName collaboration. This port must be configured as external
so that is supports call-triggered flow.
Note:
The collaboration, port, and business object must
be configured and mapped for call-triggered flow and manipulation.
Example
String portName = "From";
IBusinessObject srcBO =
accessSession.IcreateBusinessObject ("payableNetChange");
// set srcBO attributes, verb, or both
...
// Execute the collaboration
IBusinessObject resultantBO = null;
resultantBO = accessSession.IexecuteCollaboration(
"getCustAcctPayable",
portName,
srcBO);
