我在SharePoint上托管了一个自定义ASPX页面,其中包含以下Web部件连接,从PerformancePoint过滤器到SSRS ReportViewWebPart:
<WebPartPages:SPProxyWebPartManager id="pwpm_0d7e10d6dc8f4b00a8a0aeb2a354c814" runat="server">
<SPWebPartConnections>
<WebPartPages:SPWebPartConnection ConsumerConnectionPointID="BIDataProvider"
ConsumerID="pps_CapexReport"
ID="conn_5b654f26f68f41c1ac67be5a440d1b4d"
ProviderConnectionPointID="TransformableBIDataProvider"
ProviderID="pps_FunctionHierarchyFilter">
<pps:TransformableBIDataProviderTransformer ConfigurationState="Microsoft.PerformancePoint.Scorecards.TransformerConfigurationRecord"
ID="a0bb0034-db8a-41ce-8d2c-6db2194e639b">
</pps:TransformableBIDataProviderTransformer></WebPartPages:SPWebPartConnection>
</SPWebPartConnections>
</WebPartPages:SPProxyWebPartManager>
可以使用sharepoint Web界面生成此代码以添加连接或手动键入标记 - 无论是哪种方式,使用SharePoint Designer 2010打开然后重新保存页面都会删除页面上的所有Web部件连接,只留下:
<WebPartPages:SPProxyWebPartManager id="pwpm_0d7e10d6dc8f4b00a8a0aeb2a354c814" runat="server">
<SPWebPartConnections></SPWebPartConnections>
</WebPartPages:SPProxyWebPartManager>
使用常规SharePoint Designer编辑页面GUI(非高级模式)允许我添加连接并保存页面,但随后会抛出运行时错误:“功能层次结构和资本支出报告之间的连接转换器不是客户端可连接的变换器。 “
深入挖掘,我发现包括
<pps:TransformableBIDataProviderTransformer
ConfigurationState="Microsoft.PerformancePoint.Scorecards.TransformerConfigurationRecord"
ID="a0bb0034-db8a-41ce-8d2c-6db2194e639b">
</pps:TransformableBIDataProviderTransformer>
是导致SharePoint Designer完全删除连接的原因。但是如果删除它,运行时会抛出“not client connectedable transformer”异常。
您可以想象,这非常令人讨厌,因为这意味着每次使用SharePoint Designer编辑aspx页面时,我都必须重新添加页面上的所有连接(使用笨重的Web界面)。
这里是否有一种解决方法或某些东西?如何在标记中添加Web部件连接,而不是在编辑页面时删除它们?