Hide Relationship Tabs
/*
This sample code hides "BOM" and "BOM Structure" tabs for OOTB Part item.
In order to make this code work for FireFox, it explicitly selects the tab
that should be loaded first -- "Alternates"
*/
var tabbar;
var desiredTabId;
//Function to hide tabs
hideTabs = function() {
//Check if relationship grid is loaded
if (!isTabbarReady()) {
setTimeout(hideTabs, 50);
return;
}
tabbar = parent.relationships.relTabbar;
desiredTabId = tabbar.GetTabId("Alternates");
tabbar.selectTab(desiredTabId);
//Check if desired tab is selected
if (!isTabSelected(desiredTabId)) {
setTimeout(hideTabs, 50);
return;
}
//Hide tabs
var bomTab = tabbar.GetTabId("BOM");
var mbomTab = tabbar.GetTabId("BOM Structure");
tabbar.SetTabVisible(bomTab, false);
tabbar.SetTabVisible(mbomTab, false);
parent.relationshipsControl.onloaded();
};
//Function to check if relationship grid is loaded
var isTabbarReady = function() {
if (parent.relationships === undefined)
return false;
var isReady = Boolean(!parent.relationships ||
!parent.relationships.relTabbarReady ||
parent.relationships.relTabbar.GetTabOrder("|") !== "");
return isReady;
};
//Function to check if desired tab is selected
var isTabSelected = function(palceholderTabId) {
return (tabbar.GetSelectedTab() === palceholderTabId);
};
//Call hideTabs function
setTimeout(hideTabs, 50);