Introduction

Form Record Locking is a form element that allows users to lock a record from being edited by other application users for a specified period of time (in minutes).


Get Started

To see how the Record Locking form element actually functions, we should first create a form. Here are the steps for this process:

Steps To Import This Plugin

       1. Go to the website https://github.com/jogetoss/form-record-locking-form-element

       

       2. Go to the "Initial Release" page.


       3. Click on the .jar file to initiate the download (See Figure 1).

         

          Figure 1


       4. Go to your Joget Workflow localhost or server and login as admin.


       5. In Joget Console navigate to "Admin Bar>Systems Settings>Manage Plugins" and click the "Upload Plugins" button.


       6. In "Upload Plugin", select the plugin .jar file you just downloaded, then click "Upload".


       7. You should be able to view the newly installed plugin under the Installed Plugins tab.


       8. Remember to always uninstall the old plugin before uploading a new version.


The Joget Workflow Knowledge Base has more information on managing and developing plugins.

Steps to use the Plugin

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

2. Login as admin and click on Design New App or click on existing application (See Figure 2).

Figure 2


3. For new application, fill up the App ID and App Name then proceeds to click on Save button (See Figure 3).

Figure 3

 4. Create New Form, fill up Form ID, Form Name and Table Name then click on Save button (See Figure 4).

Figure 4


5. Fill up the form with a Text Field with the id as name and a Record Locking form element, Configure the Record Locking form element as shown then save the form. (See Figure 5)

Figure 5


6. Click the GENERATE APP button and generate a CRUD (See Figure 6).

Figure 6


7. After creating the CRUD, Launch the UI (See Figure 7).

Figure 7

   

8. Create a new record and save it (See Figure 8).

Figure 8


   9. Login to the application as another user (example :- username: cat   password: password), navigate to the newly created record and click edit (See Figure 9).

 

Figure 9 


10. Observe the timer, reload the page to see the current time left for the record to be unlocked (See Figure 10). 

Figure 10


  11. After the Timer runs out, the 2nd account (Cat Grant) should be able to edit the record and save the new edit (See Figure 11).

Figure 11

Form Record Locking Form Element Properties

Figure 12 : Record Locking Form Element Properties

Name

Description

ID

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

LabelElement Label to be displayed to the end-user.
Lock DurationTime duration for the record to be locked from editing by other users
Display Name FormatName Formatting of the User that locked the record.
Validator

Attach a Validator plugin to validate the input value.

When will validation take place?

Validation will take place whenever a form is submitted except when it is submitted as "Save as Draft".

FormSelect the form to be locked from editing



Figure 13 : Record Locking Form Validator Properties

Figure 14: Record Locking Form Validator Error Message


The Record Locking Form Validator's is not meant to be used for "Regular" use cases. The validator's error message is only accessible for advanced users through editing the form page's source code. For example, since the Record Locking Form Element does not allow the users to save a locked record (the "Save" button is hidden), an advanced user can attempt to circumvent this by inspecting another page's source code and copying the save button HTML element and attempt to save the form; This is where the Record Locking Form Validator can be of use, as it would still deny the user from saving the form even though the "Save" button is shown.  

NameDescription
Error MessageMessage to be displayed when the user tries to manipulate a locked record.
FormSelect the form to be locked from editing.
  • No labels