B2B - Trading Partner Management (TPM)
January 2014
Agenda
TPM templates
Functional profiles
Trading partner profiles
Trading partner agreements
TPM administration settings
TPM runtime access
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 3
How to access TPM ?
You follow the procedure below to access B2B TPM application:
1.
You need to assign user roles for managing the TPM tool. Without these roles being added
to your user, you wouldn't have access to Trading Partner Management. For more
information about required TPM roles, refer assigning user roles for managing B2B
application in
B2B Security Guide
.
2.
Enter the URL format as
http:<localhost:port>/b2bic
in the Web browser and logon to
B2B Integration Cockpit application.
3.
To access Trading Partner Management tool, choose
Trading Partner Management
.
4.Important
:
– Before referring this guide, make sure you are on the following SP and patch level of B2B components:
B2B Add-On SP2
o B2B ToolKit SP2 Patch 12
o XI CONTENT B2B TOOLKIT 1.0 Patch 3
o XI CONTENT B2B MAPPING KIT 1.0 Patch 2
SCM/SRM
Functional profiles (custom Parameters) Automatic
Certificate Rollover
UI
ERP CRM Non-SAP
system
TPM User
Search
Partner Name
Identifiers (DUNS, ILNS, Supplier No etc.)
Classification Parameters:
o Partner Type o Region o Industry
o Parent Group Company
Trading partner
Management
Create/Edit/View EDI Acknowledgment Parameters Agreements: Exceptional Rules based conditionsESR (Message Mapping)
EDI Runtime Parameters
Encoding, indent etc.
Generic Converter Module EDI Separator receiver channel Agreements: Exceptional Rules based conditions
TPM UDF NWA Key Store
Party
TPM Content Access Module
Integration Directory
Copy Import/Export
QA/Dev/Prod
Trading Partner Management-Partner Profile
TPM templates
TPM template
What type of parameters are found in a template?
o A template consists of the following parameters:
o Display Name
o Display Type
o Code List
o Property Key
o Default Value
TPM Template
Property Key Default Value
What is a TPM template?
o TPM template consists of unique set of values that are defined by the user. It is created for specific
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 7
TPM template
What are Key-pair values?
o A set of property keys and associated values that are defined in a template are known as Key-value
Pairs. Important: These keys and values are case sensitive.
What kind of templates can be created?
o Templates are custom build forms that stores generic data which can be reusable. Based of your business
Functional profiles
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 9
Functional profile
What is a functional profile?
o Functional profile is a collection of TPM templates that uses custom key value for that can be accessed
during message mapping
o The default key-value pairs defined in a template are applied to test and production values. You cannot
add a new key-value pair to an existing profile but you can edit any existing values in a profile. During message mapping runtime, either the test or production value is returned based on the selected system environment under “Administration”.
You can configure the system environment in Administration
Define a name for the functional
profile
To add a template to a profile, choose
Add
Choose this button to apply templates
to the profile
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 11
What is the purpose of a functional profile?
o You use functional profiles to group different templates. Functional profiles themselves can be reused
across different partners.
o Functional profile can be independent or can be attached to a trading partner agreement. During runtime
based on the conditions in an agreement, the functional profiles values can be used for messages mapping
o You can access functional profile during runtime either by calling an agreement or by directly calling a
Functional profile Name using predefined UDF’s . For more information about UDF’s, refer the TPM User Defined Functions
Functional profile
The figure below describes a runtime message mapping scenario, wherein an Idoc
XML file is mapped to an EDI XML file using a functional profile that is defined as
per an agreement.
Use Case
Trading partner profiles
Trading partner profile
EDI Message Type and Ack requirements
Exceptional conditions via
agreements Add/ Edit/ View/ Copy/ Search
Partner Profile Certificates Roll Over EDI Runtime Parameters Custom Parameters
What is purpose of trading partner profile?
o Trading partner profile provides a central access to the following partner related information and
configuration:
• Identity and classification parameters such as partner name, partner type, classification details and so on. This data also get passed to monitoring so that you can created User Defined Search Attributes and perform a search based on these parameters.
• Defining certificate rollover from NWA key store
• Custom parameters such as functional profiles
• Details on agreements that are defined for specific trading partners
• Details of EDI run time parameters such as encoding, intending and so on that are used to configure generic converter module
Identity and classification
Contacts and Documents
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 15
General tab
The general tab page consists of information that are partner specific and the classification categories. These details can be using during local message monitoring for searching EDI messages via UDS.
Below are the important fields and their description that needs to be configured
You should also create a Profile for your own organization. You can select Partner Type as self. This is needed during runtime, while creating Agreements and also an essential part for monitoring.
Define the partner
details Provide
classification of the trade
Determine the Party Name (or attach existing
Contacts tab
This tab page you provide the details of the trading partners such as e-mail, phone, mobile and so on.
You can provide multiple contacts and provide a short description about the contact along with the address in two separate fields.
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 17
Documents tab
In this tab page you provide the references to existing documents
You can provide short description on each saved documents and edit them as per your requirement.
Though TPM does not provides you a Document Management system, the reference to documents
Identities tab
You provide the details such as identifier, agency code, and agency scheme for identifying business partners.
There is a F4 help from which you can choose the standard agencies.
You can also define your own custom identifiers (for example, SupplierNo, CustomerNo and so on. )
Predefined UDFs in message mapping provides you the access to these identities (ie. you can provide one identifier code, agency qualifier code and target qualifier code to get the right unique identifier value for the partner.
Very Important: This is the core of TPM during runtime and monitoring . Please make sure you define the correct values in identities. You cannot define same values for a given combination of Agency Code and identifier for multiple partners.
Define the agency scheme that is
implemented Determine unique ID
that has been assigned to the
partner
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 19
Messages tab
This provides a consolidated view on messages that are getting exchanged between the trading partners In the message format column press F4 and select the required EDI message format and select relevant
message type.
You can add the following EDI formats currently (EDIFACT, EANCOM, X12, TRADACOMS, Odette). The
values in the drop down will appear only if you imported the correct required content via EDI Content Manager.
You can also select XML messages and manually type the Message Type and Version value. You can
use this feature to defined agreements based on XML and use the functional profile for different conditions for XML related scenarios.
EDI acknowledgement tab
This functionality enables the processing of EDI acknowledgements, such as EDIFACT, EANCOM and
ANSI X12, for inbound and outbound EDI communications. Select and save the settings as per the requirement that can be used during runtime.
For Inbound, settings are same as provided by EDI Separator receiver channel. You can configure it now based on individual partners. For Outbound, values will be used by Generic Converter module during time to set the corresponding fields in a EDI message.
How to access information during runtime?
You have to use TPMContentAccessModule as first module on the sender channel during runtime in your Integrated Configuration scenario. This module automatically read the EDI message information for sender and receiver identifiers, find the corresponding TPM Partners and fill the correct dynamic headers for acknowledgment processing as defined in TPM
Enable the check box Read from dynamic headers in EDI Seperator receiver channel. If no values are
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 21
Functional profile tab
In this tab page you can add functional profiles that are specific to a trading partner.
In the functional profile column press F4 and select the relevant functional profile and save the changes.
For more information about functional profiles, refer to the Functional profile slide.
By clicking the link you can only view the functional profile. As functional profiles are reusable and can be used across multiple partners, you cannot change it from the partner screen.
Agreements tab
You use this functionality to store partner agreements. You choose Create to create agreement and then save the changes.
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 23
Certificates tab
You can define the automatic certificate Rollovers for NWA certificates in Profiles > Certificate section.
Currently, you can only view the certificate profiles related to a specific trading partner in the Certificate Tab of Partner Profile. You can also add, edit and store certificates in Profiles > Certificate section.
By default, the expiry time of certificate is selected as Rollover time. You can customize this time according to your need.
You cannot add/store a new certificate form this screen. You can only access the certificate that have already been uploaded in NWA.
After RollOver, new certificate replace the old active certificate. You can also define the backup view to archive the replaced certificate.
Trading partner agreements
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 25
Trading partner agreements
What is an agreement?
Agreement is conditional rule that can be defined in TPM. Based on the condition, 3 components can be selected during runtime
1) Control Key to be used for this message/partner conversion [by generic Converter Module] (refer EDI
Content Manager documentation)
2) EDI parameters (converter module parameters based on EDI message type) [by
GenericConverterModule].
3) Functional Profile (custom key-value parameters) [through UDFs in Message Mapping] .
Agreements can be accessed in TPM via two different options. One via a separate “Agreements” tab and
other way is to access from the partner profile screen under Agreement tab. There is NO functional
difference. Only those agreements will appear under partner profile’s Agreement tab that are related to that partner. You can go to separate Agreement tab in case you want to search, maintain agreements in
Trading partner agreements
What all parameters are included in condition?
o Sender Partner Name (Mandatory) Sender Partner Unique Identifier (Optional)
o Receiver Partner Name (Mandatory) Receiver Partner Unique Identifier (Optional)
o Direction (Inbound/Outbound)
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 27
Condition/Rules Parameter
Response Returned if a condition Matches
Used during Message
Mapping Used by Generic
converter Module
Note: Functional Profiles can be selected only if you have already attached to the partner profile. If agreement is Inbound, it displays the values from Sender
Partner. If it is outbound, it displays the values from Receiver Partner
1
Trading partner agreements
Is agreement definition mandatory in a Partner Profile? What are the benefits?
o No, it is optional. See use cases below
What are typical use cases when I would like to use this agreement?
o You have a VAN scenario where you are sending/receiving data for multiple partners via single
communication channel but you would like to use different EDI runtime parameters for each partner (eg. encoding, indent etc.)
o You would like to maintain all EDI related runtime parameters for a partner centrally even if they are
common so that you don’t have to change it in converter modules during everytime there is a change request. You can access trading partner management and change the parameters directly in TPM configurations without redeploying the scenarios in runtime.
o You would like to maintain/access custom parameters (functional profiles) based on certain agreement
conditions.
Is it mandatory to define both EDI parameters and Functional Profile both in an
agreement?
o No, you can defined either of them or both based on your usecase. You can remove the value from EDI
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 29
Trading partner agreements
What is the relevance of Control Key in agreements?
Control Key is a versioning mechanism available in EDI Content Manager through which runtime get to know the ruleset version to be used for XML-EDI or EDI-XML version. SAP ships all the rules for
different EDI versions in default Control Key known as “SAP” or “SAP-EANCOM”. Users can customize the standard ruleset definitions by creating their own Control Key (versions)
Current way of defining relation between runtime and Control Key is through Control Key Association table and you can define the specific Control Key to be used by PI runtime scenarios. EDI converter
Module during runtime checks “Control Key association table” to find the right Control key to use for that
PI scenario.
New way of defining is via TPM based on the Agreements. If it is set, then converter module (if enabled for TPM) takes the value as per agreement definition and does not access Control Key scenario
Trading partner agreements
What are the special considerations to define EDI parameters in the agreement. How it is
accessed during runtime?
o You have to add TPMContentAccessModule in your configuration scenarios before the Generic
converter module. You need to add it either on the sender or receiver side depending on your Inbound/Outbound EDI processing scenarios
o Value for Generic converter module parameter “tpm.enable” should be true
o You can define zero or more parameters depending on your usecase.
o Whenever you create a new agreement, default EDI values are displayed on the agreement screen. If the values are blank,,
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 31
Trading partner agreements
What are the options possible while defining an agreement?
o While defining, agreement has two parts. One (Marked as A) is mandatory and other (Marked as B on
next slide) is optional
o Both can be defined together. During PI runtime (for converter module parameters), only A will be used o During Functional profile Access from Message Mapping, you can access parameters based on either A
or B
B
Separate UDFs are available for accessing both the agreement conditions.
What is the usecase of Optional Agreement Option B?
In case you would like to access agreement (and hence) Functional Profile on basis of standard PI Parameters in the agreement condition
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 33
Trading partner agreements
What are mandatory and optional partner parameters while defining partners in an
agreement?
o Partner Name is mandatory while identifiers are optional.
o During Runtime, PI finds the partner name on the basis of incoming/outgoing EDI message from the
“senderid+ qualifier” and “receiver id+qualifier” fields and finds the matching partner names. Then it looks for the matching agreement condition between two partners along with other condition parameters.
For example, If you have different sender/receivers id's for Test and Production, there are two options:
– Create two separate agreement rows based on these different sender and/or receiver ids for Test and Production (or define in Test and change in production). OR
Trading partner agreements
What is the best way of defining message type in an agreement condition?
o Depending on your usecase, TPM agreement condition is completely flexible. You can define the agreement
with exact matching values of an incoming/outgoing EDI payload or you can make it flexible by defining fields as *.
o If you are defining strictly, then make sure the incoming/outgoing EDI document exactly matches with the
EDI message definition in agreement otherwise runtime will not be able to access the correct agreement.
o Important :If you have a bulk interchange of different message types together, make sure you define “.* ” in
Message Type and Message Version field. Agreement condition can be defined on an interchange level (and not on individual message level)
o If you have a bulk Interchange with same message types in it, you can define the agreement with exact
message release version or “ .* ”. Both ways are accepted.
o Tip: If you want to use same EDI Parameters and Functional Profile parameters for the same Partner,
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 35
Trading partner agreements
Example usecases where you may need to defined more than one agreement for the
same partner and direction but for different message types:
1) Either you are exchanging different EDI formats with the partner (eg. EDIFACT and X12) and for each
you have to maintain a different converter module and/or functional profile parameter values.
2) You are exchanging a bulk interchange with the partner having different messages and for all messages
except invoices ,you want to apply encoding A. However for Invoices you would like to use encoding B. You can define two agreements for the same sender partner ,receiver partner and direction
combination. One with .* in message type and version and other one with Invoice specifically mentioned in Message Type and/or Release
Important: If you are defining more than one agreement, make sure your definition is aligned with the runtime behavior.
o PI runtime gives priority to exact matching agreement. So, in above case, if you define an agreement
with Invoice and the interchange contain only one or more invoices, then the invoice will be used. If you have invoices as part of bulk interchange with different message types, then it is important that you define agreement with .* and in this case specialization to invoice cannot be maintained.
o Runtime access the agreement in the following priority (for the same partners and direction) wherever
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 37
TPM runtime access
During runtime, information defined in the TPM can be accessed in the following
manner
:
o You need to add TPMContentAccessModule in your Integration scenarios wherever you have EDI
document processing.
Important: You must use enable.edisepUsage parameter as a precautionary step, before using TPM content access module parameter.
o Set enable.ediAckProfile to true. This parameter when it is set to true is required for applying the TPM
settings to EDI Separator Receiver channel. The module reads parameters from TPM related to EDI acknowledgment settings and publishes them to PI processing pipe-line. This parameter needs to be set for the TPMContentAccessModule only in the ICO(s) where EDI Separator receiver channel is used.
o Depending on the Inbound/Outbound EDI processing, you need to add this module either on sender or
receiver side respectively
o This module should be added before generic converter module. Set the value of module parameter
tpm.enable of genericConverterModule to “true”. It will then fetch the a) Control Key info and b) module parameters info as per TPM agreement.
o Enable the checkbox “Read From Dynamic header” in EDI Seperator receiver channel to apply the TPM
settings.
Important: In case if you are using EDISearchParametersModule, then it should be used in order such that it is before
genericConverterModule and used after TPMContentAccessModule. It is recommended to use EDISearchParametersModule
TPM runtime access - monitoring
TPMContentAccessModule when added does the following:
1)
Enable monitoring related parameters in XI message headers so that you can
create UDS in local message monitoring and enable search. (See Next Slide)
2)
Enable acknowledgement related settings from TPM so that EDI Separator can
apply the settings.
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 39
TPM runtime access - monitoring
o PartnerName o PartnerType o PartnerIndustry o PartnerRegion o PartnerParentGroup o PartnerPIParty o ReceiverPartnerName o ReceiverPartnerType o ReceiverPartnerIndustry o ReceiverPartnerRegion o ReceiverPartnerParentGroup o ReceiverPartnerPIParty o SenderPartnerName o SenderPartnerType o SenderPartnerIndustry o SenderPartnerRegion o SenderPartnerParentGroup o SenderPartnerPIParty
You can create the UDS and enable search on the following parameters from TPM.
Sender Partner and Receiver Partner Information is set based on the sender and receiver ids from the Inbound/Outbound EDI message
Partner Name information is set based on the following:
1) For Inbound EDI messages, sender id is considered
2) For Outbound messages, receiver id is considered.
TPM administration settings
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 41
Administration
You can enable the change log
You can export/import the TPM configuration settings in the form of a file.
Important: Before Importing the TPM content on a different system landscape, make sure corresponding directory content is already transported.
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 43
Assigning user roles for managing the TPM tool
TPM UDF’s Description Arguments
getParty
Returns the Integration directory Party name for given values
agency - Agency Qualifier Code scheme - Agency Scheme partyIdentifier - Identifier Name
getPartyID Returns the Identifier value
for a given Party , agency qualifier code and agency scheme
partyName- Party Name agency – Agency Name scheme – Agency Scheme
getAgreementID
Returns the TPM agreement ID for given PI parameters. The values should match exactly as defined in agreement
senderParty – Sender Partner Identifier
senderQual – Sender Partner Agency qualifier code receiverParty – Receiver Partner Identifier
receiverQual – Receiver Partner Agency qualifier code senderService – Sender Business Component
receiverService – Receiver Business Component interf – Interface
namespace – Interface Namespace
getAgreementID Choose this UDF if you need
to retrieve parameters such as senderID, receiverID, and so on.
senderID – Sender Partner Identifier
senderIDQual – Sender Partner Agency Qualifier Code receiverID – Receiver Partner Identifier
receiverIDQual – Receiver Partner Agency Qualifier Code msg_protc – Message Format
msg_type – Message type msg_ver – Message version msg_rel – Message release msg_agency – Message agency msg_subver – Message subversion
© 2014 SAP AG or an SAP affiliate company. All rights reserved. 45
TPM UDF’s Description Arguments
getAgreementID Returns the TPM agreement
ID for given Partner Parameters. The values should match exactly as defined in agreement
senderProfileID – Sender Partner name receiverProfileID – Receiver Partner Name msg_protc –Message format
msg_type – Message type msg_ver – Message version
msg_subver – Message subversion msg_rel – message release
msg_agency – Message Agency direction – Message direction
getFunctionalProfileName Returns Functional Profile name for the given agreement ID as defined in TPM. To be used with getAgreementID function
agreementID – Agreement ID
getFunctionalProfileProperty Returns value of a given functional Profile’s key
profileName – Functional Profile name
keyName – key name as defined in functional profile
getSystemEnvironment Returns the current activated system environment test or production from TPM.
getIdentity Returns the required identity
for the given partner ID and Qualifier code
sourceID – Partner Identifier
sourceQual – Source partner qualifier agency code targetQual – Target partner qualifier agency code
1. senderID – Sender Partner Identifier
2. senderIDQual – Sender Partner Agency Qualifier Code 3. receiverID – Receiver Partner Identifier
4. receiverIDQual – Receiver Partner Agency Qualifier Code 5. msg_protc – Message Format
6. msg_type – Message type 7. msg_ver – Message version 8. msg_rel – Message release 9. msg_agency – Message agency 10. msg_subver – Message subversion 11. direction- Message direction
Example- Accessing TPM information using UDF
© 2014 SAP AG or an SAP affiliate company. All rights reserved.
©
2014 SAP AG or an SAP affiliate company.
All rights reserved.
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG or an SAP affiliate company.
SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG (or an SAP affiliate company) in Germany and other countries. Please see http://global12.sap.com/corporate-en/legal/copyright/index.epx for additional trademark information and notices.
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.
National product specifications may vary.
These materials are provided by SAP AG or an SAP affiliate company for informational purposes only, without representation or warranty of any kind, and SAP AG or its affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP AG or SAP affiliate company products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty.