Przeanalizuj dane z przesłanych plików CSV do pól

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 zakupionych produktów, a drugi do przechowywania listy zakupów w postaci plików CSV. Gdy administrator prześle plik listy zakupów w formularzu Prześlij listę zakupów, jego dane zostaną przeanalizowane i wstawione do odpowiednich pól formularza Produkty.
 

Kroki do naśladowania    

1. Utwórz dwa formularze z następującymi szczegółami.
Formularz
Nazwa łącza formularza
Typ pola
Nazwa pola
Nazwa łącza pola
Prześlij listę zakupów
Upload_purchase_list
Udostępnianie pliku
Lista zakupów
Lista zakupów
Produkty
Produkty
Pojedyncza linia
Nazwa produktu
Nazwa produktu
Pojedyncza linia
Jednostka miary
Jednostka miary
Numer
Ilość
Ilość
Waluta
Cena sprzedaży
Cena sprzedaży
 
2. Utwórz przepływ pracy z następującymi szczegółami.
 
Przepływ pracy ma zostać wyzwolony po pomyślnym przesłaniu formularza Prześlij listę zakupów, dlatego wybieramy Zdarzenie formularza jako „Pomyślne przesłanie formularza”.
 
3. Zapisz następujący skrypt Deluge w edytorze Deluge:
  1. //Extract the content from the uploaded input file and store in the variable fileContent as text
  2. fileContent = input.Purchase_List.content;
  3.  
  4. // Parse the file content so the rowsList variable is structured such that each of its element is a text that corresponds to a row of the input CSV file
  5. rowsList = fileContent.tolist("\n");
  6.  
  7. // Define a counter to keep track of the iteration
  8. count = 0;
  9.  
  10. // Iterate through the rowsList to parse the elements of each row. 
  11. for each  rl in rowsList
  12. {
  13.  if(count > 0)
  14.  {
  15.  
  16. // Split elements of the row and convert into a list
  17.  elementsList = rl.tolist(",");
  18.  
  19. // Add record into the Products form
  20. response = insert into Products
  21. [
  22.  Added_User = zoho.loginuser
  23.  Product_Name = elementsList.get(0)
  24.  Unit_Of_Measure = elementsList.get(1)
  25.  Quantity = elementsList.get(2)
  26.  Selling_Price = elementsList.get(3)
  27. ]; 
  28. }
  29.  
  30. // Increment the counter at the end of each iteration
  31.  count = count + 1;
  32. }

Zobacz jak to działa  

 

Punkty do zapamiętania  

  • Skrypt Deluge udostępniony w tym samouczku jest specyficzny dla plików CSV, których wiersze są oddzielone nowymi wierszami, a pierwszy wiersz zawiera nagłówki kolumn w kolejności Nazwa produktu, Jednostka miary, Ilość i Cena sprzedaży. Użycie tego skryptu do pliku CSV w innym formacie może nie działać zgodnie z oczekiwaniami.

    Proszę sprawdzić w załącznikach przykładowy plik, na którym działa dostarczony skrypt Deluge.

  • Ten samouczek działa najlepiej w przypadku plików, które zwykle zawierają tylko wartości tekstowe (na przykład .txt lub .csv ).