Domyślnie w momencie publikowania ankiety w aplikacji Survey123 na podstawie schematu tej ankiety tworzona jest warstwa obiektowa. Alternatywnie można powiązać ankietę z istniejącą warstwą obiektową.
Przygotowanie warstwy obiektowej
Aby wykorzystać istniejącą warstwę obiektową w Survey123, musi ona spełniać następujące wymagania:
- Warstwa obiektowa musi być elementem w ArcGIS Enterprise lub ArcGIS Online. Dotyczy to hostowanych warstw obiektowych oraz warstw obiektowych opublikowanych na serwerach sfederowanych i niesfederowanych.
Notatka:
Aby można było pracować z niesfederowanymi usługami obiektowymi, wymagana jest konfiguracja dodatkowa. Należy w instytucji ArcGIS ręcznie utworzyć element warstwy obiektowej, który reprezentuje usługę. Szczegółowe informacje na ten temat zawiera artykuł w bazie wiedzy o nawiązywaniu połączenia z niesfederowanymi usługami serwera ArcGIS Server.
- Właściciel i użytkownicy ankiety muszą mieć dostęp do tej warstwy obiektowej.
- Warstwa obiektowa musi być edytowalna.
- Następujące dodatkowe właściwości muszą być ustawione na wartość true (prawda):
- supportsApplyEditsWithGlobalIds – warstwa obiektowa musi obsługiwać prowadzanie zmian z identyfikatorami globalnymi.. Umożliwia ona aplikacji tworzenie identyfikatorów globalnych i zarządzanie nimi w tworzonych obiektach (w przeciwieństwie do tworzenia przez serwer nowych identyfikatorów globalnych dla tworzonych obiektów).
- supportsAttachmentsByUploadId – ta właściwość jest automatycznie włączana podczas włączania załączników w warstwie obiektowej. Umożliwia ona aplikacji przesyłanie wszystkich załączników powiązanych z ankietą przed przesłaniem ankiety. Jeśli przesłanie któregoś załącznika nie powiedzie się, proces przesyłania całej ankiety zostaje wycofany, co zapobiega utracie danych.
W zależności od projektu ankiety oraz sposobu jej wykorzystania należy wziąć pod uwagę następujące dodatkowe wymagania:
- Jeśli użytkownicy gromadzą nowe ankiety, aby dodawać rekordy, wymagana jest funkcja Create.
- Aby użytkownicy mogli edytować rekordy istniejącej ankiety:
- Wymagana jest funkcja Update w warstwie.
- Upewnij się, że warstwa obiektowa dopuszcza wartości null lub ankieta używa wymaganych pól. Aplikacja Survey123 używa wartości null podczas edycji, jeśli odpowiedź została usunięta i nie jest zastąpiona przez inną. Z tego powodu aplikacja Survey123 nie prześle ankiety z warstwy obiektowej, która nie pozwala na używanie wartości null.
- Aby użytkownicy mogli przesyłać obrazy, dźwięk lub pliki, należy włączyć obsługę załączników (ustaw hasAttachments na true).
- Powtórzenia w ankiecie nie mogą odnosić się do powiązanych warstw i tabel, chyba że w podrzędnej warstwie lub tabeli relacja ta jest definiowana za pomocą pola GUID. Nazwa powtórzenia jest określana przez nazwę powiązanej tabeli lub warstwy i nie można jej zmienić.
Notatka:
Aplikacja Survey123 obsługuje tylko relacje „jeden-do-wielu” pola GUID przy zadaniach związanych z istniejącymi już warstwami obiektowymi i tabelami powiązanymi. Relacje „jeden-do-jednego” nie są obsługiwane.
Wprowadzanie zmian z identyfikatorami globalnymi
Aby warstwa obiektowa mogła obsługiwać wprowadzanie zmian z identyfikatorami globalnymi, muszą być spełnione następujące wymagania:
- Warstwy w warstwie obiektowej muszą mieć kolumnę GlobalId z unikalnym indeksem. Najlepszym sposobem rozwiązania tego problemu jest włączenie synchronizacji podczas publikowania warstwy obiektowej.
- Gdy używana jest geobaza dostępna dla wielu użytkowników, w warstwach może być używane wersjonowanie rozgałęzień, ale nie wersjonowanie tradycyjne. W przypadku korzystania z geobazy z wersjonowaniem rozgałęzień aplikacja Survey123 będzie kierować do wersji domyślnej. Więcej informacji można znaleźć w temacie Typy wersjonowania.
- Jeśli warstwa obiektowa zawiera warstwy z włączonymi wartościami M, konieczne jest włączenie edycji bez wartości M.
- Identyfikatory globalne muszą istnieć w warstwie obiektowej lub tabeli przed włączeniem obsługi załączników dla każdego z tych elementów.
Więcej informacji dotyczących obsługi edycji w warstwie obiektowej zawiera temat sekcja supportsApplyEditsWithGlobalIds tematu Warstwa obsługi obiektowej w dokumentacji interfejsu ArcGIS REST API.
Włączanie załączników
Podczas włączania załączników w warstwie obiektowej kolumny KEYWORD i EXIFINFO nie są domyślnie dodawane do schematu. Ta kolumna jest potrzebna do kojarzenia załączników z prawidłowym rekordem. Po włączeniu załączników uruchom narzędzie geoprzetwarzania Aktualizuj załączniki, aby włączyć słowa kluczowe.
Notatka:
Zalecane jest dodanie kolumn KEYWORD i EXIFINFO przed zebraniem rekordów za pomocą aplikacji Survey123. Dzięki temu przesyłane załączniki będą zawierały słowa kluczowe. Jeśli kolumny KEYWORD i EXIFINFO nie istniały przed przesłaniem załączników, można zaktualizować załączniki za pomocą notatnika Python Aktualizuj słowa kluczowe załączników.
Modyfikuj schemat
Po utworzeniu ankiety z istniejącej warstwy obiektowej nowe pytania i wartości list wyboru można dodać do tej ankiety tylko po dodaniu odpowiedniego pola lub domeny do tej warstwy obiektowej. Jeśli ankieta jest tworzona z widoku warstwy obiektowej, nowe pytania i wartości list wyboru można dodać do tej ankiety tylko po dodaniu odpowiedniego pola lub domeny do bazowej warstwy obiektowej i ich przekazaniu do widoku warstwy obiektowej.