I’m working on a Search oriented portal using FAST search, one of the requirements we have is the ability to save currently executed search so users can re-run the search at a later point of time. We wrote a custom web part that leverages “My Links” to save the search query URLs. We needed to display all the saved searches in “My Links” in a web part page within Sharepoint site, so I started looking at QuickLinksMicroView webpart to accomplish this. Incase you guys are not familar with QuickLinksMicroView webpart, if you try to add this webpart to the page you won’t find it, you have to go to webpart gallery add it to the gallery and then you should be able to insert to page. This worked great to a certain extent, problem was as users started adding other links to “My Links” obviously it started to show up in the webpart and we needed to have a filtered view of this to show just the links grouped under “My Searches” group. Unfortunately QuickLinksMicroView webpart had no way of achieving this filtered behavior we needed. In this post I will walk through how you can use dataview and user profile webservice with bit of custom XSLT to show items from “My Links” filtered by group
Insert Dataview webpart, for data source expand xml web services and click on “connect to a web service” link
This will bring up the data source properties window, enter user profile web service URL, from operation dropdown list of select “GetUserLinks” and click on ok to close the data source properties
After inserting the data view on to the page, from the common data view tasks menu click on parameters
In the Data View Parameters define 2 new parameter binding, one for current user, source for this parameter will be “AUTH_USER” “Server Variable” and the other one will be used for filtering data view to show only items in a specific group, source for this parameter will be query string
Next task is to define a filter for the data view, to do this from the common data view tasks select filter option
In the filter criteria dialog box define filter clause, from the field name dropdown select “Group” and for Value select “LinkGroup” parameter which we defined earlier.
Click on ok to close out the filter criteria dialog. Now we are ready to test this data view webpart
For the purpose of demo I saved bunch of links to “My Links”
View below shows “My Links” for group “General”. When the parameter was defined I used “General” for default value
you can change this to different value to meet your needs.
View below show “My Links” for group “Best Bets”, group is passed via query string as shown in screen print
I also modified the XSL contained within the dataview web part to customize rendering. Hope this was useful, Email me if you are interested in an export of the data view webpart.