Kolumny niestandardowe firmy Esri

Kolumny niestandardowe firmy Esri w arkuszach XLSForm zapewniają dodatkowe możliwości użytkownikom aplikacji Survey123.

Typ pola

Aby kontrolować typ i długość pola, które ma zostać utworzone w systemie ArcGIS na potrzeby pytań w ankiecie, należy użyć niestandardowej kolumny bind::esri:fieldType. Więcej informacji na temat obsługiwanych typów pól znajduje się w sekcji Typy danych pól systemu ArcGIS.

W przypadku niektórych pytań można zmienić typ pola, który domyślnie jest przypisywany przez aplikację Survey123. Poniższa tabela zawiera kilka przykładów:

Typ pytaniaDomyślny typ polaKomentarze

select_one

esriFieldTypeString

Aby wybór był przechowywany jako liczba całkowita, zmień na wartość esriFieldTypeInteger.

date

esriFieldTypeDate

esriFieldTypeDate zawsze zawiera element czasu. Aby przechowywać tylko datę, zmień na wartość esriFieldTypeDateOnly.

dateTime

esriFieldTypeDate

esriFieldTypeDate nie wskazuje strefy czasowej. Aby uwzględnić strefę czasową w polu, zmień na wartość esriFieldTypeTimestampOffset. Po ustawieniu wartości esriFieldTypeTimestampOffset w formularzu wyświetlany jest selektor strefy czasowej dla pytania typu dateTime (data i czas). Domyślnie stosowana jest bieżąca strefa czasowa urządzenia.

time

esriFieldTypeString

Aby przechowywać czas jako wartość czasu, zmień na wartość esriFieldTypeTimeOnly.

Aby kontrolować typ pola, w kolumnie bind::esri:fieldType podaj jedną z następujących wartości:

  • esriFieldTypeString
  • esriFieldTypeDate
  • esriFieldTypeDateOnly
  • esriFieldTypeTimeOnly
  • esriFieldTypeTimestampOffset
  • esriFieldTypeInteger
  • esriFieldTypeBigInteger
  • esriFieldTypeSingle
  • esriFieldTypeDouble
  • esriFieldTypeSmallInteger
  • esriFieldTypePointZ
  • esriFieldTypeGUID

Zauważ, że kolumna bind::esri:fieldType decyduje tylko o typie pola, jakie zostanie utworzone w warstwie obiektowej. Aby kontrolować typ pola pytania używany podczas wypełniania ankiety, użyj kolumny bind::type. Na przykład podanie wartości int w kolumnie bind::type dla pytania calculate powoduje, że to pole jest traktowane jako pole całkowitoliczbowe, a nie znakowe (wartość domyślna). W kolumnie bind::type akceptowane są następujące wartości:

  • l. całkowita
  • decimal
  • ciąg znakowy
  • data
  • dateTime
  • czas

Kolumna bind::esri:fieldType akceptuje też wartość null. Wówczas w utworzonej warstwie obiektowej pytanie zostanie pominięte. Pytanie jest stale obecne w ankiecie i działa normalnie, natomiast odpowiedź nie jest przesyłana do warstwy obiektowej i nie pojawia się podczas przeglądania odpowiedzi. Jest to bardzo wygodne w przypadku wykonywania obliczeń, wprowadzania ograniczeń lub zadawania innych pytań niezbędnych przy prezentacji, których nie trzeba jednak uwzględniać w wynikach.

Poniższe typy pytań nie obsługują typu pola null:

  • select_one or other
  • select_multiple or other
  • hidden
Notatka:

Pytania typu geopoint (punkt geograficzny), geotrace (ślad geograficzny) i geoshape (kształt geograficzny) obsługują typ pola null tylko wtedy, gdy ankieta zawiera co najmniej jedno pytanie typu geopoint (punkt geograficzny), geotrace (ślad geograficzny) lub geoshape (kształt geograficzny), które nie ma pola typu null, lub gdy pytanie typu geopoint (punkt geograficzny), geotrace (ślad geograficzny) lub geoshape (kształt geograficzny) znajduje się w powtórzeniu.

Długość pola

Aby kontrolować długości pól znakowych (tekstowych) tworzonych w systemie ArcGIS na potrzeby pytań w ankiecie, należy korzystać z niestandardowej kolumny bind::esri:fieldLength.

Notatka:

Nie można w ten sposób kontrolować pytań typu integer (liczba całkowita) ani decimal (liczba dziesiętna). Bazy danych nie określają długości pól liczbowych; o zakresie prawidłowych wartości decyduje typ pola liczbowego. Na przykład w polu typu integer (liczba całkowita) można zapisywać liczby całkowite z zakresu od -2 147 483 648 do 2 147 483 647.

Aliasy pól

Domyślnie alias pola ankiety dziedziczy wartość etykiety pola, szczególnie wtedy, gdy ankieta jest otwierana w systemie ArcGIS. Można to zmienić, podając w kolumnie bind::esri:fieldAlias wartość, która staje się nowym aliasem pola.

Ponieważ pytania typu hidden (ukryte) i pytania typu calculate (obliczenie) nie są wyświetlane na formularzu, zawartość pola etykiety nie jest zachowywana. Oznacza to, że podczas wyświetlania rekordów ankiety w witrynie Survey123 lub w systemie ArcGIS, dla tego typu pytań w nagłówku kolumny wyświetlana jest nazwa pytania. Aby wymusić wyświetlanie etykiet w nagłówkach kolumn w przypadku pytań typu hidden (ukryte) i pytań typu calculate (obliczenie), w swoim arkuszu kalkulacyjnym użyj kolumny bind::esri:fieldAlias w celu wskazania etykiety.

Maska wprowadzania

Maski wprowadzania zawierają skonfigurowany format pytań typu text (tekst) określony przy użyciu znaków i symboli. W przypadku zastosowania maski wprowadzania w pytaniu wszystkie odpowiedzi muszą być zgodne ze wzorcem zdefiniowanym przez maskę. W aplikacji internetowej i aplikacji terenowej Survey123 nie można przesłać odpowiedzi na ankietę, dopóki nie zostaną spełnione wszystkie maski wprowadzania.

Wskazówka:

Maski wprowadzania można stosować tylko w przypadku pytań typu text (tekst). W przypadku pytań typu integer (liczba całkowita) lub decimal (liczba dziesiętna) do ograniczania odpowiedzi należy używać kolumny constraint (ograniczenie). Więcej informacji zawiera sekcja Ograniczenia.

Aby zastosować maskę wprowadzania w pytaniu, zdefiniuj ją w kolumnie body::esri:inputMask. W masce wprowadzania można używać znaków i symboli przedstawionych w poniższej tabeli:

ZnakZnaczenie

A

Wymagany znak alfabetyczny ASCII. Możliwe są znaki z zakresów od A do Z oraz od a do z.

a

Znak alfabetyczny ASCII jest dozwolony, ale nie jest wymagany.

N

Wymagany znak alfanumeryczny ASCII. Możliwe są znaki z zakresów od A do Z, od a do z oraz od 0 do 9.

n

Znak alfanumeryczny ASCII jest dozwolony, ale nie jest wymagany.

X

Wymagany dowolny niepusty znak.

x

Dowolny niepusty znak jest dozwolony, ale nie jest wymagany.

9

Wymagana cyfra ASCII. Możliwe są cyfry od 0 do 9.

0

Cyfra ASCII jest dozwolona, ale nie jest wymagana. Możliwe są cyfry od 0 do 9.

D

Wymagana cyfra ASCII. Możliwe są cyfry od 1 do 9.

d

Cyfra ASCII jest dozwolona, ale nie jest wymagana. Możliwe są cyfry od 1 do 9.

#

Cyfra ASCII, znak plus lub znak minus są dozwolone, ale nie są wymagane.

H

Wymagany znak szesnastkowy. Możliwe są znaki z zakresów od A do F, od a do f oraz od 0 do 9.

h

Znak szesnastkowy jest dozwolony, ale nie jest wymagany.

B

Wymagany znak binarny. Możliwe są znaki 0 i 1.

b

Znak binarny jest dozwolony, ale nie jest wymagany.

>

Wszystkie następne znaki alfabetyczne są wielkimi literami.

<

Wszystkie następne znaki alfabetyczne są małymi literami.

!

Wyłączona konwersja wielkości liter.

\

Zmienia znaczenie znaków specjalnych wymienionych powyżej, aby mogły być używane jako separatory.

Maska składa się z ciągu znakowego i separatorów, po których opcjonalnie może występować średnik w celu zakończenia maski wprowadzania i znak używany do wypełniania miejsc pustych. Znaki miejsc pustych są usuwane z tekstu po edycji. Poniższa tabela zawiera przykłady masek:

Przykład maskiOpis

>A<xxxxxxxxxxxx

Tekst rozpoczynający się wielką literą, po której występuje dowolna liczba małych liter.

AAA-AAA-AAA;_

Unikalny identyfikator, w którym myślniki są separatorami, średnik kończy maskę wprowadzania, a po nim znajdują się znaki podkreślenia reprezentujące każdy znak, który należy podać.

B9.99;-

Reprezentuje wartość pH. Liczba musi zaczynać się wyłącznie od 0 lub 1 i może mieć tylko 2 miejsca po przecinku. Średnik kończy maskę wprowadzania, a po nim znajduje się myślnik reprezentujący każdy znak, który należy podać.

999-99-9999

Numer ubezpieczenia społecznego w Stanach Zjednoczonych.

(999) 999-9999

Numer telefonu w Stanach Zjednoczonych.

900 kg

Waga w kilogramach, od 0 do 999.

99999

Pięciocyfrowy kod pocztowy w Stanach Zjednoczonych.

AAA

Kod lotniska IATA.

Procedura wykonywania zadań

Użyj kolumny niestandardowej bind::esri:workflow, aby wskazać, że to pole można wypełnić na podstawie kafla Dalmierz uruchomionego w galerii. Ta kolumna jest obsługiwana tylko przez pytania tekstowe, a następujące wartości są akceptowane w kolumnie bind::esri:workflow:

  • rangefinderMode=height
  • rangefinderMode=offset
  • rangefinderMode=height,offset
  • rangefinderHeight

Każda z wartości rangefinderMode zapewnia pracownikowi terenowemu podobne środowisko użytkownika. Po wybraniu żądanej procedury wykonywania zadań dalmierza użytkownik jest proszony o wybranie ankiety i wykonanie za pomocą tego instrumentu od 1 do 3 zdjęć. Następnie ankieta jest automatycznie uruchamiana, umożliwiając pracownikowi terenowemu udzielenie odpowiedzi na pozostałe pytania.

Wartość rangefinderHeight jest unikalna, ponieważ umożliwia pracownikowi terenowemu przechodzenie przez poszczególne pytania ankiety, które są skonfigurowane pod kątem odbierania wartości wysokości, za pomocą strzałek do przodu i do tyłu. Po zmierzeniu wszystkich wysokości pracownik terenowy naciska przycisk Gotowe i przechodzi do ankiety, aby odpowiedzieć na pozostałe pytania.

Notatka:
Więcej informacji można znaleźć w temacie Przygotowanie do zbierania danych z dalmierza.