1 2 3 10 Previous Next

SAP Sourcing

146 Posts



SAP Sourcing/CLM has introduced a feature that allows On-Premise SAP Sourcing/CLM System Administrators to set SAP NetWeaver “Debug Mode” and access the SAP NetWeaver logs directly from the SAP Sourcing/CLM application.  This feature was developed for SAP Sourcing/CLM Release 10.0 and back-ported to SAP Sourcing/CLM Release 9.0 Service Pack 17.


In the past, one of the challenges for On-Premise SAP Sourcing/CLM System Administrators has been the need for engaging SAP NetWeaver Basis Administrators when troubleshooting SAP Sourcing/CLM.   An SAP NetWeaver Basis Administrator was required in order to turn on SAP NetWeaver “Debug Mode” when reproducing an SAP Sourcing/CLM problem and also to retrieve the SAP Sourcing/CLM logs from the SAP NetWeaver server.  Retrieving the correct log files for the desired time period has also been a challenge.  Now these activities can be performed just by the On-Premise SAP Sourcing/CLM System Administrator.


Enabling this feature



On-Premise SAP Sourcing/CLM users who have been designated as application System Administrators typically already have the standard delivered “System Administrator” Security Profile assigned to them.  A new Security Profile Access Right has been introduced under the “Super User Rights” group.  Set the new Service Registration NetWeaver Logs View permission to Allow:

access permission.png

Log off and then log on again to refresh your Security Profiles cache.  You should now have access to this new feature.


Note: For SAP Sourcing/CLM “system” and “enterprise” administration users, this feature is automatically available and does not require the use of a Security Profile Access Right permission.  Also, if “multi-tenant” mode has been enabled for the SAP Sourcing/CLM implementation, only the “system” administration user will have access to this feature.


Setting SAP NetWeaver Debug Mode



Go to the Setup System Administration tab and click the System Information link:

sys info link.png

The Service Registration Logs tab should now be visible.  Click on the Logs tab and enter Edit mode.   You can now set the SAP NetWeaver Log Level to Debug Mode directly from within SAP Sourcing/CLM:

debug setting.png

Important Notes:

  • Normally ONLY Debug needs to be set for Log Level (Java). Do not set Debug for Log Level (SQL) and Log Level (Startup) unless instructed to do so by SAP Support.
  • Normal Log Level settings for running SAP Sourcing/CLM are:
    • Log Level (Java): Info
    • Log Level (SQL):  Error
    • Log Level (Startup): Error
  • Please don’t forget to turn off Debug Mode when you have completed reproducing a problem!


Retrieving SAP NetWeaver Sourcing/CLM Logs



From the same Service Registration Logs tab (you don’t need to be in Edit mode), set the Start Date and End Date date/time filters to only select log data for the desired time period when the problem occurred and then press the Get Logs button:


By clicking the Download link for each file, your default text file editor will launch and you can immediately begin your troubleshooting or save the files so that they can be quickly provided to SAP Sourcing/CLM Support!


Important Notes:

  • Debug Mode does not need to be enabled to retrieve the logs.  Logs can be retrieved anytime and for time periods when Debug Mode is not enabled – as long as the log files for the time period are still on the SAP NetWeaver server file system.
  • If Log Level (Java): Debug has been set for the filter time period specified, then the SAP Sourcing/CLM “debug-specific” log entries will be found in the log file that is named with the prefix eso_trc_, e.g., ‘eso_trc_1195119837835452560.log’. Please make sure to also send this file to SAP Support if they have requested that you reproduce a problem in “Debug Mode”.

Ed Dunne and I are pleased to announce the General Availably of SAP Sourcing / CLM release 10.0 On Premise.


As of November 7th 2014 we have officially passed all required ramp-up milestones and the release is available for download.


We encourage all of our customers to start plans to upgrade to this new release.


Release 10.0 offers many exciting features for our customers.  Please refer to the following SCN blogs for more information on the contents of release 10.0.


Functional 10 Enhancements:



Technical 10 Enhancements:






Anne McClelland and Ed Dunne Product Management




What happens if a potential SAP Sourcing user leaves the company? How will the ownership of their documents they worked on be reflected and tackled going forward?


Typically SAP Sourcing already does, built-in, provide possibilities to do this. I.e. typically you could either do an Ownership change of a business document via the UI (which certainly would only make sense if but a few documents were to be changed) or alternatively for large scale changes imports can be served with this purpose. SAP note 1092321 (Can you update collaborators on documents) does elaborate on this approach. While working however it may be time-consuming to perform the necessary steps to fill the import template and hence, should this be a recurring task, a more proper UI solution could be thought of.


This is where this implementation of a Succession Management Tool (in this context to be understood as a tool handy to change Ownership on business documents within SAP Sourcing) comes in. Note that this is based on this post here (Leavers and joiners policy ideas) if you wanted to investigate the original idea.




This implementation is delivered as follows in the attachment called (SMT with UDO - please rename the .txt extension again to .zip as this had to be done to be able to attach this here):

a) a system manager user workbook (as the SMT tool is using the User Defined Master Data 2 object by default)

b) an enterprise manager user workbook that contains the rest of the logic

c) the actual scripts that are being used and are referenced in the "script_definition" tab of the enterprise manager workbook


For the "script_definition" tab in the enterprise manager workbook make sure to check/adapt this to your local preferences/settings. Note the business context and the location of the scripts. The scripts need to be in a directory that the application server, where SAP Sourcing is deployed, can access.





1) Log in as the Enterprise Manager user and find on the Master Data tab the SMT tool


2) Create new ownership change documents that are being used to trigger the ownership change. Here you can also see the customized columns.


3) The UI is split as follows - the actual logic is to be found under "Scripts" (once in "Edit" mode) whilst the from and to Ownership change is found below. The extension collections do show the Determined Documents for change(s) and also, once updated, will update their respective detail extension collection with the document/template ids that have been changed.


4) Determine the documents by using (in "Edit" mode) the respective "Determine..." scripts


5) This will then look like this


6) Then let`s update (aka change the owner to the from/to values) e.g. the Projects


7) Which yields the ID of the changed document



Note: In general if you have access to it I found it advisable to use the Enterprise Manager user for this task. If you do use a normal user (either of the affected / from the from/to fields) you a) may not get any notifications of the ownership change and b) if the security profile settings are not configured you may run into security issues upon ownership change attempt.


I hope this idea/implementation can help in managing this particular occurrence with the SAP Sourcing application. As always, with all posts, remember that this is provided "as is" and that as such no responsibility for any damages incurred can be taken. If you are in doubt please contact a SAP Sourcing consultant or similar resource.





Joerg Lippmann

SAP currently supports SAP Sourcing/CLM Releases 7.0 and 9.0.  Release 10.0 is in the final stages of Ramp-Up and it is anticipated to be Generally Available within 4 to 6 weeks.


We have recently re-evaluated our end of maintenance dates for Release 7.0 and Release 9.0


  • The end of maintenance for SAP Sourcing Release 7.0 is and remains to be December 31st, 2017.
  • We have however, decided to extend the end of maintenance of Release 9.0 to December 31st, 2016.  With the timing of Release 10.0 GA, we have realized that our customers need more time to upgrade to it.
  • End of Maintenance for Release 10.0 remains to be December 31st, 2018.


SAP still strongly recommends that customers upgrade to the most recent version of SAP Sourcing/CLM regularly.  We hope that, for those customers on Release 9, this increased maintenance support time will help them plan for an upgrade to Release 10 before the end of 2016.   For those customers still on Release 7 we recommend skipping Release 9 and upgrading directly to Release 10.


SAP intends to continue providing customer-driven innovation to its On-Premise SAP Sourcing/CLM customers on a regular cadence of every 18-24 months. With that said, Release 11.0 is in the final stages of planning and design and its development cycle will begin soon.   Release 11.0 Ramp-up, GA and EOM dates will be formally announced soon.


If you have further questions on the SAP Sourcing/CLM release and maintenance plans please contact me at anne.mcclelland@sap.com.


Anne McClelland

Product Management - SAP Sourcing / CLM



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.


Filter Blog

By author:
By date:
By tag: