Skip to Content
Author's profile photo Former Member

APD (Analysis Process and Designer)

APD (Analysis Process and Designer)

Analysis Process Designer (APD) is a workbench for creating, executing, and monitoring analysis processes. The analysis process is primarily based on data that was consolidated in the Data Warehouse and that exists in InfoProviders. One of the applications of APDs from a technical point of view would be feeding query results into a DataStore object or an attribute of a characteristic. In this post I review a few examples on how consultants may use APDs for addressing particular analysis tasks.

The Analysis Process Designer (APD) is a workbench with an intuitive graphical user interface for creating, executing, and monitoring analysis processes. The analysis process is primarily based on data that was consolidated in the Data Warehouse and that exists in InfoProviders.
Different set of Data Sources, Transformations and Data Targets are available in APD.

Analysis Process Designer allows you to set up a model where you move data from source to target and do some transformations on the way. As a source we can use any InfoProvider in the data model.

The following types of Data Sources are available in the Analysis Process Designer:

·         Read Attributes of Characteristics

·         Read Data from Info Providers                              

·         Use Query to Read data

·         Read Data From File

·         Read Data From DB Table

·         Read Analysis Authorizations

The following types of Transformations are available in the Analysis Process Designer:

·         Filter

·         Aggregate Data

·         Join

·         Union

·         Projection

·         Sorting

·         Formula

·         Transform

·         ABAP Routine

·         ABC Classification

·         Weighted Table Scoring

·         Regression Analysis

·         Prediction with Decision Tree

·         Prediction with Cluster Model

·         Prediction with 3rd Party Data Mining Model

The following types of data target are available in the Analysis Process Designer:

·         Attributes of a characteristic

·         DataStore objects

·         Files

·         CRM attributes

·         Analytical Index

·         Training the decision tree

·         Training the clustering model

·         Training the scoring model (regression)

·         Training data mining models from third parties

·         Creating association analysis models

  1. ABC classification for customers

                    In ABC classification we assign customers to certain categories based on business rules. For example, you can classify your customers into three classes A, B and C according to the sales revenue or profit they generate. When you choose ABC classification in APD you have to specify the characteristic for which the classification is to be performed, its attribute, key figure, appropriate query, and threshold values for the individual ABC classes.

      Scoring (traffic light) model

                In a number of BI scenarios we may have a requirement for generating scoring or traffic light indicators for a certain set of KPIs. We may want to know, for example, how close the actual value is to the budgeted one. A range of traffic lights (red/yellow/green) needs to be displayed by geography, product group, profit center, etc.

                Traffic light indicators need to be assigned to each report line based on a complex logic. For example, if one or two countries in the region are underperforming, region’s indicator is set to yellow. If more than two countries are underperforming region’s indicator for the analyzed period should be set to red.

                As values for traffic light indicators are not cumulative they have to be calculated separately for each level of granularity. Knowing indicators at the lowest level of granularity does not help much in deriving them for upper levels, as there is a business rule defined for each level separately. Therefore, we have to build a set of queries for each level of data model where traffic light indicators need to be displayed. APD would help us feeding query resultsinto the cube reporting on scoring results.

2. Example of data flow for scoring model
The following data flow model can be used for calculating scoring results. The infocube contains measures (KPIs) used for scoring, such as sales volume and sales budget. It also has a set of traffic light KPIs that need to be populated with indicators for each granularity level.


Why using APD in the scoring model
It is important to note that in the scoring model instead of APD/Query approach one can use a transformation (formerly known as an update rule) connecting cube to itself. In the start/end routine we can build business logic required for scoring results calculations.

However, this approach requires complex development in ABAP. Specific scoring requirements have to be documented by a business user in advance, which usually makes development cycle longer. Any adjustments to the scoring logic require ABAP code modifications.

Alternatively, when we use Query/APD approach, analysts are able to define scoring requirements in the queries, test and modify them whenever it is needed. They can also run queries and check preliminary results. Needless to say, it is usually easier to modify and test queries rather than transformations with ABAP code.

Step by step Process of creating APD:

Business Scenario:

                        Here we are going to create an APD on top of a Query and then storing the result into a Direct Update DSO. Here I am taking a simple example for our understanding.

Step: 1        Go to RSA1 -> Edit -> Analysis Process Designer (or) RSANWB

Step: 2       General -> Rt Click ->Create Analysis Process -> Enter the Description

APD Query1.png

Step: 3       Now we can drag and drop the source & target objects which are there in the Functional Area. We can map Source & Target by using the Transformations. We can use several functions which are available in “Transformations”. (Join, Aggregate, Filter, Formula, ABAP Routine etc)

                        As per our requirement, we have to send the Query result to a DSO. So drag and drop Query (Use Query to Read Data) form Data Sources in the Graphical Work Area.

                        Maintain the source details in the Data Source: Query window -> enter Description and choose query -> Enter Query Variant. (There should be a Variant for the Query which is data Source for the APD)

Step: 4   

Query Variant:

                        A query variant is a query for which the variable values have already been selected. You can also use the variants for opening the query in the online display and for background processing.

                        Go to RSRT -> Enter Query name ->Query Variants -> New -> Enter variant name and Description -> Select the value in the Variable Selection screen -> Save Values.







     Hence the Query variant is created. We have to enter the Query Variant in the APD Data Source: Query screen. APD result will be based on the Query Variant (We have given priority: “High” in the Query variant.)

Step: 5    Drag and drop the Data Target which is DSO (Direct Update) and enter the DSO details.

                        Now connect the Source (Query) and Target DSO by dragging one end to the other.  We can use Transformations Join, Aggregate, Filter, Formula, ABAP Routine etc based on our desired output.  We can use ABAP Routine for complex transformations. Here in the present example we are not using any of these transformations.

apd query2.png



Step: 6    Save ADP, Activate and execute.

Step: 7    Check data in DSO. It will have data based on the Query variant only not the entire Query result.


     In the same way we can create APD with multiple tansformations between multipme Sources and Targets .

Scenarios where we use APD:

The Analysis Process Designer (APD) makes it possible to find and identify these hidden or complex relationships between data in a simple way. Various data transformations are provided for this purpose, such as statistical and mathematical calculations, and data cleansing or structuring processes

When we have to get the data from the Query (Query as a Source), we go for APD. We can use all RKF’s , CKF’s  present in the Query and can perform transformations on it. For analysis purpose also we use APD’s.

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Hi Folks,

      Do post your cmments and try to share the scenarios where you used APDs.



      Author's profile photo Avinash Verma
      Avinash Verma

      Check this article:



      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Thanks Avinash. I have gone through the scenarios where we use APD, but i am expecting the complex scenarions in real time.

      Author's profile photo KD Jain
      KD Jain

      Hi Chandra,

      One scenario is like if you want to get ranking wise analysis(Eg. Vendor wise OR Dealer wise ranking) we can use this functionality in BEx Query with Rank function. This ranking will calculate on run-time, So all corresponding Dealers or vendors should be in Query drill-down.

      But if we want to give this rank analysis to vendors or dealers individually it will not work properly as for only one (vendor or dealer) it will always give rank as one.

      This type of analysis can be done be APD.

      We can store Query output to DSO and again make Query on this DSO accordingly and give to (vendor or Dealer) also with less calculation Query will be faster.

      Author's profile photo Former Member
      Former Member

      APD:Transformations'Transformation of Data Records into Lists'.

      Hi to all,

      Please can any one share some light on below doubt.

      The questionnaire for a survey contains questions and answers in tabular form, that is, every record contains the number of the question as characteristic and the value of the answer for this question as characteristic and key figure. However, for the report, the data needs to be in a transformed form in which the answer to each question has its own field. To do this, I do the transformation into a data record can be used.

      The questionnaire contains about 70 questions and 325 answers, that is, a question may have multiple answers. If you transfer the questionnaire number directly, and define the question number as the transformation field and the answer as the transposition field.


      The questions is the following:

      When field transformation is supported by the APD considering that should create about 330 InfoObjects for transformation or there is  other transformations for this issues in APD or other utilities for solutions.