In order to demonstrate some of the features of the Survey Designer
, imagine that you are hosting a conference and wish to gather some advance information about the participants. To collect this information, you will set up a survey that the participants can complete online.
Survey Designer Set Up
First enable survey functionality in a folder. Each user taking the survey will need to have at least Editor permissions, so you will typically create a new folder such as My Project > Conference Attendee Surveys
to avoid wider access to other parts of your project.
- Log in to your server and navigate to your "Tutorials" project. Create it if necessary.
- If you don't already have a server to work on where you can create projects, start here.
- If you don't know how to create projects and folders, review this topic.
- Create a new subfolder named "Survey Demo" and accept all defaults.
- Configure Editor permissions for each user.
- Select (Admin) > Folder > Management and click the Folder Type tab.
- Under Modules, place a checkmark next to Survey.
- Click Update Folder.
Next you will need to create a results table in which to store the responses.
- Create a new Lists web part.
- Click Manage Lists, then Create New List.
- Name your list SurveyResults (no space).
- Leave the other defaults in List Properties.
- Click Fields to open the section.
- Click manually define fields.
- From the Key Field Name dropdown, select Auto integer key. This will add a primary key field of type "Integer" that will increment automatically to ensure unique values.
- Rename the new key field "ParticipantID". (This will make it easier for data from this survey to be integrated with other data about the participants.)
- Add the additional fields shown in the following image. For each line, click Add Field then enter the Name and Data Type as shown. Be sure not to include spaces in field names.
The next step is to design the survey so that it will request the information needed in the correct types for your results table.
The survey designer generates simple input fields labeled with the column names as the default 'questions' presented to the person taking the survey. Note that when you press the button "Generate Survey Questions", the server executes a selectRows API call and pulls in the fields for the default view
of the specific table the survey is based on.
If a dataset is selected, the field SequenceNum must be either included in the default grid view so the survey question can be generated against it, or the survey JSON code must be manually updated to include sequenceNum. Otherwise, the survey will not be able to save the records submitted.
- Return to your folder by clicking the Survey Demo link near the top of the page.
- Add a Survey Designs web part.
- Click Create Survey Design.
- Provide a Label (such as ConferenceAdvance in this example) and Description.
- From the Schema dropdown, select lists.
- From the Query dropdown, select your list, in this example: SurveyResults.
- Click Generate Survey Questions above the entry panel.
- Default survey questions are generated using the field information you used when you created your SurveyResults list. Notice the lower left panel contains documentation of the survey configuration options. It is possible to customize the survey at this point, but for now just use the defaults.
- Click Save Survey.
You can now use this design to create a survey which users can fill in to populate your results table.
Create and Populate The Survey
Create the Survey:
- Saving the survey has returned you to the main folder page.
- Add a Surveys web part.
- In the Survey Design dropdown: select your survey design (ConferenceAdvance).
- Click Submit.
Populate the survey:
- Click Create Survey to launch the survey wizard and present the default questions based on your results table.
- Enter values for the given fields.
- Click Submit Completed Form to finish. There is also a Save button allowing the user to pause without submitting incomplete data. In addition, the survey is auto-saved every 60 seconds.
In practice, each conference participant would go to this folder and click Create Survey
to add their own information. As the host, you would view the ConferenceAdvance
table and use that data to print name tags, plan seating, etc.
You may have noticed that the 'questions' generated based on field names add spaces following CamelCase hints, but are not very helpful and would require external explanation, particularly in the case of the date field we included. In the next step we will explore options for customizing our survey to make it clearer what we are asking.