如何转换operator =" eq-userid"从FetchXML到SQL代码的语句

时间:2017-04-11 01:13:10

标签: sql sql-server dynamics-crm crm fetchxml

我正在尝试将公司的FetchXML文件转换为SQL代码。当我在FectchXML中遇到这个声明时:

<condition attribute = "vcr_ambassador", operator="eq-userid">

实际上,我知道这意味着获得当前用户。另外,我已经阅读了一些在线教程和一些堆栈溢出的答案。但我仍然感到困惑。我不确定我是否仍然可以在不翻译此运算符的情况下运行我的SQL代码。我想要的是将SQL的结果与FechXML的结果进行比较。我真的不关心当前的用户。

此外,这个&#34; eq-userid&#34;运算符与SQL中的WHERE子句有关?如果我不翻译此运算符,是否会影响SQL结果?

1 个答案:

答案 0 :(得分:1)

几点:

    当您转换为SQL查询时,
  1. Use filteredview,因此CRM安全概念仍将应用于您的结果集

  2. 如果您计划删除此过滤条件,结果会有明显不同,因为这是针对自定义字段的,vcr_ambassador

  3. 您必须转换如下条件:

    WHERE vcr_ambassador = '<GUID>'

    您可以像下面一样检索GUID

    select s.SystemUserId from SystemUserBase s where s.DomainName = SUSER_SNAME()  --this gives GUID
    
    select SUSER_SNAME() --this gives domain name
    

    参考:https://mahadeomatre.blogspot.com/2015/04/fetch-xml-condition-to-sql-where.html