crm使用soap取消用户訪问记录权限

Posted mthoutai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了crm使用soap取消用户訪问记录权限相关的知识,希望对你有一定的参考价值。

//取消訪问权限
function demo() {
    //操作记录的id
    var targetId = "A8A46444-BA10-E411-8A04-00155D002F02";
    //操作记录的实体名称
    var targetType = "new_config";
    //被分配的用户或者团队的id
    var assignId = "48025176-2B0E-E411-BA68-00155D002F02";
    //systemuser或者team
    var assignType = "systemuser";
   
    RevokeAccess(targetId, targetType, assignId, assignType);
}

function RevokeAccess(targetId, targetType, assignId, assignType) {
    var request = "<s:Envelope xmlns:s=\"
http://schemas.xmlsoap.org/soap/envelope/\">";
    request += "<s:Body>";
    request += "<Execute xmlns=\"
http://schemas.microsoft.com/xrm/2011/Contracts/Services\"";
    request += " xmlns:i=\"
http://www.w3.org/2001/XMLSchema-instance\">";
    request += "<request i:type=\"b:RevokeAccessRequest\"";
    request += " xmlns:a=\"
http://schemas.microsoft.com/xrm/2011/Contracts\"";
    request += " xmlns:b=\"
http://schemas.microsoft.com/crm/2011/Contracts\">";
    request += "<a:Parameters xmlns:c=\"
http://schemas.datacontract.org/2004/07/System.Collections.Generic\">";
    request += "<a:KeyValuePairOfstringanyType>";
    request += "<c:key>Target</c:key>";
    request += "<c:value i:type=\"a:EntityReference\">";
    request += "<a:Id>" + targetId + "</a:Id>";
    request += "<a:LogicalName>" + targetType + "</a:LogicalName>";
    request += "<a:Name i:nil=\"true\" />";
    request += "</c:value>";
    request += "</a:KeyValuePairOfstringanyType>";
    request += "<a:KeyValuePairOfstringanyType>";
    request += "<c:key>Revokee</c:key>";
    request += "<c:value i:type=\"a:EntityReference\">";
    request += "<a:Id>" + assignId + "</a:Id>";
    request += "<a:LogicalName>" + assignType + "</a:LogicalName>";
    request += "<a:Name i:nil=\"true\" />";
    request += "</c:value>";
    request += "</a:KeyValuePairOfstringanyType>";
    request += "</a:Parameters>";
    request += "<a:RequestId i:nil=\"true\" />";
    request += "<a:RequestName>RevokeAccess</a:RequestName>";
    request += "</request>";
    request += "</Execute>";
    request += "</s:Body>";
    request += "</s:Envelope>";

    execSoap(request);
}
//获取服务地址
function getWebUrl() {
    var serverUrl = Xrm.Page.context.getServerUrl();
    if (serverUrl.match(/\/$/)) {
        serverUrl = serverUrl.substring(0, serverUrl.length - 1);
    }
    return serverUrl + "/XRMServices/2011/Organization.svc/web";
}
//运行请求
function execSoap(request) {
    var ajaxRequest = new XMLHttpRequest();
    ajaxRequest.open("POST", getWebUrl(), true)
    ajaxRequest.setRequestHeader("Accept", "application/xml, text/xml, */*");
    ajaxRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
    ajaxRequest.setRequestHeader("SOAPAction", "
http://schemas.microsoft.com/xrm/2011/Contracts/Services/IOrganizationService/Execute");
    ajaxRequest.send(request);
}

以上是关于crm使用soap取消用户訪问记录权限的主要内容,如果未能解决你的问题,请参考以下文章

CRM 权限设置

Oracle权限设置

Android 訪问权限清单

CRM 权限设置 ss

crm使用soap启用和停用记录

关于Dynamics CRM 安装用户权限的说明