questionnairedetailslangguide
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| questionnairedetailslangguide [2025/03/10 07:22] – gloria | questionnairedetailslangguide [2025/03/10 08:57] (current) – gloria | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Steps to Fill in the Modules Table (Complete Guide) ====== | ||
| - | This guide provides a step-by-step approach | + | ====== Steps to Fill in the QuestionnaireDetailsLang Table (Complete Guide) ====== |
| - | The **Modules** table is used to store information about various **functional modules** | + | |
| - | Each module represents a component of the system that can: | + | |
| - | * Operate **independently** or **depend on other modules**. | + | |
| - | * Be activated/ | + | |
| - | * Be displayed in both **front-end and back-end** applications. | + | |
| - | The table also supports: | + | This guide provides a step-by-step approach to correctly fill the **QuestionnaireDetailsLang** table. This table is used to store **language-specific text** for each question in the survey. It supports multi-language surveys, allowing the same question to appear in **multiple languages** with corresponding text, labels, and media files. |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | 👉 You can find the detailed structure of the **Modules** table here: | + | The table is linked to the **QuestionnaireDetails** table via **qdetailid**, |
| + | You can find the detailed structure of the **QuestionnaireDetailsLang** table here: | ||
| + | 👉 [[questionnairedetailslang|QuestionnaireDetailsLang Table Structure]] | ||
| - | ===== 1. Add the Module ID (id) ===== | ||
| - | The **id** column serves as the **Primary Key** for the Modules table.\\ | ||
| - | This value is **auto-incremented**, | ||
| - | You **do not need to fill this manually** when inserting a module.\\ | ||
| - | **Example:** | + | ==== 1. Add the ID (id) ==== |
| - | ^ Scenario | + | This is the **primary key** (auto-incremented) for the table.\\ |
| - | | First Module | + | **Do not manually enter** this value if inserting data directly via the database.\\ |
| - | | Second Module | + | It is automatically generated. |
| - | ===== 2. Link the Module to a Client (clientid) ===== | ||
| - | The **clientid** column acts as a **Foreign Key** linking the module to a specific client.\\ | ||
| - | This is crucial for **multi-client systems** where each client has distinct modules.\\ | ||
| - | **Why is this important?** | + | ==== 2. Link Question to Details (qdetailid) ==== |
| - | | + | **qdetailid** refers to the ID of the question from the **QuestionnaireDetails** table.\\ |
| - | * Clients will only see the modules | + | This creates a link between the **question text** and the **question details**.\\ |
| + | Without this linkage, the text will not appear | ||
| **Example: | **Example: | ||
| - | Suppose | + | Suppose |
| - | ^ Client | + | **id = 1001** (This is the question ID in **fw_questiondetails**)\\ |
| - | | Client A | 101 | | + | **majorqid = 1**, **minorqid = 0** |
| - | | Client B | 102 | | + | |
| - | If creating a module for **Client A**: | + | You need to link the text to this question using: |
| - | `clientid | + | qdetailid |
| - | If creating a module for **Client B**: | ||
| - | `clientid = 102` | ||
| - | ===== | + | ==== 3. Set the Language |
| - | The **parentid** | + | This column |
| - | If the module has a **parent module**, enter the **id of the parent module** here. | + | Use standard |
| - | If the module is **independent** (no parent module), leave it as **NULL**. | + | |
| - | + | | |
| - | **Why use a Parent Module?** | + | |
| - | * This creates a **hierarchical structure**. | + | - **FR** → French |
| - | | + | |
| **Example: | **Example: | ||
| - | Suppose you have: | + | For an English version of the question: |
| - | * **Parent Module:** Reports (`id = 1`) | + | language |
| - | * **Child Module:** Sales Reports (`id = 2`) | + | |
| - | You should enter: | + | For a Dutch version of the same question: |
| - | `parentid | + | language |
| - | ^ Module Name ^ id ^ parentid ^ | ||
| - | | Reports | ||
| - | | Sales Reports | ||
| - | | ||
| - | ===== | + | ==== 4. Add the Question Text (question) ==== |
| - | The **name** | + | This column |
| - | * **Back-end (admin panel)** | + | |
| - | * **Front-end (client panel)** | + | |
| + | **Example: | ||
| + | For an English version: | ||
| + | question = "How satisfied are you with our service?" | ||
| - | ===== 5. Set the Module Description | + | For a Dutch version: |
| - | The **description** column | + | question |
| - | This description will usually appear as a tooltip or small info block.\\ | + | |
| + | |||
| + | |||
| + | ==== 5. Set the Client Sheet Question Text (clientsheetqtext) ==== | ||
| + | This text appears specifically on the **Client Sheet (CS)** report.\\ | ||
| + | It is usually | ||
| **Example: | **Example: | ||
| - | ^ Module Name ^ description | + | For the full question: |
| - | | Reports | + | question = "How satisfied are you with our service?" |
| - | | Sales Reports | + | |
| - | | User Management| Manage client-level access and roles | | + | |
| - | | + | For the client sheet: |
| + | clientsheetqtext = " | ||
| - | ===== 6. Upload | + | ==== 6. Set the Download Question Text (downloadqtext) ==== |
| - | The **iconfile** column allows you to upload a **small image/logo** representing | + | This text will appear in the **Excel/CSV export** of the survey data.\\ |
| - | This is useful when displaying | + | It should be a simplified version |
| + | |||
| + | **Example: | ||
| + | For the full question: | ||
| + | question = "How satisfied are you with our service?" | ||
| + | |||
| + | For download purposes: | ||
| + | downloadqtext = " | ||
| - | **Supported formats: | ||
| - | * PNG | ||
| - | * JPG | ||
| - | * SVG | ||
| - | **Maximum size:** | + | ==== 7. Set the Import Question Text (importqtext) ==== |
| - | | + | This text will appear if the survey data is being **imported** (bulk response data).\\ |
| + | It should clearly reflect the **question context** for easy data mapping. | ||
| **Example: | **Example: | ||
| - | ^ Module Name ^ iconfile | + | For an NPS: |
| - | | Reports | + | importqtext = "NPS Score" |
| - | | User Management| user_icon.svg | + | |
| - | This field can be left **blank** if no icon is needed. | + | For service satisfaction: |
| + | importqtext = " | ||
| - | ===== 7. Activate or Inactivate | + | ==== 8. Set the Report Question Text (reportqtext) ==== |
| - | The **active** column defines whether the module | + | The **reportqtext** is used in drill-down reports to generate a natural language summary of the respondent' |
| + | The placeholder // | ||
| + | This helps make the report easier to read and more conversational when reviewing answers. | ||
| - | **Possible values:** | + | **Example:** |
| - | ^ Value ^ Meaning | + | If the response was: |
| - | | 1 | Active | + | Answer: **8/ |
| - | | 0 | Inactive | + | |
| + | The report will display: | ||
| + | **The respondent rated us 8 out of 10.** | ||
| + | Here is a reference table for the **reportqtext**: | ||
| - | | + | ^ **Question Type** ^ **Actual Question in Survey** |
| - | Set **0** if the module is hidden. | + | | **NPS** |
| + | | **Satisfaction** | ||
| + | | **Open Text** | ||
| + | | **Multiple Choice** | ||
| + | | **Yes/No** | Did the doctor listen to your concerns? | ||
| - | ===== 8. Set the Default Module | + | ==== 9. Set the App Question Text (appqtext) ==== |
| - | The **isdefault** column determines | + | This text appears in the **mobile app case details screen** if the survey |
| - | Only **one module** can be marked as the default per client.\\ | + | |
| - | **Possible values:** | + | **Example:** |
| - | ^ Value ^ Meaning | + | For service satisfaction: |
| - | | 1 | Default module | + | appqtext = " |
| - | | 0 | Not default | + | |
| + | For NPS: | ||
| + | appqtext = "NPS Score" | ||
| + | |||
| + | |||
| + | |||
| + | ==== 10. Set the Client Sheet Category (cscategory) ==== | ||
| + | This defines the **category** in which the question falls in the Client Sheet.\\ | ||
| + | Common categories include: | ||
| + | - Service Quality | ||
| + | - Product Quality | ||
| + | - Customer Satisfaction | ||
| + | - Recommendation | ||
| **Example: | **Example: | ||
| - | ^ Module Name ^ isdefault | | + | For Service Satisfaction: |
| - | | Dashboard | + | cscategory = " |
| - | | Reports | + | |
| - | If no module is marked as default, the system will redirect to the first active module. | + | For NPS: |
| + | cscategory = " | ||
| - | ===== 9. Set the Module Order (sortorder) ===== | + | |
| - | The **sortorder** column controls | + | ==== 11. Add Basis Text (basistext) ==== |
| - | Modules with **lower sortorder** appear **first**.\\ | + | The **basis text** is shown in the **Voorbeeld Vragenlijst** (Example Questionnaire).\\ |
| + | It explains why this question is being asked. | ||
| **Example: | **Example: | ||
| - | ^ Module Name ^ sortorder | | + | basistext = "This question is asked when variable client is Swiesktly." |
| - | | Dashboard | + | |
| - | | Reports | + | |
| + | For NPS: | ||
| + | basistext = "This question is asked when the respondent is a promoter." | ||
| - | ===== 10. Add the Created Date (createdate) ===== | ||
| - | The **createdate** column stores the **date and time** the module was added.\\ | ||
| - | Format: `YYYY-MM-DD HH:MM:SS`\\ | ||
| - | Example: | + | ==== 12. Set Added From Module Language Settings (addedfrommodlangsettings) ==== |
| - | `createdate = 2025-03-10 12:45:00` | + | This is a **technical flag** to indicate if the text was auto-generated from module settings.\\ |
| + | Use: | ||
| + | **1** → Yes, text was added from module language settings | ||
| + | **0** → No, manually added text | ||
| + | |||
| + | **Example:** | ||
| + | If you manually entered the text: | ||
| + | addedfrommodlangsettings = 0 | ||
| + | ==== 13. Upload Audio File (audiofile) (optional) ==== | ||
| + | This is an optional column where you can upload an **audio recording of the question**.\\ | ||
| + | The file should be uploaded as a **BLOB (binary large object)**.\\ | ||
| + | Supported formats: | ||
| + | - MP3 | ||
| + | - WAV | ||
| - | ===== 11. Add the Last Modified Date (lastmodifieddate) ===== | ||
| - | The **lastmodifieddate** column stores the **date and time** the module was last updated.\\ | ||
| - | Format: `YYYY-MM-DD HH:MM:SS`\\ | ||
| - | Example: | ||
| - | `lastmodifieddate = 2025-03-10 14:30:00` | ||
| + | ==== 14. Upload Video File (videofile) (optional) ==== | ||
| + | This is an optional column where you can upload a **video file related to the question**.\\ | ||
| + | The file should be uploaded as a **BLOB**.\\ | ||
| + | Supported formats: | ||
| + | - MP4 | ||
| + | - MOV | ||
| - | ===== 12. Add the Modified By User (modifiedby) ===== | ||
| - | The **modifiedby** column stores the **user ID** of the person who last modified the module.\\ | ||
| - | Example: | ||
| - | `modifiedby = 25` | ||
| + | ==== Example: Final Record ==== | ||
| + | Here’s an example of a complete record for a single question: | ||
| - | ===== Example: Final Record ===== | + | | id | qdetailid | language | question |
| - | Here’s how a complete record would look: | + | | 1 | 1001 | EN | How satisfied are you with our service? |
| - | ^ id | clientid | parentid | name | description | + | ==== ✅ Notes ==== |
| + | | ||
| + | The **reportqtext** should always use //^answerQ^// to dynamically insert the response. | ||
| - | | 1 | 101 | NULL | + | 💡 **In most cases: |
| + | - | ||
| + | | ||
| - | ✅ **Note: | ||
| - | - **parentid** is correctly linked. | ||
| - | - **sortorder** is unique. | ||
| - | - Modules for the same client have unique names. | ||
questionnairedetailslangguide.1741591356.txt.gz · Last modified: 2025/03/10 07:22 by gloria
