Check for the type of the file uploaded

Check for the type of the file uploaded

Requirement

Only allow the file upload field to accept file types PDF, XLS, or XLXS. Display an alert message when any other file type is detected.

Use case

A restaurant app contains a form to store supplier receipts as files. When an admin uploads a receipt which is not a PDF, XLS, or XLXS file, an alert will be displayed and form submission will be restricted.
 

Steps to follow

1. Create a form with the following details.
Form
Form Link Name
Field Type
Field Link Name
Field Name
Upload Invoice
Upload_Invoice
File Upload
Invoice
Invoice
 
2. Create workflow with the following details.

The workflow is to be triggered when the admin uploads an invoice in the Upload Invoice form, so we are selecting the Form Event as "User input of a field".
 
3. Save the following Deluge script in the Deluge editor:
  1. //Assign the list of allowed extensions to allowed_list
  2. // Include/exclude required extensions to/from this list
  3. allowed_list = {"pdf","xls","xlsx"};
  4. // Perform validation only if the input field isn't empty
  5. if(input.Invoice != "")
  6. {
  7. // Find the extension of the uploaded input file
  8. ext = input.Invoice.toList(".").get(input.Invoice.toList(".").size() - 1);
  9. // Display an alert message if the extension of the uploaded file doesn't match with any of the values of the allowed_list.
  10. if(!allowed_list.contains(ext))
  11. {
  12.   alert "This file type is not accepted";
  13. }
  14. }
4. Create a workflow with the following details.

To restrict the form from being submitted if invalid values are entered on the form, the same validation needs to be performed before submission. So, we are selecting the Form Event as "Validations on form submission".
 
5. Repeat the validation from step 3 and restricts the form from being submitted if a file with invalid type is uploaded.
allowed_list = {"pdf","xls","xlsx"};
  1. if(input.Invoice != "")
  2. {
  3. ext = input.Invoice.toList(".").get(input.Invoice.toList(".").size() - 1);
  4. if(!allowed_list.contains(ext))
  5. {
  6.   alert "This file type is not accepted";
  7.  
  8. // Restricts the form from being submitted
  9.   cancel submit;
  10. }
  11. }

See how it works

Points to note

  • This tutorial demonstrates the use case with a File Upload field type. The same snippet would also work for the Audio and Video field types.
  • Unlike the other file type fields, applying the input keyword on an Image field doesn’t directly return the file name.
  1. info Input.Image;
Returns the file path in the following HTML format:
<img src = " https://creatorexport.zoho.com/sharedBy/appLinkName/viewLinkName/fieldName/image/1624276872234_SamplePNGImage_100kbmb.png" lowqual = " https://creatorexport.zoho.com/sharedBy/appLinkName/viewLinkName/fieldName/image/1624276872234_710" medqual = " https://creatorexport.zoho.com/sharedBy/appLinkName/viewLinkName/fieldName/image/1624276872234_710" downqual = " https://creatorexport.zoho.com/sharedBy/appLinkName/viewLinkName/fieldName/image/1624276872234_SamplePNGImage_100kbmb.png" border = "0"></img>
To fetch the file extension from the returned value, use the following snippet:
  1. src = input.Image.executeXPath("/img/@src").executeXpath("/src/text()");
  2. //Fetches the value stored against the src attribute
  3. ext = src.toList(".").get(src.toList(".").size() - 1);
  4. // Fetches the extension of the file from the file path

    Zoho CRM Training Programs

    Learn how to use the best tools for sales force automation and better customer engagement from Zoho's implementation specialists.

    Zoho CRM Training
      Redefine the way you work
      with Zoho Workplace

        Zoho DataPrep Personalized Demo

        If you'd like a personalized walk-through of our data preparation tool, please request a demo and we'll be happy to show you how to get the best out of Zoho DataPrep.

        Zoho CRM Training

          Create, share, and deliver

          beautiful slides from anywhere.

          Get Started Now


            Zoho Sign now offers specialized one-on-one training for both administrators and developers.

            BOOK A SESSION








                                You are currently viewing the help pages of Qntrl’s earlier version. Click here to view our latest version—Qntrl 3.0's help articles.




                                    Manage your brands on social media

                                      Zoho Desk Resources

                                      • Desk Community Learning Series


                                      • Digest


                                      • Functions


                                      • Meetups


                                      • Kbase


                                      • Resources


                                      • Glossary


                                      • Desk Marketplace


                                      • MVP Corner


                                      • Word of the Day


                                        Zoho Marketing Automation

                                          Zoho Sheet Resources

                                           

                                              Zoho Forms Resources


                                                Secure your business
                                                communication with Zoho Mail


                                                Mail on the move with
                                                Zoho Mail mobile application

                                                  Stay on top of your schedule
                                                  at all times


                                                  Carry your calendar with you
                                                  Anytime, anywhere




                                                        Zoho Sign Resources

                                                          Sign, Paperless!

                                                          Sign and send business documents on the go!

                                                          Get Started Now




                                                                  Zoho TeamInbox Resources



                                                                          Zoho DataPrep Resources



                                                                            Zoho DataPrep Demo

                                                                            Get a personalized demo or POC

                                                                            REGISTER NOW


                                                                              Design. Discuss. Deliver.

                                                                              Create visually engaging stories with Zoho Show.

                                                                              Get Started Now







                                                                                            You are currently viewing the help articles of Sprints 1.0. If you are a user of 2.0, please refer here.

                                                                                            You are currently viewing the help articles of Sprints 2.0. If you are a user of 1.0, please refer here.



                                                                                                  • Related Articles

                                                                                                  • Parse data from uploaded CSV files into fields

                                                                                                    Requirement When users upload CSV files, their data is parsed and the values are inserted into the required fields of another form. Use case An order management app contains two forms, one to store purchased product details, and the other to store ...
                                                                                                  • Extract contents of a ZIP file and email the extracted files

                                                                                                    Requirement   Use Deluge to extract a ZIP file and email the extracted files with the click of a button. Use Case   An HR management application contains three forms: Add Employee, Employee Payslips, and Download My Payslips. The Add Employee form ...
                                                                                                  • Understand file upload field

                                                                                                    The File Upload field enables your users to upload a file while submitting their data through your form. Your users can select the file either from their device (in the device's local storage) or from any of cloud storage services we support. The ...
                                                                                                  • Code sign Android app for users

                                                                                                    This help page is for users in Creator 6. If you are in the older version (Creator 5), click here. Know your Creator version. Refer to this page for the Android code sign prerequisites From August 1, 2021, Google mandates that newly-created apps are ...
                                                                                                  • Report Types

                                                                                                    Note: To optimize efficiency and security, support for XLS format has been deprecated, and instead, the XLSX format will be supported with effect from 21-March-2024. We insist you to replace any instance of .xls to .xlsx across Deluge scripts in your ...
                                                                                                    Wherever you are is as good as
                                                                                                    your workplace

                                                                                                      Resources

                                                                                                      Videos

                                                                                                      Watch comprehensive videos on features and other important topics that will help you master Zoho CRM.



                                                                                                      eBooks

                                                                                                      Download free eBooks and access a range of topics to get deeper insight on successfully using Zoho CRM.



                                                                                                      Webinars

                                                                                                      Sign up for our webinars and learn the Zoho CRM basics, from customization to sales force automation and more.



                                                                                                      CRM Tips

                                                                                                      Make the most of Zoho CRM with these useful tips.



                                                                                                        Zoho Show Resources