2013-07-18 105 views
0

我在使用MS CRM 2011中的JOSN數據時遇到問題。我正在使用正確的REST語法來提取CRM數據,但我的JavaScript是剩餘的問題。MS CRM 2011中的JSON數據

我想要做的是從我的JSON追加數據到我選擇的類。我檢查了控制檯,沒有發現錯誤。原來我相信有一次我有了JSON對象,我可以使用jQuery從中獲取數據。下面是代碼我目前有:

RetrieveScoutMetadata : (function(scout_displayable){ 
var query = "/scout_metadataSet?$select=scout_data_type,scout_display_name,scout_display_order,scout_displayable,ImportSequenceNumber,scout_name,scout_metadataId&$orderby=scout_display_order asc&$filter=scout_displayable eq "+scout_displayable+""; 
ExecuteQuery(query); 
}) 

RetrieveScoutOpportunity : (function(scout_account){ 
var query = "/scout_opportunitySet?$select=*&$filter=scout_account/Id eq guid'"+scout_account+"'"; 
ExecuteQuery(query); 
}) 

RetrieveScoutAccount : (function(scout_account){ 
var query = "/scout_accountSet?$select=*&$filter=scout_account/Id eq guid'"+scout_account+"'"; 
ExecuteQuery(query); 
}) 

// 
// ExecuteQuery executes the specified OData Query asyncronously 
// 
// NOTE: Requires JSON and jQuery libraries. Review this Microsoft MSDN article before 
//  using this script http://msdn.microsoft.com/en-us/library/gg328025.aspx 
// 
function ExecuteQuery(ODataQuery) { 

var serverUrl = Xrm.Page.context.getServerUrl(); 

// Adjust URL for differences between on premise and online 
if (serverUrl.match(/\/$/)) { 
    serverUrl = serverUrl.substring(0, serverUrl.length - 1); 
} 

var ODataURL = serverUrl + "/XRMServices/2011/OrganizationData.svc" + ODataQuery; 

$.ajax({ 
    type: "GET", 
    contentType: "application/json; charset=utf-8", 
    datatype: "json", 
    url: ODataURL, 
    beforeSend: function (XMLHttpRequest) { 
     XMLHttpRequest.setRequestHeader("Accept", "application/json"); 
    }, 
    success: function (data, textStatus, XmlHttpRequest) { 
     // 
     // Handle result from successful execution 
     // 
     // e.g. data.d.results 
     alert("OData Execution Success Occurred"); 
    }, 
    error: function (XmlHttpRequest, textStatus, errorObject) { 
     // 
     // Handle result from unsuccessful execution 
     // 
     alert("OData Execution Error Occurred"); 
    } 
}); 
$('.up-sell').append(account.scout_num_up_sells); 
} 

// 
// Error Handler 
// 
function ErrorHandler(XMLHttpRequest, textStatus, errorObject) 
    { alert("Error Occurred : " + textStatus + ": " + JSON.parse(XMLHttpRequest.responseText).error.message.value); } 

回答

0

要得到響應使用 「完整」 的功能:

complete: function (jsondata, stat) { 
         if (stat == "success") { 
          data = JSON.parse(jsondata.responseText); 
         } 
}