cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Did you get an answer that solved your problem? Please mark it as an Accepted Solution so others with the same problem can find the answer easily. X

using navigation widget to pass parameters between mashups

sreddy-21
1-Newbie

using navigation widget to pass parameters between mashups

Hello Guys.

Mashup 1 contains a map which got its locations and the ids  from infotable,

I wanted to click on the location it should replace the  main mashup window with another mashup corresponding to that ID

Please help me how to achieve this using the navigation widget to pass parameters between mashups,

how can i configure navigation widget to link to different mashups corresponding to the IDs

what i have done so far

I mapped the IDs, location on to the Google Map, and figuring out how to do it

10 REPLIES 10
PaiChung
22-Sapphire I
(To:sreddy-21)

are you navigating to the SAME mashup but with a different ID context

or are you navigating to a Different mashup depending on the ID context?

When you add a Mashup definition in the Navigation Widget Properties, it will add new properties to the navigation widget that represent the Mashup parameters defined on the chosen mashup. You can now wire your 'selected row ID' to those.

If you are also dynamically determining the mashup name itself, you will have to wire that to the Mashup name property of the Navigation widget.

I am navigating to a Different mashup depending on the ID .

Now I already wired the selected row ID (siteid) which is the parameter of the navigating mashup

But when I view mashup , there is no response when I click on the respective marker

Sruchan,

Any update on this? Were any of the posts in the discussion helpful? If so, could you click on the "correct answer" or "mark as helpful" button and let us know?

You should bind the SelectedRowsChanged event from the service which fills the map to the navigation widget which loads the SiteId mashup.

As per your question, you could do it by following steps:-

If you are not maintaining session per user then

1- create a thing having all the properties that you want to show on the other mashup.

2- On SelectedRowsChanged Event set the values (to be shown in new mashup) in the thing properties through a service.

3- Link the navigate with the "ServiceInvokeCompleted" event with the navigate which would navigate to the new mashup.

4- "OnMashupLoad" event call the service to retrieve the values from the thing and bind them with the widgets on the new mashup.

If you are maintaining session per user then:

1- create properties to be shown in the new mashup as session properties. For this go to subsystem then go to UserManagementSubsystem and create properties by editing the GlobalSessionProperties.

2- Map the session properties(under session tab) with the widgets in design mode of mashup.

PaiChung
22-Sapphire I
(To:sgupta-21)

Please note that the first method with a Thing with Properties will not work, because every logged in user will be creating 'race conditions' when they navigate. Since all are writing to the same Thing/Properties

Pai, you are absolutely right but I thought if there is a situation where we have a single administrator who only can have access to certain things and services.Otherwise in general cases we can use user session.

PaiChung
22-Sapphire I
(To:sgupta-21)

That scenario shouldn't make a difference.

I believe that even in that scenario you can use session parameters. On the services and security side you do want to properly set up your services and use the System User as needed.

Suppose we have two DataTable or Things Thing1 and Thing2

We want navigate Mashup1 to Mashup2.

1.Create Mashup1 add Navigation widget.

2. Navigation widget have property MashupName="Mashup2"

3. Create Mashup2.

4.Mashup2 bind with Thing2.

5.In Thing2 create one property name username.

6.In Thing2 create service with name "setUsername" by javascript  like me.userName=userName;

7.Go to Navigation Widget it show "PopLinkClosed" button link "setUsername"


Likewise you can set value to other things as properties.

atahri
4-Participant
(To:sreddy-21)

Hello,

I am having the same problem. Did you find a proper way to do it? Can you share steps and images please.

Top Tags