Screen Design Configuration

This guide provides a detailed overview of how to design and configure screens within the GimCore platform. By understanding how to manage field types, properties, and layouts, administrators can build robust, highly customized user interfaces for data collection and process management.


1. Overview of Screen Design Architecture

In GimCore, a Screen acts as a structured digital form or data table that end-users interact with to create, update, and manage records (Issues).

The architectural flow of designing a screen is as follows:

  1. Fields Creation: Base fields are created in the system's global field dictionary (e.g., Text, Number, Date, File).
  2. Screen Allocation: Fields are added to a specific Screen Template.
  3. Screen Field Configuration: Once added to a screen, the field's behavior is overridden and customized specifically for that screen (e.g., making it read-only on this screen, but editable elsewhere).
  4. Layout & Grouping: Fields are arranged into visual Zones (Top, Left, Center, Right, Bottom) and grouped into logical Tabs.

2. Supported Field Types (Base Types)

Before configuring screen-specific properties, you must select the appropriate underlying data type for your field. Common field types include:

  • Text / String: Standard single-line or multi-line text input.
  • Number / Decimal: Numeric values used for calculations or metrics.
  • DateTime: Calendars and time-pickers.
  • Dropdown / List: Static picklists with predefined options.
  • Relational (IssueLink): Dynamic dropdowns that lookup data from other screens or projects.
  • File / Attachment: Upload areas for documents and images.
  • User / Account: Selectors for assigning tasks or tagging users.

3. Screen Field Properties & Configurations

Once a field is placed on a screen, it can be configured using a vast array of properties to control its behavior, validation, and appearance.

A. Layout & Positioning Properties

These settings dictate where and how the field appears on the user's screen.

  • Position (Position): Determines the vertical or horizontal zone where the field is rendered (e.g., Top, Left, Center, Right, Bottom).
  • Tab (Tab): Assigns the field to a specific organizational tab, keeping complex screens clean and categorizing related information.
  • Width (Width) & Height (Height): Custom CSS width (e.g., 100%, col-md-6) and height constraints.
  • Order (FieldOrder): The numerical sequence of the field within its zone or tab.
  • New Line (NewLine): Forces the field to start on a new layout row, breaking the standard flex/grid flow.
  • Hide Label (HideName): Hides the field's title, useful for seamless UI designs where the placeholder explains the input.
  • CSS Class (CssClass): Injects custom CSS classes for specialized styling.

B. Validation & Constraints

Ensure data integrity before a record is saved to the database.

  • Required (Required): Mandates that the user must provide a value before saving.
  • Allow Duplicate (AllowDuplicate): If set to false, the system ensures the entered value is entirely unique across all records in this screen.
  • Min / Max Value (MinValue / MaxValue): Enforces numerical boundaries or string length limits.
  • Data Format (Format): Defines specific formatting masks (e.g., currency formatting, date patterns).

C. Relational & Dynamic Properties

These properties are critical when building complex enterprise applications that share data across different modules.

  • Refer Project (ReferProjectId) & Refer Screen (ReferScreenId): Links this field to another screen. Instead of typing text, the user will select a record from the referenced screen.
  • Refer Field (ReferField): Determines which specific column from the target screen is displayed in the dropdown.
  • Target Fields (TargetFields): Enables "Auto-fill" behavior. When a user selects a linked record, other fields on the current screen are automatically populated based on this mapping.
  • Auto Load Child (AutoLoadChild): Automatically refreshes dependent child dropdowns when this parent field changes.
  • Issue Link Update (IssueLinkUpdate): Automatically updates bidirectional references when records are linked.

D. User Experience (UX) & Behavior

Fine-tune how the user interacts with the field during the data-entry lifecycle.

  • Read-Only (ReadOnly): Displays the field value but prevents the user from modifying it.
  • Hide On Update (HideOnUpdate): The field is visible when creating a new record, but becomes hidden when editing an existing record (e.g., a "Starting Balance" field).
  • Default Value (DefaultValue): Automatically populates the field with a predefined string or dynamic macro (like @CurrentDate or @CurrentUser) upon creation.
  • Placeholder (PlaceHolder): Ghost text that appears inside empty inputs to guide the user (e.g., "Enter customer name here...").
  • Inline Edit (InlineEdit): Allows the field to be edited directly from the Data Table view without opening the full modal form.
  • Allow Search (AllowSearch): Includes this field in the screen's bulk search/filter bar.
  • Auto Complete (AutoComplete): Enables browser-based or system-based historical autocomplete suggestions.

E. Advanced System & Security

  • Encrypted (IsEncrypted): Encrypts the field's data at rest in the database, crucial for PII, passwords, or sensitive financial data.
  • Mail Title / Mail Body (MailTitle, MailBody): Flags this field to be automatically included in automated email notification subjects or bodies.
  • H1 Tag (H1Tag): Uses this field's value as the primary visual header for the record.

4. Best Practices for Screen Design

TIP

Optimize Real Estate Group related fields into Tabs to prevent vertical scrolling fatigue. Use the Left/Center/Right zones to create visually balanced multi-column forms.

IMPORTANT

Data Integrity over UI Always configure Required and Min/Max boundaries at the screen level to prevent bad data. Do not rely solely on user discipline.

WARNING

Relational Complexity When configuring ReferProjectId and ReferScreenId, ensure the target screen has stable data. Overuse of TargetFields (auto-mapping) without proper indexing can slow down the interface.

CAUTION

Data Privacy If a field collects Personal Identifiable Information (PII) or sensitive operational data, ALWAYS toggle the IsEncrypted property to true.