cancel
Showing results for 
Search instead for 
Did you mean: 

FPM Question

Former Member
0 Kudos

Hi!

I am building a WebDynpro ABAP Application using the Floorplan Manager.

I have an OIF with several main views and the FPM creates a tab for every main view. The WD view which corresponds to each main view will be initialized if the user clicks on a tab.

Is it possible to initialize all WD views if the application starts ( or better: if initial screen is leaved)?

Jan

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Thomas,

thanks for your reply.

The problem is that some elements of one view depends on elements of an other view. For example, the visibility of an element on view X depends on a choice of the user on view Y (from current or former session). But if the user never clicked on view Y i can't request the user's choice... So it could be nice if i could instanciate view Y and so i have all data which corresponds to this view. But if it is not possible i have to read it from DB...

Bye, Jan

thomas_jung
Developer Advocate
Developer Advocate
0 Kudos

If data needs to be shared in such a way it should be contained local to the view. It should be in the Component Controller (if this is a single component FPM) or in the Shared Data Component (in a multi-component FPM). That way it can be mapped to the context of each view that needs access to it.

One of the main ideas of FPM is that each component must be independent of the others. You can't rely on any one view being present or the order of the views - since all of this can be changed with configuration. From the SAP side we have to build FPM applications keeping in mind that customers might remove our views and plug in their own. Actually this is good practice to follow even in non-FPM applications. Views should never really be directly dependent upon each other.

thomas_jung
Developer Advocate
Developer Advocate
0 Kudos

>

> Hi!

>

> I am building a WebDynpro ABAP Application using the Floorplan Manager.

>

> I have an OIF with several main views and the FPM creates a tab for every main view. The WD view which corresponds to each main view will be initialized if the user clicks on a tab.

>

> Is it possible to initialize all WD views if the application starts ( or better: if initial screen is leaved)?

>

> Jan

I don't think there is a way to force the instaniation of all the sub views at application start. Why would you want to do that? I think for performance reasons it would be best to let the view only initialize once it is needed. If the user never navigates to that view, why pay the price to initialize it.

On the other hand if you want to pre-cache some data, that can be done via a shared data component in the FPM model. I use this often to pre-load the data that is associated with a particular view - that may not be shown until later. Often when calling a service you get all the data details at once and you might as well keep them around in case they are needed by one of the views later.