Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

In the following outputs, all the files in the file upload field are compiled into a zip file. 

No password zip generation

Figure 1: No password

Password-protected zip generation

Figure 2: Password-protected

...

First, you can obtain the plugin jar file from the latest release at https://github.com/jogetoss/generate-zip-file/releases.

Upload the plugin jar file in Joget by going to Settings → Manage Plugins.

Step 1

Create a form, drag a single text field, and file upload form element into it. Configure each form element as shown below:

Field Label Field ID
Item Nameitem_name
File Upload file_upload
Zip Uploadzip_file_upload

Image RemovedImage Added

Figure 3: Form layout

Tick the "Enable Multiple Files Upload" option for the File Upload form element. This will allow multiple files to be uploaded.
Image RemovedImage Added

Figure 4: Tick "Enable Multiple Files Upload"

...

Go to "settings" > "advanced", and scroll down to the "Post Form Submission Processing" section. In the Post Processing Tool field, select "Generate Zip Tool". Change the "Run Tool on" from "Data Creation" to "Both data creation and update". This configuration will run the plugin upon new record creation or update. 

Image RemovedImage Added

Figure 5: Configure Post Form Submission Processing

...

Configure the Generate Zip Tool plugin

From

Image RemovedImage Added

Figure 6: Plugin "From" properties configuration

LabelField
Select Form to obtain file

Select the form created in step 1

File Upload Field ID of the file

Insert the ID of the file upload form element

Image RemovedImage Added

Figure 7: File Upload ID

Record ID 

Record ID uses the hash variable "#form.generated_zip_sample.id#" This will point to the record ID in the selected record row that executes the process tool plugin. In this example, generated_zip_sample is the table name. You may replace the table name in the hash variable with yours.

Image RemovedImage Added

Figure 8: Form table name

To

Image RemovedImage Added

Figure 9: Plugin "To" properties configuration

Label Field
Select Form to Store ZipSelect the form created in step 1
Target Form Field ID to store Zip File

Insert the ID of the zip file upload form element

Image RemovedImage Added

Figure 10: Zip File Upload ID

Target Record ID

Record ID uses the hash variable "#form.generated_zip_sample.id#" This will point to the record ID in the selected record row that executes the process tool plugin. In this example, generated_zip_sample is the table name. You may replace the table name in the hash variable with yours.

Image RemovedImage Added

Figure 11: Form table name 

Zip File NameThe Zip file name is "Zip File #data.mm ss a#" in this example. It will display the time generated and ensure that the Zip file name will be dynamic. 
Zip Password(optional)Insert any password. The password used in this example is "test".

...

Generate Zip Plugin Properties

From

Image RemovedImage Added

Figure 14: Plugin "From" properties

FieldDescription
Select Form to obtain file Select the form to obtain the desired files
Form Field ID of the file

The form field ID of the file upload form element contains the files you wish to zip.

Warning

It must be a File Upload form element otherwise, it wouldn't work.


Record ID The record ID that stored the files

To

Image RemovedImage Added

Figure 15: Plugin "To" properties

FieldDescription
Select Form to Store ZipSelect the form to store the generated zip file
Target Form Field ID to store Zip FileForm Upload field in the selected form to store the generated Zip File
Target Record IDThe record ID to store the zip files
Zip File NameGenerated zip file name
Zip Password (optional)

Zip password

Info

Inputting a password to this field will enable the plugin to generate a password-protect zip.


Sample App

View file
nameAPPapp_kb_dx8_generate_zip_process_tool_sample_appgenerateZipsample.jwa
height250