Skip to Content
Typical Requirement

Customer has central development environment with regular roll out changes to all the other systems; They had lots of customer specific objects created in the customer name spaces. Earlier the only challenge is to ensure the consistency of those objects in all the landscapes. But when number of custom development increases indeed there would be lot of difficult to keep track of them and identify the status of these objects at one particular time stamp. In addition to these other important concern is customer objects using SAP object, which are changed by the support pack upgrade and patches. And also during the upgrade, we were not able to estimate the effort for adjusting these modified objects.

Hence we explored the tool customer development management **** pit delivered by solution manager to support the efficient management of custom developments in the landscapes.

Initially we planned to utilize the CDMC with respect to support below query.

          -What are the obsolete customer objects exists in Production?

          -What is the impact of the impact of the upgrade on the custom objects?

          -What is the effort estimation for adjusting those modified customer objects?

But CDMC has given more input for us than we expected.

Purpose

Basically CDMC analysis the changed SAP objects. And helps to determine which customer objects are using these changed SAP objects and get affected by the change. It has 2 kind analyses, one of them as clearing analysis, where you get the usage report for custom programs, where you can find the list of obsolete objects. Other kind as Upgrade/Change Impact analysis will show the impact of the upgrade on the custom objects, and tentative time required for adjusting those objects.

As of Solution Manager 7.0 EHP1 it delivered as CDMC (Custom development management cockpit). In 7.1 onwards, it is extended with the additional functionality (Custom code Life cycle management). (More detail check out my reply on the thread http://scn.sap.com/thread/3204201).

Through this blog I would like to share few of the useful offerings provided by CDMC clearing analysis (CA). For other basic query on configuration of  CDMC you can view the SAP note 1244713 ( Attachment CDMC Master Guide).

For Upgrade and Impact analysis I will cover later some point in time.

System roles involved with CDMC CA activity

In CA analysis 3 systems with the different roles are involved, (More info on significance of these system roles, please refer the master guide on sap note 1244713).

          – Analysis System (QA system)

          – Control System (Solution Manger)

          – Statistics System (Production System)

Below the list of system role and activity done by the CDMC CA . 

system list.jpg

All these above activity ultimately given the lists of obsolete custom objects, but we need to proceed further analysis before decide to complete deletion of those unused objects.

Lists of Empty database tables

The CDMC CA activity “Determine Empty database”, counts the number of entries in all tables of the statistics system and also its usage. From this, we can get list of tables has no values.

/wp-content/uploads/2012/07/cdmc1_124811.png

/wp-content/uploads/2012/07/cdmc2_124812.png

Empty tables are the one, occupied the memory unnecessarily, lead to additional work in term of performance tuning.

It is always best to delete these empty tables if they are not used anymore.

You can review the result of the CDMC in three different kinds of views as Object view, Functional view, Detailed View (More details about various options on the view can get in SAP Note 1244713) . I here got the empty tables using object view, sort by entries.

/wp-content/uploads/2012/07/cdmc3_125235.png

Object’s transport frequency

The CDMC CA activity “Transport Frequency” helps to figure numbers of times the custom objects get transported.

/wp-content/uploads/2012/07/cdmc4_125065.png

 

Object with no transport are the indication of unused objects, other hand like the object with more number of transports might be has more bugs, corrected with lots of transports. Either the way it is good to have the transport frequency history of all the modified objects at one place.

/wp-content/uploads/2012/07/cdmc5_125204.png

I used functional view and filter set up to review the results of transport frequency

/wp-content/uploads/2012/07/cdmc7_125205.png

Objects with syntax error and Object caused ABAP Dumps

In the activity “Syntax check”, helps to find out the objects, function module in statistics system has syntax error, as we all know objects with syntax error not in use, can be removed .

/wp-content/uploads/2012/07/cdmc8_125216.png

Short dump analysis carried out by program CNV_CDMC_CA_EVAL_SHORTDUMP in the statistics system ,by default Scheduled it as batch job on daily basis.

/wp-content/uploads/2012/07/cdmc9_125217.png

 

I used the detail view with the filter and layout option to list out the object with syntax error and object caused the ABAP short dumps.

/wp-content/uploads/2012/07/cdmc10_125218.png

Object with no reference

In “Object with no reference” activity analysis the where used list of all the objects and evaluate the object with no reference. For example includes with no reference is mostly obsolete, but we can extend further analysis to check whether these objects used dynamically. This is the most time consuming in entire CA analysis.

/wp-content/uploads/2012/07/cdmc11_125234.png

I used functional view to get the lists; in the screen shot I sort the column, and here the indicator “X” states the objects with no reference.

Inactive customer object

Activity “Inactive customer object” is also providing lists of the obsolete objects in other way. This activity checks the activation status of custom objects in analysis system, it lists out the all object versions, which only saved but not activated. so these objects also can be deleted.

/wp-content/uploads/2012/07/cdmc13_125246.png

/wp-content/uploads/2012/07/cdmc14_125247.png

Objects with duplicate domain

In “Duplicate domain” activity is analysis the attribute of the custom domain against sap standard domain or with the other custom domain, this activity lists down the entire custom domain same with the sap standard domain or other custom domain, because as best practice we shouldnt have customer domain duplicating standard domain.

/wp-content/uploads/2012/07/cdmc15_125248.png

The results can be viewed by using functional view.

/wp-content/uploads/2012/07/cdmc16_125261.png

Usage analysis of custom objects

Activity “Perform Usage Analysis” is used to analysis the custom object usage.

/wp-content/uploads/2012/07/cdmc17_125262.png

Result can be viewed under 3 different options as list of custom objects not used, and objects marked as used, and objects not supported by usage analysis.

/wp-content/uploads/2012/07/cdmc18_125263.png

 

It took max of 2 weeks to analyze the results of all these activity. But at the end we will get list clear picture of obsolete objects in your production.

Other Inputs

refer the query regarding performance and memory impact of CDMC activity here, http://scn.sap.com/thread/3200907(Thanks to Jürgen Mahler and Bjoern Panter for clearing the doubts).

SAP also offering expert guided session scheduled for CDMC too,more details we can get under www.Service.sap.com/enterprisesupport

SAP Enterprise Support Academy / Expert Guided Implementations / Portfolio for Application Life Cycle Management & Self Services ..

To report this post you need to login first.

8 Comments

You must be Logged on to comment or reply to a post.

  1. Pise Mangesh

    Great blog.

    Question – did you use the view that shows the results in terms of Solution Manager Solutions or Projects (I.e. utilizes information from the BPH)? I understand that requires your solution documentation to be defined completely so the question becomes irrelevant if you do not use solution documentation.

    (0) 
    1. Jansi Rani Murugesan Post author

      Hi,

      CDMC creates its own project, The good thing is , cdmc collect the utilization from st03n of the managed system via rfc, not by the bph.

      hope you clear now.

      Check out cdmc doc on service.sap.com\rkt-solman

      Regards,

      Jansi

      (0) 
      1. Pise Mangesh

        Well,  I’m not sure if my question came across correctly. I understand the CDMC project. When you execute a CDMC project, at the step to determine custom objects, there are 2 options that come up where you are asked whether you want to refer a solman  (implementation) project or a solution or just go by the development classes (packages). Eventually you also get the same option at the last step of Detailed Report. 

        Lets say if you select the option to show the results by Solution or a project, CDMC ties the results to the Business process hierarchy defined in your project / solution. Now that’s where you need to have a complete BPH defined.

        So my question was more on that if you did use that view of the report, what were your views?

        (0) 
  2. Sailaja Nalam

    Hi Jansi,

    Thanks for such an informative blog. It is very much useful for new learners like me. Can I know where do we create a solution manager project that is used in the step to determine the custom objects.

    Regards,

    Sailaja.

    (0) 
  3. Soumen Chattopadhyay

    I am facing a typical error on during clearing analysis. I am defining a CA project with my production OLTP as the Statisics system, quality as Analysis and Solution Manager as control system.

    But I am encountering problems in Determine Customer Objects. The details is also there in the message http://scn.sap.com/thread/3426134.

    Can you please help?

    (0) 
  4. Felipe Pezo A.

    Hi Jansi,

               First, thank you for the information 🙂 !

               Second, I have a problem in determine customer objects…  appears the next message: “job cancelled after system exception ERROR_MESSAGE”

    ¿any idea?

    Regards,

    Felipe

    (0) 

Leave a Reply