W aplikacji Survey123 odpowiedzi można wypełniać wstępnie na wiele sposobów.
Odpowiedzi domyślne
Domyślne odpowiedzi na pytania w ankiecie można ustawiać w kolumnie default (wartość domyślna) arkusza kalkulacyjnego podczas projektowania ankiety. Powoduje to wstępne wypełnienie pytania w ankiecie tą samą odpowiedzią za każdym razem, gdy rozpoczyna się ankietę lub gdy pytanie stanie się ważne. Jest to szczególnie przydatne, gdy odpowiedź na pytanie w ankiecie będzie w większości przypadków taka sama. W razie potrzeby można zmodyfikować odpowiedź domyślną, ale jej ustawienie pozwala oszczędzić czas podczas wypełniania ankiety. Odpowiedzi domyślne mogą zawierać stałe, takie jak ciągi znakowe i liczby.
Odpowiedzi na pytania typu select_multiple (wybierz wiele) działają inaczej niż pozostałe — wszystkie zaznaczone odpowiedzi są wprowadzane w kolejności ich wyboru i są oddzielane przecinkami. Aby zdefiniować wiele wartości jako wartości domyślne w polu select_multiple (wybierz wiele), rozdziel je przecinkami, na przykład element1,element2,element3.
Odpowiedzi domyślne są obsługiwane w pytaniach typu geopoint (punkt geograficzny), geotrace (ślad geograficzny) i geoshape (kształt geograficzny). Więcej informacji na temat konfigurowania wartości domyślnych można znaleźć w sekcjach Punkty geograficzne oraz Ślad geograficzny i kształt geograficzny.
Obliczenia
Obliczenia są podobne do odpowiedzi domyślnych, ale istnieją pewne różnice. W przeciwieństwie do kolumny default (wartość domyślna), która jest wartościowana tylko w momencie otwierania ankiety lub gdy pytanie stanie się ważne, obliczenia są wartościowane przy każdej zmianie odpowiedzi w ankiecie stanowiących dane wejściowe do obliczeń lub gdy te odpowiedzi staną się ważne. W obliczeniach można korzystać z odpowiedzi istniejących w formularzu. Na przykład wyrażenie 100 - (${integer1} + ${integer2}) wprowadzone w kolumnie calculation (obliczenie) pytania spowoduje zsumowanie wartości z pytań integer1 i integer2, odjęcie tej sumy od wartości 100 i ustawienie wyniku jako odpowiedzi. Użytkownik może zastąpić tę wartość, ale obliczenie dostarcza odpowiedzi początkowej, która może być dla użytkownika wskazówką.
Wskazówka:
W aplikacji terenowej Survey123, jeśli wynik obliczeń zostanie ręcznie zmieniony, można za pomocą wyświetlonego przycisku skasować zmienioną wartość i ponownie uruchomić obliczenia.
Tryb obliczania
Notatka:
W tej sekcji opisano funkcje, które są dostępne tylko w aplikacji Survey123 Connect i aplikacji terenowej Survey123. Funkcje te nie są dostępne w aplikacji Survey123 Studio ani Survey123 Mobile.
Parametr calculationMode wprowadzony w kolumnie bind::esri:parameters steruje ponownym wykonywaniem obliczeń w pytaniach, na przykład calculationMode=manual. Obsługiwane są cztery wartości:
- auto — obliczanie, gdy pytanie jest puste lub nie zostało poprzednio zmodyfikowane przez użytkownika. Jeśli żadna wartość nie zostanie podana, jest to domyślne działanie obliczania.
- manual — pytanie będzie obliczane tylko wtedy, gdy kliknięty zostanie znajdujący się obok niego przycisk Oblicz.
- always — obliczanie w przypadku zmian dowolnej wartości, do której istnieje odniesienie w wyrażeniu obliczeniowym. Dotyczy to funkcji dynamicznych, takich jak now().
- whenEmpty — obliczaj, dopóki nie zostanie zwrócona wartość niepusta. Po zwróceniu wartości niepustej pytanie przełącza się w tryb manual. Pytanie pozostaje w trybie manual, nawet jeśli jej wartość zostaje wyczyszczona. Obliczenia, które zawierają funkcje dynamiczne, takie jak now(), nie są ponownie wykonywane, dopóki nie zostanie kliknięty przycisk Oblicz. Tryb whenEmpty jest przydatny w sytuacji, kiedy pytanie, które zostało już obliczone z wartością niepustą, zostanie zaktualizowane po ponownym wczytaniu formularza, na przykład podczas otwierania z folderu Skrzynka odbiorcza.
Parametr calculationMode jest obsługiwany przez następujące typy pytań:
- tekst
- decimal
- liczba całkowita
- notatka
- data
- czas
- dateTime
- select_one
- select_multiple
- punkt geograficzny
- oblicz
- ukryte
Właściwości urządzenia, użytkownika i ankiety
Funkcja pulldata("@property") umożliwia wyodrębnienie informacji o następujących elementach:
- Urządzenie, z którego są przesyłane odpowiedzi na ankietę.
- Zalogowany użytkownik, który przesłał te odpowiedzi.
- Ankieta, na którą przesłane zostały odpowiedzi.
W poniższym przykładzie zwracana jest różnica między czasem lokalnym i czasem UTC urządzenia, co pozwala użytkownikowi zarejestrować strefę czasową, w której została utworzona ankieta:
pulldata("@property", 'utcOffset')
Funkcji pulldata("@property") można używać do wykrywania sposobu, w jaki użytkownik wchodzi w interakcję z odpowiedzią na ankietę:
pulldata("@property", 'mode')
Zwracane mogą być trzy wartości właściwości mode: new, gdy użytkownik tworzy nową odpowiedź na ankietę (w tym skopiowaną z istniejącej ankiety); edit, gdy użytkownik edytuje istniejącą odpowiedź; view, gdy użytkownik przegląda istniejącą odpowiedź w trybie tylko odczytu. W poniższym przykładzie funkcja umieszczona w kolumnie readonly (tylko do odczytu) wykrywa, czy użytkownik edytuje istniejącą odpowiedź i uniemożliwia mu edycję wybranego pytania:
pulldata("@property", 'mode') = 'edit'
Funkcja pulldata("@property") umożliwia także określenie, gdzie ankieta została otwarta. W poniższym przykładzie określa się, czy ankieta została otwarta z poziomu skrzynki odbiorczej:
pulldata("@property", 'status') = 'inbox'
Uwaga:
Zaleca się, aby nie zapisywać wyników właściwości mode (tryb) lub status w polu ukrytym ani obliczanym i nie włączać ani nie wyłączać pytania za pomocą tych właściwości w kolumnie relevant (odpowiednie). Takie postępowanie może spowodować usunięcie zawartości tych pól bądź zaktualizowanie wartości w sposób niezgodny z oczekiwanym.
Funkcja pulldata("@property") obsługuje następujące właściwości:
Urządzenie
| Właściwość | Opis |
|---|---|
| pulldata("@property", 'online') | Wartość logiczna. Prawda (true), jeśli urządzenie wykazuje aktywność sieciową. W przeciwnym razie fałsz (false). |
| pulldata("@property", 'utcOffset') | Przesunięcie w godzinach względem czasu UTC dla lokalnej strefy czasowej. |
| pulldata("@property", 'timeZone') | Kod strefy czasowej. |
pulldata("@property", 'deviceId')* | Unikalny identyfikator wygenerowany przez aplikację Survey123 reprezentujący konkretne urządzenie, na którym wypełniono ankietę. Nie jest to numer IMEI (International Mobile Equipment Identity) urządzenia przenośnego, ponieważ aplikacja Survey123 działa także na urządzeniach, które nie mają numeru IMEI. |
pulldata("@property", 'deviceModel')* | Nazwa modelu urządzenia użytkownika. |
pulldata("@property", 'OS')* | Nazwa systemu operacyjnego urządzenia użytkownika. |
pulldata("@property", 'appVersion') | Numer wersji aplikacji terenowej lub numer kompilacji aplikacji internetowej. |
pulldata("@property", 'userAgent') | Ciąg znakowy agenta użytkownika urządzenia użytkownika. |
*Nieobsługiwane w aplikacji internetowej Survey123.
Użytkownik
| Właściwość | Opis |
|---|---|
pulldata("@property", 'email') | Adres e-mail aktualnie zalogowanego użytkownika konta instytucji ArcGIS. |
pulldata("@property", 'username') | Nazwa aktualnie zalogowanego użytkownika konta instytucji ArcGIS. |
pulldata("@property", 'userFullName') | Imię i nazwisko aktualnie zalogowanego użytkownika. |
pulldata("@property", 'userFirstName')* | Imię aktualnie zalogowanego użytkownika. |
pulldata("@property", 'userLastName')* | Nazwisko aktualnie zalogowanego użytkownika. |
| pulldata("@property", 'portalUrl') | Adres URL instytucji ArcGIS aktualnie zalogowanego użytkownika. |
| pulldata("@property", 'portalInfo') | Wszystkie informacje o portalu jako obiekt JSON. |
| pulldata("@property", 'token') | Token dostępu aktualnie zalogowanego użytkownika. |
*Te parametry zależą od tego, co znajduje się w konfiguracji dostawcy tożsamości i mogą nie być dostępne w instytucjach, w których stosowane jest uwierzytelnianie inne niż uwierzytelnianie wbudowane.
Ankieta
| Właściwość | Opis |
|---|---|
pulldata("@property", 'submissionUrl')* | Adres URL usługi REST warstwy obiektowej (lub warstwy nadrzędnej formularza, jeśli zawiera on powtórzenia), do której przesyłana jest ankieta. Używany w wyrażeniach search lub pulldata służących do wykonywania zapytań dotyczących istniejących przesłanych ankiet. |
| pulldata("@property", 'language') | Język używany w bieżącej ankiecie. |
pulldata("@property", 'locale')* | Ustawienia regionalne używane w bieżącej ankiecie. Do użytku tylko z funkcją pulldata("@javascript"). |
pulldata("@property", 'localeInfo')* | Ustawienia regionalne w bieżącej ankiecie, które zawierają kod języka w różnych notacjach. Do użytku tylko z funkcją pulldata("@javascript"). |
pulldata("@property", 'surveyName') | Nazwa ankiety. |
pulldata("@property", 'mode') | Zwraca wartość new, jeśli użytkownik tworzy odpowiedź na ankietę, edit, jeśli użytkownik edytuje istniejącą odpowiedź lub view, jeśli użytkownik wyświetla odpowiedź w trybie tylko odczytu. |
pulldata("@property", 'status') | Zwraca wartości draft, submitted, sent lub inbox, jeśli ankieta została otwarta odpowiednio ze skrzynki Wersje robocze, Skrzynka nadawcza, Wysłane lub Skrzynka odbiorcza. Jeśli odpowiedź jest nowa, zwracany jest pusty ciąg znakowy. |
*Nieobsługiwane w aplikacji Survey123 Mobile.
Odpowiedzi ulubione
Notatka:
W tej sekcji opisano funkcje, które są dostępne tylko w aplikacji terenowej Survey123. Funkcje te nie są dostępne w aplikacji Survey123 Mobile.
Po wprowadzeniu odpowiedzi do aplikacji terenowej Survey123 i wysłaniu ich lub zapisaniu ankiety jako kopii roboczej można ich używać w kolejnych ankietach, konfigurując ulubione odpowiedzi. Za pomocą menu w prawym górnym rogu można skonfigurować bieżący stan ankiety w celu ustawienia jako ulubionych odpowiedzi.
Po ustawieniu odpowiedzi ulubionych można wstawiać je do nowych ankiet, otwierając to menu i klikając opcję Wklej odpowiedzi z ulubionych.
Jeśli w dowolnej chwili zajdzie konieczność zmiany ulubionych odpowiedzi, można je wprowadzić do bieżącej ankiety i kliknąć opcję Ustaw jako ulubione odpowiedzi. Jeśli w polu wprowadzane są powtarzające się informacje, można użyć bieżących odpowiedzi do wstępnego wypełnienia kolejnych ankiet. Ankieta użyta do skonfigurowania odpowiedzi ulubionych zostanie oznaczona gwiazdką.
Notatka:
Jeśli folder Wysłane został wyłączony, wysłanej ankiety nie można użyć dla ulubionych odpowiedzi. W tym przypadku zapisanie ankiety z ulubionymi odpowiedziami jako wersji roboczej umożliwia działanie opcji Wklej odpowiedzi z ulubionych.
Dane CSV
Notatka:
W tej sekcji opisano funkcje, które są dostępne tylko w aplikacji Survey123 Connect i aplikacji terenowej Survey123. Funkcje te nie są dostępne w aplikacji Survey123 Studio ani Survey123 Mobile.
Wypełnienie odpowiedzi informacjami, które są zapisane w urządzeniu, może skrócić czas potrzebny do wypełnienia ankiety. Informacjami tymi mogą być dane zebrane w poprzedniej ankiecie. Możliwe jest także udostępnienie wielu odpowiedzi w oparciu o dane wprowadzone przez użytkownika w pojedynczej odpowiedzi.
Wstępne wypełnienie odpowiedzi jest przydatne w ankietach używanych do inspekcji zasobów. Po wprowadzeniu identyfikatora zasobu (przez jego wpisanie lub zeskanowanie kodu kreskowego) można pobrać z pliku .csv jego szczegóły i użyć ich w odpowiedziach na inne pytania, takie jak lokalizacja, data ostatniej inspekcji oraz stan w momencie ostatniej inspekcji.
Dodatkowe informacje na temat wypełniania odpowiedzi w ten sposób można znaleźć w sekcji Pobieranie wartości z formatu CSV.
Notatka:
Jeśli w pliku .csv brakuje nagłówka kolumny lub na końcu wierszy znajduje się przecinek, plik .csv nie zostanie zaimportowany do ankiety.