This is what I have. Let me know if something isn't clear or there are any issues.
//values that are needed
var opt = {
clickResult: e.relatedData.metricSetBinding.dataResult.cellset.rows[e.relatedData.rows[0]].members[0].compatibleUniqueName;
width: 400,
height: 400,
popupId: "d250cb23-677a-4fb3-8807-2dcbe48bd1d9",
thisId: "12adb819-b5e5-71ca-ed60-97142ca33b65"
};
//Set the event data to center, and set the adapter property. This places the popup right in the middle of the screen. Adjust as needed.
e.originalEvent.clientX = (e.originalEvent.view.innerWidth - opt.width) /2;
e.originalEvent.clientY = (e.originalEvent.view.innerHeight - opt.height) /2;
//the adapter is set in the event, because we are passing it to execute() instead.
e.adapter = this.getService("CanvasService").canvasAdapter.getAdapterById(opt.thisId);
//Create the Popup settings
var popUpOptions = {
targetObjectId: opt.popupId,// used the id of the popup dashboard
targetObjectType: "Dashboard",
actionType: dundas.view.ActionType.POPUP,
actionTarget: dundas.view.ActionTarget.SAME_WINDOW,
navigateType: dundas.view.DataActionNavigateType.ANOTHER_VIEW,
boundVisual: "",
width: opt.width,
height: opt.height,
isMouseLeaveIgnored: true,
isFocusLostIgnored: false,
parameterMappings: []
};
//set up the parameter mappings to pass the parameter from the adapter to the popup dashboard.
var mapping1 = new dundas.view.ParameterMapping({
source: new dundas.view.ParameterMappingItem({
"parameterValueType": dundas.data.ParameterValueTypes.ALL_HIERARCHY,
"elementUsageUniqueName": "Group"
})
,
target: new dundas.view.ParameterMappingItem({
"parameterValueType": dundas.data.ParameterValueTypes.ALL_HIERARCHY,
"elementUsageUniqueName": "Group",
"viewParameterId": "3538c295-bd15-2f29-3f26-9e355c9482c7" // the id of the view parameter in the popup dashboard
})
});
popUpOptions.parameterMappings.push(mapping1);
//Create and execute the Popup.
var popup = new dundas.view.PopupAction(popUpOptions);
popup.execute(e);