New Feature

New feature added in Joget DX 8:

  • ERD
  • X-Ray
  • Screenshot
  • XPDL

Introduction

Advanced Tools can be found inside the Form Builder, List BuilderUI Builder as well as the Process Builder.

Addon Builder plugins also have access to this feature.


Get Started

The easiest way to see how to access the Advanced Tools is to use the existing built-in App Expenses Claims. Here are the steps:

  1. Start the Joget Server and open the App Center.

  2. Log in as admin and click on the pencil icon on the Expenses Claim to open the Design App. (see Figure 1)

Figure 1

3. Click on Expense Claim New and you will be directed to the Form Builder.

4. Click on Advanced Tools at the top.

Figure 2

5. In Advanced Tools, you will find 10 icons in all the builders mentioned with the exception of Form Builder and Process Mapper (see Figure 3).

  1. In Form Builder, the additional tabs are Table and Tooltip.
  2. In the Process Builder, there are only seven tabs that exclude the Permission, Usage, Table, and Tooltip but include XPDL.

6. The table below shows the comparison of Advanced Tools between the builders.

IconsForm BuilderList BuilderUI BuilderProcess Builder
TREE VIEWER

X-RAY

PERMISSION

USAGE

TABLE

I18N

TOOLTIP

DIFF CHECKER

JSON DEFINITION

XPDL

SCREENSHOT

Figure 3

Advanced Tools Properties

Showing Advanced Tools

As mentioned in the getting started section. To reveal the advanced tools, the advanced tools button can be clicked. 

Figure 4: Show Advanced Tools

Hiding Advanced Tools

The > button can be clicked to hide the advanced tools.

Figure 5: Hide Advanced Tools

Tree Viewer

The tree viewer in the first tab provides the app designer with the overall structure/definition view so that one can easily spot any anomaly and fixes it immediately without too much hassle and time spent. If the label of the element is empty, it will show the ID instead. Else, it will show the label.


Figure 6 Tree Viewer


Clicking on the text allows one to configure/edit its properties right away. Upon saving the properties, the tree viewer will refresh itself.





Figure 7: Editing a node

X-Ray

Form Builder

 The X-Ray feature provides an overview of the type, ID, and the validator of the form element, making it easier for users to understand and navigate their custom designs. For example, in Figure 8, it is shown that there are 4 types of objects in the section:

  • Section
  • Column
  • Custom HTML
  • Calculation Field

Figure 8: X-Ray Feature in Form Builder

As the structure is top down, in Figure 8, it can be translated as the Section being the parent of two Columns and the ID of the parent being the section3. The first column contains a Custom HTML type where the ID is field6_1 and the second column contains a Calculation Field Type where the ID is total.

List Builder

The X-Ray feature provides an overview of the column name, formatter, number, and mapping of each column, making it easier for users to understand and navigate their custom designs, For example, in Figure 9, it is shown that there are 4 types of objects in the section:

  • Name
  • Column Number
  • Column Mapping
  • Column Formatter

Figure 9: X-Ray Feature in List Builder


UI Builder

The X-Ray feature provides an overview of the type, ID, and the visibility permission of the UI Menu, making it easier for users to understand and navigate their custom designs. For example, in Figure 10, it is shown that there are 3 types of objects in the section:

  • Category
  • Menu ID
  • Permission

Figure 10: X-Ray Feature in UI Builder

Permission

The Permission icon provides the app designer with fine-grain control over managing the permissions of each individual element in the builder.

Figure 11 Form Builder Permission

Clicking on the "Add Permission" button allows one to configure the permission rule for a role/group based on a permission type (see Figure 12).

Figure 12 Configure Permission

For each Permission rule added, determine which element will be visible for the selected role under the Authorized column.

Visibility controls differ based on Builder types (see Figures 11, 13 & 14)

Figure 13 List Builder Permission

Figure 14 UI Builder Permission


Differences between 'Hidden' and 'Deny Access' permission button in UI Builder.

Hidden button will hide the UI element chose on the published UI app, hence hiding the UI element according to permission rule for a role/group based on the set permission type

Deny Access button will also hide the UI element chose from the menu together with denying access according to permission rule for a role/group based on the set permission type

Figure below will show the differences between Hidden and Deny Access button behavior.


Deny Access button behavior

Access the Permission tab within the Advanced tool, set the Category to be 'Deny Access'.  Watch the behavior for Deny Access  button.

It will hide the UI Element and produce an error on the page. Indicating that is not accessible and denying all means of access for specified permission rule.


Hidden button behavior

Access the Permission tab within the Advanced tool, set the UI Element to be 'Hidden'.  Watch the behavior for Hidden  button. It will hide the UI Element from being visible to specified permission rule.



Permission Priority

The permissions in the advanced tool will follow the order of the list, with the highest permission in the list having the highest priority. It will override any permissions below it if your user is applicable to multiple permissions.

For the Form Builder, additional permission can be set at the Section element and determine whether they are hidden or read-only under the Unauthorized column on the right.

For the List Builder, determine which column/filter is visible. Additionally, determine which columns are visible during export.

For the UI Builder, additional permission can be set at the UI Category element.

Usages

Figure 15: Usages

Description

In the second tab, the app designer can inspect where the current entity is being used. From the screenshot example above, we can tell that the form is being used in another form and also being part of a workflow process. With such a feature, the app designer will be able to manage the form design well within the scope of its usage.

Table

Figure 16: Table

Description

The table tab is available in the Form Builder. With this feature, the app designer can tell which other entity is sharing/writing into the same database table the current form is currently pointing to. From the screenshot example above, we can see that the table is being accessed by multiple process tools and forms.

We can also click on the Show Table Usage In Other Apps to check if there are other apps that are writing to the same table too.

At the bottom of it, existing table columns are listed down for the app designer's reference.


ERD

The ERD is a feature that displays the relationship between the tables.

The diagrams can be clicked to reveal more detailed information about the table such as which forms use the table and what part of the table is having a relationship with other tables.

Figure 17: ERD Feature


Related Documentation 

Many-to-Many Relationship Form Design

Relationship Description

Describes what kind of relationship it has with another entity.

Figure 18: Relationship Description Feature

Existing Table Columns

The Existing Table Columns feature displays the existing table columns.

Figure 19: Existing Table Columns feature

Table Usage

The Table Usage Feature displays the usage of the Table. Such as where it has been used.

Figure 20: Table Usage Feature

i18n Internationalization

Figure 21: i18n Internalization


Related Documentation 

Platform Translation

Internationalization

Message

Generate PO File

Description

Labels defined in the builder will be automatically listed down here for internationalization purposes. We can define in as many languages as we want to.

Tooltip

Figure 22: Tooltip feature

Figure 23 : Tooltip Showcase

Description

Labels defined in the builder will be automatically listed down here for tooltip purposes. We can define it in as many languages as we want to.

New Feature

Newly introduced in Joget DX



Diff Checker

Figure 24: Diff Checker

Description

The Diff Checker capability makes collaborative work possible without losing the modifications done by other teammates who are working on the same entity at the same time. In this section, one can tell which are the changes that have been made since the initial first load of his/her builder against the copy in the server. Click on the Merge & Update button will ensure that all modifications are merged.

Upon pulling the latest changes from the server, clicking on Merge & Update will merge the changes, but will NOT automatically save the form, to allow users to continue editing.

Take note that the Diff Checker does NOT pull changes from the server in real-time. To see new changes, click into the Diff Checker tab again.

New Feature

This is a new feature for Joget DX version 8.1 onwards.

  • Added navigation buttons
  • Improved indicator bar rendering

Figure 25: Diff Checker Navigation Buttons

JSON Definition

Figure 26: JSON Definition

Description

We can inspect the actual definition of the entity that we are working on here. If required, we can amend the definition within the text editor itself and click on the Update button to commit.

XPDL

XPDL stands for XML Process Definition Language,  is a format standardized by the Workflow Management Coalition (WfMC) to interchange business process definitions between different workflow products, which is why this feature is only available in the process builder see figure 26.

Figure 27: XPDL Feature in Process Builder

Figure 28: XPDL Code

NameDescription
Upload XPDLUploads XPDL files
UpdateUpdates Changes in XPDL


Screenshot

The screenshot is a feature that takes a screenshot of what it will look like in the UI. The screenshot can be downloaded by clicking the Download button located at the top right corner. This is useful for instance, sharing the design or look and feel to a client or even an employer.

Figure 29: Screenshot Feature 



  • No labels