Introduction

This plugin is designed to facilitate form data versioning, allowing user to manage and track different versions of your form data. To enable it, simply select the "Data Versioning" option within Form Builder, located under "Settings" and "Load Data From."

The plugin source code is available in JogetOSS repository at https://github.com/jogetoss/data_versioning


Plugin Information

Plugins Available in the Bundle:

  1. Data Versioning (Form Load Data Store)

  2. Data Versioning (Form Save Data Store)
  3. Data Versioning (form Element, Web Service)

This plugin bundle is compatible with Joget DX 8.


Expected Outcome

Able to manage and track different versions of your form data.

Figure 1: Manage Versions for Form


Getting Started

Steps

Steps for importing demo app

1. Download the demo app from https://github.com/jogetoss/data-versioning (.jwa file).

2. Go to Joget Home or All Apps and click on Import App to import the downloaded demo app.

Steps for creating app from scratch

1. Create a form with any desired fields. This plugin has very minimal configuration, go to Settings and set the Data Versioning as Load Data From.

Figure 2: Attach plugin at Load Data


2. On right upper corner, click on Generate App > Generate CRUD to generate datalist and UI for the form.

Figure 3: Generate CRUD for form


3. Save the form. Publish and run the UI, click new to create a new record. Key in the form data and save.

Figure 4: Add record for form


4. Edit the form. At the top right corner, you will see a Manage Versions Option, as shown below:

Figure 5: Edit Form Data & Manage Versions

5. If this is first edit and you click on the Manage Versions link, you will see an empty list. This is because there is no previous version(s) as shown below:

Figure 6: Empty Versions List

6. Now let us change some field value(s). I changed the value from 1 to 2 for article name and content. At the most bottom, there is an input field saying: "What did you change?".  Key in something meaningful about the edit and save the form.

Figure 7: First Edit and Save

7. Click on edit again and click on the Manage Versions button. In this page you can see all the versions available. Every time you make changes and save, it will generate a new version. Click on View Difference.

Figure 8: Form Data Version List


8. You can now observe the distinction: the text with a red strikethrough indicates that the word did not exist in the previous version, while the green text represents the original content in that version. Click "Restore to This Version" to proceed.

Figure 9: View Difference in Versioning


9. After clicking restore, a success message will show. Click on Reload Data.

Figure 10: Reload Data after restore


10. The page has been reloaded. You can see that the field values have been restored to the chosen version.

Figure 11: Restored to Chosen Version


11. Whenever you restore to previous version, the history will also be saved in Form Data Version List.

Figure 12: Form Data Version List with Restore Version History


12. By selecting "View Difference" for the Restored Version record, we can review our modifications.

Figure 13: Restore Version Difference


13. This versioning plugin works with other languages as well.


Source Code and Plugin Download

You can obtain the jar file by the latest release at https://github.com/jogetoss/data-versioning/releases.

Demo App Download

Download the demo app from https://github.com/jogetoss/data-versioning/releases (.jwa file).


  • No labels