cancel
Showing results for 
Search instead for 
Did you mean: 

Parameter passing issue from Non-FPM Application to FPM Application

Former Member
0 Kudos

Hi,

I have Non-FPM application and on click of button I want to navigate to another application which is OIF. Problem is I am unable to pass parameter as HandleDefault method of Main Window in FPM application is not called, Instead it calls WDDOINIT method of View in FPM application directly.

Please help on How to pass parameter from Non-FPM to FPM application.

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

For navigation to FPM appl. embedding FPM into WD(non-FPM) is not good.
I sugguest two options.


Plan A: Wrap the FPM(OIF) to your WD as a UIBB.
Now you can use FPM navigation methods.
ex) cl_fpm=>get_instance( )->get_navigate_to( )->launch_url( ... )


Plan B: Use WD exit plug.
If you use exit plug, origin appl. will be terminated and move to another url.
Demo is WD appl.: WDR_TEST_WINDOW_EXIT of WD comp.: WDR_TEST_WINDOW_SUITE.
FPM navigation actually use this method internal.
(See the WD comp.: FPM_OIF_COMPONENT , Window: FPM_WINDOW , Outbound Plug: INPLACE_NAVIGATION  called from CL_APB_LPD_START_APPL_BROWSER->START_URL )

Former Member
0 Kudos

Facing Same Issue....

Can you Through some light on this topic....

Thanks & Regards,

Vijay M

former_member193369
Active Participant
0 Kudos

Hello,

first you have to take into account that you can only pass parameters that are known and declared by the target application. The declaration is simply done by entering the names of the parameter in SE80 on the parameters tab of the WD application.

If this is done you can simply pass the parameter value as URL parameter.

The target FPM application can then retrieve the value via IF_FPM->MO_APP_PARAMETER->GET_VALUE( )

Best regards,

Christian

Former Member
0 Kudos

Hi Christian,

Dumps after executing 'lo_fpm = cl_fpm_factory=>get_instance( )', not able to initialize lo_fpm which is of type ref to if_fpm,

any idea?

Thanks

former_member193369
Active Participant
0 Kudos

Hello Mitesh,

if cl_fpm_factory=>get_instance( ) doesn't return a instantiated reference to IF_FPM then your not within a running FPM application. From where do you call this method?

Best regards,

Christian

Former Member
0 Kudos

Hi Christian,

I have cl_fpm_factory=>get_instance( ) method inside FPM application, when this FPM application is run standalone, the method returns an instantiated reference. But my requirement is to call FPM application from Non-FPM application.

So when calling FPM application from Non-FPM application, cl_fpm_factory=>get_instance method which is inside FPM application doesn't return instantiated reference.

Regards

Mitesh

former_member193369
Active Participant
0 Kudos

Hello Mitesh,

how do you call the FPM application from the non-FPM application? Are you navigating via URL there? Or are you embedding the FPM component within your non-FPM application?

Best regards,

Christian

Former Member
0 Kudos

Hi Christian,

For navigation I have embedded FPM application component into FPM application, so using outbound/inbound plugs.

Regards

Mitesh

former_member193369
Active Participant
0 Kudos

Hello Mitesh,

I'm afraid I don't get what you are doing. But maybe these explanations might help you:

An FPM application is any WebDynpro application whose main component is one of the FPM_xxx_COMPONENT or FPM_ADAPTABLE_xxx components where xxx stands for OIF, GAF, OVP or UCW.

If this condition is fulfilled CL_FPM_FACTORY=>GET_INSTANCE( ) should return an instantiated reference to IF_FPM.

Embedding an application within another application isn't possible - it's only possible to embed a components (via interface views) within other components. This applies also to FPM_OIF_COMPONENT and FPM_GAF_COMPONENT. You can embed these components within other WD applications. A description how to achieve this can be found in the [developers guide|http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/e0ed3acd-45ec-2e10-bd92-8cc9dde4066c]. There you can find a description how this can be achieved and a list of restrictions. So it's f.e. not possible to embed those components within FPM applications!

Hope this helps you a bit!

Best regards,

Christian