Detail view is a place where you edit data when adding or modifying entities. Detail view could include fields (which could be grouped into groups), tabs, nested tables and static text (for example, for hints). Here is an example of detail view for translation job:
- View header. It contains entity description (for example, job number) and a toolbar, which contains some default buttons (like Save, Save and close, Close) and context-dependednt buttons, which differ depending on a currently opened object.
- Click Save to save an entity without closing current window
- Click Save and close to save an entity and return to a previous screen (in this case, could be job list or dashboard, depending from where this job was opened).
- Click Close to close current object and cancel changes. A confirmation dialog will appear of there are unsaved changes.
- A field. It could be different depending on field type (string, number, reference property). For reference properties, you can make selection using drop-down list, or by typing part of name in the field. You can also create a new object on fly by clicking Add button near this field. If a field has a selected value, you can click Edit button to view details of a currently selected entity. For example, here is currency selection field:
Clicking on the Edit button will open a modal dialog with details of a selected currency:
You can just view details or even change values of a selected currency and then click OK to apply changes. - Group of fields.
- Validation error icon. You can check all validation messages from a current view by hovering mouse pointer on this icon. While this icon is active, buttons for saving current object will be disabled.
- Validation errors for individual fields.
- Tabs. To save space, fields could be grouped into tabs.
- Nested table. Nested table is any table which you can find inside detail view. For example, if you open list of jobs from the navigation menu, then you're viewing root list. Opening a row from such list will move you to a new page. However, if you are viewing list of jobs from a project editing view, then this view will be handled as a nested table, and opening a row from such list will display modal dialog. It is important to understand that applying (saving) changes when editing nested list won't update this information in database until you save data in main detail view. Another example: if you open a job, then open nested task, edit it and save changes, but then cancel changes in a currently edited job, then changes in an edited task will also be abandoned.
To support faster editing in nested tables, TBM provides additional tools. For example, let's take Job tasks table, as this is the most common place where users could enter a lot of data, frequently with a lot of manual editing. Additionally, this table could contain a lot of rows, like this:
When you start editing any row, the following modal dialog opens:
At the top, you can find group of buttons to navigate between records in the edited table, so you can quickly move to next and previous rows, as well as quickly insert a new record. All these actions support keyboard shortcuts. When a new record is being created, application clones current record, so new record will have same values in all fields (except Sort field in case of the Job tasks table). When you finish editing, click OK or Cancel, to apply or cancel changes made in the dialog.
Note. Some TBM users asked to implement inline editing in nested tables (like cell editing in Excel), but it was decided to keep editing in modal dialogs, because modal dialog provides more screen space to position all elements. In case of inline editing, there could be not enough space to display combo-boxes and other additional elements which could accompany record fields. Modal dialog, in its turn, allows to layout fields in multiple rows, group fields and apply other techniques to make editing easier and more user-friendly.
Details views are mobile friendly, so they adapt to a screen size when its changed. Keyboard support at the moment is limited, but in future versions it is planned to implement better keyboard support.