CRM2011 禁用单据后灰掉自定义按钮
1、根据statecode状态判断
function rt_getRibbonStatusByStateCode() {
    try {
        if (Xrm.Page.data != null && Xrm.Page.data.entity != null && Xrm.Page.data.entity.getId() != null && Xrm.Page.data.entity.getId() != "") {
            var id = Xrm.Page.data.entity.getId();
            var typename = Xrm.Page.data.entity.getEntityName();
            var obj = rt_getRefFieldValue(id, typename, typename + "Id", "statecode");
            if (obj != null && obj.statecode != null) {
                if (obj.statecode == "1") {
                    return false;
                }
            }
        }
        return true;
    }
    catch (e) {
        return true;
    }
}
2、在ribbon节中加上如下配件
<RuleDefinitions>
          <TabDisplayRules />
          <DisplayRules/>
          <EnableRules>
            <EnableRule Id="Mscrm.StateCode.Enabled">
              <CustomRule FunctionName="rt_getRibbonStatusByStateCode" Library="$Webresource:new_rt_common.js" Default="true"></CustomRule>
            </EnableRule>
          </EnableRules>
        </RuleDefinitions>
3、在对应自定义按钮配置项下加入
            <EnableRules>
              <EnableRule Id="Mscrm.StateCode.Enabled" />
            </EnableRules>
 
                    
                 
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号