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号