SharePoint -Build a Table of Content (TOC)

The thing I was always missing in SharePoint is how we could provide the users a nice (dynamic) TOC per Site or Site Collection.

Well this is possible using the SOAP connector (Web Services) against SharePoint itself.

Major bonus that comes along using the SOAP data source is, that is can access any data within SharePoint, across all Site Collections. Smile

Let’s go

Add a SOAP connection to a Site Collection


Use the proper WDSL syntax !


Add in a new Web Part Page.


Insert the Web Part.


Get the data using the SOAP Connector you have created above, using the Insert –> Data View


Browse down to the SOAP Services to find it.


It will list too much columns and rows, so we can apply a filter. Using the Add / Remove Columns button. And Filter Button if needed.


First remove most columns, keep only Title and add Description.


Now we are going to make I a bit more dynamic, by making the Title data a Hyperlink so you can jump to the respective page.

click on the Title columns and choose INSERT –> Hyperlink. And choose the Formula button.


And now we go and look at the result so far.

Go to you Site Pages where you saved the page and check it.


Looking good !

A bit more salt and pepper will make it perfect. So we are going to add the appropriate ICONS the belong by each type of list.

Go back to the SP Designer and add a space before Title the table rows.


Go to the Data Source Details on the right side pane. Select ImageURL


Choose on top Insert Selected Fields as … Formatted –> Picture

Save it and go back to see the end result !


This will dynamically keep track of you TOC. Smile

Enjoy !


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: