Load a Visualforce Page with Parameters in Lightning – Console Page Component
Fri Aug 16 2024 15:50:01 GMT+0000 (Coordinated Universal Time)
Saved by
@shawnclevinger
// Check to see if running in a Console
var workspaceAPI = component.find("workspace");
workspaceAPI.isConsoleNavigation().then(function(consoleResponse) {
console.log("IsConsole: ", consoleResponse);
if (consoleResponse) {
// Save current tab info
workspaceAPI.getFocusedTabInfo().then(function(tabResponse) {
var closeTabId = tabResponse.tabId;
var closeTitle = tabResponse.title;
var parentTabId = tabResponse.parentTabId;
var isSubtab = tabResponse.isSubtab;
console.log("Current Tab: ", closeTabId + " | " + closeTitle);
console.log("Is Sub: ",isSubtab," ParentId: ",parentTabId);
// Open Visualforce Page in a new tab
if (isSubtab) {
workspaceAPI.openSubtab({
parentTabId: parentTabId,
url: vfURL,
focus: true
}).then(function(openSubResponse) {
console.log("New SubTab Id: ", openSubResponse);
})
.catch(function(error) {
console.log(error);
});
} else {
workspaceAPI.openTab({
url: vfURL,
focus: true
}).then(function(openParResponse) {
console.log("New ParentTab Id: ", openParResponse);
})
.catch(function(error) {
console.log(error);
});
}
// Because exiting the VF page will reopen the object record,
// close the tab we started on
if (tabResponse.closeable && !tabResponse.pinned) {
workspaceAPI.closeTab({
tabId: closeTabId
}).then(function(closeResponse) {
console.log("Closed: ", closeTitle);
})
.catch(function(error) {
console.log(error);
});
} else {
console.log("Left Open: ", tabResponse.title);
}
})
.catch(function(error) {
console.log(error);
})
content_copyCOPY
https://unofficialsf.com/load-a-visualforce-page-with-parameters-in-lightning/
Comments