Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.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
Deployment 基于FetchXML的SSRS报告部署错误_Deployment_Dataset_Report_Expression_Fetchxml - Fatal编程技术网

Deployment 基于FetchXML的SSRS报告部署错误

Deployment 基于FetchXML的SSRS报告部署错误,deployment,dataset,report,expression,fetchxml,Deployment,Dataset,Report,Expression,Fetchxml,我提交了一个我无法解决的小问题。也许将来它会帮助别人 我正在处理2008年的投标和2011年的动态CRM 我刚刚开发了一个基于XML的报告(客户端要求)。此外,我还使用表达式作为数据集查询,例如: = IIf(Parameters!strLob.Label = "Consulting", "<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='true'><entity nam

我提交了一个我无法解决的小问题。也许将来它会帮助别人

我正在处理2008年的投标和2011年的动态CRM

我刚刚开发了一个基于XML的报告(客户端要求)。此外,我还使用表达式作为数据集查询,例如:

= IIf(Parameters!strLob.Label = "Consulting",
"<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='true'><entity name='opportunity'><attribute name='mcs_internalreferrer' /><order attribute='mcs_internalreferrer' descending='false' /><link-entity name='mcs_lob' from='mcs_lobid' to='mcs_lobid' visible='false' alias='lob'><attribute name='mcs_name' /><!-- lob_mcs_name --><filter type='and'><condition attribute='mcs_name' operator='eq' value='Consulting' /></filter></link-entity><filter type='and'><condition attribute='mcs_internalreferrer' operator='not-null' /></filter></entity></fetch>",
"<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='true'><entity name='mcs_option'><attribute name='mcs_key' alias='mcs_internalreferrerValue'/><attribute name='mcs_value' alias='mcs_internalreferrer'/><filter type='and'><condition attribute='mcs_key' operator='eq' value='reports_param_na' /></filter></entity></fetch>"
)
=IIf(参数!strLob.Label=“咨询”,
"",
""
)
其目的是根据参数值返回一个伪值(第二次查询),而不是正常值(第一次查询)

在VisualStudio的预览模式下,一切正常。我可以查看和使用两个查询中的值

但由于某些原因,在尝试在Dynamics中部署此报表时,我遇到了一个格式错误的FetchXML错误(详细信息如下)。事实上,当我用一个普通的FetchXML值替换表达式时,报告部署得很好。实际上,我可以放置任何有效的FetchXML,即使它在我的报告上下文中没有意义,它也会部署!所以真正的问题是表达式,它们不能被识别为有效的XML

知道如何让Dynamics接受基于表达式的数据集吗

以下是错误日志:

Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: Command text is invalid.Detail: 
<OrganizationServiceFault xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/xrm/2011/Contracts">
  <ErrorCode>-2147220733</ErrorCode>
  <ErrorDetails xmlns:d2p1="http://schemas.datacontract.org/2004/07/System.Collections.Generic">
    <KeyValuePairOfstringanyType>
      <d2p1:key>CallStack</d2p1:key>
      <d2p1:value xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">   at Microsoft.Crm.Extensibility.VersionedPluginProxyStepBase.Execute(PipelineExecutionContext context)
   at Microsoft.Crm.Extensibility.Pipeline.Execute(PipelineExecutionContext context)
   at Microsoft.Crm.Extensibility.MessageProcessor.Execute(PipelineExecutionContext context)
   at Microsoft.Crm.Extensibility.InternalMessageDispatcher.Execute(PipelineExecutionContext context)
   at Microsoft.Crm.Extensibility.ExternalMessageDispatcher.ExecuteInternal(IInProcessOrganizationServiceFactory serviceFactory, IPlatformMessageDispatcherFactory dispatcherFactory, String messageName, String requestName, Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, ParameterCollection fields, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId, Guid transactionContextId, Int32 invocationSource, Nullable`1 requestId, Version endpointVersion)
   at Microsoft.Crm.Extensibility.OrganizationSdkServiceInternal.ExecuteRequest(OrganizationRequest request, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType)
   at Microsoft.Crm.Extensibility.OrganizationSdkServiceInternal.Execute(OrganizationRequest request, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType)</d2p1:value>
    </KeyValuePairOfstringanyType>
  </ErrorDetails>
  <Message>Command text is invalid.</Message>
  <Timestamp>2013-01-29T20:45:56.0253388Z</Timestamp>
  <InnerFault i:nil="true" />
  <TraceText i:nil="true" />
</OrganizationServiceFault>
未处理的异常:System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault,Microsoft.Xrm.Sdk,Version=5.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35]:命令文本无效。详细信息:
-2147220733
呼叫栈
位于Microsoft.Crm.Extensibility.VersionedPluginProxyStepBase.Execute(PipelineExecutionContext)
位于Microsoft.Crm.Extensibility.Pipeline.Execute(PipelineExecutionContext)
位于Microsoft.Crm.Extensibility.MessageProcessor.Execute(PipelineExecutionContext)
位于Microsoft.Crm.Extensibility.InternalMessageDispatcher.Execute(PipelineExecutionContext)
位于Microsoft.Crm.Extensibility.ExternalMessageDispatcher.ExecuteInternal(IInProcessorOrganizationServiceFactory serviceFactory,IPlatformMessageDispatcherFactory dispatcherFactory dispatcherFactory,String messageName,String requestName,Int32 primaryObjectTypeCode,Int32 secondaryObjectTypeCode,ParameterCollection字段,CorrelationToken CorrelationToken,CallerRigintoken OrigingToken,UserAuth UserAuth,Guid callerId,Guid TransactiononContextId,Int32调用源,可为空的`1请求ID,版本endpointVersion)
位于Microsoft.Crm.Extensibility.OrganizationSdkServiceInternal.ExecuteRequest(OrganizationRequest请求,CorrelationToken CorrelationToken,CallerOrigingToken CallerOrigingToken,WebServiceType服务类型)
在Microsoft.Crm.Extensibility.OrganizationSdkServiceInternal.Execute(OrganizationRequest请求,CorrelationToken CorrelationToken,CallerOrigingToken CallerOrigingToken,WebServiceType服务类型)
命令文本无效。
2013-01-29T20:45:56.0253388

经过进一步搜索,这似乎是Dynamics CRM 2011的一个限制

一个可能有效的短期解决方案:

  • 创建一个Dataset1和一些基于它的报表元素
  • 创建一个Dataset2和基于它的一些类似元素
  • 基于参数值使这些元素可见/隐藏
  • 这将为我们的FetchXML报告提供动态的外观