Hello,
I've been receiving the following error in my code once I've injected it onto my form - formContext.ui.tabs.get(...).setDisabled is not a function
Here is my code:
function HideAndDisableTabsBasedOnBPFStage(executionContext) {
var formContext = executionContext.getFormContext();
// Hide and disable tabs based on the current BPF stage
var bpfStageId = formContext.data.process.getActiveStage().getId();
switch (bpfStageId) {
case "abbda151-be8f-462a-99b9-b32231baadaf":
// Hide and disable tabs for Request stage
formContext.ui.tabs.get("tab_Requestor").setVisible(true);
formContext.ui.tabs.get("tab_CourtApprover").setVisible(false);
formContext.ui.tabs.get("tab_JBSIS").setVisible(false);
formContext.ui.tabs.get("tab_CTS").setVisible(false);
formContext.ui.tabs.get("tab_Finance").setVisible(false);
formContext.ui.tabs.get("tab_CTSEntry").setVisible(false);
break;
case "ea3aa60c-f952-4edb-b955-c78c2cebc3a6":
// Hide and disable tabs for Court Approver stage
formContext.ui.tabs.get("tab_Requestor").setVisible(true);
formContext.ui.tabs.get("tab_CourtApprover").setVisible(true);
formContext.ui.tabs.get("tab_JBSIS").setVisible(false);
formContext.ui.tabs.get("tab_CTS").setVisible(false);
formContext.ui.tabs.get("tab_Finance").setVisible(false);
formContext.ui.tabs.get("tab_CTSEntry").setVisible(false);
break;
case "0d92ffa6-786d-4e4b-b790-695f4495c7a7":
// Hide and disable tabs for Court Approver (non-charging) stage
formContext.ui.tabs.get("tab_Requestor").setVisible(true);
formContext.ui.tabs.get("tab_CourtApprover").setVisible(true);
formContext.ui.tabs.get("tab_JBSIS").setVisible(false);
formContext.ui.tabs.get("tab_CTS").setVisible(false);
formContext.ui.tabs.get("tab_Finance").setVisible(false);
formContext.ui.tabs.get("tab_CTSEntry").setVisible(false);
break;
case "bdcfd44f-6b69-47ef-9785-a7a3c029169c":
// Hide and disable tabs for JBSIS stage
formContext.ui.tabs.get("tab_Requestor").setVisible(true);
formContext.ui.tabs.get("tab_Requestor").setDisabled(true);
formContext.ui.tabs.get("tab_CourtApprover").setVisible(true);
formContext.ui.tabs.get("tab_CourtApprover").setDisabled(true);
formContext.ui.tabs.get("tab_JBSIS").setVisible(true);
formContext.ui.tabs.get("tab_CTS").setVisible(false);
formContext.ui.tabs.get("tab_Finance").setVisible(false);
formContext.ui.tabs.get("tab_CTSEntry").setVisible(false);
break;
case "bccdfa2d-831a-4f4e-a370-c0d3b130914b":
// Hide and disable tabs for Finance stage
formContext.ui.tabs.get("tab_Requestor").setVisible(true);
formContext.ui.tabs.get("tab_Requestor").setDisabled(true);
formContext.ui.tabs.get("tab_CourtApprover").setVisible(true);
formContext.ui.tabs.get("tab_CourtApprover").setDisabled(true);
formContext.ui.tabs.get("tab_JBSIS").setVisible(false);
formContext.ui.tabs.get("tab_CTS").setVisible(false);
formContext.ui.tabs.get("tab_Finance").setVisible(true);
formContext.ui.tabs.get("tab_CTSEntry").setVisible(false);
break;
case "fcfaceed-fc37-4dde-9351-f8942fe2b73f":
// Hide and disable tabs for CTS Review stage
formContext.ui.tabs.get("tab_Requestor").setVisible(true);
formContext.ui.tabs.get("tab_Requestor").setDisabled(true);
formContext.ui.tabs.get("tab_CourtApprover").setVisible(true);
formContext.ui.tabs.get("tab_CourtApprover").setDisabled(true);
formContext.ui.tabs.get("tab_JBSIS").setVisible(false);
formContext.ui.tabs.get("tab_CTS").setVisible(true);
formContext.ui.tabs.get("tab_Finance").setVisible(false);
formContext.ui.tabs.get("tab_CTSEntry").setVisible(false);
break;
case "f712096e-f750-4b6e-a10e-0e8d3184387e":
// Hide and disable tabs for CTS Entry stage
formContext.ui.tabs.get("tab_Requestor").setVisible(true);
formContext.ui.tabs.get("tab_Requestor").setDisabled(true);
formContext.ui.tabs.get("tab_CourtApprover").setVisible(true);
formContext.ui.tabs.get("tab_CourtApprover").setDisabled(true);
formContext.ui.tabs.get("tab_JBSIS").setVisible(true);
formContext.ui.tabs.get("tab_JBSIS").setDisabled(true);
formContext.ui.tabs.get("tab_CTS").setVisible(true);
formContext.ui.tabs.get("tab_CTS").setDisabled(true);
formContext.ui.tabs.get("tab_Finance").setVisible(true);
formContext.ui.tabs.get("tab_Finance").setDisabled(true);
formContext.ui.tabs.get("tab_CTSEntry").setVisible(true);
break;
default:
break;
}
}
// Add event handlers for OnLoad and OnStageChange events
Xrm.Page.data.process.addOnLoad(HideAndDisableTabsBasedOnBPFStage);
Xrm.Page.data.process.addOnStageChange(HideAndDisableTabsBasedOnBPFStage);Thanks in advance!









