Sprawdź typ przesłanego pliku

Sprawdź typ przesłanego pliku

Wymóg

Zezwalaj tylko polu przesyłania pliku na akceptowanie typów plików PDF, XLS lub XLXS. Wyświetlaj komunikat ostrzegawczy w przypadku wykrycia innego typu pliku.

Przypadek użycia

Aplikacja dla restauracji zawiera formularz do przechowywania paragonów dostawców w postaci plików. Gdy administrator prześle potwierdzenie, które nie jest plikiem PDF, XLS lub XLXS, zostanie wyświetlony alert, a przesyłanie formularza zostanie ograniczone.
 

Kroki do naśladowania

1. Utwórz formularz z następującymi szczegółami.
Formularz
Nazwa łącza formularza
Typ pola
Nazwa łącza pola
Nazwa pola
Prześlij fakturę
Prześlij_fakturę
Udostępnianie pliku
Faktura
Faktura
 
2. Utwórz przepływ pracy z następującymi szczegółami.

Przepływ pracy ma zostać wyzwolony, gdy administrator prześle fakturę w formularzu Prześlij fakturę, dlatego wybieramy Zdarzenie formularza jako „Wprowadzanie pola przez użytkownika”.
 
3. Zapisz następujący skrypt Deluge w edytorze Deluge:
  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. Utwórz przepływ pracy z następującymi szczegółami.

Aby uniemożliwić przesłanie formularza, jeśli w formularzu zostaną wprowadzone nieprawidłowe wartości, przed przesłaniem należy przeprowadzić tę samą weryfikację. Dlatego wybieramy zdarzenie formularza jako „Walidacje po przesłaniu formularza”.
 
5. Powtórz weryfikację od kroku 3 i ograniczysz przesyłanie formularza, jeśli zostanie przesłany plik o nieprawidłowym typie.
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. }

Zobacz jak to działa

Punkty do zapamiętania

  • W tym samouczku przedstawiono przypadek użycia z typem pola Przesyłanie pliku. Ten sam fragment kodu działałby również dla typów pól Audio i Wideo.
  • W przeciwieństwie do innych pól typu pliku, zastosowanie słowa kluczowego input w polu Obraz nie zwraca bezpośrednio nazwy pliku.
  1. info Input.Image;
Zwraca ścieżkę pliku w następującym formacie HTML:
Aby pobrać rozszerzenie pliku ze zwróconej wartości, użyj następującego fragmentu:
  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

    • Related Articles

    • Wyodrębnij zawartość pliku ZIP i wyślij e-mailem rozpakowane pliki

      Wymóg   Użyj Deluge, aby wyodrębnić plik ZIP i wysłać go pocztą e-mail jednym kliknięciem. Przypadek użycia   Aplikacja do zarządzania zasobami ludzkimi zawiera trzy formularze: Dodaj pracownika , Employee Payslips i Download My Payslips . Formularz ...
    • Okresowo przesyłaj pliki z Zoho Creator do Zoho Workdrive

      Wymóg Przeprowadź integrację między Zoho Creator i Zoho Workdrive i korzystaj z harmonogramów, aby co miesiąc przesyłać pliki z Creator do Workdrive. Przypadek użycia   Aplikacja do śledzenia projektów przechowuje pliki raportów ukończonych projektów ...
    • Przeanalizuj dane z przesłanych plików CSV do pól

      Wymóg   Gdy użytkownicy przesyłają pliki CSV, ich dane są analizowane, a wartości są wstawiane do wymaganych pól innego formularza. Przypadek użycia   Aplikacja do zarządzania zamówieniami zawiera dwa formularze, jeden do przechowywania szczegółów ...
    • Synchronizuj moduł klientów Quickbooks z Zoho Creator

      Wymóg Użyj źródła danych, aby zsynchronizować moduł klientów Quickbooks z aplikacją Zoho Creator. Przypadek użycia   Firma logistyczna prowadzi swoje dane klientów i konta w Quickbooks. Do rezerwacji korzystają z aplikacji do zarządzania logistyką ...
    • Pliki pracowników

      Akta pracownicze Każdy pracownik działu HR będzie musiał mieć dużo do czynienia z wrażliwymi plikami zawierającymi kluczowe informacje dotyczące pracowników. Takie dokumenty zawierające wrażliwe informacje oraz pliki specyficzne dla pracowników mogą ...