Dynamics 365 Web Api 檢查使用者是否具有某個安全形色
使用者和安全形色的關係是N:N,所以要查詢使用者是否擁有某個安全形色即去查詢對應的中間表取值即可,那web api如何來查詢N:N關係。
先看下查詢的xml,這裡的entity name即是實體關係名稱
var roleXml = "<fetch no-lock='true' output-format='xml-platform'>\
<entity name='systemuserroles'>\
<attribute name='systemuserid'/>\
<link-entity name='role' from='roleid' to ='roleid'>\
<filter type='and'>\
<condition attribute='name' operator='like' value='%審批%'></condition>\
</filter>\
</link-entity>\
<filter type='and'>\
<condition attribute='systemuserid' operator='eq' value='" + userId + "'></condition>\
</filter></entity></fetch>";
但在發起request時的entityName卻是systemuserrolescollection,這個你可以在後設資料列表中查詢到,後設資料地址如下,對應到你自己的系統
https://org.domain.com:446/api/data/v8.2/$metadata
var userRole = execFecthXml('systemuserrolescollection', roleXml);
function execFecthXml(entityName, fetchXml) {
var fetchStr = this.getWebAPIUrl() + entityName + "?fetchXml=" + fetchXml;
var req = CRMSdk.ajax.getXHR();
req.open("GET", encodeURI(fetchStr), false);
req.setRequestHeader("Accept", "application/json");
req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
req.setRequestHeader("OData-MaxVersion", "4.0");
req.setRequestHeader("OData-Version", "4.0");
req.setRequestHeader("Prefer", "odata.include-annotations=\"OData.Community.Display.V1.FormattedValue\"");
req.send();
if (req.status == 200)
return JSON.parse(req.responseText).value;
else
throw new Error(JSON.parse(req.responseText).error.message);
}
相關文章
- Dynamics 365 Web API模擬使用者WebAPI
- Dynamics 365 JS中如何查詢使用者對實體是否有某個操作許可權JS
- 如何檢查某個使用者是否具有某個許可權物件上定義的某種許可權物件
- Dynamics 365 Web API Set Values of all Data Types using Web API in Dynamics CRM Through C#WebAPIC#
- Dynamics 365 Web API 批處理(batch requests)WebAPIBAT
- php檢查某個日期是否有效PHP
- Difference between Microsoft Dynamics 365 WEB API, Organization Service and Organization Data ServicROSWebAPI
- Dynamics 365(三)WEB資源使用Web
- 如何檢查某使用者是否分配了某ABAP許可權物件物件
- Dynamics 365 基於ADFS 2016(4.0)的OAuth2 CRM Web API RequestOAuthWebAPI
- Dynamics 365中的Client API form context (formContext)clientAPIORMContext
- linux Shell 命令列-05-test 檢查某個條件是否成立Linux命令列
- 檢查使用者名稱是否使用介面
- Vue檢查使用者名稱是否使用Vue
- LINUX中如何檢視某個埠是否被佔用Linux
- SQL2008查詢某資料庫中的某個值是否存在SQL資料庫
- 如何檢查一個物件是否為空物件
- python怎麼查詢字串中是否包含某個字串Python字串
- Apache檢測某模組是否生效Apache
- Dynamics 365 控制右側欄的介面
- JS實現檢查給定時間範圍是否在每天的某個時間段內JS
- 如何將Dynamics CRM 2016(on-premises)升級到Dynamics 365(on-premises)REM
- Parallels Desktop如何檢查Windows系統是否具有EFI/UEFI或 Legacy BIOS韌體介面ParallelWindowsiOS
- VSCode JavaScript snippets for Dynamics 365/CRM 2011/2013/2015/2016VSCodeJavaScript
- 檢查型別是否溢位型別
- 判斷是否遵守某個協議協議
- python列表中是否存在某個元素Python
- windows 檢測某ip的埠是否可以訪問Windows
- MongoDB 安全&安全檢查列表MongoDB
- 如何檢查域名解析是否生效?
- 如何檢查是否物理伺服器?伺服器
- JS如何判斷一個陣列是否為空、是否含有某個值JS陣列
- Google官方釋出Chrome擴充套件Password Checkup 檢查密碼是否安全GoChrome套件密碼
- Dynamics CRM 365零基礎入門學習(一)Dynamics介紹以及開發工具配置
- 17.django新增檢查使用者名稱和手機號數量介面+vue檢查使用者名稱,手機號是否重複DjangoVue
- js檢查身份證號是否正確JS
- Linux檢查遠端埠是否通暢Linux
- 檢查vector中是否包含給定元素