Forms & Surveys

Forms & Form Builder

📄 13 of 33 📅 January 2, 2026 🏷️ v1.1.0

Forms & Form Builder

Category: Forms & Surveys | Audience: undefined | Page: 13 of 33

Table of Contents

- Access the Forms Screen

- Add New Forms

- Upload Forms from Local Device

- Edit Forms and Create Custom Form Fields

- Set Validation Rules

- Manage Form Templates


Forms & Form Builder

Manage screening forms and surveys for clinical trials using the Screener Builder. Create forms with custom sections, questions, and validation logic. The form builder provides four main tabs: Forms, Sections, Questions, and Response Groups for complete form management.

Key Concepts

  • Screener Builder: Comprehensive tool for creating and managing screening forms with multiple configuration tabs
  • Forms Tab: Define form properties including name, type, language, dates, and external integrations
  • Sections Tab: Organize forms into sections with headers, footers, and validation text
  • Questions Tab: Create and manage individual questions with variables, question types, and conditional logic
  • Response Groups: Define answer options and response groups for questions
  • Form Identifier: Unique identifier for distinguishing different form types
  • Java Scripts: Custom JavaScript code for form behavior and validation
  • Section JSON: JSON configuration for advanced section customization
  • Question Variables: Database field names for storing question responses
  • QuestionInfo: Conditional logic and branching rules for questions

What You Can Do

  • Create and edit screening forms with complete configuration
  • Organize forms into logical sections with custom styling
  • Define question types (text, radiolist, textarea, hidden, etc.)
  • Set up conditional logic and question branching
  • Configure form validation rules
  • Add custom JavaScript for form behavior
  • Upload external CSS for form styling
  • Set form publication dates and versioning
  • Manage question ordering and dependencies
  • Configure stored procedures for data processing

How To

Access the Screener Builder

  1. Log in to the MCT application
  2. Click on the Forms tab in the main navigation
  3. The Screener Builder interface will open with four tabs: Forms, Sections, Questions, Response Groups
Forms Page

Create or Edit a Form

Navigate to Forms Tab:

The Forms tab provides complete form configuration with Cancel, Save, and Add buttons at the top.

Form Configuration Fields:
  1. Form Name: Enter the form name (text input)
  2. Short Desc: Enter a brief description in the large text area
  3. Form Type: Select form type from --Select One-- dropdown
  4. Form Identifier: Select identifier from --Select One-- dropdown
  5. Language Code: Select language (dropdown shows "en-US")
  6. Active Date: Enter date when form becomes active (text input)
  7. Expiration Date: Enter date when form expires (text input)
  8. Version: Enter form version number (text input)
  9. Published: Enter publication status (text input)
  10. External Css Link: Upload CSS file using Choose File button (shows "No file chosen")
  11. External Submit Destination: Upload destination file using Choose File button (shows "No file chosen")
Java Scripts Section:
  1. Java Scripts: Large text area for adding custom JavaScript code
  2. Java Script Name: Enter script name (text input)
Additional Form Fields:
  1. Magic Number: Enter magic numbers separated by ',' (text input with helper text)
  2. Short Code: Enter short code (text input)
  3. Profile Target Email: Enter target email for profile notifications (text input)
Action Buttons:
  • Click Cancel to discard changes
  • Click Save to save form configuration
  • Click Add to add new form

Configure Form Sections

Navigate to Sections Tab:

Access: Forms -> Edit -> Sections -> Edit -> General Information

The breadcrumb shows: Ferring BPH -> Sections -> Edit -> General Information

Section Configuration: Action Buttons: Save, New, Next (top of page)
  1. Section Name: Enter section name (e.g., "General Information")
  2. Section Text: Enter section description in large text area
  3. Validator Text: Enter validation text in large text area (e.g., "Test")
  4. Order Number: Enter numeric order (e.g., "1")
  5. Section Type: Select from dropdown (shows "Question Section")
  6. Section Kind: Select from dropdown (shows "--Select--")
  7. Header: Enter section header HTML in large text area
  8. Footer: Enter section footer HTML in large text area
  9. Section JSON: Enter JSON configuration in large text area
Saving Sections:
  • Click Save to save section configuration
  • Click New to create a new section
  • Click Next to proceed to next section
Sections List View:

The Sections area also displays a table showing all sections in the form:

Action Buttons: Save Order, Add, Import (for managing sections) Sections Table Columns:
  • Section Name: Name of the section (orange link to edit)

- General Section

- DQ Section

- DQ No site

- DQ Section

- Hidden Form Adapter

- Hidden Form Adapter Call Info

  • SectionText: Description or content of the section

- "Velocity - Novo"

- "You are required to answer this question"

- "You are required to answer the question above."

- "You are required to answer the question"

  • Validator Text: Validation message text

- "You are required to answer this question"

- "You are required to answer this question"

- "You are required to answer the question above."

- "You are required to answer the question"

  • SectionID: Unique section identifier (3926, 3927, 3928, 3929, 3930, 3931)
  • Order: Display sequence (1, 2, 3, 4, 6, 7)
  • Created Date: Timestamp (MM/DD/YYYY HH:MM:SS AM format)

- All showing: "12/23/2025 12:00:00 AM"

  • Created By: User who created the section (54, 66, 264)
  • Question Count: Number of questions in section (8, 14, 10, 10, 22, 3)
  • SectionReferenceID: Reference identifier (3944, 3945, 3946, 3941, 3942, 3943)
  • Delete: Orange "Delete" link for each section
Result Messages/Recordings Section:

Below the main form fields, there's a Result Messages/Recordings configuration area:

Action Buttons: Save, Clear
  1. Result: Select result type from --Select-- dropdown
  2. Message Content: Enter message text in text area
  3. Upload Recording: Upload audio file using Choose File button (shows "No file chosen")

This section allows you to configure messages and recordings that play based on form results.

Manage Questions

Questions Table:

The Questions section displays all form questions with the following structure:

Action Buttons: Save Order, Add (top of questions table) Questions Table Columns:
  • (Edit Link): Orange "Edit" link for each question
  • Question Text: Full text of the question

- "How did you hear about the research study?"

- "What is your first name?"

- "What is your last name?"

- "What is your address?"

- "What is your day time phone number?"

- "What is your evening phone number?"

- "What is your email address?"

- "What is your gender?"

- "Test"

  • Variable: Database field name (e.g., "HowDidYouHear", "fname", "lname", "Address", "PhoneNumber", "EveningPhone", "EmailAddress", "Gender")
  • QuestionID: Question identifier (101, 102, 103, 108, 104, 105, 106, 107, 8393)
  • Order: Display order (1-10)
  • Created Date: Timestamp (MM/DD/YYYY HH:MM:SS AM format)

- Examples: "10/22/2009 12:00:00 AM", "3/21/2014 11:16:09 AM", "3/11/2010 12:00:00 AM"

  • StoredProcedure: Stored procedure reference (mostly empty)
  • Question Type: Type of question (radiolist, text, textarea, hidden)
  • QuestionReferenceID: Reference ID (105, 107, 112, 108, 109, 110, 111, 8472, 852-860)
  • SectionReferenceID: Section reference (shows "22" or "87")
  • (Delete Link): Orange "Delete" link for each question
Hidden Field Questions:

Forms often include hidden fields for tracking and data collection:

  • FormReferenceID (QuestionID: 817, Order: 1)
  • ProjectID (QuestionID: 818, Order: 2)
  • StudyID (QuestionID: 819, Order: 3)
  • Origination (QuestionID: 820, Order: 4)
  • Result (QuestionID: 821, Order: 5)
  • CallerID (QuestionID: 822, Order: 6)
  • xferphone (QuestionID: 823, Order: 7)
  • call_duration (QuestionID: 824, Order: 8)
  • ProjNbr (QuestionID: 825, Order: 9)

These hidden fields (Question Type: "hidden") store metadata and tracking information without displaying to users.

Configure Question Information

QuestionInfo Table:

Below the Questions table is the QuestionInfo section showing conditional logic:

Action Buttons: Edit (for each row) QuestionInfo Table Columns:
  • (Edit Link): Orange "Edit" link
  • Variable: Database field name (e.g., "HowDidYouHear", "fname", "lname", "Result")
  • Category: Category type (e.g., "DQ", "TotalCalls", "Screened", "PreQualified", "Referred")
  • Operator: Comparison operator (e.g., "In")
  • SetValue: Value to set (empty in most cases)
  • CompareValue: Value to compare or condition text

- Examples: "Referral, Xfer Incomplete, Referral Hang-up, PQ NI, PQ No Site, DQ, Incomplete Call, Info Only, 0 Xf"

- "Referral, Xfer Incomplete, Referral Hang-up, PQ NI, PQ No Site, DQ"

- "Referral, Xfer Incomplete, Referral Hang-up, PQ NI, PQ No Site"

  • QuestionReferenceID: Question reference (105, 106, 107, 856)
  • SectionReferenceID: Section reference (shows "22" or "87")
  • QuestionInfoID: Unique info identifier (3352, 3353, 3354, 18-21)
Example QuestionInfo Rules:

The QuestionInfo table shows conditional logic for the "Result" variable:

  1. TotalCalls In: Result = "Referral, Xfer Incomplete, Referral Hang-up, PQ NI, PQ No Site, DQ, Incomplete Call, Info Only, 0 Xf" (QuestionInfoID: 18)
  2. Screened In: Result = "Referral, Xfer Incomplete, Referral Hang-up, PQ NI, PQ No Site, DQ" (QuestionInfoID: 19)
  3. PreQualified In: Result = "Referral, Xfer Incomplete, Referral Hang-up, PQ NI, PQ No Site" (QuestionInfoID: 20)
  4. Referred In: Result = "Referral, Xfer Incomplete, Referral Hang-up" (QuestionInfoID: 21)

These rules define cascading conditions for categorizing patient responses and call outcomes.

Question Type Options:
  • radiolist: Radio button selection
  • text: Single-line text input
  • textarea: Multi-line text area
  • hidden: Hidden field for data storage

Manage Response Groups

Navigate to Response Groups Tab:

The Response Groups tab displays all available answer option groups that can be assigned to questions.

Action Button: Add (to create new response groups) Response Groups Table:

The table shows all response groups with filtering and pagination:

Table Columns:
  • EDIT: Orange link to edit the response group
  • GROUP NAME: Name of the response group

- YesNo

- know

- YesDontKnow

- Gender

- NextPrevious

- NewOld1

- Medical Conditions

- Storage Conditions

- Le

- IRB Type

  • RESPONSE GROUP ID: Unique identifier (1-10 shown)
Pagination:
  • Shows "Page 1 of 93, Items 1 to 10 of 925"
  • Navigation: 1 2 3 4 5 6 7 8 9 10 ... (page numbers)
Filter Options:

Each column header has a dropdown filter (▼) for searching/filtering response groups.

Using Response Groups:

Response groups define the answer options for radiolist questions. For example:

  • YesNo group: Yes/No options for binary questions
  • Gender group: Gender selection options
  • YesDontKnow group: Yes/Don't Know/No options
  • Medical Conditions group: List of medical conditions for selection

To assign a response group to a question, edit the question and select the appropriate group based on the answer options needed.

💡 Tip: Use the Order column to control question sequence. The Section JSON field allows advanced customization with JSON configuration. Question variables must match database field names for proper data storage. Response groups can be reused across multiple forms and questions.

Tips & Best Practices

  • Form Organization: Use clear, descriptive form names and organize forms by study or purpose
  • Section Ordering: Use the Order Number field in sections to control display sequence
  • Question Variables: Choose meaningful variable names that match database schema conventions (e.g., FormReferenceID, ProjectID, StudyID)
  • Question Types: Select appropriate question types:

- radiolist: For multiple choice with response groups

- text: For short answers (names, phone numbers)

- textarea: For long responses (addresses, descriptions)

- hidden: For tracking data (IDs, timestamps, metadata)

  • Hidden Fields: Use hidden fields to capture metadata like FormReferenceID, ProjectID, StudyID, Origination, Result, CallerID, xferphone, call_duration, ProjNbr
  • Validation Text: Use Validator Text in sections to provide helpful error messages
  • JavaScript Validation: Add custom JavaScript for client-side validation and dynamic behavior
  • External CSS: Upload custom CSS files to match your organization's branding
  • Version Control: Use the Version field to track form changes over time
  • Active/Expiration Dates: Set appropriate dates to control form availability
  • QuestionInfo Logic: Use the QuestionInfo table to create conditional questions and branching logic

- Define TotalCalls, Screened, PreQualified, Referred categories

- Use "In" operator with CompareValue to specify allowed values

- Create cascading conditions for complex workflows

  • Section JSON: Leverage Section JSON for advanced configuration when standard fields aren't sufficient
  • Question Ordering: Use Save Order button after rearranging questions to preserve sequence
  • Magic Numbers: Use Magic Numbers for form-specific identifiers and tracking codes
  • Profile Target Email: Configure target emails to route form submissions appropriately
  • Response Groups: Create reusable response groups for consistent answer options across forms

- Use standard groups like YesNo, Gender, YesDontKnow for common questions

- Create custom groups for medical conditions, study-specific options

- Response groups support pagination for large option lists (925 total groups available)

  • Active/Expiration Dates: Set appropriate dates to control form availability
  • QuestionInfo Logic: Use the QuestionInfo table to create conditional questions and branching logic
  • Section JSON: Leverage Section JSON for advanced configuration when standard fields aren't sufficient
  • Question Ordering: Use Save Order button after rearranging questions to preserve sequence
  • Magic Numbers: Use Magic Numbers for form-specific identifiers and tracking codes
  • Profile Target Email: Configure target emails to route form submissions appropriately

Next Steps

  • Create a test form to familiarize yourself with the Forms tab fields
  • Add sections to organize your form into logical groups
  • Build questions using various question types (text, radiolist, textarea, hidden)
  • Add hidden fields for tracking: FormReferenceID, ProjectID, StudyID, Origination, Result, CallerID, xferphone, call_duration, ProjNbr
  • Configure QuestionInfo rules for conditional logic and branching

- Set up TotalCalls, Screened, PreQualified, and Referred categories

- Define cascading conditions with CompareValue lists

  • Create and manage Response Groups for radiolist questions

- Browse existing groups (925 available) using pagination

- Create custom groups for study-specific answer options

- Assign response groups to radiolist questions

  • Test form behavior with custom JavaScript validation
  • Upload external CSS to style forms according to your branding
  • Set Active and Expiration dates to control form availability
  • Review the Questions table to verify question ordering and types
  • Configure stored procedures for custom data processing when needed
  • Use the filter dropdowns in Response Groups to find specific answer groups quickly

← Previous: Vendors, Sponsors & CROs

📚 Documentation Home

Next: Custom Screener


Generated from MCT Knowledge Base • v1.1.0 • January 2, 2026