Table of Contents |
---|
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
ConfigurationThis plugin has very minimal configuration. After the plugin has been installed, In the folder builder, go to Settings and for Load Data Form, select the "Data Versioning" option and you are good to go.Figure 1: Plugin Configurations
Information
Plugins Available in the Bundle:
Data Versioning (Form Load Data Store)
- Data Versioning (Form Save Data Store)
- 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
Plugin Usage
1. Create a form with the desired fields and set the Data Versioning as Load Data FormFrom.
2. Generate a datalist for the form.
3. Create a UI menu, add a CRUD menu to link the datalist and form.
Figure 2: UI Builder
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 4. Run the UI, click new to create a new record. Key in the form data and save.
Figure 4: Add record for form
45. Edit the form. At the top right corner, you will see a a Manage Versions Option, as shown below:
Figure 35: Edit Form Data & Manage Versions.
65. 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 46: Empty Versions List
76. 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 57: First Edit and Save
87. Click on edit again and click on the 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 68: Form Data Version List
98. You can now observe the distinction: the 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 79: View Difference in Versioning
9. After clicking restore, a success message will show. Click on Reload Data.
Figure 10: Reload Data after restore
10. Now click on edit againThe page has been reloaded. You can see that the field values have been restored to the chosen version.
Figure 811: Restored to Chosen Version
11. Whenever you restore to previous version, the history will also be saved in Form Data Version List.
Figure 912: Form Data Version List with Restore Version History
12. By selecting "View Difference" for the Restored Version record, we can review our modifications. In this visual comparison, the green text represents added content, while the red text signifies removed content.
Figure 13Figure 10: 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
Related Links
Download the demo app from
https://github.com/jogetoss/data
_versioning-versioning/releases (.jwa file).