Javascript 需要帮助调试CRM Web资源代码--获取错误消息;“Web资源方法不存在”;
我试图在用户打开CRM Opportunity表单时,使其上的Manufacturer字段成为必需字段。(我不能简单地使用业务规则来做到这一点,因为QuoteWorks中也需要“制造商”字段,这是我们创建许多Opportunity记录的地方。) 我已经创建了一个javascript web资源并添加到表单的OnLoad部分,但在打开表单时收到以下错误: Web资源方法不存在:将Manufacturer设置为Required 下面是我的代码:Javascript 需要帮助调试CRM Web资源代码--获取错误消息;“Web资源方法不存在”;,javascript,dynamics-crm,webresource,Javascript,Dynamics Crm,Webresource,我试图在用户打开CRM Opportunity表单时,使其上的Manufacturer字段成为必需字段。(我不能简单地使用业务规则来做到这一点,因为QuoteWorks中也需要“制造商”字段,这是我们创建许多Opportunity记录的地方。) 我已经创建了一个javascript web资源并添加到表单的OnLoad部分,但在打开表单时收到以下错误: Web资源方法不存在:将Manufacturer设置为Required 下面是我的代码: function SetManufacturerToR
function SetManufacturerToRequired() {
var value = Xrm.Page.getAttribute("new_opportunityscope");
if (value != null) {
if (value == "Product") {
Xrm.Page.getAttribute("new_manufacturer").setRequiredLevel("required");
} else {
Xrm.Page.getAttribute("new_manufacturer").setRequiredLevel("none");
}
}
else {
Xrm.Page.getAttribute("new_manufacturer").setRequiredLevel("none");
}
}
如果您能帮助调试,我们将不胜感激。谢谢 第一期
从我最初的想法来看,在添加OnLoad时是否正确添加了函数名
SetManufacturerToRequired
。错误表示已附加到OnLoad事件,但在Webresource中找不到。您可能已经在CRM OnLoad中添加了函数名,将Manufacturer设置为Required
但是,当Opportunity Scope设置为“Product”时,仍然不需要该字段
尝试下面的代码,在您的原始代码中,您只获取属性,而不是它的值
function SetManufacturerToRequired() {
var value = Xrm.Page.getAttribute("new_opportunityscope");
if (value != null) {
//value.getValue() this will give you value as 777601 or something
if (value.getText()== "Product") {
Xrm.Page.getAttribute("new_manufacturer").setRequiredLevel("required");
} else {
Xrm.Page.getAttribute("new_manufacturer").setRequiredLevel("none");
}
}
else {
Xrm.Page.getAttribute("new_manufacturer").setRequiredLevel("none");
}
}
从我最初的想法来看,在添加OnLoad时是否正确添加了函数名
SetManufacturerToRequired
。错误表示已附加到OnLoad事件,但在Webresource中找不到。您可能在CRM OnLoad中添加了函数名,因为将制造商设置为必需的。如果可能,请发布编辑(表单)的屏幕截图,在哪里添加OnLoad事件将提供更多信息。@AnkUser,您是对的,谢谢!我称之为“将制造商设置为必需”,需要删除空格。错误不再发生。但是,当Opportunity Scope设置为“Product”时,仍然不需要该字段。web资源在“OnLoad”部分启用,但似乎什么都不做。有什么问题吗?我在你的评论中添加了答案。我将函数名更新为SetManufacturerToRequired,错误消失了。谢谢但是,我尝试使用您的代码,该字段仍然没有更新。你知道为什么吗?“Opportunity Scope”是一个选项集字段,这可能是它不起作用的原因吗?我更新了答案以获取使用value.getText()的选项集文本,并使用value.getValue()获取其值