需要帮助调试 CRM Web 资源代码 -- 收到错误消息 "Web Resource Method Does Not Exist"

Need help debugging CRM Web Resoruce code -- getting error message "Web Resource Method Does Not Exist"

我正在尝试让 CRM 商机表单上的制造商字段在用户打开表单时成为必需字段。 (我不能简单地使用业务规则来执行此操作,因为 Manufacturer 字段将在 QuoteWerks 中成为必需字段,这是我们创建许多机会记录的地方。)

我已经创建了一个 javascript 网络资源并添加到表单的 OnLoad 部分,但是当我打开表单时收到以下错误:

Web Resource Method Does Not Exist: Set Manufacturer To Required.

下面是我的代码:

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");
    }
}

如能提供调试帮助,我们将不胜感激。谢谢!

对于您的第一期,

从我最初的想法来看,添加时是否正确添加了函数名称 SetManufacturerToRequired OnLoad 错误说您已附加到 onLoad 事件,但在 Webresource 中找不到。您可能已经在 CRM OnLoad 中添加了函数名称作为 Set Manufacturer To Required

但是,当机会范围设置为 "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");
            }
        }

Xrm.Page 已弃用,替换为 executionContext.getFormContext()