Step by Step Process of Integrating SAP Solution Manager to
External Systems
Scenario:
SAP Solution Manager is an Incident Life Cycle tool for SAP Systems. There are
many such tools in market for different ERP which does the same job. Organizations
may have more Incident Lifecycle tool and managing them centrally helps
organization to view status of incident in a single dashboard.
Integrating two different ERP systems is achieved only with HTTP Calls and without
middleware. This blog will cover the integration between SOLMAN and SNOW for
the Incidents, Problem management and Service requests to be communicated
between these two systems which are connected through HTTP/HTTPS SOAP 1.1
call.
Incidents created/updated in Solution Manager should be integrated to Service Now
and Vice Versa.
High Level Architecture
Detailed Architecture
Mid Server is Java Application built by Service Now to access SAP System outside
its Network. Since Service Now is in Cloud, it can’t access SAP without this server.
Mid Server is set of libraries that must be installed in Firewall of SAP Network
Settings.
Steps to Implement Outbound Process (Data to be transferred from Solution
Manager to Service Now)
Proxy CO_PCICT_SERVICE_DESK_API is the Default Service available in SAP
Solution Manager System. SAP Solution Manager 7.2 doesn’t have ABAP Classes
which can send Data to External System by Default. Enhancement to be done to
trigger the data Flow.
Service Consumer proxy for external WSDL can’t handle response as it doesn’t have
ABAP Class. Response must be handled separately via Service Provider Proxy.
Step to Create Service Consumer Proxy for Outbound Request:
1. Get WSDL from Service Now Team
2. Create Service Consumer from the WSDL
Service Consumer
[Link] and Fields inside the WSDL structure can be viewed in External View.
Service Consumer Methods
4. SOAMANGER must be configured. Service Now URL can be maintained in
Transport Settings
SOAMANAGER
Steps to Create Enhancement for Outbound
1. Create an Enhancement Implementation for Standard BAdI ORDER_SAVE. It
gets triggered during Save event in Incident management system
BAdI
BAdI Implementation
Now Implementation Class and Proxy is Created. Once the fetching logic is
processed, Proxy class method can be called which in turn sends the data to Service
Now System.
Useful Tips:
1. FM CRM_ORDER_READ will give incident details by simply passing Run
time GUID
Function Module
[Link] Texts can be fetched from GET_TEXTS method of
CL_AGS_CRM_1O_API class
3. Partner Related information like Reported By, Sold-to-party, Assignment
Group, Assigned To can be processed by passing Partner Number from Partner Tab
to BUT000 Table and Partner Functions for Each partners determines the Role.
[Link] Text Related information can be process by identifying Text Id of Each
line in Text Table
[Link] Information can be processed by passing Aspect GUID and
Category GUID to class CL_CRM_ML_CATEGORY_UTIL and method
GET_SELECTED_CATEGORY_TREE
Steps to Create Service Provider Proxy for Outbound Response:
WSDL generated from this Proxy can be utilized to send Response for request sent
from Service Provider Proxy created above.
Create FM with import parameters in such a way that it should populate values for
ICT_INCIDENTGUID and ICT_INCIDENTATTR tables for Solman Service Now
Incident GUID Mapping
1. Create Remote Enabled Function module and convert the FM to Web Service
(Create a Web Service from Function Module, go to Utilities -> More Utilities -
> Create Web Service -> From Function Module)
Web Service from Function Module
[Link] Provider Proxy is generated along with Webservice and Implementing
Class.
Service Provider Proxy
[Link] must be configured. WSDL can be generated from Open
Binding WSDL Generation.
SOAMANAGER For Service Provider
Steps to Activate Service Consumer Proxy for Inbound Calls
Step 1: Go to SPRO and navigate to Web Service Based Configuration under
External Integration
SPRO
SPRO
Step 2: Click on button against Configure Service Consumer. Get
Step 3: Get Service Consumer name (CO_PCICT_SERVICE_DESK_API) from
Performance Activity and enter it in SOAMANGER window which was opened.
Step 4: Create a logical port for the proxy and make it default.
Step 5: Got to SPROXY and WSDL for the consumer Proxy can be imported from
here .
WSDL For Service Provider
Step 6: Data can be passed to any method of this WSDL structure and based on
requirement and Incidents can be processed (Create/Update/Delete/Read) in the
database .
Service Provider Method
Test Output: Incident Created at Solman using ITSM Tool.
Incident Creation in Solution Manager
Incident automatically triggered to Service Now System with the help of
enhancement.
Incident Reflecting in Service Now
Updated that incident in Service Now System (Updated Description Field)
Update the incident in Service Now
Changes/update happened in Service Now System is reflecting in Solman ITSM
system