The ID Generator Field is used to produce a running number based on an App Variable.  To learn more about its usage, refer to Generate Reference ID.

You will only need to do this if you are using MySQL, as other databases already default to "READ-COMMITTED".

Run the following queries in MySQL.


You will also need to set the following in your my.cnf/my.ini file.
transaction-isolation = READ-COMMITTED

Get Started

The easiest way to see how the ID Generator Field works are 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 App Composer (see Figure 1).

    Figure 1

  3. Under Form Builder column, click on Expense Claim New (see Figure 2).

    Figure 2

  4. Click on  the ID Generator Field element on the canvas to open up the Configure ID Generator Field properties. (see Figure 3)

    Figure 3

  5. Take note of the Format.

  6. To see it working, head back to the App Composer and click the Launch button in the UI column.

  7. Click on Create a New Expense Claim button on the Dashboard, fill up the necessary details and click Continue Next Screen button. 

  8. Click on Save As Draft button.

  9. Go to My Expenses on the menu to the left and click on My Inbox.  Here you can see the ID generator has generated a 4 digit running number (as defined in the Format field in steps 4 & 5) under the # column (see Figure 4).

    Figure 4

ID Generator Field Properties

Edit ID Generator Field


Element ID (By declaring as "ref", a corresponding database table column "c_ref" will be created)

Please see Form Element for more information about defining the ID and list of reserved IDs.

Note when using this element when the form is part of a workflow process

Do not set the id as "id" when the form is used as part of a workflow process. The value generated by this element will not be associated with the process instance's ID.

LabelElement Label to be displayed to the end-user.
App Variable Name

Name of the app variable to be used to keep the running number.


Determines the pattern of the generated value (e.g., "REF-?????" will yield "REF-00001")

Advanced Options


Determines if the element should be made visible in the form.

Workflow Variable

If the form is part of a workflow process, upon saving of the form (by clicking on "Save as Draft" or "Complete" button). The value in this input field will be saved into the corresponding workflow variable named here.

Using a non-existent Workflow Variable name

You will get the following warning with the name printed out (e.g. status) in the server log if you attempt to map to a non-existent Workflow Variable.

context attribute status does not exist in process context - adding new attributes to the process context is not allowed


Distributed Unique ID

Generates a distributed sequential unique ID.

It is advisable to use Distributed Unique ID when dealing with high loads of ID generation to avoid performance bottleneck.

Related Documentation 

Generate Reference ID

  • No labels