Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dynamics crm 2011 获取XML vs SQL CRM2011_Dynamics Crm 2011_Fetchxml - Fatal编程技术网

Dynamics crm 2011 获取XML vs SQL CRM2011

Dynamics crm 2011 获取XML vs SQL CRM2011,dynamics-crm-2011,fetchxml,Dynamics Crm 2011,Fetchxml,我有一个奇怪的问题,希望有人能解释为什么会发生这种情况。如果我使用FetchXML查询动态,请使用以下命令: 然后我得到以下一组结果: 但是,如果我在SQL中执行相同的查询: 从[CRM2011_MSCRM].[dbo].[FilteredActivityPointer]中选择前100名activityid、activitytypecodename、createdon、owneridname、statecodename、statuscodename、statuscodename、subject、

我有一个奇怪的问题,希望有人能解释为什么会发生这种情况。如果我使用FetchXML查询动态,请使用以下命令:

然后我得到以下一组结果:

但是,如果我在SQL中执行相同的查询:

从[CRM2011_MSCRM].[dbo].[FilteredActivityPointer]中选择前100名activityid、activitytypecodename、createdon、owneridname、statecodename、statuscodename、statuscodename、subject、ActualLend,其中根据ActualLend描述的顺序为'66431C2F-FAB6-DD11-94F2-0014221F6F5C' 然后我得到以下结果:

您可以看到结果几乎相同,但是如果查看status code列,您可以看到结果的不同之处在于,一个声明它已发送,而另一个声明已完成

因此,当两种不同的方法似乎为状态代码返回了不同的结果时,如何根据项目的状态进行过滤

我目前正在尝试使用FetchXML在SSRS中编写一份报告。我以前曾尝试使用SQL编写报告,但遇到了一些问题,因此使用FetchXML解决了这个问题

-编辑

当我使用约会实体时,我会得到正确的结果:

<fetch mapping="logical" count="50" version="1.0">
<entity name="appointment">
    <attribute name="activityid" />
    <attribute name="activitytypecode" />
    <attribute name="actualend" />
    <attribute name="createdon" />
    <attribute name="ownerid" />
    <attribute name="statecode" />
    <attribute name="statuscode" />
    <attribute name="subject" />
    <filter>
        <condition attribute="regardingobjectid" operator="eq" value="66431c2f-fab6-dd11-94f2-0014221f6f5c" />
    </filter>
</entity>
其中返回以下内容:


不过,唯一的问题是我需要知道整个不同活动列表的状态——因此我认为您需要使用活动指针,因为它是基类,而且您不能在SSR中将结果连接在一起

好吧,也许这不是解决这个问题的答案,但我想我可以解释一下为什么会发生这种情况。 对于ActivityInter的状态代码,fetchXML获取整数值并将其映射到ActivityInter查找表,而SQL将其映射到实际子实体的表

例如,以您的第一条记录为例,它恰好是一封电子邮件。FetchXML表示状态已取消。检查ActivityPointInter元数据,我们看到cancelled的值为3。现在,转到电子邮件实体元数据,我们看到值3实际上已发送,这是SQL所说的

这适用于表中的所有实体。例如,没有fetchXML状态的孤独任务实际上是根据sql完成的。这是值5,它不映射到ActivityPoints的任何内容;它们的值限制在1-4的范围内。因此,fetchXML没有显示任何内容


尝试获取statuscodeValue而不是名称。我希望fetchXML和SQL的整数值都是相同的。为什么它们映射的名称不同,我无法回答。

哪一个显示正确的结果?SQL显示正确的结果。-我不相信您可以完成电子邮件并将其作为取消状态。您是否可以尝试仅针对约会运行fetchxml以检查状态代码是否检索正确?我同意SQL看起来是正确的-fetchxml返回的任务没有状态代码,这显然是假的。