When building new applications for SAP Netweaver, the preferred UI Technology is the WebDynpro for ABAP Framework (WD4A). It is a very powerful and complex framework, which brings a lot of advantages for building SAP applications. Some of this advantages are the deep integration in the system, which means for example DDIC, development process, CTS. By using WD4A you have the full flexibility to build Web-UIs for SAP by using a standard framework.
Nevertheless, there are some disadvantages: Although you have a visual editor, it is very difficult, to define a standarized and reusable UI. The next thing is, that it is very difficult, not to mixup business and UI-logic in one component. It is often seen, that there is a lot of code in the wdd*-methods.
The next think after WD4A
With FPM, SAP has build up a framework, which give you all the power of WD4A and encapsulate it in a way, that you will not have to write UI-Code or UI-Views. That means, with FPM you configure the UI and say FPM what you want to show. Your ABAP coding will feed the FPM application and FPM do the rest, e.g. layout issues, formating issues …
This so called Feeder-concept bring you a new abstraction layer into your application. There are several Generic UI Building Blocks ( GUIBB ) – for example Search-Views, Forms, Lists, Trees – and you provide an ABAP class which tells the GUIBB what to show and how events are handled. BTW: If you cannot implement your use cases with a GUIBB, FPM gives you stil the possibility to integrate a so called “Freestyle-UI” based on a classic WD4A-component.
I think there are some reasons, why the FPM is the best solution for building web-based UIs on SAP Netweaver ABAP:
- Every Floorplans looks like the same way and your customer will not see any difference between a SAP application and your own. Additional, your UIs will be compliant with the SAP UI guidelines out of the box.
- FPM provides a framework, which encapsulate your application logic from the UI logic. Even, the FPM-Modell provides a event-based UI mechanism and you do not have to think about the WD4A phasemodel.
- By using the Feeder concept, your UI is completly code-free. With this concept, you build your feeder classes, which provides the neccessary data for the FPM.
- There are possibilities to enhance your FPM-application modification free.
Some may argue, that with FPM the creativity of a developer will be restricted. But, should a developer for business applications define high sophisticated UIs on a standard plattform? Should it not be better to use the creativity in implement the best business processes? If you need a high sophisticated and individual UI, you should consider to create a rich interface based on Flash, HTML5 or for example on Eclipse RCP.
Another argument against using FPM: There is a great time effort to bring up your development team using FPM. This is true, yes, but this is very small argument against FPM, because you can speed up your development. With my experience, I estimate, compared to WD4A, 50%-70% time reduction for building a FPM application against a similar WD4A application. Naturally, you will need some time to use FPM savely, but after this break-even, your development speed for UIs will boost up.
What does this mean for your development? When using the FPM you will gain a lot of advantages, which overcome the disadventages.
What do you need to use FPM?
The way from WD4A to FPM is very easy. Most of the techniques is in your development team and you only have to bring them together.
I recommend the following points:
- Good knowkedge of classical ABAP OO
- Knowledge of Configuration and Personalization
- A clearly structured and layered application
FPM was introduced with SAP Netweaver 7.01 and is fully supported by SAP. With the upcoming EhP6-Release the Business Suites uses more than 1000 FPM applications!
On the SAP Teched, I could see the new developments for FPM. For example, there will be a WYSIWYG editor for the configuration and the Application Creation Tool has been enhanced, so you can now use BOL-Objects and FPM will generate the whole application. These features will be available with SAP Netweaver 7.03.
In the next time, I will share some best-practises for using FPM and examples how easy it is to use.