SetStateRequest being deprecated now in Dynamics 365 (online).
use UpdateRequest to modify specialized fields.
Refer to the below link
https://msdn.microsoft.com/en-us/library/dn932124.aspx function GetEntityMetaData() {
var entityType = "Account";
var metaDataId = getMetaDataIdByName(entityType);
var schemaNames = getAttributeList(metaDataId);
}
function getAttributeList(metaDataId) {
var attributesList;
$.ajax({
type: "GET",
contentType: "application/json; charset=utf-8",
datatype: "json",
url: Xrm.Page.context.getClientUrl() + "/api/data/v8.1/EntityDefinitions(" + metaDataId + ")?$select=LogicalName&$expand=Attributes($select=LogicalName)",
beforeSend: function (XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("OData-MaxVersion", "4.0");
XMLHttpRequest.setRequestHeader("OData-Version", "4.0");
XMLHttpRequest.setRequestHeader("Accept", "application/json");
XMLHttpRequest.setRequestHeader("Prefer", "odata.include-annotations=\"OData.Community.Display.V1.FormattedValue\"");
},
async: false,
success: function (data, textStatus, xhr) {
attributesList = data.Attributes;
},
error: function (xhr, textStatus, errorThrown) {
alert(textStatus + " " + errorThrown);
}
});
return attributesList;
}
function getMetaDataIdByName(entityType) {
var MetadataId;
$.ajax({
type: "GET",
contentType: "application/json; charset=utf-8",
datatype: "json",
url: Xrm.Page.context.getClientUrl() + "/api/data/v8.1/EntityDefinitions?$select=DisplayName,IsKnowledgeManagementEnabled,EntitySetName&$filter=SchemaName eq '" + entityType + "'",
beforeSend: function (XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("OData-MaxVersion", "4.0");
XMLHttpRequest.setRequestHeader("OData-Version", "4.0");
XMLHttpRequest.setRequestHeader("Accept", "application/json");
XMLHttpRequest.setRequestHeader("Prefer", "odata.include-annotations=\"OData.Community.Display.V1.FormattedValue\"");
},
async: false,
success: function (data, textStatus, xhr) {
var result = data.value[0];
MetadataId = result.MetadataId;
},
error: function (xhr, textStatus, errorThrown) {
alert(textStatus + " " + errorThrown);
}
});
return MetadataId;
}
private static void RetrieveTeamMembers(IOrganizationService service, EntityReference teamEntityReference)
{
QueryExpression userQuery = new QueryExpression("systemuser");
userQuery.ColumnSet = new ColumnSet("fullname");
LinkEntity teamLink = new LinkEntity("systemuser", "teammembership", "systemuserid", "systemuserid", JoinOperator.Inner);
ConditionExpression teamCondition = new ConditionExpression("teamid", ConditionOperator.Equal, teamEntityReference.Id);
teamLink.LinkCriteria.AddCondition(teamCondition);
userQuery.LinkEntities.Add(teamLink);
EntityCollection retrievedUsers = service.RetrieveMultiple(userQuery);
foreach (Entity user in retrievedUsers.Entities)
{
Console.WriteLine(String.Format("User: {0} with GUID {1}", user.GetAttributeValue<string>("fullname"),
user.Id));
}
}
function getUserFullName() {
var serverUrl = getCrmServerUrl();
var userRequest = GetRequestObject();
userRequest.open("GET", serverUrl + "/SystemUserSet(guid'" + Xrm.Page.context.getUserId() + "')?$select=FullName", false);
userRequest.setRequestHeader("Accept", "application/json");
userRequest.setRequestHeader("Content-Type", "application/json; charset=utf-8");
userRequest.send();
if (userRequest.status === 200) {
var retrievedUser = JSON.parse(userRequest.responseText).d;
var userFullName = retrievedUser.FullName;
return userFullName;
}
else {
return "";
}
}
function getCrmServerUrl() {
if (Xrm.Page.context.getClientUrl) // CRM 2011 UR 12+ and CRM 2013
{
serverUrl = Xrm.Page.context.getClientUrl() + "/";
}
else // CRM 2011 UR 11 or below
{
serverUrl = Xrm.Page.context.getServerUrl();
}
// Adjust URL for differences between on premise and online
if (serverUrl.match(/\/$/)) {
serverUrl = serverUrl.substring(0, serverUrl.length - 1);
}
return serverUrl + "/XRMServices/2011/OrganizationData.svc";
}
function GetRequestObject() {
if (window.XMLHttpRequest) {
return new window.XMLHttpRequest;
}
else {
try {
return new ActiveXObject("MSXML2.XMLHTTP.3.0");
}
catch (ex) {
return null;
}
}
}