Table of Contents
✅ Steps to Fill in the QuestionnaireHeader Table (Complete Guide)
This guide provides a comprehensive step-by-step approach to correctly populate the fw_questionnaireheader table in the database. This table contains the core metadata and configuration settings for each questionnaire, defining how it behaves in both the backend system and the survey interface.
Each entry in this table represents a unique questionnaire with associated questions, start/end dates, configurations, and key control settings.
You can refer to the detailed structure of the QuestionnaireHeader Table here: → QuestionnaireHeader Table Structure
1. Add the ID (id)
This is the primary key (auto-incremented) for the table. Do not manually enter this value if inserting data directly via the database. It is automatically generated.
Example: - Leave this field blank when inserting data.
2. Link to Module ID (moduleid)
This field connects the questionnaire to a specific module in the modulesettingoptions table. It determines which module the survey belongs to.
Example: - For KTO Customer Survey: moduleid = 1001
3. Set the Start Date (startdate)
Defines when the survey becomes active. Enter the date in the format: YYYY-MM-DD.
Example: - startdate = 2025-04-01
4. Set the End Date (enddate)
Defines when the survey expires. Ensure the end date is after the start date.
Example: - enddate = 2025-12-31
5. Capture Last Question Detail ID (lastqdetailid)
Tracks the last question ID the respondent answered. Leave this field blank if inserting manually — it is system-generated.
Example: - lastqdetailid = 34
6. Capture Last Option ID (lastoptionids)
Tracks the last option ID the respondent selected. Leave this blank when inserting manually — it is system-generated.
Example: - lastoptionids = 178
7. Define Anonymous Options (anonymousoptions)
Lists option IDs that will be treated as anonymous. Separate multiple option IDs with a comma (,).
Example: - anonymousoptions = 123,124,125
8. Track Anonymous Invitation Count (anonymousinvcnt)
Keeps track of how many anonymous invitations were sent. This count starts at 0.
Example: - anonymousinvcnt = 0
9. Set Case Anonymous Options (caseanonymoptions)
Specifies which action lists or data sets exclude identifiable respondent information. Provide option IDs separated by commas.
10. Set the Status (status)
Defines the current state of the survey.
Allowed Values: - 1 = Active - 0 = Inactive - 2 = Archived
11. Exclude Filter Questions (filterquestions)
Defines which questions should be excluded from the survey. Provide question IDs separated by commas.
Example: - filterquestions = 43,47
12. Set Number of Tiles per Page (nooftilesperpage)
Determines how many question tiles appear per page.
Example: - nooftilesperpage = 9
13. Set Number of Columns per Page (noofcolperpage)
Defines how many columns should appear per page.
Example: - noofcolperpage = 3
14. Define Opt-Out Options (optoutoptionids)
Defines the option IDs that terminate the survey if selected. Separate multiple option IDs with commas.
Example: - optoutoptionids = 100,101
15. Set Language Conversion (languageconversion)
Defines the primary language conversion for the survey. This is useful for multi-language surveys.
16. Set Branch Level Question Position (branchlevelqtnposition)
The `branchlevelqtnposition` field is used to:
- Group questions under section headers.
- Define the display order of branch-level questions.
- Create separate navigation menus per section.
17. Set Branch Level Menu ID (branchlevelqtnmenuid)
Stores the menu ID for branch-level questions. Identifies the section where the question will appear.
Example: - 80,81,82,83,84^|||^Position1~^|^~Position2~^|^~Position3~^|^~Position4~^|^~Position5^|||^80,81,82,83,84
18. Set Maximum Tags (maxtags)
Defines the maximum number of tags displayed in the tag cloud.
Example: - maxtags = 50
19. Set Tag Frequency (tagfrequency)
Defines how often a word must appear to qualify as a tag.
Example: - tagfrequency = 5
20. Count Tags Only Once (counttagonce)
Ensures each word from a respondent is counted only once in the tag cloud.
Example: - counttagonce = 1
21. Reference Question Detail ID (vraagreferenceqdetailid)
Links to a referenced question detail ID for tailor-made questions. This automatically updates dispcndtn and dispprms.
Example: - vraagreferenceqdetailid = 234
22. Set Emotion Question Detail IDs (emotionqdetailids)
Defines the question detail IDs linked to emotion-related questions. Separate by commas.
Example: - emotionqdetailids = 45,67,89
23. Set Tile Empty Text (settileemptytxt)
Allows default text to display if graph content is empty.
24. Set Maximum Open Answers in Export (noofopenansinexport)
Defines the number of open-ended answers to include in the export.
Example: - noofopenansinexport = 100
25. Set Emotion Library Type (emotionlibrarytype)
Specifies the type of emotion library used.
26. Set Topic Library Type (topiclibrarytype)
Defines the type of topic library.
Example: topiclibrarytype = modules/ennatuurlijk
27. Set Topic Library Version (topiclibraryversion)
Stores the version of the topic library.
Example: topiclibraryversion = v1.0
✅ Notes
- Always verify that the lastqdetaillid and lastoptionids are correct when there are changes in the existing module.
- Always verify that the startdate and enddate are valid.
- For opt-out options, ensure those options terminate the survey if selected.
