0% found this document useful (0 votes)
25 views14 pages

MDG Interview Questions

The document outlines various interview questions and answers related to SAP Master Data Governance (MDG), including types of entities, relationships, and steps to add new entities. It also covers topics like data replication, service mapping, access classes, and APIs used in MDG. Additionally, it discusses enhancements through BAdIs and the Personal Object Worklist (POWL).

Uploaded by

naveen maheshuni
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views14 pages

MDG Interview Questions

The document outlines various interview questions and answers related to SAP Master Data Governance (MDG), including types of entities, relationships, and steps to add new entities. It also covers topics like data replication, service mapping, access classes, and APIs used in MDG. Additionally, it discusses enhancements through BAdIs and the Personal Object Worklist (POWL).

Uploaded by

naveen maheshuni
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

MDG Interview Questions

28 August 2020 10:26

1. What is Type 1,2,3,4 entities ?

Ans: Type 1 : Changeable via Change Request; Generated Database Tables


Main Table Data like MARA, BUT000, CSKS, CEPC, KNA1, SKA1
Data element is optional
For type 1 we will use business objects type ( this business object is not the sw01 object )

Type 2 :Changeable w/o Change Request; Generated Check/Text Tables


Multiple keys in the data element ( i.e. value table )

Type 3 : Not Changeable via MDG; No Generated Tables


Reference data or customizing data i.e. single field entity like WERKS - 1000
Data element is mandatory

Type 4 : Changeable via Other Entity Type; Generated Database Tables


Dependent table data -- LFB1, LFM1, LFBK, KNB1, KNVV
Data element is not allowed

There are 4 storage mode:


1. Changeable via CR, generates DB tables. Main mode.
Data element is optional. If maintained this entity becomes the key attribute with same name.
2. Changeable w/o CR, Generates check tables. (Obsolete)
Multiple keys in the data elements.

3. Not Changeable via MDG, no table is generated. (used wherever there is reference data).
Data element is Mandatory. No Attribute is allowed.

4. Changeable via other entity type, Generates table. Dependent entity type mode.
Data element is not allowed.

2. Type 3 entity will contain attributes ?

Ans: No

3. Different Relationships in SAP MDG ?


Ans: There are basic 3 types of relationships:

- Leading:
From entity will become key attribute of To entity.
- Qualifying:
FROM entity will become the key attribute of To entity, but the value of the from entity should be there in check
table/Value Table.
- Referencing:
The relationship name will become one of the attributes.

There is 1 more relationship type that is FOREIGN KEY relationship. For example, whenever we have 2 or more entities
linked to 1 main entity, we use this relationship.
For this we need to maintain the fields of the check table (FROM FIELDS) against foreign key fields (TO FIELDS) in the
node FIELDS OF FOREIGN KEY in relationship.

Interview Questions Page 1


4. What are steps involved to add new entity in DM ?
Ans: A. Create the Structure for the entity:
1. Create the structure for the entity and Domain for the custom fields of the structure.
B. Create the Entity:
1. Go to TCODE MDGIMG to create the entity.
2. Create the entity with type 4 type which will be changeable with other entity and generate DB tables.
3. Active are of entity should be flex (blank or MDG).
4. Maintained the attributes for this entity.
5. Enter the attribute which cannot be added with relationship.
6. Create the LEADING relationship.
7. Create the Qualifying relationship. From Entity will become the KEY field to the TO Entity.
8. Customising/Reference data will have the Type 3 Entity.
9. Assign the Cardinalities.
10. Once the Entity is activated the structures are created automatically with Prefixes (e.g. zxx).
C. Create the GENIL relationship:
1. Check the structure in node DATA MODEL SPECIFIC Structures and in DDIC.
2. Three Mandatory structures are created zxx*KF*, zxx*FP*, zxx*PP*.
3. Check the structure are always active.
4. Now we need to make this available to UI. For this we need to do GENIL enhancement.
5. Go to the TCODE GENIL_MODEL_EDITOR.
6. Check the GENIL component for the requirement (e.g. BUPA for BP).
7. Enhance the root component. Create Key structure, add the GUID and the key fields of the requirements and add
the attribute structure PP structure (zxx*PP*).
8. Create the relationship with the custom component with root component.
9. Go the GENIL_MODEL_ENHANCE.
10. Select the enhance radio button and give your custom component.
11. Give the component as root component.
12. Create the dependent object by right clicking on dependent object (Case sensitive).
13. Give the key structure, attribute structure and ROOT OBJECT.
14. Create the relationship with these components.
15. Go to root object then right click on the relation and create the relationship.
16. Relate the child (custom component) with root component.
17. Give the Child in ASSIGN OBJECT.
D. Relate the GENIL object with custom entity:
1. For this we need to maintain the GENIL in the view (VC_MDG_BS_GENIL_C) VC_MDG_BS_GENIL – standard for
reference.
2. Add the component name – ROOT component (e.g. BUPA).
3. Then in GENIL Node give external component name as custom component and entity name.
E. UI Modelling:
1. Go to TCODE NWCG and select the role to create the CR.
2. Right click on the screen to go to the technical setting and then go to the main component.
3. Go to other function and click on enhance.
4. Select the UIBB drop down and select the appropriate UIBB (e.g. LIST and Form).
5. Configure your UIBB in attribute tab.
6. Give the config ID and title, press enter to check that this configuration does not exit.
7. If not click on the configure UIBB.
8. It will ask you for the FEEDER CLASS, you can take the standard feeder class or if you want to do any changes you
can inherit this class in your own class.
9. Feeder class parameters:
a. Component – Root component (e.g. BUPA)
b. Object Name – Custom GENIL Object (F4).
10. Remove the unwanted fields and mentioned the label of the field.
11. Check the toolbar buttons, remove the unwanted and add wanted buttons.
12. Now do the wiring (Button side to toolbar schema) for the target and source elements.
13. Click on Wire button.
14. Give component ID by F4 and the Config ID.
15. Configure the PORT (LEAD SELECTION) for this.
16. Give the port identifier so that it can select the port automatically.
17. Also define the connector class, give standard class (e.g. *_CONNECTOR_BOL_REL).
18. Automatically relationship of entity will load.
19. TEST IT NOW. CHECK THE STAGING TABLES IN TCODE MDG_DATA_MODEL.

Interview Questions Page 2


5. Is generate structure required once DM is modified ? When staging area will create for entity ? once DM activated or
Structure generated ?
Ans: Yes generate Structure is Required. Staging area will create once DM is activated

[Link] is difference between reuse & flex in SAP MDG ? How you will decide whether to go for flex or reuse ?
Ans: In reuse mode, data is directly updated in ECC tables whereas you need to set up replication model to transfer the data
from flex mode.
Active Areas:
1. Reused Mode.
• This cannot be blank in data model.
• In this mode data will go to staging table to actual tables.
• Data models – MM, BP, AR etc.
2. Flex Mode.
• This can be blank or MDG keyword.
• In this mode, the data will remain in staging tables.
• Data models – 0G.

7. In case of flex, how data will move from staging to active area ?
Ans: BY using or setting up DRF.

The data replication framework (DRF) can be used to replicate data from the Master Data Governance (MDG) hub to target
systems. You can replicate master data changes carried out centrally either manually or automatically in the background
using the data replication framework (DRF)

8. What is SMT Mapping ? what are different types of SMT Mapping ?


Ans: SMT stands for Service Mapping Tool that will fill the target structure of MDG from the source structure of ABAP.
Types of SMT:
1. Simple Mapping
2. Field Transformation – One to one field mapping (Target to source or vice versa)
3. Complex Transformation.
4. Field Check.

9. What is access class ? What is handle class ?


Ans: Access class are inside the reuse active area.
Go to the reused active area in the relationship node where you can see the active area (e.g. Material) name and the access
class (e.g. CL_MDG_*) assigned to it.
The class will have important interface IF_USMD_PP_ACCESS which can perform all the activities such as CRUD operation,
Enqueue, Dequeue etc.
Handler Class is used in case of BP Data model where you need to write the logic for custom entities. It is like access class and
is used for handling data for extended entities

10. How you will decide to go for SMT Mapping or access class ?
Ans: When there is data model enhancement, we can go for SMT (Service Mapping Tool) e.g. adding the attributes or custom
entity.
Access class are associated with the data model, where we use the reuse mode active area. If the data model as the active
area assign to it, then we can use the access class for the many actives such CRUD operation, Enqueue, Dequeue etc.

Interview Questions Page 3


area assign to it, then we can use the access class for the many actives such CRUD operation, Enqueue, Dequeue etc.

11. Which method you have used in access class ?


Ans: CRUD operation, SET KEY, Enqueue, Dequeue etc.

12. What is Feeder class ? which is most used method of access class ??
Ans: Feeder class is the link between the GUIBB (Graphical User Interface Building Block) and the application. It provides all the
methods and signature to these links.

13. what is OVS ? different phases of OVS ??


Ans: OVS is nothing but the F4 or value help for the attributes in MDG.
Phases:
1. HANDLE_PHASE_0 where the OVS popup can be “configured”.
2. HANDLE_PHASE_1 to define the selection fields.
3. HANDLE_PHASE_2 where the result list must be determined.
4. HANDLE_PHASE_3 where the selected result list entry is passed back to the input field.

14. When get definition, get data & Process event method will get called ??
Ans: Wherever the UIBB feeder class is called all these events in that feeder class will be called at the runtime.

15. Which are different API's available in SAP MDG ?


Ans: Change Request API CL_USMD_CREQUEST_API (Interface: IF_USMD_CREQUEST_API).

External Model API  CL_USMD_MODEL_EXT (Interface: IF_USMD_MODEL_EXT).


External Model API : Reading the entity data.

Governance API  CL_USMD_GOV_API (Interface: IF_USMD_GOV_API).


The governance API has a static factory method ,GET_INSTANCE,to provide an instance of the requested API for a
specific data model. The data model is mandatory for the [Link] request the API several times for one data model,
the same instance of the API is provided by the GET_INSTANCE method. GET_INSTANCE allows applications to
inherit from this class and provide an own implementation, which can provide additional methods for your
convenience (
for example, providinga method to read a business partner with the structure BUT000 instead of reading the entity
type BP_HEADER with the ABAP statement
REF TO DATA as the export parameter).

Convenience API  CL_USMD_CONV_SOM_GOV_API (Interface: IF_USMD_CONV_SOM_GOV_API)


The Convenience API has a static factory method ,GET_INSTANCE.
For instantiation,it behaves like mentioned in the Governance API instantiation.

The Convenience API CL_USMD_CONV_SOM_GOV_API (IF_USMD_CONV_SOM_GOV_API) consumes the functions


and methods of the Governance API. It is designed for easy and convenient consumption of the
governance process within a specific object application. The application has to take care of the transactional
behavior and application - specific data.

One important method is the SET_ENVIRONMENT method . As change requests might be created implicitly
because there is no explicit method for creating a change request, the change request ID or at least the change
request type needs to be set if you want to change an object for which no change request exists
. For example, the creation of a change request is triggered by locking the main entity of a data model and by
retrieving a temporary number for the main entity. Before an entity can be locked and a change request can be
created, the environment has to be set. If you want to create a new change request, the change request type has

Interview Questions Page 4


created, the environment has to be set. If you want to create a new change request, the change request type has
to be defined.

Context API CL_USMD_APP_CONTEXT (Interface: IF_USMD_APP_CONTEXT).


Context API : Context means basically holding the runtime UI data, like if you want to know Change request type ,
workflow step(if you want to do at certain wflow step) at runtime context information can be accessed using this context API.

16. Which API you will use to create CR via code & why ?
Ans: Governance/Convenience API we can use for the CR via code.
IF_USMD_GOV_API_CR_DATA, the methods of this interface can be used for change request header data, change request
notes, change request attachments, and target systems.
The methods of the interface IF_USMD_CONV_SOM_GOV_CR handle change request header data as well as change request
notes, attachments, and target systems.

17. what are different steps involved to create CR via code ?


Ans: If we are creating the CR via code, we need to do the follow steps:
1. Use the API cl_usmd_crequest_api to get the instance of the DM (Method: get_instance).
2. Then create the CR by taking help of the created instance (Method: Create_crequest)
3. Save this request with the help of method: SAVE_CREQUEST.
4. Use Enqueue and dequeue if required and DO commit.

18. What is genil layer ?


Ans: genIL stands for Generic Interaction Layer.
It consists of GENIL DM and one or more, implementation classes.
TCODE to access this is GENIL_MODEL_ENHANCE.
More in answer number 4.

19. What are BAdi's ?? Different types ??


Ans: BADI are enhancement technique which uses the OOPS concept.
In MDG they are used to enhance the UIBB and application data.

Enhancement spot: USMD_SSW_SERVICE_PROCESSOR

Interview Questions Page 5


Types of Badi’s in MDG:
1. Rule Context Badi: USMD_RULE_CONTEXT_PREPARE
2. Calling of system method: USMD_SSW_SYSTEM_METHOD_CALLER
3. Dynamic selection Agent: USMD_SSW_DYNAMIC_AGENT_SELECT
4. Handle parallel results: USMD_SSW_PARA_RESULT_HANDLERs

a. Dynamic Agent BADI : To determine agent dynamically based on certain condition


b. Rule Context BADI : Enhance the BRF+
c. System Method call BADI : Sending notification, Ztable update etc…
d. Para result handler : used for Parallel Workflows

20. What is POWL ? how to modify it ?z


Ans: POWL stands for Personal Object Worklist.
This is associate with the “Mass Approval” technique in MDG.
It is used in FPM (Floor plan Manger).
The information displayed in a Personal Object Worklist at runtime is determined by the settings in the POWL
interface, IF_POWL_FEEDER.
To modify the POWL we need to create a new empty feeder class, with the description Feeder class for mass approval POWL
that inherits from CL_USMD_CREQUEST_POWL and assign this class to POWL_TYPE.

21. Define SAP MDG?


Ans: SAP Master Data Governance (MDG) is a state-of-the-art master data management solution, providing out-of-
the-box, domain-specific master data governance to centrally create, change, and distribute, or to consolidate
master data across your complete enterprise system landscape.

22. What are the benefits of SAP MDG?


Ans: • Single Entry Point to maintain master data
• Standardized Process to control data changes
• Workflow-based process
• Standardized Tools for ensuring data quality
• Duplicate check
• Data validation & Enrichment
• Merging and Cleansing
• Transparency on the data changes
• Who, when, what
• Process Analytics
• Data Flow Transparency

23. What are Business challenges in SAP MDG?


Ans: • Introducing master data governance in your organization
• Lack of transparency of master data process execution in a distributed environment
• Viewing system-wide transactional information of master data objects
• Understanding the data quality of the governed master data

24. What is the Scope of Master Data?


Ans: display, Search, change, creation of single material master data

Interview Questions Page 6


Ans: • display, Search, change, creation of single material master data
• Changes in Mass processing
• File upload
• Broad out-of-the-box coverage of material attributes – incl. central and classification data as well as organizational unit
data (can even be extended by customers as needed)

25. What are the Key Functions and Features of SAP MDG?
Ans: • SAP MDG cockpit for Data-quality monitoring
• transparent and direct insight into the current level of data quality
• Integration and Continuous monitoring with processes in SAP MDG to remediate information issues
• Governed quality and Increased of master data in SAP ERP
• Reliability and accuracy of all master data–related analyses

26. When does a parallel process end?

Ans: The process ends when all approval steps are approved

27..Is it possible to define the dropdown values based on other values in the MDG request? For example, a user wants to
create a new material and selects MRP C XXX, so we would like to restrict the values in the dropdown of the loading group.
Is that possible?

Ans: It must be possible with custom feeder class implementation. A similar approach is explained here in the below
document.

[Link]

[Link] it possible to have validation check behind each field using ABAP coding? And how could we implement that?
Ans: Yes, Validation BADI can be used for implementing the checks for each field.

[Link] can we define mandatory fields per change request type?


Ans: 3 Options - Standard ERP configurations for mandatory checks (Cannot be switched off in MDG CR),
Marking the attribute as required on the CR level (configuration in MDG),
and Implementing custom validation for the fields based on the CR type and BRF validations

[Link] we create an update change request for material 1234 in MDG, will material 1234 be blocked in SAP?
Ans: No, the material is still available for production use when the change is in progress. The productive data will not have
the changes since it is pending approval. Because the changes on the CR are available only in the staging area. After
CR is approved, the changes will reflect in the material.

Interview Questions Page 7


[Link] it possible to get a Change Request number per domain in MDG? e.g. Material 1XXXX, Customer 2XXX etc.
Ans: Yes, it is possible. There are no ready to use option available. It requires SAP MDG APIs to get this linkage.

[Link] is table for workflow in SAP MDG


Ans: USMD0082 Workflow Step per Change Request
USMD0082T Workflow Step
USMD202C Definition of Workflow Steps
USMD202C_2 Definition of Workflow Steps
USMD202T Definition of Workflow Steps
USMD202T_2 Definition of Workflow Steps

USMD120C ---> Change Request Table

[Link] version of MDG you have worked on? Is MDG on TOP of ECC or you have a separate configuration

[Link] the Replication Process is done in your project.


Ans: Using DRF ---> Explain DRF Process step wise

[Link] many replication data you are creating daily

[Link] you done UIBB Enhancement

[Link] you done BRF+ Validation.


Ans: Multiple customers Validation in P
Search term1 cannot b blank I have done these

[Link] is the agent you are using in the workflow.

[Link] is consolidation

[Link] Qualifying relation in Entity is mandatory


Ans: Bp_header(K) BP_type(K) Active Country
If we have 2 keys then qualifying relationship is mandatory while creating Entity
We can maintain BP_header 1 against multiple keys from BP_type so cardinality will be (1:N) this we can use as list in UIBB.

BP_header(K) BP_type Active Country


If only 1 key then cardinality is 1:1 then no Qualifying relation is required
Here primary key is 1 only then we can maintain 1 primary key only -- this we use as form in UIBB.

[Link] is Data Import Framework for Material??

Ans: PDF in MM : How to... MDG-M_ Use the Data Import Framework (Name of PDF)

[Link] between
Ans: Parallel change request : No lock on what you are working
Parallel workflow : lock on what you are working, No others can access that data.

Interview Questions Page 8


42. What is DIF?
Ans: Refer PDF

43. What is feeder class? Why the feeder class is used in SAP MDG?
Ans: A feeder class provides a link between the application and the generic user interface building block (GUIBB).

Feeder class implementations are based on a predefined interface definition, providing all necessary methods and corresponding
signatures to standardize the communication between the application and the GUIBB.

A feeder class is a class that implements one of the following ABAP interfaces:

• IF_FPM_GUIBB_FORM (for form components)


• IF_FPM_GUIBB_FORM_REPEATER (for form repeater components)
• IF_FPM_GUIBB_LIST (for list components)
• IF_FPM_GUIBB_SEARCH (for search components)
• IF_FPM_GUIBB_TREE (for hierarchical list components)
• IF_FPM_GUIBB_LAUNCHPAD (for launchpad components)

Using the GET_DEFINITION method, the class defines the field catalog (the fields that are available for use in the configuration) of
the component and supplies the component at runtime with data from the application using the GET_DATA method.
Integration
Feeder class settings can be accessed in the Floorplan Manager configuration editor, FLUID; see the General Settings panel of the
individual GUIBB component.

44. Is feeder class component of the Webdynpro or it is a separate entity?


Ans: Yes it is Webdynpro Component

45. Difference between access class and feeder class?


Ans: The access class defines how each entity type reads and writes data in the connected back-end system. ... The UI class is
optional.

A feeder class provides a link between the application and the generic user interface building block (GUIBB). The feeder
class contains the business logic behind an application. Application definition (for example, data definition, structure or table
definition, and their technical aspects)

46. What action does feeder class perform?


Ans: Same as Above

47. If you add the custom fields to the data model how will you import these fields to the new version?

48. What are the main interfaces in Feeder class and access class?
Ans: IF_USMD_PP_ACCESS this interface then it is called Access class

A feeder class is a class that implements one of the following ABAP interfaces:
• IF_FPM_GUIBB_FORM (for form components)
• IF_FPM_GUIBB_FORM_REPEATER (for form repeater components)
• IF_FPM_GUIBB_LIST (for list components)
• IF_FPM_GUIBB_SEARCH (for search components)
• IF_FPM_GUIBB_TREE (for hierarchical list components)
• IF_FPM_GUIBB_LAUNCHPAD (for launchpad components)

49. What does the GET_DATA method does in the Feeder class?
50. Then what does the GET_DEFINITION method does in the feeder class?

All Methods of Feeder Class.

Interface: IF_FPM_GUIBB_LIST
Interview Questions Page 9
Interface: IF_FPM_GUIBB_LIST
Description of methods in the interface implemented by the feeder classes of both List components (List and List ATS).
Method Description
Name
GET_DEF Called once at start up. Tells the List UIBB which columns and actions are available. This is done using
INITION parameters EO_FIELD_CATALOG and ET_ACTION_DEFINITION for columns and toolbar items respectively. The
columns and actions defined here do not automatically appear at runtime. They appear in the FPM configuration editor as a
list of available columns and actions to choose from. Only when they have been configured will they appear at runtime.
It is also possible to provide additional information about columns such as texts, tooltips, F4 helps, and formatting
information. This is done using parameter ET_FIELD_DESCRIPTION
FLUSH Called as part of the FPM event loop. It is the first method of the event loop. Using parameter IT_CHANGE_LOG, it tells the
feeder class what changes have been made by the user. The changes, indicated by IT_CHANGE_LOG, must not be copied
into the source data table (parameter IT_DATA); accessing the source table is not allowed in this FPM event hook.
PROCESS Also part of the FPM event loop; called directly after the FLUSH method. Use this method to check the Event ID and, if
_EVENT necessary, to carry out Event ID-specific processing. Besides the Event ID, the feeder class also gets information about the
currently selected rows, and whether the event has been raised by this List UIBB, or by some other UIBB on the screen. For
more information, use the parameter IO_UI_INFO (interface IF_FPM_LIST_ATS_UI_INFO).
Additionally, this method can be used to pass messages using the parameter ET_MESSAGES.
GET_DAT Also part of the FPM event loop; called directly after method PROCESS_EVENT. It corresponds to the general UIBB
A method PROCESS_BEFORE_OUTPUT. The main purpose of this method is to exchange data between the feeder class and
the List ATS UIBB (for details, refer to the section Data Exchange in this document. It is also used to change attributes of the
table (parameters CS_ADDITIONAL_INFO and CV_FIRST_VISIBLE_ROW), attributes of the columns
(parameterCT_FIELD_USAGE), and attributes of the toolbar elements (parameter CT_ACTION_USAGE).
With CV_FIRST_VISIBLE_ROW, it is possible to set the first visible row of the list.
GET_PAR Called once at startup. It is not mandatory to use this method. It is used to fill the feeder class parameters with values. The
AMETER_ feeder class defines parameters and at design time one can assign values to those parameters in the FPM configuration editor
LIST with this method. This is used, for example, in more complex (generic) feeder classes.
INITIAL Called once at startup. It is not mandatory to use this method. At runtime this method tells what parameters have been
IZE defined by the feeder class (GET_PARAMETER_LIST) and what values have been assigned to them in the configuration.
This is used, for example, in more complex (generic) feeder classes.
GET_DEF Called once at startup. It is not mandatory to use this method. It has two purposes. When creating a new configuration, use
AULT_CO this method to generate a list of columns and toolbar elements that could be configured. This method is also called at runtime
NFIG when no columns at all are configured. In this case, it is used to generate a configuration.
CHECK_C Called at design time only. It is not mandatory to use this method. Use this method to execute application-specific checks on
ONFIG the configuration.
Table 1: Methods of IF_FPM_GUIBB_List Interface

51. What is the use of the SAVE method of the interface IF_USMD_PP_ACCESS?
Ans:

52. Can you name the 3 main access class and what they do in brief?
Ans:

53. What is the Badi used to perform validation and how you have done it?
Ans: BADI: Validation & Derivation

USMD_RULE_SERVICE Cross validations & Validation on same entity with complex conditions
USMD_RULE_SERVICE_CROSS_ET Cross derivation(based on complex conditions deriving another entity)

54. Is filter required during the validation in the Badi and why?

55. What is DRF and how you have done it?


Ans: Data Replication Framework ( DRF )

Interview Questions Page 10


56. What is the outbound implementation used for the DRF?

57. How to do DRF in NWBC?

58. What is wiring in UIBB? & What all thing we need to assign during wiring?
Ans:
A wire controls the runtime interdependencies between two user interface building blocks (UIBBs), that is, wires
determine the data content of a target UIBB depending on the user interaction changing the outport of the source
UIBB.
Floorplan Manager (FPM) enables you to define wires between UIBBs as a means of transferring information from
the source to the target. Each user interface building block can only be defined as a target once, otherwise the
system cannot decide at runtime where the user interface building block takes its information from. An application
can use a UIBB as a source multiple times.
Each wire consists of the following parts:
• Source UIBB
The source is always a UIBB and is always specified using its Web Dynpro component name as well as, if
necessary, an assigned configuration.
• Outport Specification
The outport specification of the source UIBB is comprised of the following parts:
• Outport Type
Specifies which information the system transfers across the wire. There are three outport types:
• Collection
Transfers information about all entries in the source UIBB to the connector class.
• Lead Selection
Transfers information about the entry that has been selected in the source UIBB to the connector class.
• Selection
Transfers information about all entries selected in the source UIBB to the connector class.
• Outport Identifier
Allows you to have multiple instances of the outport types.
• Target UIBB
The target is always a UIBB and is always specified using its Web Dynpro component name as well as, if
necessary, an assigned configuration.
• Connector Class
Implements a connector interface between the source and target UIBBs. The connector class controls the
information overall by defining the dependencies between the UIBBs. The connector class can define separate
parameters that the administrator can edit in the wire attributes.
On the tabbed component level, it is also possible to define wires between individual components of a tabbed
component. For tabbed components, a UIBB is determined as a wire plug (WIRE PLUG). This wire plug is used by
the surrounding Web Dynpro component to access the tabbed component. In an FPM application, the surrounding
Web Dynpro component is either the floorplan or another tabbed component. One wire for this plug is then defined
on the level of the surrounding floorplan or tabbed component. This architecture makes it possible to reuse the
tabbed component in other floorplans or tabbed components without having to redefine all of the wires each time.

Integration
Wires are defined in the FPM configuration editor, FLUID, in the Wire Schema panel on the floorplan component
level.

Example

Interview Questions Page 11


An application wants to define a search with a search component, but wants to display the results in a list defined
using a separate list component. Below this list, the application wants to show the details of the selected list entry in
a form defined using a form component.
To map this, the application must define two wires: one between the search and the list and one between the list
and the form. The source of the wire between the search and the list is the search component; the target is the list
component. The COLLECTION out port type is selected to transfer all of the search data to the list. The source of
the wire between the list and the form is the list component; the target is the form component. Since only the
detailed data for lead entry is to be displayed in the form, the LEAD SELECTION out port type is selected.
The execution of a search on the search component will change its collection out port and may therefore change
the data content of the result list displayed in the list component. Similarly, changing the lead selection in a list of
sales orders may change the data contents of another list displaying the associated sales order items.

59. What are two main interfaces in feeder class?


Ans:
A feeder class provides a link between the application and the generic user interface building block (GUIBB).
Feeder class implementations are based on a predefined interface definition, providing all necessary methods and corresponding
signatures to standardize the communication between the application and the GUIBB.

A feeder class is a class that implements one of the following ABAP interfaces:

• IF_FPM_GUIBB_FORM (for form components)


• IF_FPM_GUIBB_FORM_REPEATER (for form repeater components)
• IF_FPM_GUIBB_LIST (for list components)
• IF_FPM_GUIBB_SEARCH (for search components)
• IF_FPM_GUIBB_TREE (for hierarchical list components)
• IF_FPM_GUIBB_LAUNCHPAD (for launchpad components)

Using the GET_DEFINITION method, the class defines the field catalog (the fields that are available for use in the configuration) of
the component and supplies the component at runtime with data from the application using the GET_DATA method.
Integration
Feeder class settings can be accessed in the Floorplan Manager configuration editor, FLUID; see the General Settings panel of the
individual GUIBB component.

60. Which table is used to store the CR information?

61. What is FPM and OIF in SAP MDG?

62. What are the levels in the BP modules or entity types?

63. How to check the data module specific structure or staging tables?

64. What is business activity and why it is used?


Ans: Business Activity = data model + Logical Action + Business object type.

Interview Questions Page 12


Business Activity For e.g. MAt1 for material create
Mat2 for display material etc…

Logical actions : create, change, block, delete etc.(These are generic )…. i.e whatever action we perform
on data during run time. These are always system provided. We rarely created any new .

65. What is the relationship between the type 1 and type 4 entity type?
Ans:
Relationship Types
An MDG data model consists of the following relationship types:
Leading Relationships
• Type-1 entity type can lead type-1 entity types and type–4 entity types.
• Type-4 entity types must be linked to a leading type-1 entity type.
• A type-1 entity type can have a leading type-1 entity type.

Qualifying Relationships
• Entity types are qualified using additional key attributes.
• Type-2 and type-3 entity types can enhance the keys of type-1 and type-4 entity types.
The key of an type-4 entity type must be enhanced by at least one type–1, type–2, or type–3 entity type.

Referencing Relationships
• The key of a referenced entity type becomes an attribute of the referencing entity type.

66. When you add custom entity what is the type of that entity and why?

67. If the CR is not completely executed and you are creating the new CR then error will be displayed, where we can configure thi s error?

68. Once you adjust the entity or create the entity what all structure gets created? What is the use for prefix and package in SA P MDG?

Interview Questions Page 13


68. Once you adjust the entity or create the entity what all structure gets created? What is the use for prefix and package in SA P MDG?

Ans: Select the entity and click on attributes and click on new and add these attributes. Then add prefix to Data model BP.
As soon as we activate the DM staging tables will automatically adjust with newly created attributes.

Prefix

69. How to create a Change Request by code in MDG

Ans 1) CALL METHOD cl_usmd_crequest_api=>get_instance

EXPORTING

iv_crequest = gv_crequest

IMPORTING

et_message = lt_message1

re_inst_crequest_api = lo_crequest_api1.
2) CALL METHOD LO_CREQUEST_API1->CREATE_CREQUEST

EXPORTING

* IV_EDITION =

IV_CREQUEST_TYPE = 'ZCUSTCRE'

IV_CREQUEST_TEXT = 'C4C change request'

IMPORTING

EV_CREQUEST_ID = crequest_id

ET_MESSAGE = msg

We also need to call the


IF_USMD_CREQUEST_API~SAVE_CREQUEST (and DEQUEUE) and off course do a COMMIT WORK.

70.

Interview Questions Page 14

You might also like