Eureka – FPM ( Floor Plan Manager ) is so simple
I am neither Archimedes nor do I speak ancient Greek.
My first encounter with WDA was two years ago. I had been working on Web Dynpro Java and then entered to WDA. Back then, FPM was a new concept. Since then, I have not been able to work on WDA. But, FPM has been a thorn in my brain.
Divine Intervention: Today, I was on phone near the training room and a friend of mine called me in the training. No prizes to guess the training topic. It was FPM.
HuHooo. I was thrilled. I quickly grabbed my books and went into the training. By the end of the training I feel relieved, relieved of FPM.
Cut the BS: Now, to what I understood of FPM.
|Configuration||Process of controlling the behavior of the component using predefined configurations||Personalization, default parameters, view display modifications etc.|
|Types of Configurations||
Application Configuration – Configure application properties(macro level)
Component Configuration – Configure the component context ( Code level )
View personalization, app parameters, scrolling etc.(App. Config)
Modify the context values, define default values of context variables etc. ( Component Config)
( Use case based scenarios)
|SAP has identified four scenarios which are commonly used across customers, to fulfill their requirements.||
1. Workflow Scenario 2. Cockpit Scenario 3. Tabular Scenario 4. Simple Data Scenario
|Floor plan is a design pattern( or template) which is a generic web dynpro component,with predefined yet configurable set of principles/properties. The Floor plan restricts/recommends the developer to follow the SAP defined implementation discipline.||View – where the error are displayed at top, user interfaces are segregated into blocks and a page which is components of these blocks|
|Generic Component||This is the main component which defined the composition of content in the view. It composes of IDR(Identification Region), Tool bar, Title, and UIBB(User Interface Building Blocks). UIBB are basically containers which will hold the view developed in custom Web Dynpro components or FPM related classes. A single generic component page can contain multiple number of UIBBs||Similar to a layout template. It ensures that the view composition is performed using configurations ensuring re-usability and view consistency|
|Scenario 1 – Guided Activity Floor Plan||
A floor plan which is used for scenarios like workflows, approvals, step by step process.
Component name: FPM_GAF_COMPONENT
|Scenario 2 – Overview Floor Plan||A floor plan which is used for cockpit based scenarios. Component name: FPM_OVP_COMPONENT|
|Scenario 3 – Object Instance Floor Plan||A floor plan which is used for tabular data display scenarios. Component name: FPM_OIF_COMPONENT|
|Scenario 4 – Quick Activity Floor Plan||A floor plan which is used for single page display scenarios. Component name: FPM_QAF_COMPONENT|
Flexible User Interface Designer
|Editor for FPM application configurations and their individual components. When we implement FPM, SAP provides a special designer for component configuration called as FLUID||Create an application configuration in a floor plan and try to edit its component configuration. This designeris similar to a perspective in Eclipse. Based on the type of floor plan, it provides relevant options for user. Ex: Initial screen, main steps etc for GAF.|
|UIBB – User Interface Building Block||UIBBs are the basic building blocks of the FPM. UIBBs hold the custom implementation of the customer requirements. UIBBs are categorized into many types – Form type, Tab type, List Type etc.||An individual component developed for a specific user requirement can be included a single UIBB. The behavior fo the component can be controlled using its configuration. We can choose the relevant config ID in the UIBB configuration|
|Integrate custom Web Dynpro Component as UIBB||To integrate the custom Web Dynpro Component as UIBB, the component needs to implement the web dynpro component interface IF_FPM_UI_BUILDING_BLOCK||In the WD Component, under the implementation tab, add this interface to be implemented.|
|GUIBB – Generic UI Building Blocks||Are SAP predefined template classes which are to implemented by custom classes. The customer classes which uses these GUIBBs are known as feeder classes. A programmatic approach to implementing the user requirement.||Interface: IF_FPM_GUIBB_FORM for forms, IF_FPM_GUIBB_LIST for lists etc.|
Enough of the definitions. Now to the initial steps to start a FPM based implementation.
1. Open a the specific floor plan
2. Create your own application configuration.
3. In the Component configuration of your application configuration, view the FLUID designer.
4. Based on the type of floor plan, you will be able to create specific screens or steps.
5. Create a new web dynpro component – implement the interface IF_FPM_UI_BUILDING_BLOCK
Where are the next steps? 😕
In the next part of the blog.
But Why? 😯
Because the next steps are covered in tomorrow’s class. 😎
[ Edit: The link to the Blog – Part 2 : Eureka – FPM ( Floor Plan Manager ) is so simple – Part 2 ( Not Anymore ) ]
Credit: To the trainer at my organization. He did a damn good job of simplifying it. ( Unless all my above understanding are incorrect 😡 )
Thank you one and all.
P.S. How I wish there was a common space for both web dynpro java and abap developers.