Business Function APIs for Calling a Business Service
These APIs are available for a business function to call a business service method:
jdeCallBusinessService
jdeCallBusinessServiceNoResponse
jdeFreeBSSVPayloadReturn
jdeGetBusinessServiceErrorText
Two APIs are available for calling a business service method from a business function:
jdeCallBusinessService
This API makes a synchronous call to the business services server passing in an XML document that represents the value object for the called business service method. The call waits until the business service method finishes before processing.
jdeCallBusinessServiceNoResponse
This API makes an asynchronous call to the business services server passing in an XML document that represents the value object for the called business service method. The API returns immediately after sending the message without waiting for a response.
For both of these APIs, the caller must allocate the bssvPayloadInput structure. In addition, the caller must free the bssvPayloadReturn structure with the provided API.
This example code provides a typical C business function call to a business service method:
* jdeCallBusinessService (lpBhvrCom, * lpVoid, * _J("oracle.e1.sbf.JXXXXX") * _J("bssv_method_name_to_call") * TRUE, * bssvPayload, * &bssvPayloadReturn); * * /* caller must free the space allocated for the return payload when * finished with it */ * jdeFreeBSSVPayloadReturn (&bssvPayloadReturn); *
Both APIs take the same set of parameters, which is shown in this example code:
* lpBhvrCom - BSFN structure pointer. * lpVoidInfo - holds error info returned from BSFN. * bssvName - fully qualified name of business service to be called * bssvMethod - method within business service to be called * autocommitTransaction - type of transaction the business service should use * on the business services server. * True if auto commit - False for manual commit. * bssvPayloadInput - string representation of an XML document that represents * the value object for the business service. Populated * with input values to pass to the business service. * bssvPayloadReturn - string representation of XML document representing the * value object returned from the business service call * populated with both return values and original input * values. The caller must free the space allocated for * the return payload by calling the * jdeFreeBSSVPayloadReturn API.
Both APIs have the same return values, which are shown in this example code:
* CallBSSVNoError 100L * CallBSSVServiceDoesNotExist 101L * CallBSSVMethodDoesNotExist 102L * CallBSSVInvalidMethodSignature 103L * CallBSSVNoDefaultConstructor 104L * CallBSSVErrorUnMarshal 105L * CallBSSVErrorMarshal 106L * CallBSSVConnectionException 107L * CallBSSVInvalidPacketNum 108L * CallBSSVInvaldUserName 109L * CallBSSVInvalidEnv 110L * CallBSSVInvalidRole 111L * CallBSSVInvalidToken 112L * CallBSSVAuthenticationFailure 113L * CallBSSVNoErrorWithMessages 114L * CallBSSVInvalidParamError 201L * CallBSSVSystemConfigurationError 202L * CallBSSVSystemNetworkFailedError 203L * CallBSSVSystemInternalServerError 204L
JD Edwards EnterpriseOne Tools API Reference Guide on the My Oracle Support Web site.