SAP Cloud Integration 1.0.0.4
The SAP Cloud Integration Connector lets you connect to SAP CPI (Cloud Platform Integration) instances and do the following things:
-
Deploy iFlows.
-
Undeploy iFlows.
-
Monitor message logs generated by iFlows when they run.
Note: You can run only iFlows that have been deployed.
A few examples of how iFlows can be designed to run in SAP CPI:
-
If you start an iFlow with an HTTP sender, SAP generates a REST endpoint you can call from Postman to run the iFlow. You do not need this Connector to run such iFlows; you can use the Connector Wizard or an HTTP/REST Process Definition to do so.
-
If you start an iFlow with a Timer, SAP will run the iFlow based on the timer configuration, and it will start running as soon as it is deployed.
The only way this Connector can be used to run iFlows is with the Redwood_SAP_CloudIntegrationDeploy Process Definition. If the iFlow is configured to run automatically on deployment, you can use this Process Definition to deploy and run it. You can also configure it to directly monitor the iFlow until completion.
Prerequisites
- Version 9.2.9 or higher.
- Connection component 1.0.0.3 or later. Note that the Connections component will be installed or updated automatically if necessary when you install this extension.
- Privileges Required for SAP Cloud Integration.
- For authentication, one of the following:
- Basic authentication credentials (username and password).
- A client certificate credential (see Step-by-step Guide to Set Up Inbound Client Certificate Authentication, Cloud Foundry Environment). To use this option, you will need the following:
- A Service Instance for the Process Integration Runtime Service in the BTP instance for the API service plan.
- A service key of type Certificate created for the API service plan.
Note: The "Create Service Instance and Service Key in SAP BTP Cockpit" section of the above blog post mentioned chooses the integration-flow plan. To connect with RunMyJobs, use the api service plan instead.
- SAP OAuth 2.0 client credentials (see OAuth Setup for Cloud Integration in Cloud Foundry Environment). To use this option, you will need the following:
- A Service Instance for the Process Integration Runtime Service in the BTP instance for the API service plan.
- A service key of type Client ID/Secret created for the API service plan. About the Connector Wizard
Contents of the Component
Object Type | Name | Description |
---|---|---|
Application | GLOBAL.Redwood.GLOBAL.SAP.REDWOOD.CloudIntegration | Integration connector with SAP Cloud Integration (1.0.0.4). |
Constraint Definition | REDWOOD.Redwood_JobAndChainDefinitionsConstraint | Constraint for fields that support both Job Definitions and Chain Definitions. |
Constraint Definition | REDWOOD.Redwood_SAPCloudIntegrationConnectionConstraint | Constraint for SAP Cloud Integration Connection fields. |
Extension Point | REDWOOD.Redwood_SAPCloudIntegration | Integration connector with SAP Cloud Integration. |
Process Definition | REDWOOD.Redwood_SAP_CloudIntegrationDeploy | Deploy an iFlow in Cloud Integration. |
Process Definition | REDWOOD.Redwood_SAP_CloudIntegrationFlowJob | A default definition to be submitted by the Cloud Integration Monitor when an iFlow completes. |
Process Definition | REDWOOD.Redwood_SAP_CloudIntegrationMonitor | Monitors iFlows in Cloud Integration and generates jobs with their final statuses. |
Process Definition | REDWOOD.Redwood_SAP_CloudIntegrationUndeploy | Undeploy an iFlow in Cloud Integration. |
Process Definition Type | REDWOOD.Redwood_SAPIntegrationSuite | Definition type to run Integration Suite definitions. |
Library | REDWOOD.Redwood_SAPCloudIntegration | Library for SAP Cloud Integration connector. |
Redwood_SAP_CloudIntegrationDeploy
Deploy an iFlow in Cloud Integration.
Tab | Name | Description | Documentation | Data Type | Direction | Default Expression | Values |
---|---|---|---|---|---|---|---|
Parameters | connection
|
SAP Cloud Integration Connection | The SAP Cloud Integration Connection object that contains the authentication information for the desired Cloud Integration instance. | String | In |
|
|
Parameters | iflowId
|
iFlow ID | ID of the iFlow to deploy. | String | In |
|
|
Parameters | version
|
Version | Version of the iFlow to deploy. | String | In | active
|
|
Monitoring | monitorRun
|
Monitor First Run | Wait for the initial run of the iFlow to complete before completing this job. | String | In | N
|
Y , N |
Monitoring | successStates
|
Success States | Final state(s) that should complete this job successfully. This is only applicable if Monitor First Run is set to 'Y'. | String | In | =Array.toStringArray('COMPLETED')
|
FAILED , ERROR , ESCALATED , COMPLETED , ABANDONED , CANCELLED |
Monitoring | failureStates
|
Failure States | Final state(s) that should fail this job. This is only applicable if Monitor First Run is set to 'Y'. | String | In | =Array.toStringArray('FAILED','ERROR')
|
FAILED , ERROR , ESCALATED , COMPLETED , ABANDONED , CANCELLED |
Monitoring | monitorTimeout
|
Run Start Timeout | How long to wait for the first run of the iFlow to start (in minutes, from the start of the deployment process). | Number | In | 5
|
|
Redwood_SAP_CloudIntegrationFlowJob
A default definition to be submitted by the Redwood_SAP_CloudIntegrationMonitor Process Definition when an iFlow message log with a matching Monitor State completes.
This is a placeholder process definition that is used by Redwood_SAP_CloudIntegrationMonitor to track the progress of iFlows it intercepts. If the Cloud Integration Monitor detects a running iFlow that it wants to track, it submits an instance of this Process Definition to represent that iFlow and its status.
Note: Submitting this Process Definition manually will not do anything, because it is used only by Redwood_SAP_CloudIntegrationMonitor.
Tab | Name | Description | Documentation | Data Type | Direction |
---|---|---|---|---|---|
Parameters | CONNECTION
|
SAP Cloud Integration Connection | The SAP Cloud Integration Connection object that contains the authentication information for the desired Cloud Integration instance. | String | In |
Parameters | MESSAGEID
|
Message ID | The ID of the Log Processing Message that reported the final status of the iFlow. | String | In |
Parameters | FLOWNAME
|
Flow Name | The name of the iFlow. | String | In |
Parameters | STATUS
|
iFlow Status | The final status of the iFlow run. | String | In |
Parameters | MONITORJOBID
|
Monitor Job ID | Job ID of the Redwood_SAP_CloudIntegrationMonitor job that submitted this definition. | Number | In |
Redwood_SAP_CloudIntegrationMonitor
This Process Definition lets you monitor the SAP CPI environment for specific Monitored States (message log types), such as Failed, Error, Completed, and Escalated. By default, when this Process Definition detects a message log that matches the filters it is monitoring for, the Process Definition submits the placeholder definition Redwood_SAP_CloudIntegrationFlowJob with the information from that message log set as parameters on the process.
Tab | Name | Description | Documentation | Data Type | Direction | Default Expression | Values |
---|---|---|---|---|---|---|---|
Parameters | CONNECTION
|
SAP Cloud Integration Connection | The SAP Cloud Integration Connection object that contains the authentication information for the desired Cloud Integration instance. | String | In |
|
|
Parameters | STATES
|
Monitored States | The state(s) to monitor for. | String | In |
|
FAILED , ERROR , COMPLETED , RETRY , ESCALATED , ABANDONED |
Parameters | POLLING_INTERVAL
|
Monitor Polling Interval | Polling interval in minutes. | Number | In | 5
|
|
Parameters | FLOWNAME
|
Flow Name | Monitor for flows with a specific name. If this parameter is left blank, any flow that completes in a state that matches the State filter will trigger the selected process. | String | In |
|
|
Parameters | DEFINITION_KEY
|
Definition to Run |
The business key of an existing process or chain definition to submit when the monitor finds an iFlow that matches the specified filters. If this is left blank, the Redwood_SAP_CloudIntegrationFlowJob definition will be submitted. You can choose your own Process Definition rather than Redwood_SAP_CloudIntegrationFlowJob. The only requirement is that the Process Definition you choose has the message log parameters that Redwood_SAP_CloudIntegrationMonitor normally sets on Redwood_SAP_CloudIntegrationFlowJob. |
String | In |
|
|
Redwood_SAP_CloudIntegrationUndeploy
Undeploy an iFlow in Cloud Integration.
Tab | Name | Description | Documentation | Data Type | Direction |
---|---|---|---|---|---|
Parameters | connection
|
SAP Cloud Integration Connection | The SAP Cloud Integration Connection object that contains the authentication information for the desired Cloud Integration instance. | String | In |
Parameters | iflowId
|
iFlow ID | ID of the iFlow to undeploy. | String | In |
Setup
- Locate the SAP Cloud Integration component in the Catalog and install it.
- Navigate to Custom > Connections.
- Click .
-
Click the SAP Cloud Integration connection type.
-
Click Next or Basic Properties, then create a Queue and Process Server for the connector. All required settings will be set up automatically.
- Click Next or Security and click to specify which roles can access the connection information. (For information about the privilege ranks required for creating and modifying Cloud Integration connections, see Creating and Modifying Cloud Integration Connections.)
- Click Next or SAP Cloud Integration Connection Properties. You have three options for authenticating with SAP Cloud Integration.
Basic. Enter the URL for your SAP Cloud Integration instance, your Username, and your Password.
Client Certificate. Enter the URL for your SAP instance. Use the Test Connection button to make sure the connection is working.
Note: If you choose this option, you must create an X509_ClientCertificate credential. If your scheduler system does not already trust the Certificate Authority (CA) that signed the client certificate, you must also create an X509_TrustedCertificate credential for the Root CA.
Oauth 2.0. Enter the URL for your SAP Cloud Integration Instance, your Access Token URL, the Client ID, and the Client Secret. Use the Test Connection button to make sure the connection is working.
- Click Save & Close.
- Navigate to Navigate to Environment > Process Server, locate your SAP Cloud Integration Process Server, start it, and make sure it reaches status Running.
Using Redwood_SAP_CloudIntegrationMonitor
This Process Definition provides a way to monitor iFlows running in Cloud Integration Suite. You can configure this Process Definition to execute a specific Process Definition or Chain Definition whenever an iFlow with a name that matches the provided Flow Name reaches one of the states in the Monitored States array. If you do not specify a Flow Name, the indicated Definition to Run will execute whenever ANY iFlow reaches one of the statuses in the Monitored States array.
This process definition must be manually submitted. After its submission, it will run indefinitely, starting a new monitor instance every 24 hours.
You can run more than one of these Process Definitions at a time, provided they have different parameters (i.e., a different Connection, a different set of Monitored States, and/or a different Flow Name).
If you specify a Definition to Run, the following parameters are automatically set on the Definition to Run if they exist there.
-
FLOWNAME
: The name of the iFlow. -
MESSAGEID
: The unique ID of the message that was detected in SAP. -
STATUS
: The status of the running iFlow, as reported by this message. -
MONITORJOBID
: The process ID of the Redwood_SAP_CloudIntegrationMonitor process that triggered the execution.
If you do NOT specify a Definition to Run, RunMyJobs will trigger the Redwood_SAP_CloudIntegrationFlowJob Process Definition.
Using Redwood_SAP_CloudIntegrationFlowJob
This Process Definition is submitted automatically by Redwood_SAP_CloudIntegrationMonitor if it detects a match and does not supply a Definition to Run. It attempts to fetch error information for the matching iFlow and write it to the process log.
If the iFlow status is FAILED
or ERROR
or there is an error log present on the message that was captured, this process will fail. Otherwise, it will succeed.
Deploying an iFlow
To deploy an iFlow:
-
In the SAP > CloudIntegration Application, submit Redwood_SAP_CloudIntegrationDeploy.
-
Choose the SAP Cloud Integration Connection.
-
Enter the iFlow ID of the target iFlow.
-
Choose an option from the Version dropdown list.
-
On the Monitoring tab, configure the options using this table.
-
Click Submit.
Undeploying an iFlow
To undeploy an iFlow:
-
In the SAP > CloudIntegration Application, submit Redwood_SAP_CloudIntegrationUndeploy.
-
Choose the SAP Cloud Integration Connection.
-
Enter the iFlow ID of the target iFlow.
-
Click Submit.