SAP PI/XI

Development Guidelines

PI Object Guidelines and Standards

SAP PI has evolved over time and the platform name has changed over the years since starting out as XI. Our guidelines for object naming incorporate changes up to the current version of SAP PI and are being updated for the newly christened SAP PO (Process Orchestration).

Leading standards for object naming that apply to all objects in PI:

  • Camel case naming: words of a name are joined without spaces and are capitalized within the compound.
  • Words that are four characters or less should not be abbreviated.

Identification and Standardization

Business Objects

RFC Program IDs

Program IDs are unique identifiers used by SAP RFC connections to locate RFC applications.

System Landscape Directory (SLD)

Business System

Business system is the logical construct that represents a possible sender and receiver within SAP PI.

General Rules

  • The business system does not represent the actual technical host.
  • Typically, the application name is not used unless there is will only be one specific application in use. 

Note: The business system name is case sensitive.

 

Suggested Naming Standard

SAP System _
Business System or _

Glossary

Geographical area the system is located in if relevant
Specify the business unit the system is assigned to
Specify the business application or usage of the system
D | Q | P | T

Examples 

SAP System

QE1800_D

IE2800_Q

Business System

SalesForceSales_D

AribaProcurement_D

PI Product

A product is a unit that is delivered and visible to the customer. It is installable and renewable. In an SAP environment, a product corresponds to an SAP technical component. A product can have several versions. Each product consists of software components and/or versions.

General Rules

  • Product refers to the business application (i.e SAP ECC, SAPAPO, SalesForce, etc.), not the technical environment.
  • Do not use the SAP standard productions (i.e. SAP BASIS) for custom development. Instead, create a new production with your own company name.

Suggested Naming Standard

​Product Name ​​<Company>_<Group>_<Business Application>
​Version ​​<generic version number starting with 1.0>
Vendor <company domain name>

Glossary

​​<Company> ​Specify a string naming your company (i.e. AdvSolutions, GE, Ford, etc.)
​​​​<Group> ​I = Interfaces and extensions A =Application objects other then interface objects used for sending and receiving application (mapping objects etc.)  C= Canonical definitions for generic business objects intended for reuse B= Basis ideal for templates, generic structures, shared Java Programs, etc.
<Business Application> ​Specify your actual business application or technical component, e.g., Sales, Financial, CRM, etc.
​​<Generic Version Number> ​1.0 -> 1.1 -> 2.0 etc.
<Company Domain Name>​ ​This could be mycompany.com

Examples

Using a technical component:

AdvSolutions_I_CRM, version 1.0 of AdvSolutionPros.com

Ford_I_SAPECC, Version 1.0 of Ford.com

Marmot_I_SAPECC, version 1.0 of Marmot.com

Ulta_I_SAPECC, version 1.0 of Ulta.com

Integration Builder Standards

Communication Party

General Rules

A communication party represents an entity that is involved in a collaborative business process.  In SAP PI, a party refers to the companies involved in a B2B scenario. Use descriptive names as opposed to technical designations or IDs such as customer numbers.

Suggested Naming Standard

Party Name ​<Company>

Glossary

<Company> Specify a string naming your partner. As a guideline, we limit it to eight characters for easier readability.

Examples

Amazon, Ford, Wal-Mart, Target

Communication Channel

General Rules

The communication channel defines the details for the inbound or outbound processing of a message. Specifically, this defines the type of adapter that will be used.

Suggested Naming Standard

Communication Channel <Prefix>_<Adapter Type><Direction><Object Description>

 

Glossary

Prefix “CC_”
<Adapter Type> IDoc | IDocAAE | RFC | File | JDBC | JMS | Proxy | SOAP | Http | Mail | RNIF | SFTP | REST
<Direction> SEND = Sender | RECV = Receiver
<Object Description> Describe the usage of the channel

 

Examples

CC_IDocRECV

CC_IdocAAERECV  *Note: we differentiate between the AAE adapter versus the ABAP-based adapter only in double stack environments. In single stack environments, there is no need to do this.

CC_FileSENDSalesOrder

CC_SOAPRECVShippingOrder

CC_MailSENDQuotation

Receiver Determination

General Rules

 

 

Suggested Naming Standard

Receiver Determination

Glossary

Examples

Receiver Rule

General Rules

 

Suggested Naming Standard

Receiver Rule

Glossary

 

Examples

Interface Determination

General Rules

Suggested Naming Standard

Interface Determination

Glossary

Examples

Sender Agreement

General Rules

Suggested Naming Standard

Sender Agreement

 

Glossary

Examples

Receiver Agreement

General Rules

Suggested Naming Standard

Receiver Agreement

Glossary

Examples

Integrated Configuration

General Rules

 

Suggested Naming Standard

Integrated Configuration

Glossary

Examples

Enterprise Service Builder Standards

External Definition

(Called development classes in pre-4.6 versions.)

General Rules

Packages are the successors to development classes in older versions. They are closer in alignment with UML packages. Packages are containers used to collect all development types and classify them by their purpose. Packages should describe the functions within a project.

Suggested Naming Standard

Class Name

Glossary

Prefix Z, Y or namespace

Normal customer-developed objects should be prefixed with Z. Y should only be used when an object is local and will not be transported. When a namespace is involved, it would be used as a prefix, i.e. “/Prefix/FIDEV”.

Class Prefix FI, PP.MM, etc.

Functional Application Area. Note: it is typical to use SAP’s Application Areas but others work as well.

Separator  “_” use an underscore
Class Name Use proper nouns such as COMPANY_CODE GENERAL LEDGER_ACCOUNT, etc.

Examples

Service Interface

General Rules

(Introduced in PI 7.1)

Service interfaces are representations of a service that include one or more operations. These can be compared to an OO Class.

Suggested Naming Standard

Service Interface <Business Object><Interaction Activity>_<Direction>

Glossary

<Business Object> Specify the underlying business object representing business content
<Interaction Activity> Specify a more generic interaction activity
<Direction> In|Out|Abs   (Inbound, outbound or abstract)

 

Examples

SalesOrderProcessing_Out

PurchaseOrderProcessing_In

SalesOrderConfirmation_In

Service Interface Operations

General Rules

Service operations are entities that perform specific tasks on business objects, such as creating, deleting and updating. This is similar to a method within a class.

Suggested Naming Standard

Operations <Business Object><Action><Transaction Activity>_<Mode>

Glossary

<Business Object> Specify the underlying business object representing business content
<Action> Create | Change | Update | Cancel | Maintain |Modify |Delete | Read
<Transaction Activity> Request|Query|Notification|Confirmation|Response|
<Mode> Sync | Async

Examples

SalesOrderCreateRequest_Async

PurchaseOrderCreate_Sync

SalesOrderConfirmation_Async

Message Mapping

General Rules

Object that describes the mapping of data from one message type to another.

Suggested Naming Standard

Message Mapping <Prefix>_<Source Message Type>_2_<Target Message Type>

Glossary

<Prefix> MM
<Source Message Type> Source Message Type (See message type naming)
<Target Message Type> Target Business Object (See message type naming)

Examples

MM_ShippingOrdersCreate_to_ORDER_ORDERS06

MM_PurchaseOrderCreate_to_SalesOrderCreate

MM_Delivery_to_ASN

Operation Mapping

General Rules

Also referred to as interface mapping.

Suggested Naming Standard

Message Mapping <Prefix>_<Source Message Type>_2_<Target Message Type>

 

Glossary

Syntax
<Operation Mapping> MM
Element Glossary
<Source Message Type> Source Message Type (See message type naming)
<Target Message Type> Target Business Object (See message type naming)

 

Examples

MM_ShippingOrdersCreate_to_ORDER_ORDERS06

MM_PurchaseOrderCreate_to_SalesOrderCreate

MM_Delivery_to_ASN

Additional Information

Checklist for New Interfaces

Terminology is sometimes confusing in SAP PI.  To simplify and organize the development of new interfaces, the form below should make things a little clearer.
Originating system (Business System) i.e. SAP ECC 6.0
How does this system communicate (Communication Channel) IDOC
(Sender Agreement)
(Receiver Determination)
(Interface Determination)
(Receiver Agreement)
How does this system communicate (Communication Channel) REST
Destination System (Business System) Google API

Ready To Get Started?

error: Content is protected !!

Pin It on Pinterest