cancel
Showing results for 
Search instead for 
Did you mean: 

iView Navigation Help

Former Member
0 Kudos

Hi Experts,

How can I navigate from a Nested iView to another Nested iView one level up?

My application is such that the Parent iView contains multiple Nested iViews, which individually contain the logic to Book Holidays, Display Holidays, and Modify Holidays etc. After creating a holiday request, I want the application to jump to the Display Holidays iView, where the new request can be seen on a graph. The problem is the iView I want to navigate to is one level above where the Create logic is so I can't map an event from the Create Form's submission to the Display iView.

I've tried using the 'Navigate' components under connectors (which sounds perfect) but this is an unsupported component and doesn't work (on our setup).

For clarity, the application's structure can be visualised as:

Holiday Application (Parent iView)

...1. Display Holidays (Nested iView)

...2. Create Holidays (Nested iView)

........2.1 Submit Form (event)

...3. Modify Holidays (Nested iView)

........3.1 Submit Form (event)

After submitting the form I want to jump to the Display Holidays nested iView.

Any help would be greatly appreciated.

Best regards,

Andrew

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

try the following things,

Add a data store and an signal out in the lower level through which you can pass the value 'displayholidays' to a datastore at higher level whenever you submit the form. and at the higher level you can use the value in the datastore in visibility condition of the display holidays iview.

let me know if this is helpful, else i will explain in detail.

Regards,

Rk.

Former Member
0 Kudos

Hi Ramakrishna,

Many thanks for the creative idea, which works perfectly for the situation I've described but unfortunately not for my model. I forgot to mention each Nested iView is set inside a layer (apologies for this omission in my description) and layers don't have a visibility property. Therefore, when I apply your solution the iViews can be shown / hidden but the screen still remains on the Create Holidays layer. I need it to switch to the Display Holidays layer upon submission.

Is there any way I can link the layers with an event, but the event is called from a level below -- like a global event? As a last resort I could move all the logic from the Nested iViews into the layers on the level above, but this would time a lot of time.

Regards,

Andrew

Edited by: Andrew Barker on Jul 23, 2009 10:44 AM

Former Member
0 Kudos

hi,

First let me confirm if i understood your problem correctly.

You have 3 nested iviews display holidays, Create holidays, and modify holidays.

From display holidays you are navigating to create holidays and modify holidays.

once you navigate to create holidays or modify holidays and after creating or modifying the holidays you will press a button on the form, once you press this button you want to go back to the display holidays.

what are the other things that you have in the layers along with the nested iviews. If you dont have anything other than nested iviews use the following steps.

1. Remove the layers and keep only the nested iviews.

2. create a data store to store the value for the action in display holidays. for eg: when you click on create holidays store 'Create' and when you click on modify holidays store 'modify'. now use the outport and assign the value stored in the data store.

3. Create a similar data store in create holidays and display holidays and assign the values 'displayholidays' to both these actions.

4. Create a data store in the main screen that is in the level where you have all the nested iviews and connect all the outports to this datastore and assign the corresponding values coming from the nested iviews.

5. set the visibility condition on all the nested iviews. eg: visibility condition for display holidays will be true when the store@maindatastore=='displayholidays' and visibility condition for create will be true when store@maindatastore=='create'.

by doing this you will see only that screen which will satisfy the condition.

let me know if this solves your problem.

Regards,

Rk.

Former Member
0 Kudos

Many thanks, this approach works great! Full points awarded.

Regards,

Andrew

Former Member
0 Kudos

Hi again,

After saving the table, the values are passed to a BAPI where the necessy inserts are made in the ERP system -- this works fine. But, I can't find a way to clear the table after submitting the values. Do you know how?

Kind regards,

Andrew

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi

Just refer the link below. This is demo of application which is similar to yours.

https://www.sdn.sap.com/irj/scn/elearn?rid=/library/uuid/a029373b-3eb9-2b10-75bc-aac7babd3d61

If you have any doubts please let me know.

Regards

Sandeep