1 2 3 10 Previous Next

SAP Sourcing

143 Posts

Hi Experts,



I am trying to fetch  the each question score  but I am getting  duplicate records including  score and weight. how to get question score


































































In SAP Sourcing, one common question comes up every now and then which is related to Document Links section (MA, project etc.). For convenience, in this blog I am explaining the technical script involved in solving this issue.


What is a Document Links Section?


Under Header Section of a Business Document, we can see the Document Links Sections where the user can add another Business Document in relation to the current one.



While adding another Business Document, the following data needs to be populated.




Technical Scenario


Generally, based on some business requirement, we would require linking a previous Project (Business Document) to the current one. This can be achieved via scripting which is explained in this blog.


//Required imports


import com.sap.odp.api.doccommon.masterdata.DocumentLinkDefinitionIBeanHomeIfc;

import com.sap.odp.api.ibean.IBeanHomeLocator;

import com.sap.eso.api.projects.ProjectIBeanHomeIfc;


// Creating Document Links Home through DocumentLinkDefinitionIBeanHomeIfc



// For instance, let us assume that the document is project

// Creating Project  Home




// Finding the Project which needs to be added in Document Links section


projBean = projHome.findByUniqueDocName("PROCAT-001--2014");


// Find the Relationship with which the Project  should get added. Refer FCI-DocLinkDefList query to view all the relations present in the system.


documentLinkDef = docLinkHome.findUnique("FCI-PROJECT PREVIOUS");


// A line is added with empty fields in Document Links section

newDocumentLink = doc. getDocumentLinkList().create();


// Setting the Type of document which needs to be added (project, RFx, Auction etc.)


newDocumentLink.linkDefinitionType = new DocLinkDefinitionTypeEnumType(1);


// Setting the Relationship of the document which needs to be added (Previous Project, Future Project etc.)


newDocumentLink.linkDefinitionObjRef = documentLinkDef.objectReference;


// Setting the Object Reference of the document which needs to be added


newDocumentLink.LinkDocObjRef = projBean.objectReference;


//A Document is added in the Document Links Section


doc. getDocumentLinkList().add(newDocumentLink);


This Script can be used with any Document Life cycle event or toolbar based on Business requirement.






SAP Sourcing/CLM can use either the Microsoft .NET-based WordService or the JAVA-based SAP Sourcing DOCX Generation Service to generate structured contract documents using clause documents, collection variable documents, and contract document templates.


SAP Sourcing DOCX Generation


The Microsoft .NET-based WordService requires setup of an additional Windows server. Due to this overhead and additional TCO, versions of SAP Sourcing 7.0 SP5/9.0 SP11/10.0 or higher now also support the SAP Sourcing DOCX Generation Service, which is WordService based on JAVA technology. The SAP Sourcing DOCX Generation Service does not require an additional Windows server. As this is lower TCO, we recommend switching to the SAP Sourcing DOCX Generation service. For more information on the JAVA-based generation service, see the following link:


The New SAP Sourcing & CLM DOCX Generation service


Microsoft .NET-based Word Service


The Microsoft .NET-based WordService requires setup of an additional Windows server. It uses MS Word on the Windows server to perform operations on the clause documents and generate a structured contract document.


Follow these steps to install the Microsoft .NET-based WordService:


1. Verify that you meet the prerequisites for the installation of .Net WordService. See the checklist of prerequisites:

Prerequisites to configure .Net based contract Generation service


2. Create an “Office Automation User” user account. This user should perform the operations in MS Word on the Windows machine for the generation of contract documents. We recommend not using this user for any other purpose, as that might disrupt the configuration, resulting in the failure of the contract generation service.

Create Office Automation User


3. Install the WordService. For details, see: Install WordService


4. Configure the WordService. For details, including screenshots, see:

Configure IIS for WordService


5. When the installation is complete, check the whether the WordService is working as desired by following these steps: Verify that Contract Generation WordService is working.


6. If the WordService is not working as desired, refer to the troubleshooting techniques here:

General Contract Generation Checklist for CLM Versions 9.x and Below

Please note that this topic is also covered by the available KBA 1996605 (then application level issues) (SAP Service Marketplace access required)




SAP Sourcing login URLs can be constructed as follows:

[protocol]://[hostname]:[port]/[context]/[login type]/[login path]


Process flow for buyside and sellside logins:


1. Install the Language Pack in question following the official SAP Sourcing documentation


2. Open the SAP Sourcing Login page in question (buyside, sellside)


3. Change the language in the dropdown ("Logon Screen Language") to the language in question and note the changing URL in the browser


4. Copy this URL and find the language pack ID for the selected langage pack at the end of said URL


5. Use this URL as a favorite or in any other manner to pre-default the SAP Sourcing Login Page language for the buyside and sellside logins


As such a buyside URL with a pre-defaulted language pack preference would look like:

Buyside Login Page LP default.jpg


A sellside URL with a pre-defaulted language pack would look ike:

Sellside Login Page LP default.jpg


NOTE: This might not work in SSO scenarios as the login page might not stem from the actual SAP Sourcing application.


Process flow for the Supplier self-registration page:


1. Install the Language Pack in question following the official SAP Sourcing documentation

2. Note the "ISO Language" value of the language pack in question from the SAP Sourcing buyside (or enterprise user) login via Setup - System Setup - User Interface - Language Packs

Language Pack ISO.jpg

3. Open the SAP Sourcing Supplier self-registration page in question (if using multiple UI`s see also KBA 1995822 if in doubt how to call it)


4. Use the given URL and append the following: ?language=da&country=da whereas "da" is the ISO Language value of the language pack in question.


5. Use this URL as a favorite or in any other manner to pre-default the SAP Sourcing Supplier self-registration language


A Supplier self-registration page with a pre-defaulted language pack would look like:

Supplier self reg UI default.jpg


If using an alternate Supplier UI with a pre-defaulted language pack this would then look like:

Supplier self reg UI2 default.jpg

The SAP Sourcing/CLM Customer Partner survey invitation was emailed out on Friday, June 6th.  This is your chance to influence the contents of the next release of SAP Sourcing/CLM.


The deadline for survey submissions has been extended to Friday, August 1st.


A separate survey invitation specifically for internal SAP Sourcing/CLM consultants/support network etc. was also sent out.


If you did not receive the survey email and would like to participate please notify me at anne.mcclelland@sap.com.


Anne McClelland

Product Management - SAP Sourcing/CLM

Please note that this topic is also covered by the available KBA 1997275 (then application level issues) (SAP Service Marketplace access required)


  1. Logging Categories (eso.<n>.log) – do not need be altered at any time

    1 Logging Categories.jpg
  2. Tracing Locations (eso.<n>.trc) – default settings (normal settings)

    2 Tracing Locations - default.jpg
  3. Tracing Locations (eso.<n>.trc) – SAP Sourcing (application) debug logs

    3 Tracing Locations - application debug.jpg
  4. Tracing Locations (eso.<n>.trc) – SAP Sourcing SQL debug logs

    4 Tracing Locations - SQL debug.jpg
  5. Tracing Locations (startup.<n>.trc) – SAP Sourcing startup debug logs

    5 Tracing Locations - startup debug.jpg

Please note that this topic is also covered by the available KBA 1997890 (SAP Service Marketplace access required)





SAP Sourcing 7.0 and SAP Contract Lifecycle Management 7.0
SAP Sourcing and SAP Contract Lifecycle Management 9.0


and WordService Installation performed on a supported Windows OS



Reproducing the Issue

  1. Set Log Severity
  2. Reproduce Issue
  3. Reset Log Severity
  4. Acquire Logs
  5. Validate Logs
  6. Provide validated Logs to Support


SAP Sourcing Contract Generation issues.jpg





Make sure to have the appropriate access rights to the involved applications/functions:


  • OS level access / contact your local IT and/or system administrator


ESSENTIAL FILES to be provided to SAP Sourcing Support:


  • log_<date>.log and log_<date>.trc files contained within the directory given during the installation of the WordService



  1. Set Log Severity

    This step is only necessary if you are being asked to provide the Contract Generation Logs in "debug" severity. If this is the case then:

    a) Find the file located at: [www root]\WordService\Web.config and open it in a text editor

    b) Find the section "<appSettings>" and look for the string "<add key = “logLevel” value=”info”/>"

    NOTE: If you did not revert previous settings it might not read "info" for the value

    c) Change the value to "debug" and save.

    d) Restart the WordService.

    Example of a debug configured Web.config:

    Untitled 3.jpg
  2. Reproduce Issue
  3. Reset Log Severity

    Revert the changes made in step 1 by modifying the Web.config to its previous original value.
  4. Acquire Logs

    Navigate to the directory defined during the installation of the WordService.

    Example at

    Untitled 1.jpg

    and copy those files which are needed (see next step).
  5. Validate Logs

    NOTE: DEBUG entries will only be found in the respective log_<date>.log files. Nonetheless the log_<date>.trc files of the same timeframe are required.

    a) Open the files to see if the desired severity logging is there (you would see DEBUG, the screenshot only shows INFO and ERROR entries).
    Contract Generation log example.jpg

    b) Make sure that the timeframe is matching with the reproduction.
  6. Provide validated Logs to Support

    Once you have identified the relevant log files do provide them to SAP Sourcing Support

Calling all workflow gurus for SAP Sourcing / SAP CLM !We have some good news for you. The news is also good for the folks who were a bit gun-shy with creating and maintaining workflows in SAP Sourcing / SAP CLM.


With SAP Sourcing / SAP CLM version 9 SP 16+ (and, of course, with our upcoming release SAP Sourcing / SAP CLM 10.0), we will be introducing a brand new and extremely intuitive, easy to use, highly functional, wizard driven visual workflow editor. Ah OK! I will lay off the adjectives and get down to brass tacks. But yes, we are excited about this long-standing request from a number of our customers, and consultants.


I will not go into the capabilities and functionality of the Workflow in SAP Sourcing / SAP CLM, which has been covered extensively and synopsized wonderfully in this webcast (recording, and presentation), but focus more on the creation of the Workflow, and the features being introduced.


Throw away those old 3rd-party workflow editors


Let’s step back a little and understand our decision to bring this capability into the application. Well,

  • The 3rd-party tools and editors (visual or text based), which can construct the workflow process definition in a format as supported by SAP Sourcing / SAP CLM, are becoming difficult to find. Additional licensing issues (LGPL, GPL, etc.) associated with these tools which complicate the matter further.
  • Using 3rd-party tools meant that after creating the workflow process, a file needed to be saved and then imported into the SAP Sourcing / SAP CLM Workflow definition interface
  • The visual tools our customers and consultants were using were pretty clunky and required a number of extension attributes to be added, and/or had some attributes that were not mandatory and just plain confusing
  • For the type of functionality that a solution like SAP Sourcing / SAP CLM provides, adhering to the open industry standard XPDL or BPMN is a bit more cumbersome than necessary


So is it as easy as you claim?

You can be the judge.

Setting up a workflow process, is as easy as 1, 2, 3, and you are done.

Step 1 - Define the Workflow Process


The Workflow definition task has not changed, except for one very important and useful addition, allowing the associated workflow process to be created and saved in Draft status before publishing.


Figure 1.png


Once the details for the workflow have been defined, and the option to "Add New Version" has been selected, you will now be presented with 4 options to help give your workflow process definition a great starting point, and doing most of the initial heavy lifting for you. The 4 choices are:

  1. Use our automated workflow process generator. All you have to do is provide the number of approval steps you would like, and we will do the rest. One limitation: you cannot define more than 20 approval steps, but if you need more than 20 approval steps, then get in touch with us so that we can look at the use case, and maybe provide some useful alternatives. This is the best option for starting a new workflow process definition.As a bonus, with this option, you can now also define a default Prescript and a default Postscript to be used in the entire workflow process. The scripts defined as default, will be associated with the generated appropriate steps in the workflow process
  2. Use the last published workflow process definition. If you have created versions, and have perhaps used a version of the workflow process, and then realized that a small tweak needs to be made to make the process compliant with the expectations of the users of the system, then this is the option for you.
  3. Use the last published version of another workflow. Well, you have done it before, and now it’s time to create a new workflow, but, why reinvent the wheel? Use the working published workflow process that exists and works perfectly.
  4. Use an existing workflow schema file. We would like you to use our new visual workflow process flow editor, but of course there is always a need to support and allow workflow process schema files (.xpdl or .sswp) to be imported and used.


Figure 2.png

Step 2 - Build the Workflow Process

Here you define all the details of the workflow process in one screen, by populating an optimized and necessary list of fields only, with most fields already populated with default values. We have also ensured that all the approval steps are given default names, and if you have used the default script population option, then hey, presto, you are well on your way, and can finish the whole definition really very quickly.


Of course, all the names and labels can be easily changed, and additionally, the visual workflow works almost like any other visual tool, with clickable approval steps and icons.




Defining additional approval steps or deleting approval steps is easy with the clear buttons, and of course you select where the additional approval steps should be placed.

Figure 3.png


Step 3 - Add the Scripts please


Now that the stage has been set, all that is required is to start adding the scripts to suit your specific scenarios and processes for each of the approval steps. Simply click on the icons that are provided for defining Prescripts, Precancel, and Postscripts for each approval step and you will be able to enter your script or copy and paste from your favorite editor. The icons are also colored differently depending on whether a script has been defined for an approval step or not.


A capability to define a Global Precancel script is also provided


And that’s it .......

Figure 4.png


SSWP!?! What is this SSWP?


One new aspect that we are introducing is a file format that is truly SAP Sourcing. All the workflow processes defined or modified will now be available in the .sswp format. SSWP stands for SAP Sourcing Workflow Process, is still an XML file, and just like the user experience is optimized for the SAP Sourcing / SAP CLM workflow capabilities.


Voila! Workflow process definition in a box.


There you have it


But wait, there's more "Help" on the way. The Help section for workflow definition has been comprehensively updated to include details on all the features and functionality for our upcoming Release 10 (for all the features of Release 10, please refer to this blog). For Release 9, we will be updating our Scripting and Workflow guide, which will be available on Service Marketplace.


If there is any more information that you need, please feel free to get in touch.

Integration of SAP Sourcing with SAP ERP allows for seamless transactions with replication of master data and transfer of  Business Document's between the two systems. The following document outlines the Good Business Practices that can be employed while considering the integration during the planning phase of the Implementation cycle.


Standard Solution –Publishing Process (ES/PI/ERP):

     The standard solution is designed to allow the publishing of Awards or Master Agreements as Purchase Orders and Outline Agreements to the ERP system. This is a synchronous process; meaning that the end user will have to wait after clicking the ‘Publish to ERP’ for a valid response before initiating any other action in the User Interface.  Following is the sequence of events that occur during the Publish process:

  • Validate the Business Document in SAP Sourcing
  • Generate the XML payload that will be sent to the SAP PI system
    1. The Integrated Document Configuration is considered to determine the content of the XML payload
  • Connect to the SAP PI system and submit the XML payload
  • In SAP PI, the XML payload is mapped to the Function ‘BBP_ES_UPDATE’
  • SAP PI then invokes the call to SAP ERP system with the transformed Payload
  • In the SAP ERP system, the Business Document is validated for completeness and consistency and then created
    1. At this step, the SAP ERP configuration is read and interpreted
  • The SAP ERP system, upon successfully creating the document, will return the Document Number that was generated as well as any success and other messages (warning and error)
  • The return call from SAP ERP is mapped back in SAP PI to the SAP Sourcing call and the values returned to SAP Sourcing
  • In SAP Sourcing, the process completes upon the following occurring:
    1. Updating the document number from SAP ERP on the header and line item
    2. In the case of an error – a pop-up message displaying the reason for the error

NOTE: In the case of success, a pop-up window is not displayed.  You can reference the document number on the Header of the Business Document in SAP Sourcing as confirmation of a successful publish.

As can be seen above, the entire process is ‘Synchronous‘ by design to provide immediate feedback to the end user with regards to the completeness of the transaction.

It has been found that for most business needs this standard behavior will enable good end user response times and user interaction.


Implications due to Extending/enhancing the standard process:

When the standard solution does not support the required Business demands, it is necessary to extend the standard functionality which procedurally involves:

  • Extension fields or elements on the business documents
  • Scripts to support the validations or other business needs
  • SAP PI Mapping related changes (to message types and mapping) to support the new fields
  • Enhancements  to the ‘receiving’ function modules (BBP_ES_OA_UPDATE, BBP_ES_PO_CREATE) to support these new fields

Depending on the complexity of such enhancements, the behavior of the standard solution will be impacted and will result in a differing end user experience. The effect will be more pronounced if enhancements or extensive scripting is used for validations etc. at the line item level or a sub-Object level that has collections.



Performance of the standard system under normal designed loads:

With Integration and also as an outcome of the synchronous nature of the calls to SAP ERP, the end user experience and thereby the performance of the system will be determined by several parameters:

  • Sizing of the system to support the concurrent users and the business use cases
  • Number of users currently logged in and actions being performed
  • Batch jobs that may be running
  • Current SAP Sourcing system load in terms of the memory consumption
  • If detailed Logging or Tracing is enabled
  • Network latency (since data needs to be sent to SAP PI and SAP ERP systems)
  • SAP PI system load
  • SAP ERP system load
  • Size of the Business Document – not necessarily limited to the number of line items but including all collections and sub collections
  • .. several others


The performance could be different under differing conditions since it will not always  be able to predict what the load on the SAP PI and SAP ERP systems are even though SAP Sourcing could have been sized and managed well.

As an example, under standard behavior and in the SAP test landscape with few users or just the performance test user logged in and with nothing but a very basic document containing the bare line items, the following metrics have been observed relating to the publishing of Business Documents from SAP Sourcing to SAP ERP.


1. Publish Master Agreements to SAP ERP

Number of Line ItemsMA Publish to ERP:  (secs) *time as derived from log files



2. Publish RFX Award to SAP ERP

Number of Line ItemsPublish RFX Award to ERP:  (secs) *time as derived from log files


As is observed from the times above, the publish times will increase with the number of line items (considering this alone and no other variations). As can be noticed,the end user will experience lengthy wait times as we reach the 1000 line item mark. This not only impacts the user trying to publish the document to SAP ERP but all other users logged into the system.


Best Business Practice suggestion:

     Because the Sourcing to ERP integration scenario uses synchronous HTTP calls to transfer data, and all HTTP requests are expected to respond within reasonable network limits (i.e. ~ 5 minutes) to ensure a real-time, responsive user experience for all users on that network – it is not recommended to attempt publishing more than ~1000 line items at any one time. We expect that significantly raising or removing such limits as a long-term solution will have a negative impact on the behavior of the network as a whole - including the applications and users within it.


Alternative ideas to publish large number of line items:

     There have been various approaches suggested depending on the business needs but a common approach proposed and used by many customers at this time is to split the business document into multiple documents with fewer line items. This way the end user experience while navigating the document in sourcing or even while publishing will be within acceptable norms.

     One approach might be to publish a “parent” agreement with no line items that serves as the “umbrella” agreement with “child” agreements for all of the line items ensuring that each child agreement included no more than ~1000 line items.  This would enable you to manage the “child” agreements together under the “parent” but ensure that no “child” has more than ~1000 line items.  There may be some logical groupings that would allow you to group the line items onto a “child” agreement by, for example:

  • Product
  • Category
  • Organizational Unit
  • Geography
  • Plant


In the case that the need arises to publish documents larger than the suggested line items (~1000), some of the symptoms the system will exhibit are:

  • Frequent and inconsistent timeouts experienced by the user publishing the document to ERP.
  • In some situations inconsistent transaction states due to the timeout (meaning the document may have been created in ERP but due to the timeout occurring in SAP Sourcing, the document references will not be updated in SAP Sourcing)

Both of the above issues can be addressed by changing the timeout parameters (on some but most likely) on all systems (SAP Netweaver, SAP Sourcing, SAP PI, SAP ERP).


Timeout parameters of interest:

SAP Netweaver: (Refer to NW documentation)

  • icm/conn_timeout
  • icm/keep_alive_timeout
  • icm/server_port<_n>/PROCTIMEOUT


SAP Sourcing:  (Refer to the SAP sourcing configuration guide for additional details)

  • upp.metering.login_inactivity_timeout
  • upp.metering.cleanup_interval
  • transactionTimeout.millis

SAP PI System: ( Refer to the PI documentation for the details)

  • xiadapter.inbound.timeout.default


  • rdisp/mas_wprun_time

Note:  Increasing the timeouts will lead to successful publish of documents to ERP but will not guarantee good end user experience for all the users logged into SAPSourcing (i.e.,the users may experience slow response times as much of the system resources would be locked up processing the Publish event).

How to configure a new Master Agreement Type in SAP Sourcing/CLM 7.0?



In this blog, I would like to show how to configure numbering table and master agreement type.


Configure Numbering table:

Menu path: Set Up ->Master Data (tab) ->Numbering Table Definition.


Click on ‘Numbering Table Definition’, and then click ‘New’ .Then below screen will appear.




I entered in the above screen as below.

*Name:  Numbering for DLMA (Distribution Logistics Master Agreement)

Table ID: ‘MA-DL’.

Prefix:  DLMA-

Prefix:  -<%YYYY%>

*Sequence Number Width: 6

Ticked Sequence Number Padded

*Start Number: 1

*Number incremented by: 1

Finally click ‘Save’ button and ‘Done’ button.

Now we have configured numbering table for DLMA (Distribution Logistics Master Agreement type).


Configure Master Agreement Types:

Here I am going to create a new type for DLMA (Distribution Logistics Master Agreement type)

Menu Path: Set up->Document Set up


Just click ‘Master Agreement Types’, and then click ‘New’ button.

Now I entered data as blow in the below screen (Type Tab).


If you tick ‘Integrated Type, then Integration Details tab you see as in the above screen. Otherwise you cannot see ‘Integration Details Tab’.

*Name        : D and L Master Agreement

Description: Give your description (I gave Master Agreement type for Distribution and Logistics)

*Order : 400(system gives this number)

Numbering table: select ‘Numbering for DLMA’ as below screen.



Tick in the below screen (Features,Rules,Defaults and Notification )  according to your requirements:





Finally click ‘Save’ button and ‘Done’ button.

Now we have configured Distribution Logistics Master Agreement type.

Now check you master agreement type just now you created (D and L Master Agreement).

Go to  this  path : Set up->Document Set up->Master Agreement types.



With Regards,



In “Master Agreement Types Explained – Part 1”, an overview of Master Agreement Types was provided.  In this blog, each configuration item on a Master Agreement Type is explained.


Configuration of Master Agreement Types

As discussed in Part 1, there are five (5) sections that need to be reviewed and configured when defining a Master Agreement Type.  The following paragraphs provide an explanation of each field in each of the five sections.


General Section - The General section is used to establish some key information about the Master Agreement Type such as the Name and Description as well as the Order in which it will be displayed to the user.  The following items should be reviewed and setup according to your requirements:



Item Description


This is a checkbox that, if checked, indicates that a Master Agreement Type is no longer available for use.  When this checkbox is checked, the Master Agreement Type will not show up in the list of Master Agreement Types to pick from when the user does a “Create Master Agreement” or “Create Master Agreement Template”.

Integrated System Type

This field will only be displayed if the integration to SAP ERP or SRM is enabled.  If you are using the integration, you can select the type of integration that is related to the Master Agreement Type.  When you choose a particular type of integration (SAP ERP or SRM), a new tab – Integration Details - on the Master Agreement Type will be displayed.


This is the name of the Master Agreement Type – for example, Master Services Agreement.  This is the name that is displayed when the user does a Create Master Agreement” or “Create Master Agreement Template”.  This field is required and has a maximum length of 40 characters.


This field is used to describe the Master Agreement Type.  It is not a required field.  It has a maximum length of 256 characters.


The number value used in this field determines in which order a particular Master Agreement Type will be displayed to the user.  For example, if there are five Master Agreement Types defined and the values used in this field are 10, 20, 30, 40, and 50, the Master Agreement Type with an Order value of 10 will be the first in the list as it is displayed to the user.  It is recommended that you leave some spaces between the numbers used for the Order value.  By leaving some spaces, if you need to create a new Master Agreement Type, you will be able to insert it in the order in which you want it displayed.  This is a required field. 

Numbering Table

If you want to use a specific Numbering Table for a particular Master Agreement Type, you must associate the desired Numbering Table with the Master Agreement Type.  The Numbering Table must first be defined in the Master Data section of Setup.  The Numbering Table is used to create a unique id for each agreement of that type. 

If you do not associate a specific Numbering Table with a Master Agreement Type, the system will automatically use the default Numbering Table for Master Agreement Types.



Features Section - The Features Section is used to determine which tabs - such as Audits and Schedules - will be used as well as which features - such as Discussions and Attachments - will be enabled.  The following tables discusses each of the configuration items in this section:



Item Description


The Discussions feature allows you to have discussions related to each Master Agreement with both your internal stakeholders and your suppliers.  The Discussions are stored with Master Agreement. Depending upon other configuration options available to you, users can find their Discussion messages in the Discussion channel on their Workbench page or they can receive email notifications that a Discussion message has been sent to them.  By checking this box, the Discussions feature will be available to users in the toolbar of any Master Agreements of that type.  Most often, this feature is enabled.


Chat allows you to “instant message” with another user that is logged into the system at the same time you are and reviewing the same Master Agreement.  Chat messages are also stored with the Master Agreement and are accessible from the Chat feature in the toolbar if it is enabled.  Most often, this feature is not used on Master Agreements.


By checking the Attachments box, you will enable the Attachments button to be displayed to users in the toolbar of Master Agreements of that type.  This feature allows you to upload file attachments that are related to a particular Master Agreement.  This allows you to store all related documentation with the Master Agreement in a single place.  This feature is almost always enabled.


By checking this box, you will enable the Accounting tab on Master Agreements of this type.  The Accounting tab allows you to associate predefined accounting entities (such as cost centers and general ledger accounts) at the header level of the Master Agreement and estimate benefit related to those accounting entities. The Accounting tab is most often not used.  It can be repurposed; however, with the additional tabs that can be configured to meet specific needs, it is easier to use one of the additional tabs for custom requirements that you might have.  

Require Product Category

The Product Category (often relabeled as “Material Group”) can be made a required field on all Master Agreements of that type by checking this box.  This is a that is commonly used in the standard reports and is one that organizations use to report on frequently to determine how much activity they have for a particular Product Category.  This field is often enabled for that reason.

Allow Duplication


Savings Metrics




Line Item Specifications


Supplier-Entered Attributes


Master Agreement









Line Items


Performance Metrics


Tab 1


Tab 2


Tab 3


Tab 4


Tab 5




Enforce Date Range









Line Items


Performance Metrics


Tab 1


Tab 2


Tab 3


Tab 4


Tab 5




Master Agreement Types are a foundational structure in Contract Lifecycle Management which:

  • Determine the features and functions that will be available on an actual Master Agreement or a Master Agreement Template
  • Give you the ability to define a Numbering Table to be used with a particular Master Agreement Type
  • Enable you to do Page Customizations to determine how the pages will be configured for a specific Master Agreement Type
  • Allow you to write Scripts to drive specific logic that applies to a particular Master Agreement Type
  • Enable you to query agreements in the system by Master Agreement Type


Before you can create a Master Agreement or a Master Agreement Template, you must define at least one Master Agreement Type in Setup.


Generally, Master Agreement Types will be defined in the system according to your current business usage and the types of agreements that you intend to store in the system.  Examples of Master Agreements Types that are commonly defined include:

  • Master Goods Agreement
  • Master Services Agreement
  • Lease Agreement
  • Statement of Work

Although you must have at least one Master Agreement Type defined in the system, the number of actual Master Agreement Types that are defined should reflect your business needs.


Who can Define Master Agreement Types in the System?


Generally, Master Agreement Types are a business concept and should be defined according to the business needs.  In order to define Master Agreement Types, a user must have the appropriate Security Profile.  There are different approaches that organizations take in assigning the necessary permissions to users.


For example, permissions might be assigned to:

  • A “Super User” who both understands the business needs and the necessary system configuration
  • A team including an IT System Administrator and a knowledgeable Business User

Because Master Agreement Types should reflect the needs of the business, key business users should always be involved in their definition.


Configuration of Master Agreement Types


When defining a new Master Agreement Type, there are five (5) sections that need to be reviewed and configured:




There is also a sixth section on the Master Agreement Type that does not require configuration:



The Change History section also captures the user’s name that created the specific Master Agreement Type as well as the date and time when they created it.  It also captures the user’s name that last changed the Master Agreement Type and, again, the date and time when they changed it.


In another blog, Master Agreement Types Explained – Part 2, each configuration item in a Master Agreement Type will be further explained.

When a Master agreement is published to create an Outline agreement or an Rfx/Award to create a Purchase Order from SAP Sourcing, there is a simple way to search and identify such documents in ECC. The following guide points to the way of searching for the documents.


In the ECC system, invoke the transaction "BBP_ES_SEARCH", here we have the option to either search by the Master Agreements or the RFx Number from SAP Sourcing.


Step 1. Identify the Master agreement or the RFx ID. in SAP Sourcing


Step 2.  In the ECC system invoke the transaction BPP_ES_SEARCH. Enter the Master Agreement /Rfx ID identified in the previous step.



Step 3. When the transaction is executed with the Master agreement Id specified it will list the Outline agreeement and line items associated with the Master   agreeement.



As seen from the output the search, we notice that it not only pulls up the Master agreement data (header) but also the line items.


The procedure is the same for the Rfx document.



Technical detials:

The references to the Master agreements coming from SAP sourcing are saved in the configured TextId's at header and Item level. The configuration needs to be performed both on the SAP sourcing and the ECC system to actvate this and make this possible. The transaction BBP_ES_SEARCH will then use this saved references in the text elements to list the referenced contracts or Purchase orders.



The Expected Value Column that is returned in the results set of some of the Master Agreement List Queries is a calculated field based on metrics that are defined in the Savings Metrics tab of either a Master Agreement or Sub-Agreement.  The metrics are designed to track the expected value and the savings that will be realized as a result of a particular Agreement.  The Expected Value is entered for each of the metrics defined on an Agreement.  The value that is returned in the Expected Value Column is a total of all of the Expected Values that have been entered for each of the metrics defined in the Savings tab.


Note:  The Savings tab will only appear in either the Master Agreement or the Sub-Agreement but not in both if the Savings Metrics flag is enabled.  If Sub-Agreements are enabled, then the Savings tab will appear only on Sub-Agreements and not on Master Agreements.  This is defined on the Master Agreement Type in Setup.  


Savings Metrics Tab

You will find the Savings Metrics feature In the Features section of the Master Agreement Type definition as seen below:


Image 1.png



If you enable this feature on the type, the Savings tab will be displayed in the Agreement – in the example below, it is displayed in the Sub-Agreement:


Savings Tab


Image 2.png


In order to begin tracking Expected Value and related savings, the Savings Metrics for a specific time period must be defined as seen in the example above.  In this case, there are three time periods for which savings metrics have been defined.


Time Period 1


Image 3.png


Time Period 2


Image 4.png


Time Period 3


Image 5.png


Expected Value – Sub-Agreements


The total Expected Value that is displayed for this single Sub-Agreement in the results set of the query is the sum of the Expected Values entered for the three time periods in the Savings tab:


Image 6.png


Expected Value – Master Agreements


The total Expected Value that is displayed for this Master Agreement in the results set of the query is the sum of the Expected Values entered for all the time periods for all of the Sub-Agreements in the Savings tab:


Image 7.png




In summary, this column is only one component of measuring value and savings related to Agreements; however, it does rely on the enabling the Savings Metrics feature in the Master Agreement Type definition and populating relevant metrics on the Agreements themselves.

In Sourcing 7.0 SAP introduced an useful feature that allows a supplier registration to route through an approval workflow.  When a new supplier registers via the supplier registration page, the registration request can be routed to one or more approvers or approver groups before the supplier is added to the supplier master in Sourcing.


Supplier workflow is very similar to project and contract approval workflow. When a supplier registration is submitted the approver will receive an email notifying them about the current approval. Upon logging into the system, the approver can either use the “My Supplier Workflow Activities” channel to access the current approvals or go to the supplier record to approve. In this short blog I will cover the configurations needed to enable this. It is assumed that the readers are somewhat familiar with the general workflow configurations.


Step 1 – Supplier Registration Workflow Definition


The first step is to create a Workflow Definition for the supplier workflow. This step is similar to creating a Workflow Definition for Project or Contract workflow. It includes creating an XPDL file that contains the logic for the approval workflow including the details on how many approvals and the order of approval. For more information on creating a Workflow Definition, please refer to the Scripting and Workflow Configuration guide on the SAP Service Market Place.


Step 2 – Define Supplier Field Access Definition


In project and contract workflow when the workflow is trigged the document is locked so all the fields are read-only. In supplier workflow, with Supplier Field Access Definition it is possible to control what fields can remain editable on the supplier record in a specific phase. Supplier Field Access Definition can be accessed from Setup > Document Setup > Suppliers. Note this is an optional step depending on the requirement of your supplier workflow. Create a new Supplier Field Access Definition and select the fields you want to allow edit access to. The screenshot below shows the edit access allowed for Order Address 1 through 3 fields. Both the standard fields and custom fields will be listed on this page. Note that this does not apply to collections (both standard and custom).


8-9-2012 3-25-12 PM.png

Step 3 – Define Supplier Phase Configuration


Supplier Phase Configuration is where the phases for the supplier registration/modification are defined. There are four system phases – Created, Modified, Approved and Rejected. These system phases cannot be modified or removed. Let’s take a look at each one of these phases:

Created phase - Created phase is automatically set when the supplier registration/modification is created.

Modified phase – This phase is set when the data is updated

Approved phase - When this phase is reached, the vendor registration/modification request has been processed by the approver

Rejected phase – Indicates a request that is denied


Note that both Approved and Rejected phases are configured as “next” phase in the Supplier Configurable Phase Definition. New custom phases can be added but should be added between the Modified and Approved phase.


Now that the phases are configured let’s take a look at the configurations for each custom phase.

Next and Previous Phase: For each custom phase the valid next and previous phases should be configured.


Add Workflow Definition: For each workflow phase a Workflow Definition should be added


Add Supplier Field Access Definition: Each phase can be associated with a Supplier Field Access Definition. It allows you to control what fields can be editable on the supplier record for a particular phase. By default all the fields on the supplier record are not editable. In most cases, Supplier Field Access Definition will be added to a workflow phase; however, it is also possible to add it to a non-workflow phase.


8-13-2012 9-34-55 AM.png

Step 4 – Define Supplier Type


This is the last configuration step. In this step, Configurable Phase Definition created in step 3 is added to a Supplier Type. In addition, the Supplier Type should be associated with a supplier self-registration UI mapping. Note that the changes made to the Supplier Type do not affect the current supplier registration requests / modifications.


As a last step, ensure the Document Security Templates for supplier registration and supplier modification are configured so that the approvers are properly added when the registration or modification approvals are triggered.


Hope you found this blog useful.


Filter Blog

By author:
By date:
By tag: