Skip to main content

Objects

The Objects screen is where the data objects (table / view / stored procedure) on which all screens in Octo are based are introduced to the system and their behaviors are determined. Which fields a screen will display, which buttons it will have, which detail screens it will open, and which filters it will work with are all configured from this screen.

In short: the Screens screen defines the screen, while the Objects screen defines that screen's content and behavior.

info

Every change you make on an object (field visibility, requirement, lookup, etc.) is reflected in all screens that use that object. Before making a change, consider which screens the object is used in.

Object Structure

An object consists of one main definition and four sections linked to it:

SectionWhat it determines
Object (main definition)The object's data source, edit mode, and general behavior such as sorting/filtering
FieldsEach column / input field visible on the screen and its rules
ActionsToolbar buttons and actions (New, Delete, custom operations)
DetailsSub-screens to be opened in the Master–Detail structure
FiltersSaved filters presented ready-made on the screen

Object (Main Definition)

These are the fields that determine the general behavior of the object.

  • Object Name: The name of the database object (table/view) the object is linked to. It must be unique.
  • Object Title (Alias): The readable name of the object that will appear in the system.
  • Object Type: Specifies whether the object is a Table, View, or Stored Procedure.
  • Edit Mode: Determines how records will be edited (inline, form, etc.).
  • Where Text: The default filter condition to be applied when the object is opened. The system fetches the data with the logic SELECT * FROM [Object] WHERE [WhereText].
  • Order By: Determines the default sorting of records.
  • Read Only: When checked, no adding/updating/deleting can be done on the object.
  • Info Message / Delete Message: The warning texts to be shown to the user when a record is opened or during a delete operation.
  • Document URL: The link that provides access to the documentation related to the object.
info

After the object is created, its fields are automatically read from the database source. When a new column is added to the database, you can bring the new fields to the Fields tab by refreshing the object.


Fields

The Fields tab manages each column of the object visible on the screen and that column's behavior. The "Fields" section in the screen documentation consists directly of these definitions.

Basic Properties

  • Field Name: The column name in the database.
  • Caption: The label of the field that will appear on the screen.
  • Order: The display order of the field on the screen from left to right / top to bottom.
  • Editor Type: Determines the field's input component (text, number, date, dropdown, checkbox, etc.).
  • Visible: If not checked, the field does not appear in the list.
  • Visible in Edit Form: Determines whether the field will appear in the record edit form.
  • Read Only: When checked, the field is displayed but cannot be changed.
  • Required: When checked, the field cannot be left empty. It is shown on the screen with a * mark next to the caption.
  • Preview: Determines whether the field will be highlighted in the list/preview view.
  • Default Value: The value that will be automatically assigned to the field in a new record.
tip

The meaning of the marks you see in the screen documentation:

  • * → the field is marked as Required.
  • [▼] → a Lookup (dropdown list) is defined for the field.
  • [A-Z] → a Format / Regex / Mask rule is applied to the field.

Format and Validation

  • DisplayFormat: Determines how values such as numbers, dates, and currency will be displayed.
  • Regex: Checks whether the entered value matches a specific pattern. Inappropriate input is blocked.
  • Mask: Ensures a specific format (phone, tax number, etc.) is maintained during entry.
  • Length / Scale: Determines the text length and numeric decimal precision.

Lookup (Dropdown List)

A Lookup is defined to allow a field's value to be selected from another object:

  • Source Object: The object (table/view) from which the values will be read.
  • Value Field / Text Field: The fields for the value to be saved and the text to be shown on the screen.
  • Popup Fields: Additional columns to be shown in the selection window.
  • Where / Order: The filter and sorting to be applied to the Lookup list.

Automatic Code

Used to have code fields automatically generated by the system:

  • Prefix: The fixed text to be added to the beginning of the code.
  • Length: How many digits the sequence number will have.
info

A field with an automatic code defined is not filled in manually in a new record; the system generates a unique code by combining the prefix + the next number.

Form Layout

  • Group Name: Groups the field under a heading in the edit form.
  • ColumnSpan: Determines how many columns wide the field will be on the form.

Actions

The Actions tab defines the buttons and actions that appear in the object's toolbar. The "Actions" section in the screen documentation consists of these definitions (for example New, Edit, Delete, Create Inventory).

  • Action Name: The text that will appear on the button.
  • Action Type: Determines the type of action (adding a record, deleting, opening a target screen, running an SP, etc.).
  • Target Object: Specifies the target if the action opens another screen/object.
  • Order / Group Start / Group Name: Determines the position and grouping of the button in the toolbar.
  • Icon: The button's icon.
  • Confirmation Message: The confirmation text to be shown to the user before the action is run.
  • MultiSelect: Determines whether the action can be run by selecting more than one record.
  • Toolbar Button / Show in Tab: Determines where the action will appear.
  • Source / Target Filter Field: Determines which field will be filtered when the target screen is opened.
tip

The standard New / Edit / Delete actions come ready in most objects. This tab is used especially to define custom actions (running an SP, opening a related screen with a filter, etc.).


Details

The Details tab defines the sub-screens to be opened linked to the main record in Master–Detail structure screens (for example Product Tree in a product, Voucher Items in a voucher).

  • Detail Object: The data object to be shown in the sub-screen.
  • Detail Title (Alias): The tab/title name of the detail.
  • Source Field / Target Field: The fields that link the main record and the detail records to each other. The key field of the main object is mapped to the corresponding field in the detail object.
  • Order: The display order of the tabs when there is more than one detail.
  • Splitter: Determines the proportion of the area occupied by the main screen and the detail screen.
warning

If the source and target field mapping is not done correctly, the connection between the main record and the detail records cannot be established, and the detail screen cannot fetch the expected data.


Filters

The Filters tab defines the saved filters presented ready-made to the user on the screen. This way, instead of setting up a filter each time, the user can select a defined view.

  • Filter Name: The display name of the filter the user will select.
  • Where Text: The condition the filter will apply.
  • Default: When checked, this filter is automatically applied when the screen opens.
  • Order: The display order of the filters in the list.
info

Only one filter should be marked as Default. The default filter determines the set of records to be shown to the user when the screen is first opened.


Validation and Warnings

When you refresh an object, the system checks the consistency of the definition; if it finds a problem, it writes a warning to the System Notes field of the object (or the field). In critical cases, the operation is stopped. Common warnings:

WarningMeaningSolution
No primary key definedThe field that uniquely identifies the record is not specified; the system cannot find and update the recordIn the Fields tab, mark the actual identity field (e.g. …Id) as the primary key
Multiple primary keysMultiple fields are marked as keys; record matching breaksLeave only one field as the key
Fields required for tree view are missingComponent type Tree is selected but the TreeID / TreeParentID fields are missingIf you will use a tree, add these fields; if you will not use one, set the component type to Table
Lookup defined but Popup Fields emptyA dropdown list is defined for the field but there are no columns to show in the selection windowFill in the Popup Fields in the Lookup settings
Where Text / Order By incorrectThe entered filter/sorting expression is invalidFix the syntax of the expression
info

Most warnings do not prevent the object from working — they are informational and accumulate in System Notes. You can check them by refreshing objects regularly.


Applying Changes

For the definitions you make on the object to be reflected in the screens, the object must be refreshed. The refresh operation syncs the metadata with the current database structure and your definitions.

warning

Object changes affect not only the relevant screen but all screens that use that object. It is recommended to check the affected screens before making changes in a live environment.