2

エンティティにレコードを作成するカスタム ボタンを MS CRM リボンに作成しています (私は odata を使用しています)。このボタンは、「GetGlobalContext」メソッドを使用してコンテキストを取得する JavaScript 関数を起動します。以下の問題に直面しています。 :

プロパティ 'GetGlobalContext' の値が null または未定義です

ここに私のサンプルコードがあります:

//Parameters
var ODataPath;
var serverUrl;

//add the below script to the page DOM 
var imported = document.createElement('script');
imported.src = 'ClientGlobalContext.js.aspx';
document.getElementsByTagName('head')[0].appendChild(imported);


//On COnvert to case click
function OnConvertClick(message) {

    alert(Xrm.Page.getAttribute(message).getValue());
    var data = {
        subject: Xrm.Page.getAttribute(message).getValue()
    };

    CreateCaseOffer("incident", data);
}



//create case from an activity
function CreateCaseOffer(EntityName, data) {

    var context = GetGlobalContext(); //GetGlobalContext function exists in ClientGlobalContext.js.aspx
    serverUrl = location.protocol + "//" + location.hostname + ":" + location.port + "/" + context.getOrgUniqueName();
    ODataPath = serverUrl + "/XRMServices/2011/OrganizationData.svc";

    var jsonCaseOffers = window.JSON.stringify(data);
    if (jsonCaseOffers != null) {
        $.ajax({
            type: "POST",
            contentType: "application/json; charset=utf-8",
            datatype: "json",
            url: ODataPath + "/" + EntityName + "Set",
            data: jsonCaseOffers,
            beforeSend: function (XMLHttpRequest) {
                XMLHttpRequest.setRequestHeader("Accept", "application/json");
            },
            success: function (data, textStatus, XmlHttpRequest) {
                $.each(data, function (k, v) {
                    alert(k + " - " + v);
                });
            },
            error: function (XmlHttpRequest, textStatus, errorThrown) {
            }
        });
    }
}

助言がありますか ??

4

1 に答える 1

3

var で正常に動作するようになりました

var context = Xrm.Page.context;

それ以外の

var context = GetGlobalContext();
于 2012-12-07T13:01:14.110 に答える