Working with Sharepoint Surveys (ie getting them to work properly in Sharepoint 2007)

Been including a few surveys in recent Sharepoint solutions. And there are a few simple tricks necessary to have them function in a “standard” manner.

(1) how to link to the survey form itself, not to the survey
(2) how to allow your visitors to actually complete the thing
(3) how to send your users somewhere useful after completing the survey

Note: These lessons learnt come from working with Sharepoint 2007. Your mileage may vary with other versions.

(1) how to link to the survey form itself, not to the survey

An easy one. By default if you link to a survey Sharepoint points you to overview.aspx. Which is painful since this is the survey summary page, which then forces your user to click again on a hard-to-find “Respond to this Survey” button to actually complete the thing:

Oftentimes you just want to have a link that when the user clicks it, the survey opens immediately.

To link directly to the survey, use NewForm.aspx, instead of overview.aspx. Eg:

If your survey appears as:

http://server.com.au/blah/survey/overview.aspx

then create your link to:


http://server.com.au/blah/survey/NewForm.aspx

.

This will then present the actual survey form, ready to complete.

(2) how to allow your visitors to actually complete the thing

Surveys are added to your site as just another list. This means the standard permissions (visitor, member, owner) applied to the site automatically apply to the survey itself. And if most of your visitors only have read access, then they won’t be able to complete the survey.

The simplest solution in this case is just to edit the permissions for the survey directly, and bump up the existing Visitors group to have contribute access. To do so:

  1. From the survey overview.aspx page, choose Settings > Survey Settings
  2. Under Permissions and Management, click on Permissions for this survey
  3. Under Actions choose Edit User Permissions. This will break the default inheritance of permissions from the site.
  4. Now edit the permissions to “bump” your visitors up to contribute access.

While you’re in the survey settings, click on Title, description and navigation under General Settings. This includes some important extra configuration items you might want to change:

(1) whether survey results show user names (default = Yes)
(2) whether users can complete a survey more than once (again, default = Yes)

These are two settings I regularly have to change for each survey.

(3) how to send your users somewhere useful after completing the survey

By default when a user completes (or cancels) a survey they are returned to the survey overview page. Which to my mind is an ugly “backend” page best kept away from.

To improve the navigation, edit the survey link (..blah../NewForm.aspx) and add “?Source=” plus the URL of where you want the users to go to. This can direct them back to the calling page or (my favourite) a thank you page with related links for next steps.

For example, linking to a special thank-you page:

<a href="http://server.com.au/blah/survey/NewForm.aspx">
   Fill in the survey</a>

becomes

<a href="http://server.com.au/blah/survey/NewForm.aspx?Source=
   http://server.com.au/blah/Pages/Thanks.aspx">
   Fill in the survey</a>

Note users are directed to your page whether they submit the survey or Cancel out of it. As a result be careful about your wording; you cannot assume they’ve reached your page after successfully submitting the survey.

Conclusion

Sharepoint surveys are actually pretty powerful tools for eliciting and managing user feedback. And with some simple tweaks they can be made to integrate well with your site.

For more survey goodness, check out Mike Smith’s blog post on the beasts. He describes the Source? hack, as well as some other more advanced options around dialog boxes and default messages.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>