Skip to content
Kitegra
← Back to the blog

Module in this article: iFlow Inspector

SAP CPI Naming Conventions: A Rule Pack Your Team Can Enforce

Naming conventions for SAP CPI steps, channels, properties and ProcessDirect addresses, written as a rule pack your team shares, and how to check every iFlow against it.

SAP CPI Naming Conventions: A Rule Pack Your Team Can Enforce

Most SAP Cloud Integration (SAP CPI) teams have naming conventions. Fewer have conventions that every iFlow follows, because the rules live in a wiki page and nobody checks a Content Modifier's name before a transport.

This article proposes a starting convention for steps, channels, properties and addresses, shows how to write it as rules a tool can check, and how a team can share and enforce it.

Why names matter in SAP CPI

A step's name is what you see when something breaks. The monitor reports the failing step by name, a search for "the step that sets the order ID" finds it only if the name says so, and a design document or a hand-over reads like the diagram's labels. "Content Modifier 3" says nothing; CM_SetOrderHeaders says what it does.

Consistent names also make two iFlows comparable: a reviewer who knows the convention can read any iFlow of the team at a glance.

A starting convention

A prefix for the kind of step, then what it does, in PascalCase, is enough for most teams. This is the pack Kitegra ships with; it is a starting point to adapt, not an SAP standard:

ElementPatternExample
Content ModifierCM_<Action>CM_SetOrderHeaders
Groovy or JavaScript scriptGS_<Action>GS_BuildPayload
RouterRT_<Decision>RT_ByOrderType
Request ReplyRR_<System>RR_S4HanaOData
Content EnricherCE_<Lookup>CE_CustomerMaster
Process CallPC_<Process>PC_CallValidateOrder
Local Integration ProcessLIP_<Purpose>LIP_ValidateOrder
Exception SubprocessESP_<Purpose>ESP_LogAndAlert
Message MappingMM_<Source>_to_<Target>MM_Order_to_SalesOrder
Sender and Receiver<PascalCase>S4Hana, Salesforce
Exchange property<camelCase>orderId
ProcessDirect address/<Path>/orders/validate

Write the convention as rules

A convention a tool can check is a list of rules, one per kind of element. Literal text must match exactly; <Placeholder> stands for any text; <PascalCase>, <camelCase>, <UPPER>, <lower> and <Number> stand for text of that shape. The first rule of each kind applies, and each rule has a severity: Error, Warning or Info.

In Kitegra the rules are a JSON rule pack. An excerpt:

{
  "rules": [
    {
      "id": "content-modifier",
      "target": "content-modifier",
      "pattern": "CM_<Action>",
      "example": "CM_SetOrderHeaders",
      "notes": "Content Modifier: CM_ and what it sets.",
      "severity": "warning",
      "enabled": true
    },
    {
      "id": "mapping",
      "target": "mapping",
      "pattern": "MM_<Source>_to_<Target>",
      "example": "MM_Order_to_SalesOrder",
      "notes": "Message Mapping: source and target message.",
      "severity": "info",
      "enabled": true
    },
    {
      "id": "property",
      "target": "property",
      "pattern": "<camelCase>",
      "example": "orderId",
      "notes": "Exchange property names in camelCase.",
      "severity": "info",
      "enabled": true
    }
  ]
}

Agree on it as a team

  1. Open the extension's options page and find Naming rules. It starts with the default pack.
  2. Change a rule's Pattern, Severity or Notes, switch one off with "Rule on", or choose "Add rule" and pick what it Checks.
  3. Choose "Export JSON" and put the file where the team keeps its standards, next to the transport guidelines.
  4. Each colleague chooses "Import JSON" with that file. When they are signed in with Posty5, the pack then follows them to every computer.

Sync keeps one person's pack the same on all their computers; the shared JSON file is what keeps the team on the same rules.

Check an iFlow against the rules

Open the iFlow, click the "Kitegra" button and choose Inspector (or press Alt+Shift+K). The Naming tab lists every name off the rules, with its count on the button: the actual name, what was Expected, an Example and, where the step's content allows it, a Proposed name built from what the step does. Clicking a finding selects the step on the diagram.

In edit mode, Rename types the proposed name into the step's Name field. It never saves: the panel says "Renamed. Save the iFlow to keep it.", and you decide.

The same findings appear in the iFlow report next to the design checks, as the iFlow review checklist shows, and good names make a generated design document read well.

How Kitegra helps

Naming is part of the iFlow Inspector in the Kitegra. The check reads the iFlow's model in your browser; your rule pack syncs with your Kitegra account when you sign in, and the iFlow's content is never sent.

The Helper, Message Monitor, iFlow Inspector and iFlow Docs each count the iFlows you use them on: 5 per module without an account, 50 on the Free plan, 100 on Starter and 300 on Pro; Business has no limit. The Toolbox and the workspace extras are free. Compare the plans.

Try it in your next iFlow

Read what Kitegra adds around the SAP Integration Suite designer, or see it next to its modules.

Frequently asked questions

Does SAP have an official naming convention for CPI?

SAP publishes guidelines, but each team sets its own rules. The pack in this article is a starting point to adapt.

What should a step name contain?

The kind of step and what it does, for example CM_SetOrderHeaders for a Content Modifier that sets order headers.

How do I share naming rules with my team?

Export the rule pack as JSON from the options page, keep the file with your team's standards, and let each colleague import it.

Does the extension rename steps by itself?

No. Rename types the proposed name into the step's Name field in edit mode, and you save the iFlow yourself.

Can I make a rule an error instead of a warning?

Yes. Each rule has a severity: Error, Warning or Info.

Are exchange property names checked too?

Yes. The default pack expects camelCase for exchange properties, and you can change that rule.

Work on iFlows without leaving the designer

Add Kitegra to Chrome or Microsoft Edge. Start free, no account needed.