views:

68

answers:

0

I have a custom ASPX page hosted on SharePoint with the following web part connection, from a PerformancePoint filter to a 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>

This code can be generated using the sharepoint web interface to add connections or by manually typing the markup -- either way, opening and then re-saving the page using SharePoint Designer 2010 deletes ALL web part connections on the page, leaving only:

<WebPartPages:SPProxyWebPartManager id="pwpm_0d7e10d6dc8f4b00a8a0aeb2a354c814" runat="server">
        <SPWebPartConnections></SPWebPartConnections>
    </WebPartPages:SPProxyWebPartManager>

Using the regular SharePoint Designer edit page GUI (not advanced mode) allows me to add connections and save the page, but then throws the runtime error: "The connection transformer between Function Hierarchy and Capex Report is not a Client Connectable Transformer."

Digging a little deeper, I have found that including

    <pps:TransformableBIDataProviderTransformer 
ConfigurationState="Microsoft.PerformancePoint.Scorecards.TransformerConfigurationRecord"
 ID="a0bb0034-db8a-41ce-8d2c-6db2194e639b">
    </pps:TransformableBIDataProviderTransformer>

is what is causing SharePoint Designer to delete the connections entirely. But if you remove it, the runtime throws the "not client connectable transformer" exception.

As you can imagine, this is massively annoying, because it means I have to re-add all the connections on a page (using the clunky web interface) any time I edit an aspx page using SharePoint Designer.

Is there a workaround or something I'm missing here? How can I add web part connections in markup and not have them deleted any time I edit the page?