logo

Are you need IT Support Engineer? Free Consultant

Checklist Integration Between SAP FSA and SAP S/4HANA Public Cloud

  • By Sanjay
  • 30/07/2026
  • 19 Views



Contents

  1. What Problem Does This Solve?
  2. The Two Directions — Plain Language
  3. Key Configuration: Mapping Template Elements to Service Order Fields
  4. Multi-Company Replication
  5. What Gets Stored in S/4HANA
  6. The Element Type Model
  7. The CDS View Layer
  8. OData APIs and Processing Classes
  9. Extensibility for Customers
  10. Monitoring
  11. Authorization
  12. Summary — What This Means for the Business

 

1. What Problem Does This Solve?

Field service technicians in SAP Field Service and Asset Management (SAP FSA) use checklists every day — to follow safety protocols, document inspections, record equipment readings, and confirm completed work steps. Until recently, all that structured data stayed inside FSA. It was never visible to back-office teams in SAP S/4HANA Public Cloud, and back-office teams had no way to push context-rich, prefilled checklists out to the field before a technician even arrived on site.

The Checklist Integration feature closes both gaps:

Direction

What it enables

FSA → S/4HANA

Checklist templates and completed instances created in FSA are replicated into S/4HANA Public Cloud, where the data can be used for analytics and KPI reporting.

S/4HANA → FSA

When a service order line item is released in S/4HANA, a prefilled checklist instance is automatically created and pushed to FSA — attached to the right FSA activity.

 

2. The Two Directions — Plain Language

Direction 1 — Completed Work Coming Back (FSA → S/4HANA)

A technician finishes a job and closes the checklist in FSA. At that point:

  1. FSA fires an event — checklistinstance.closed or checklistinstance.deleted for instances; checklisttemplate.activated / checklisttemplate.deactivated for templates.
  2. The FSA Connector packages the data and routes it through SAP Cloud Integration via dedicated iFlows.
  3. The iFlow calls an OData V4 API endpoint on S/4HANA via SAP Cloud Connector.
  4. S/4HANA decodes the Base-64 encoded ZIP payload, parses the XML inside, and stores the structured data in its own database tables.

FSA FSA Connector SAP Cloud Integration (iFlow) SAP Cloud Connector S/4HANA OData V4 API Database tables

The checklist content arrives as a ZIP archive. For a template, the archive contains:

  • template.xml — the form structure with all chapters and element definitions
  • translations-<lang>.xml — language-specific labels, one file per language
  • container_metadata.xml — metadata

For a completed instance, the archive contains the filled-in values in values-1-<language>.xml. The only link between instance values and template elements is the key attribute shared between the two XML files.

Direction 2 — Prefilled Checklists Going Out (S/4HANA → FSA)

A planner releases a service order line item in S/4HANA. The Data Exchange Framework then triggers a process that:

1. Eligibility check

The system verifies the line item is released, has an FSA activity associated, and does not already have a checklist instance. Items that fail any check are silently skipped.

2. Template determination

A BAdI (CRMS4_FSM_CHKLST_TMP_DETERMIN) is called with the full service header and all line items. The customer's implementation returns which checklist template to use for each service item. This step is mandatory — no checklist instance is created without a template ID.

3. Standard prefill from mapping table

The system reads the configuration table CRMC_FSM_SOTEL_M to determine which service order fields should fill which checklist elements. This is the no-code prefill path — covers the majority of requirements through simple table configuration.

4. Custom prefill logic (optional)

A second BAdI (CRMS4_FSM_CHKLST_TMP_ELMVAL_DT) is called, giving customers the ability to override or supplement any element value with their own logic.

5. Replication to FSA

The instance content is generated as a JSON payload and sent asynchronously to FSA via an OData client proxy. FSA associates the new checklist instance with the FSA activity for that line item. One service order line item produces exactly one checklist instance.

Why asynchronous? The FSA API call is processed in the background via a queue — it does not hold up the service order save transaction. Planners experience no delay, and errors are captured in AIF for review and restart.

 

3. Key Configuration: Mapping Template Elements to Service Order Fields

Table CRMC_FSM_SOTEL_M (Template Elements and Service Fields Mapping) is the heart of the prefill feature. Each row tells the system: “For this template element, use this service order field as the default value.”

Column

Meaning

TEMPLATE_ID

Which checklist template this mapping applies to

FSM_ELEMENT_ID

The element within that template to prefill

TABLE_ROW_INDEX / SERIES_INDEX

Position in table or series type elements

FIELDNAME

The service order field to use as the source value

In S/4HANA Public Cloud, this table is maintained via Self-Service Configuration UI (SSCUI)  under:

  • Application Area: Field Service & Asset Management
  • Sub-Application Area: Integration
  • Item: Integration with Field Service & Asset Management
  • Step: Prefill Checklist Instances

These SSCUIs are accessible via the Manage Your Solution Fiori app. Access requires the business role SAP_BR_BPC_EXPERT (Configuration Expert – Business Process Configuration) to be assigned to your user in the SAP S/4HANA Cloud system.

Mayankraj007_0-1784985350698.Png

No code required for standard prefill. Most customers can cover their prefill requirements entirely through this mapping table. Only advanced scenarios — conditional logic, lookups from related objects, or derived calculations — need the BAdI implementation in Step 4.

 

4. Multi-Company Replication

Many SAP FSA customers run multiple FSA companies — often aligned to different regions, subsidiaries, or service organisations. The prefilled checklist instance must go to the right FSA company.

Scenario

How to configure

Single company

Maintain the FSA Account ID and Company ID directly in the communication arrangement SAP_COM_0687. Leave the multi-company configuration table empty.

Multiple companies

Maintain company determination rules in the SSCUI under Configure Multiple Company Replication. The system evaluates organisational data (sales area from service contracts) or a specific restriction field to select the correct FSA company for each service order line item.

Both scenarios are supported with no code change. The SSCUI path for multi-company setup is:

  • Application Area: Field Service & Asset Management
  • Sub-Application Area: Integration
  • Item: Integration with Field Service & Asset Management
  • Step: Configure Multiple Company Replication

These SSCUIs are accessible via the Manage Your Solution Fiori app. Access requires the business role SAP_BR_BPC_EXPERT (Configuration Expert – Business Process Configuration) to be assigned to your user in the SAP S/4HANA Cloud system.

Mayankraj007_1-1784985350703.Png

 

 

5. What Gets Stored in S/4HANA

Seven database tables in package CRMS4_FSM_CHECKLIST_INT on system ER1 hold all checklist data. Template and instance data are stored separately by design — this allows them to evolve independently and enables future analytics that join or compare them as needed.

Table

Content

CRMD_FSM_TM_HDR

Template header — ID, name, status, version, default language, category

CRMD_FSM_TM_HDRT

Template header texts — language-dependent descriptions

CRMD_FSM_TM_ELM

Template elements — type, structure, properties, parent-child hierarchy, all type-specific attributes (min/max values, ranges, visibility conditions, …)

CRMD_FSM_TM_ELMT

Template element texts — labels, titles, descriptions per language

CRMD_FSM_IN_HDR

Instance header — instance ID, associated template, status, external ID, object type, request ID

CRMD_FSM_IN_HDRT

Instance header texts — language-dependent descriptions

CRMD_FSM_IN_ELM

Instance element values — the actual data filled in by the technician, including value type, series index, table row, attachments, images, and comments

Three AIF index tables support message monitoring: CRMD_FSM_TMP_IDX (inbound templates), CRMD_FSM_INS_IDX (inbound instances), and CRMD_FSM_PFL_IDX (outbound prefill).

 

6. The Element Type Model

The integration maps FSA element type names (strings like “textinput”, “dropdown”, “signature”) to a structured S/4HANA domain (CRMS4_FSM_ELEMENT_TYPE) with short two-character codes. The mapping is maintained in table CRMC_FSM_ELMT_MP.

There are 21 element types supported, covering everything a checklist designer might need. The full hierarchy is preserved in S/4HANA, including nested parent-child relationships (chapters contain series and tables; tables contain dropdowns; and so on):

Category

Element Types

Simple inputs

Text input, Number input, Date/time input, Checkbox, Dropdown (+ Option)

Media & signatures

Signature, Attachment, Attachment picker

Layout & safety

Label, Page break, Chapter, Safety label

Complex structures

Table (with header group, column header, column element group, footer group), Series

Advanced

Calculation, Object picker, Element status

 

7. The CDS View Layer

All stored checklist data is exposed through CDS Interface Views that form the consumption layer for analytics and downstream integrations. All views are in package CRMS4_FSM_CHECKLIST_INT on ER1. Extension views expose the extensibility business contexts for customer-added fields.

Template Views

View

Type

Content

I_SRVCCHKLSTTMPLELEMENT

Basic

All template elements with full field set

I_SRVCCHKLSTTMPLELMNTTEXT

Basic

Element text in each language

I_SRVCCHKLSTTMPLDROPDOWNOPTION

Composite

Dropdown option values

I_SRVCCHKLSTTMPLTABLEELEMENT

Composite

Table element structure

I_SRVCCHKLSTTMPLSUBELEMENT

Composite

Hierarchical parent-child subelement relationships

I_SRVCCHKLSTTMPLSTATUS / …STATUSTEXT

Basic

Template status value lists

I_SRVCCHKLSTTMPLELMNTTYPE / …TYPETEXT

Basic

Element type value lists

I_SRVCCHKLSTTMPLCATEGORY

Basic

Template category data

Instance Views

View

Type

Content

I_SRVCCHKLSTINSTCEVALUE

Basic

Technician-entered element values

I_SRVCCHKLSTINSTCETEXT

Basic

Instance descriptions per language

I_SRVCCHKLSTINSTCEDETAIL

Composite

Instance detail (composite)

I_SRVCCHKLSTINSTCESTATUS / …STATUSTEXT

Basic

Instance status value lists

I_SRVCCHKLSTINSTCEDELTNREASON / …REASONT

Basic

Deletion reason value lists

 

8. OData APIs and Processing Classes

Two OData V4 APIs in package CRMS4_FSM_CHECKLIST_INT receive inbound data from FSA. Both are backed by behavior implementation class CL_CRMS4_FSM_CHKLST_BEHA_IMPL, which routes to separate processor chains:

Inbound — FSA to S/4HANA

API

Handles

Processing chain

API_SERVICECHECKLISTTEMPLATE

Template data from FSA

CL_CRMS4_FSM_TMPL_PROCESSOR → CL_CRMS4_FSM_CHKLST_UTILITY → CL_CRMS4_FSM_TMPL_XML_PARSER → CL_CRMS4_FSM_TMPL_DB

API_SERVICECHECKLISTINSTANCE

Instance data from FSA

CL_CRMS4_FSM_INST_PROCESSOR → CL_CRMS4_FSM_CHKLST_UTILITY → CL_CRMS4_FSM_INST_XML_PARSER → CL_CRMS4_FSM_INST_DB

Outbound — S/4HANA to FSA

For the prefill direction, CL_CRMS4_FSM_REPL_CHKLST_INST handles the filter and template determination logic. CL_CRMS4_FSM_CHKLSTINS_PREFILL orchestrates the full prefill and replication process. The actual HTTP call to FSA uses OData client proxy model CL_CRMS4_FSM_CHKLST_INST_MODEL (proxy model ID: CRMS4_FSM_CHKLST_INST), and errors are logged in AIF under namespace /FSM, interface IF_PRE_CKL.

FSA API endpoints used: Templates are pushed to /api/data/v4/ChecklistTemplate/ (DTO: ChecklistTemplate.19) and instances to /api/data/v4/ChecklistInstance/ (DTO: ChecklistInstance.17). These paths and DTO versions are held in configuration table CRMC_FSM_CONFIG.

 

9. Extensibility for Customers

The integration is designed so customers can adapt it without modifying SAP code. Two types of extensibility are available.

Field Extensibility

Four business contexts allow customers to add their own fields to checklist objects via the standard Key User Extensibility tools:

Business Context

Object

CRMS4_FSM_CHKL_TMPL_HDR

Template header fields

CRMS4_FSM_CHKL_TMPL_ELM

Template element fields

CRMS4_FSM_CHKL_INST_HDR

Instance header fields

CRMS4_FSM_CHKL_INST_ELM

Instance element value fields

The service header (CRMS4_SERV_H) and service item (CRMS4_SERV_I) business contexts also feed into prefill logic — so customer-added service order fields can be used as prefill sources without any code change.

Logic Extensibility — BAdIs in Enhancement Spot ES_CRMS4_FSM_CHKLST_INTEGRATN

BAdI

When it runs

What it can do

CRMS4_FSM_CHKLST_TMP_BEFR_SAVE

Before a template is saved to the database

Modify or validate inbound template data

CRMS4_FSM_CHKLST_TMP_AFTR_SAVE

After a template is saved

Trigger downstream actions or notifications

CRMS4_FSM_CHKLST_INS_BEFR_SAVE

Before an instance is saved to the database

Modify or validate inbound instance data

CRMS4_FSM_CHKLST_INS_AFTR_SAVE

After an instance is saved

Trigger downstream actions or notifications

CRMS4_FSM_CHKLST_TMP_DETERMIN

During service order release, before prefill

Determine which checklist template to use per service item — mandatory for prefill

CRMS4_FSM_CHKLST_TMP_ELMVAL_DT

After standard prefill from mapping table

Override or supplement element values with custom logic

The two prefill BAdIs matter most for customers. CRMS4_FSM_CHKLST_TMP_DETERMIN is called with the full service header and all line items (including customer-extended fields) and must return which template to use. CRMS4_FSM_CHKLST_TMP_ELMVAL_DT receives the same inputs and returns element values, giving full control over what data the technician sees when they open the checklist in the FSA mobile app.

 

10. Monitoring

Both inbound and outbound message flows are monitored through the Application Interface Framework (AIF). Operations teams can see individual message status, retry failed messages, and view structured error logs — all without developer involvement.

Use the Fiori app Message Monitoring and Error Handling to monitor replication messages, inspect payloads, and restart failed messages.

Access to the Message Monitoring and Error Handling Fiori App requires the business role SAP_BR_CONF_EXPERT_BUS_NET_INT to be assigned to your user in the SAP S/4HANA Cloud system.

AIF Interface

Version

Namespace

Direction

What it covers

IF_CKL_INS

1

/FSM

FSA → S/4HANA

Checklist Instance — inbound from FSA

IF_CKL_TMP

1

/FSM

FSA → S/4HANA

Checklist Template — inbound from FSA

IF_PRE_CKL

1

/FSM

S/4HANA → FSA

Pre-Fill Checklist — outbound prefilled instances to FSA

Class CL_CRMS4_FSM_CHKLST_AIF_RESTRT implements the AIF restart BAdI (/AIF/RESTART_SYNC_MSG) filtered on namespace /FSM and interfaces IF_CKL_TMP / IF_CKL_INS. This means failed inbound checklist messages can be reprocessed directly from the AIF monitoring transaction — no manual data correction or developer action required.

 

11. Authorization

A single PFCG role, SAP_S4C_SERV_FSM_CHKLST, covers the checklist integration. The authorization object CRMS4_FSMC (class: FSM) controls access with two fields:

Field

Value

Meaning

CHKLST_OBJ

T

Templates

CHKLST_OBJ

I

Instances

ACTVT

Read / Change / Delete

Fine-grained activity control per object type

Read-only access to replicated checklist data can be granted independently of write permissions needed for configuring the prefill feature. This allows analytics users to query instance values without being able to modify integration configuration.

 

12. Summary — What This Means for the Business

Before this integration, checklist data from FSA was a black box to S/4HANA. Field technicians filled in forms that back-office teams could never see, and back-office teams had no way to give technicians structured starting information for a job.

Who benefits

What changes

Analytics teams

Completed checklist instance data is queryable directly in S/4HANA — join it with service order data, equipment history, or contract information to build KPI reports and identify quality trends across the field service operation.

Service planners

Configure templates and field mappings so that every released service order automatically pushes a relevant, pre-populated checklist to the assigned technician — reducing data entry errors and ensuring completeness.

Developers & consultants

Clean BAdI extension points and field extensibility for any customisation, without touching SAP code. All objects are in a single package (CRMS4_FSM_CHECKLIST_INT) on ER1.

Operations teams

AIF-based monitoring with restart capability — a failed message is a manageable event.

Multi-subsidiary organisations

Single-company and multi-company scenarios are both supported. Each FSA company can receive checklist instances independently, driven by the organisational data of the originating service order.

 

 





Source link

Leave a Reply

Your email address will not be published. Required fields are marked *

Chat with us on WhatsApp!