빠른 참조

ArcGIS Survey123에서는 다양한 XLSForm 사양이 지원됩니다. 이 참조 가이드에는 Survey123에서 사용할 수 있는 XLSForm 기능이 요약되어 있습니다. 현장조사는 Survey123 Connect 또는 Survey123 웹사이트에서 생성할 수 있습니다. 몇몇 기능은 한 곳에서만 제공되며 또 다른 몇몇 기능은 Survey 123 Connect와 Survey123에서 모두 사용 가능합니다.

질문 유형

다음 테이블에서는 Survey123 Connect, Survey123 현장 앱, Survey123 웹 디자이너, Survey123 웹 앱에서 사용할 수 있는 질문 유형에 대해 설명합니다. 일부 질문의 경우 플랫폼 간 동작 및 구현에 차이가 있으며, 이러한 차이점은 테이블 뒤의 메모를 참조하세요.

Survey123 Connect 질문 유형Survey123 웹 디자이너 질문 유형설명Survey123 현장 앱에서 지원됨Survey123 웹 앱에서 지원됨
오디오⁴오디오⁴ ⁶

현장 앱에서 오디오 클립을 녹음합니다. 오디오 클립을 녹음하거나 웹 앱에서 업로드된 오디오 파일을 사용합니다.

바코드

N/A

바코드 또는 QR 코드를 스캔합니다.

그룹 시작

그룹, 페이지

질문 그룹을 시작합니다.

반복 시작

N/A

일련의 반복 질문을 시작합니다.

계산 

N/A

양식의 값에 대해 계산을 수행합니다. 계산 필드에는 계산 결과가 포함됩니다.

소수¹

숫자¹ ⁶

소수 입력입니다.

날짜

날짜⁶

날짜 입력입니다.

날짜 및 시간

날짜 및 시간⁶

날짜와 시간 입력입니다.

deviceid

N/A

현장조사가 수행된 특정 기기를 나타내는 UUID입니다.

아니요

이메일²

N/A

기관 계정으로 로그인하는 경우 이 질문에는 계정 이메일 주소가 자동으로 채워집니다.

종료

N/A

현장조사 종료일과 시간입니다.

그룹 종료

그룹, 페이지

질문 그룹을 종료합니다.

반복 종료

N/A

일련의 반복 질문을 종료합니다.

파일

파일 업로드

기기의 파일을 사용할 수 있습니다.

지오포인트³

맵³ ⁶

제공된 GPS 좌표를 수집합니다. 기본값은 현재 위치입니다.

지오쉐이프³

맵에서 폴리곤을 수집합니다.

지오추적³

맵에서 라인을 수집합니다.

숨김

N/A

양식에 표시되지 않는 피처 레이어 필드를 생성합니다. 이 필드의 데이터 스키마는 bind::esri:fieldTypebind::esri:fieldLength 열을 사용하여 지정합니다.

정수¹

숫자¹ ⁶

정수 입력입니다.

이미지

이미지, 서명

기기의 파일에서 가져온 이미지 또는 직접 촬영한 사진을 사용할 수 있습니다.

메모

메모⁶

화면에 텍스트를 표시합니다. 비고는 숨겨진 계산을 처리할 수도 있습니다.

범위슬라이더⁶

지정된 숫자 범위의 입력입니다.

rank list_name

순위⁶

순위 질문으로, 선택 항목을 순위대로 나열할 수 있습니다. list_name을 선택 목록의 이름으로 바꿉니다.

select_one list_name

드롭다운⁵ ⁶, 리커트 척도⁵ ⁶, 순위⁶, 단답형⁶, 단답형 격자⁶

선다형 질문으로, 한 개의 답변만 선택할 수 있습니다. list_name을 선택 목록의 이름으로 바꿉니다.

select_one_from_file file_name.csv

N/A

선다형 질문으로, 한 개의 답변만 선택할 수 있습니다. file_name.csv를 선택 항목의 목록이 포함된 현장조사의 미디어 폴더에 있는 파일 이름으로 바꿉니다.

select_multiple list_name

선다형⁶

선다형 질문으로, 여러 개의 답변을 선택할 수 있습니다. list_name을 선택 목록의 이름으로 바꿉니다.

select_multiple_from_file file_name.csv

N/A

선다형 질문으로, 여러 개의 답변을 선택할 수 있습니다. file_name.csv를 선택 항목의 목록이 포함된 현장조사의 미디어 폴더에 있는 파일 이름으로 바꿉니다.

시작

N/A

현장조사 시작일과 시간입니다.

텍스트

주소⁶, 이메일⁶, 여러 줄 텍스트⁵ ⁶, 한 줄 텍스트⁶, 웹사이트⁶

텍스트 입력입니다. 정규식이 이메일 및 웹사이트에 적용됩니다. 지오코드 모양은 주소에 적용됩니다.

시간

시간⁶

시간 입력입니다.

사용자 이름

N/A

기관 계정으로 로그인하는 경우 이 질문에는 계정 사용자 이름이 자동으로 채워집니다.

¹웹 디자이너에서는 정수 질문과 소수 질문이 숫자라는 단일 질문 유형으로 결합되었습니다. 현장조사 디자이너는 질문 등록정보의 체크 박스를 사용하여 필수 입력을 정의할 수 있습니다.

²Survey123 ConnectSurvey123 웹 디자이너에 제공되는 이메일 질문 유형은 서로 다르게 구현됩니다. Survey123 Connect의 구현에서는 사용자가 로그인한 기관 계정의 이메일 주소로 자동으로 채워지는 반면, Survey123 웹 디자이너의 경우 이메일 주소와 일치하는 형식만 허용되는 텍스트 필드로 구현됩니다.

³지오포인트, 지오추적, 지오쉐이프 질문은 맵이라는 단일 질문 유형으로 결합되었습니다. 현장조사 디자이너는 질문 등록정보의 체크 박스를 사용하여 필수 입력을 정의할 수 있습니다. 주소라는 추가 질문 유형을 사용하면 지오코딩된 포인트를 제출할 수 있습니다.

⁴오디오 질문은 웹 앱에서와 같이 Survey123 현장 앱에서 업로드할 수 없습니다. 현장 앱에서 오디오 업로드를 허용하려면 파일 질문을 사용합니다.

Survey123 Connect에 있는 일부 모양은 Survey123 웹 디자이너에서 개별 질문 유형으로 제공됩니다. 여기에는 여러 줄 텍스트, 드롭다운, 리커트 척도가 해당됩니다.

⁶웹 디자이너는 각 질문에 대해 답변 캐싱 옵션을 제공합니다. 웹 앱에서 현장조사 레코드를 제출한 후 질문에 대한 답변이 브라우저에 캐시되며 기기에서 이 현장조사에 대해 작성된 이후 제출 항목에 답변을 미리 불러옵니다. 답변 캐싱은 오디오, 이미지, 파일 업로드, 시그니처를 제외한 모든 질문 유형에 설정할 수 있습니다.

현장조사 워크시트 열

Survey123이 지원하는 열이 다음 테이블에 모두 포함되어 있습니다. 이러한 열은 고급 템플릿의 현장조사 워크시트에 포함되어 있으며 워크시트에 나타나는 순서대로 이 테이블에 나열됩니다.

설명
유형

제공된 목록에서 질문 유형을 선택합니다. 단답형(select_one)이나 선다형(select_multiple) 질문을 사용할 경우 유효한 목록 이름을 입력합니다.

이름

피처 레이어의 필드 이름입니다.

레이블

현장조사에 표시되는 질문 레이블입니다.

힌트

현장조사 질문에 쉽게 답변할 수 있도록 도와주는 정보입니다.

안내 힌트

아이콘을 눌러야 표시되는 추가 정보입니다.

모양

현장조사 내 해당 필드의 모양을 선택합니다.

필수 정보

현장조사를 완료하기 전에 해당 필드의 값이 필요한 경우 를 선택합니다.

필수 정보 메시지

필수 필드에 대한 응답이 없는 경우 해당 열의 메시지가 표시되어 답변을 요청합니다.

읽기 전용

해당 필드의 값을 읽기 전용으로 설정하려면 를 선택합니다. 이러한 값은 현장조사에서 편집할 수 없습니다.

기본

해당 필드의 기본값을 설정합니다. 해당 열은 현장조사를 기본값으로 미리 채웁니다. 따라서 주로 사용되는 답변을 입력하거나 사용할 답변 선택 항목 유형을 표시하여 시간을 절약할 수 있습니다.

calculation

이전 질문의 값을 사용하여 계산을 수행합니다(예시: ${number} * 100). 계산 필드를 참조하여 결과를 표시합니다(예시: The answer is ${calc}).

constraint

입력 가능한 숫자 범위를 제한합니다(예시: .>0 및 .<100). 해당 열은 모든 질문 유형에 사용할 수 있습니다.

constraint_message

제약 조건이 충족되지 않은 경우 해당 메시지가 표시되어 유효한 답변을 요청합니다.

relevant

이렇게 하면 이전 질문에 대한 응답에 따라 질문을 건너뛰거나 추가 질문이 나타나도록 설정할 수 있습니다. 관련 열의 조건을 충족하면 질문이 표시됩니다(예시: ${name} = 'value'). 이 열에 의해 숨겨진 질문은 null 값만 제출합니다.

choice_filter

계단식 선택을 사용하는 경우 해당 필드에는 선택 항목 탭의 추가 속성 열과 일치하는 식이 포함됩니다(예시: attribute = ${value}).

repeat_count

해당 값은 반복에 사용할 수 있는 레코드의 개수를 지정합니다. 반복 개수가 지정된 후에는 레코드를 반복에 추가하거나 반복에서 삭제할 수 없습니다.

media::audio

오디오 파일을 프로젝트의 미디어 하위 폴더로 복사하고 오디오 파일 이름(예시: audio.mp3)을 입력하여 질문에 오디오를 제공할 수 있습니다.

media::image

이미지 파일을 프로젝트의 미디어 하위 폴더로 복사하고 이미지 파일의 이름(예시: image.jpg)을 입력하여 질문에 이미지를 표시할 수 있습니다.

bind::type

질문에 대한 기본 필드 유형을 덮어쓰는 필드 유형입니다.

bind::esri:fieldType

피처 레이어의 대상 필드 유형을 정의합니다. 해당 열은 기본 필드 유형을 덮어쓰는 데 사용할 수 있습니다. 예를 들어 기본 설정에 따라 계산 필드와 단답형 필드가 문자열인 경우 피처 레이어의 값을 정수(Integer)로 저장하려면 esriFieldTypeInteger를 선택합니다.

bind::esri:fieldLength

피처 레이어의 대상 필드 길이를 정의합니다. 해당 열은 기본 필드 길이를 덮어쓰는 데 사용할 수 있습니다.

bind::esri:fieldAlias

피처 레이어의 필드 별칭에 대한 값을 입력합니다. 해당 열은 질문 레이블에서 파생되는 기본 필드 별칭 값을 덮어쓰는 데 사용할 수 있습니다.

body::esri:style

질문 스타일 및 동작(예시: 그룹 및 반복의 배경 색상)을 정의하는 식을 입력합니다.

bind::esri:parameters

Survey123에 특정한 질문에 대한 매개변수를 입력합니다(예시: 현장조사 편집 시 반복 동작을 제어하는 매개변수).

bind::esri:workflow

거리 측정기 측정 모드에서 현장조사를 사용할 수 있도록 지원하는 매개변수를 입력합니다.

매개변수

질문에 대한 표준 XLSForm 매개변수를 입력합니다(예시: 범위 질문에 대한 start, end, step 매개변수).

body::accept

파일 질문에 허용되는 파일 유형을 설정합니다. 여러 파일 확장자가 쉼표로 구분된 파일 확장자를 허용합니다(예시: .jpg, .png).

body::esri:visible

이렇게 하면 이전 질문에 대한 응답에 따라 질문을 건너뛰거나 추가 질문이 나타나도록 설정할 수 있습니다. body::esri:visible 열의 조건을 충족하면 질문이 표시됩니다(예시: ${name} = 'value'). 이 열에 의해 숨겨진 질문은 계속하여 값을 포함하며 제출합니다.

body::esri:inputMask

문자와 심볼을 사용하여 데이터 입력에 대한 일련의 형식을 제공하는 입력 마스크를 사용할 수 있도록 식을 입력합니다.

label::language(xx)

질문 레이블에 대한 번역을 입력합니다. 언어는 해당 이름과 코드로 지정해야 합니다(예시: label::Español (es)). 각 언어에 대한 새 열을 추가합니다. 언어 목록은 현장조사의 드롭다운 메뉴에서 나타납니다.

hint::language(xx)

질문 힌트에 대한 번역을 입력합니다. 언어는 해당 이름과 코드로 지정해야 합니다(예시: hint::Español(es)). 각 언어에 대한 새 열을 추가합니다. 언어 목록은 현장조사의 드롭다운 메뉴에서 나타납니다.

guidance_hint::language(xx)

안내 힌트에 대한 번역을 입력합니다. 언어는 해당 이름과 코드로 지정해야 합니다(예시: guidance_hint::Español(es)). 각 언어에 대한 새 열을 추가합니다. 언어 목록은 현장조사의 드롭다운 메뉴에서 나타납니다.

required_message::language(xx)

필수 질문에 대한 답변이 없는 경우 표시되는 메시지에 대한 번역을 입력합니다. 언어는 해당 이름과 코드로 지정해야 합니다(예시: required_message::Español(es)). 각 언어에 대한 새 열을 추가합니다. 언어 목록은 현장조사의 드롭다운 메뉴에서 나타납니다.

body::accuracyThreshold

위치 값에 대한 임계값(미터 단위)을 입력합니다. 이 수치보다 클 경우 위치 값이 허용되지 않습니다. 지오쉐이프 및 지오추적 질문의 버텍스와 지오포인트에 적용됩니다.

bind::esri:warning

조건이 충족되지 않은 경우에 경고를 표시하는 식을 적용합니다.

bind::esri:warning_message

bind::esri:warning 조건이 충족되지 않은 경우 표시되는 메시지입니다.

bind::saveIncomplete

앱에서 질문 후 응답이 자동으로 저장되도록 하려면 true로 설정합니다.

모양

특정 유형 질문의 모양 열에 다음 값을 입력하여 해당 질문의 모양과 동작을 변경할 수 있습니다. 각 모양에 대한 자세한 내용은 모양을 참고하세요.

모양적용 가능한 질문 유형설명Survey123 현장 앱에서 지원됨Survey123 웹 앱에서 지원됨

애노테이트

이미지

사용자가 스케치할 캔버스 창을 열 수 있습니다(이미지 애노테이션도 지원됨).

autocomplete

단답형

답변 선택 항목이 드롭다운 메뉴로 나타나며 옵션의 범위를 좁히기 위한 텍스트 입력 필드가 함께 표시됩니다.

계산기

정수(integer), 소수(decimal)

이 질문에 대한 사용자 정의 계산기 위젯을 표시합니다.

아니요

compact

단답형, 선다형, 그룹 시작, 반복 시작

단답형과 선다형 질문의 경우, 공간 효율을 위해 선택 항목을 가로로 제시합니다. 그룹 및 반복의 경우, 시작할 때 질문을 축소된 상태로 표시합니다. 나중에 사용자가 질문을 확장할 수 있습니다.

compact-n

select_one, select_multiple

공간 효율을 위해 선택 항목을 가로로 제시하며, n은 열의 최대 개수를 지정합니다. 예를 들어, compact-3은 질문의 열을 최대 3개로 제한합니다.

distress

정수

질문을 색상이 지정된 차등제로 표시합니다.

아니요

그리기

이미지

사용자가 스케치할 캔버스 창을 열 수 있습니다.

필드 목록

그룹 시작, 반복 시작

현장조사 스타일이 페이지로 설정된 경우 질문 그룹을 별도의 페이지에 표시합니다.

지오코드

텍스트

지오코딩된 주소를 검색하고 제출합니다.

getinframarkerid

텍스트

고유한 24자의 InfraMarker 태그 ID를 검색하고 저장합니다.

아니요

숨김

모두

뷰에서 질문을 숨기는 한편 기본값과 계산은 계속 사용합니다.

hide-input

지오포인트

웹 앱에서 현장조사를 연 경우 좌표 항목 섹션을 축소합니다.

아니요

horizontal

select_one, select_multiple

답변 선택 항목을 수평으로 열을 지어 표시합니다.

horizontal-compact

select_one, select_multiple

축소 모양과 같습니다.

image-map

select_one, select_multiple

선택 가능한 영역이 있는 첨부된 .svg 이미지를 표시합니다.

아니요

inframarker

텍스트

InfraMaker 태그에 입력 정보를 작성해야 합니다.

아니요

likert

단답형

답변 선택 항목을 리커트 척도로 나타냅니다.

최소

단답형, 선다형, 바코드, 반복 시작

여러 응답(select_one, select_multiple), 여러 질문(반복), 텍스트 상자(바코드)를 숨겨지거나 최소화된 스타일로 표시합니다.

minimal compact

반복 시작

질문을 축소된 방식과 숨겨진 방식 둘 다로 반복에 표시합니다.

month-year

날짜

날짜의 달과 연도만 선택합니다.

다중 행

텍스트, 이미지, 파일

여러 줄 텍스트 상자로 텍스트 질문을 표시합니다. 이미지 또는 파일 질문에 대해 여러 개의 첨부 파일을 허용합니다.

new-front

이미지

기본 설정에 따라 전면 카메라를 사용하여 사진 촬영으로만 질문을 제한합니다.

아니요

new-rear

이미지

기본 설정에 따라 후면 카메라를 사용하여 사진 촬영으로만 질문을 제한합니다.

아니요

눈금 없음(no-ticks)

범위

위치, 최소값 또는 최대값 없이 범위 슬라이더를 표시합니다.

nopredictivetext

텍스트

모바일 기기에 대한 예측 텍스트를 비활성화합니다.

아니요

숫자

정수(integer), 소수(decimal)

이 질문에 대한 사용자 정의 숫자 키보드를 표시합니다.

아니요

predictivetext

텍스트

모바일 기기에 대한 예측 텍스트를 활성화합니다.

아니요

눌러서 찾기

지오포인트, 지오추적, 지오쉐이프

지오포인트 질문은 사용자가 질문과 상호작용한 후에만 위치를 허용합니다. 지오추적 및 지오쉐이프 질문은 질문과 처음 상호작용할 때 포인트를 취득하지 않고 사용자 위치에 중심이 맞춰집니다.

지오포인트 한정

거리 측정기

텍스트

전체 JSON 객체 또는 거리 측정기에서 반환된 지정된 값을 사용합니다.

아니요

검색

텍스트

현장조사 미디어 폴더의 CSV 테이블 또는 기존 피처 레이어나 테이블 값으로 선택 목록을 채웁니다.

아니요

서명

이미지

서명을 취득할 수 있는 UI를 제공합니다. 서명은 첨부 파일로 기능에 추가됩니다.

spike

이미지

Spike 기기 및 Spike 앱이 필요합니다. Spike 통합을 사용하여 사진의 거리와 위치를 측정합니다.

아니요

spike-full-measure

이미지

Spike 기기 및 Spike 앱이 필요합니다. Spike 통합을 사용하여 사진의 거리, 위치, 영역, 길이를 측정합니다.

아니요

spike-point-to-point

이미지

Spike 기기 및 Spike 앱이 필요합니다. Spike 통합을 사용하여 촬영된 두 포인트 간의 거리를 측정합니다.

아니요

스피너

정수(integer), 소수(decimal)

값을 늘리고 줄이는 버튼을 추가합니다.

아니요

table-list

그룹 시작

테이블 형식의 공통 선택 목록이 있는 그룹 내에서 일련의 단답형(select_one) 질문을 표시합니다.

thousands-sep

소수

1,000단위의 구분 기호를 사용해 답변을 표시합니다. 미리 채워진 답변에만 적용됩니다.

아니요

week-number

날짜

몇 주차인지 선택합니다.

아니요

연도

날짜

날짜의 연도만 선택합니다.

매개변수

XLSForm의 질문 유형 중 일부에는 현장조사에서 질문의 스타일 또는 동작을 제어할 수 있는 추가 매개변수가 있습니다. 이러한 매개변수는 어떤 경우에는 질문 유형이 지원하는 모양을 보완합니다. 각 질문 유형이 지원하는 매개변수의 오버뷰는 XLSForm 매개변수를 참고하세요.

기본값

날짜 질문의 기본 열에 today()를 입력하면 기본값이 오늘 날짜로 설정됩니다.

단답형 질문의 기본값에 대해 선택 항목 이름(선택 항목 레이블이 아님)을 입력합니다.

select_multiple 질문 유형에 대한 응답은 다른 질문과 다르게 설정됩니다. 선택한 각 답변은 선택된 순서대로 입력되며 쉼표로 구분됩니다. 여러 값을 select_multiple 질문의 기본값으로 정의하려면 각 값을 쉼표로 구분합니다(예시: item1,item2,item3).

데이터 유효성 검사

필수 열의 값으로 를 입력한 경우 을 선택한 경우 해당 설문조사 질문은 질문에 값이 포함되어 있는 경우에만 양식을 완성할 수 있습니다.

연산자

다음 테이블에 나열된 연산자는 제약 조건, 계산, 관련성 열을 포함하여 식을 지원하는 XLSForm 열에서 사용할 수 있습니다.

계산 및 제약 조건에 대한 자세한 내용은 공식을, 관련성 열 사용에 대한 자세한 내용은 양식 식을 참고하세요.

연산자설명예시

.

현재 답

.=1

+

더하기

${question_one} + 4

-

빼기

${question_one} - 4

*

곱하기

${question_one} * 4

div

나누기

${question_one} div 4

=

같음

${price}=9.80

!=

같지 않음

${price}!=9.80

<

다음보다 작음

${price}<9.80

<=

다음보다 작거나 같음

${price}<=9.80

>

다음보다 큼

${price}>9.80

>=

보다 크거나 같음

${price}>=9.80

and

${price}>9.00 and ${price}<9.90

mod

모듈러스(나눈 후 나머지)

${question_one} mod ${question_two}

or

또는

${price}=9.80 or ${price}=9.70

함수

Survey123에 지원되는 함수는 다음과 같습니다.

함수설명예시

boolean(question, expression, or value)

제공된 값이 Null이 아니면 true를 반환합니다.

boolean-from-string()을 대신 사용하는 것을 권장합니다.

주의:

이 함수는 항상 Survey123 웹 앱에서 true를 반환합니다. 대안으로 빈 값을 참고하세요.

boolean(${question_one})

boolean-from-string()

지정된 문자열이 'true' 또는 '1'이면 true를 반환합니다. 그렇지 않으면 false를 반환합니다.

boolean-from-string(${question_one})

coalesce(value1, value2)

비어 있지 않은 첫 번째 값을 반환합니다. 이 함수는 두 개의 값만 지원합니다.

coalesce(${question_one}, ${question_two})

concat(value1, value2, …)

문자열 값의 연결을 반환합니다.

concat(${question_one}, ' and ', ${question_two})

contains(string, substring)

지정된 문자열에 하위 문자열이 포함된 경우 true를 반환합니다.

contains(${question_one}, 'red')

count(repeat)

반복 전반의 지정된 질문에 대한 응답 개수를 반환합니다. 자세한 내용은 집계 함수를 참고하세요.

비고:

Survey123 현장 앱에서 사용하는 경우, 이 함수는 반복 내부 또는 외부에 배치할 수 있습니다. 함수를 Survey123 웹 앱에서 사용하려는 경우 반복 외부에 배치해야 합니다. 반복 외부의 횟수 값은 반복 내부의 계산에서 참조될 수 있습니다.

count(${question})

count-selected(question)

select_oneselect_multiple 질문에 선택한 답변의 수를 반환합니다. 이 함수는 또한 다중 행 모양을 사용하여 이미지, 오디오, 파일 질문에 대한 첨부 파일 수를 반환합니다.

count-selected(${question_one})

date(question, expression, or value)

시간은 유지하지 않고 숫자 또는 문자열을 날짜 객체로 변환합니다.

date('2017-05-28T04:39:02+10:00')

date-time(question, expression, or string)

숫자 또는 문자열을 날짜 객체로 변환합니다.

date-time('2017-05-28T04:39:02+10:00')

decimal-date-time(question, expression, or string)

날짜 객체를 소수 날짜-시간 숫자로 변환합니다.

decimal-date-time(${date_question})

decimal-time(question, expression, or string)

시간 객체를 기기 표준 시간대의 시간(소수 형식)을 나타내는 숫자로 변환합니다.

decimal-time(${time_question})

ends-with(string, substring)

지정된 문자열이 하위 문자열로 끝나는 경우 true를 반환합니다.

ends-with(${question_one}, 'hand.')

false()

False

false()

format-date()

기존 날짜 또는 시간 값을 정의된 형식에 맞춥니다.

format-date(${previous_time}, '%H:%M')

if(condition, a, b)

조건이 true를 평가하면 a;를 반환하고 그렇지 않으면 b를 반환합니다.

if(selected(${question_one}, 'yes') and selected(${question_two}, 'yes'), 'yes', 'no')

indexed-repeat(질문, 반복, 색인 번호)

반복 레코드에서 특정 질문의 값을 반환합니다. 자세한 내용은 반복을 참고하세요.

indexed-repeat(${room_no}, ${floor}, 3)

int(question, expression, or value)

정수로 변환합니다. 변환은 데이터 유형에 따라 다릅니다.

비고:

이 함수가 비어 있는 경우 NaN을 반환하며 질문은 빈 상태로 남게 됩니다.

int(${question_one})

join(separator, question)

반복 내 지정된 질문에 대한 모든 답변을 지정된 구분 기호로 구분하여 연결합니다.

join(',', ${question_in_repeat})

jr:choice-name(choice_name, 'question')

단답형(select_one) 질문에 사용됩니다. 지정된 질문의 선택 항목 이름과 연관된 레이블을 반환합니다. 질문은 따옴표 안에 정의해야 합니다.

jr:choice-name(${select_one}, '${select_one}')

select_multiple 질문에 사용됩니다. 지정된 질문의 선택 항목 이름과 연관된 레이블을 반환합니다. 개별 답변에 대한 레이블을 추출하는 데 selected-at() 함수를 사용해야 합니다. 질문은 따옴표 안에 정의해야 합니다.

jr:choice-name(selected-at(${select_multiple}, 3), '${select_multiple}')

max(value1, value2, ...)

반복 전반의 지정된 범위 즉 단일 질문의 최대값을 반환합니다.

max(${question_one}, ${question_two})

min(value1, value2, ...)

반복 전반의 지정된 범위 즉 단일 질문의 최소값을 반환합니다.

min(${question_one}, ${question_two})

not(expression)

식이 true를 반환하면 false 값을 반환하고 식이 false를 반환하면 true 값을 반환합니다.

not(selected(., 'yes'))

now()

이 인스턴트의 타임스탬프를 반환합니다. 이 함수는 시간 및 날짜와 시간 질문에 사용됩니다. 날짜 질문의 today()와 동일하게 작동합니다.

now()

number(question, expression, or value)

숫자로 변환합니다. 변환은 데이터 유형에 따라 다릅니다.

비고:

이 함수가 비어 있는 경우 NaN을 반환하며 질문은 빈 상태로 남게 됩니다.

number(${question_one})

once()

질문에 값이 이미 있으면 기존 값을 반환합니다. 이 함수는 양식에서 반복 레코드를 탐색할 때 값이 변경되지 않도록 하기 위해 반복 질문에 random() 또는 uuid()를 사용하는 경우에 유용합니다.

once(uuid())

position(..)

반복 안에 있는 현재 레코드의 색인을 반환합니다. 자세한 내용은 반복을 참고하세요.

position(..)

pulldata()

외부 CSV 파일에서 값을 반환합니다. 자세한 내용은 CSV에서 값 가져오기를 참고하세요.

pulldata('users', 'email', 'name', ${respondent_name})

pulldata("@exif")

이미지의 EXIF 메타데이터에서 값을 반환합니다. 자세한 내용은 이미지 메타데이터 추출을 참고하세요.

pulldata("@exif", ${photo}, "GpsLatitude")

pulldata("@geopoint")

지오포인트 질문에서 값을 반환합니다. 자세한 내용은 지오포인트 값 추출을 참고하세요.

pulldata("@geopoint", ${location}, "horizontalAccuracy")

pulldata("@javascript")

양식에서 JavaScript 함수를 실행하고 결과를 반환합니다. 자세한 내용은 현장조사 양식의 JavaScript 함수를 참고하세요.

pulldata("@javascript", "functions.js", "uniqueID", ${buildings})

pulldata("@json")

JSON 객체에서 값을 반환합니다. 자세한 내용은 JSON에서 값 가져오기를 참고하세요.

pulldata("@json", ${json_output}, "attributes.ZIP_CODE")

pulldata("@layer")

ArcGIS 피처 레이어, 피처 테이블 또는 쿼리 지원 맵 서비스를 쿼리하고 결과를 반환합니다. 자세한 내용은 피처 레이어 쿼리를 참고하세요.

pulldata("@layer", "getRecordAt", "https://services.arcgis.com/P3ePLMYs2RVChkJx/arcgis/rest/services/World_Time_Zones/FeatureServer/0", ${location})

pulldata("@property")

기기 또는 로그인한 사용자에 대한 정보를 반환합니다. 자세한 내용은 기기 및 사용자 등록정보를 참고하세요.

pulldata("@property", 'username')

random()

0(포함)에서 1(제외) 사이의 무작위 값을 반환합니다.

random()

regex()

질문의 입력에 정규식을 적용합니다. 패턴이 일치하는 경우 true를 반환합니다. 자세한 내용은 정규식을 참고하세요.

regex(., '^\d{5}$')

selected(question, value)

답변을 선택했는지 확인합니다. 이 함수는 단답형선다형 질문에 사용됩니다.

selected(${question_one}, 'a')

selected-at(question, number)

select_multiple 질문에 사용됩니다. 지정된 숫자에 대한 선택 항목의 이름을 반환하며 계산은 0에서부터 시작합니다. 예를 들어 '2'의 경우 세 번째 선택 항목을 반환합니다.

selected-at(${question_one}, 2)

starts-with(string, substring)

지정된 문자열이 하위 문자열로 시작하는 경우 true를 반환합니다.

starts-with(${question_one}, 'The')

string(question, expression, or value)

문자열로 변환합니다. 변환은 데이터 유형에 따라 다릅니다.

string(${question_one})

string-length(question, expression, or value)

비어 있지 않은 문자열의 길이를 반환합니다.

string-length(${question_one})

substr(question, start, end)

특정 시작의 하위 문자열 시작을 반환하고 지수 끝 -1의 문자로 확장합니다. 여기서 시작과 끝이 0에서 시작합니다.

substr(${question_one}, 1, 2)

sum(repeat)

반복 전반의 지정된 질문에 대한 모든 응답의 합을 반환합니다. 자세한 내용은 집계 함수를 참고하세요.

비고:

Survey123 현장 앱에서 사용하는 경우, 이 함수는 반복 내부 또는 외부에 배치할 수 있습니다. 함수를 Survey123 웹 앱에서 사용하려는 경우 반복 외부에 배치해야 합니다. 반복 외부의 합계 값은 반복 내부의 계산에서 참조될 수 있습니다.

sum(${question})

today()

현지 정오로 내부에 저장되어 있는 오늘 날짜를 반환합니다. 이 함수는 날짜 질문에 사용됩니다.

today()

true()

True

true()

uuid()

무작위 UUID 문자열을 반환합니다.

uuid()

version()

설정 워크시트에 정의된 설문조사의 버전을 반환합니다.

version()

Survey123에서는 다음과 같은 계산 함수가 지원됩니다.

함수설명예시

acos(value)

값의 아크 코사인을 반환합니다.

acos(${question_one})

asin(value)

값의 아크 사인을 반환합니다.

asin(${question_one})

atan(value)

값의 아크 탄젠트를 반환합니다.

atan(${question_one})

atan2(value1, value2)

값의 몫에 대한 아크 탄젠트를 반환합니다.

atan2(${question_one}, ${question_two})

cos(value)

값의 코사인을 라디안 단위 각도로 반환합니다.

cos(${question_one})

sin(value)

값의 사인을 라디안 단위 각도로 반환합니다.

sin(${question_one})

tan(value)

값의 탄젠트를 라디안 단위 각도로 반환합니다.

tan(${question_one})

exp(value)

값의 자연 지수를 반환합니다.

exp(${question_one})

exp10(value)

10의 거듭제곱 값을 반환합니다.

exp10(${question_one})

log(value)

값의 자연 로그를 반환합니다.

log(${question_one})

log10(value)

값의 상용 로그를 반환합니다.

log10(${question_one})

pi()

pi를 반환합니다.

pi()

pow(value, power)

지정된 값으로 거듭제곱한 값을 반환합니다.

pow(${question_one}, 3)

round(value, power)

반올림 값을 반환합니다.

round(${question_one}, 5)

sqrt(value)

값의 제곱근을 반환합니다.

sqrt(${question_one})

HTML 서식

HTML 서식은 질문 레이블과 힌트, 선택 항목 목록의 레이블에 사용할 수 있습니다. 다음과 같은 HTML 서식이 지원됩니다.

태그속성

a

href, style

abbr

title

audio¹

autoplay, controls, loop, muted, preload

b, strong, i, em, u, ul, ol, li, tbody, br, hr

dd, dl, dt

style

div¹

style, align

figcaption

style

figure

style

font

size, color, style

h1, h2, h3, h4, h5, h6

style

img

src, width, height, border, alt, style

p

style

source¹

media, src, type

span

style

sub

style

sup

style

table

width, height, cellpadding, cellspacing, border, style

td, th

height, width, valign, align, colspan, rowspan, nowrap, style

tr

height, valign, align, style

video¹

autoplay, controls, height, loop, muted, poster, preload, width

¹Survey123 웹 앱에서만 지원됩니다.

팁:

기본 설정에 따라 Survey123 웹 앱에 열려 있는 HTML 서식으로 생성된 하이퍼링크를 클릭하면 현장조사와 동일한 탭에 목적지가 열립니다. 새 탭에 이 링크를 열려면 target="_blank"a href 태그에 추가합니다. 예시는 다음과 같습니다.

<a href="https://www.esri.com" target="_blank">Link to Esri website</a>

정규식

정규식은 검색 패턴을 정의하는 문자 시퀀스입니다. 질문에 이러한 정규식을 사용하여 다른 질문을 기반으로 하는 값을 구하거나 데이터 입력을 제한할 수 있습니다. 정규식은 다음 테이블에 나와 있는 하위식을 사용하여 만들 수 있습니다. 자세한 내용은 공식을 참고하세요.

하위식일치

^

라인의 시작 문자와 일치합니다.

$

라인의 끝 문자와 일치합니다.

.

줄 바꿈 문자 이외 임의의 단일 문자와 일치합니다.

[...]

괄호 안 임의의 단일 문자와 일치합니다.

[^...]

괄호 안 문자가 아닌 임의의 단일 문자와 일치합니다.

(re)

정규식을 그룹화하고 일치된 텍스트를 기억합니다.

(?: re)

정규식을 그룹화하고 일치된 텍스트를 기억하지 않습니다.

a| b

a 또는 b와 일치합니다.

\A

전체 문자열의 첫 문자입니다.

\b

괄호 외부인 경우 단어 경계와 일치하고, 괄호 내부인 경우 백스페이스(0x08)와 일치합니다.

\B

단어가 아닌 경계와 일치합니다.

\d

숫자와 일치합니다. [0~9]와 같습니다.

\D

숫자가 아닌 문자와 일치합니다.

\E

\Q로 시작된 따옴표 표시를 종료합니다.

\G

마지막 일치가 끝난 지점과 일치합니다.

\n, \t, \e 등

새 행, 탭, 이스케이프 등과 일치합니다.

\N

그룹 번호 N을 캡처하는 역참조입니다.

\Q

\E까지의 모든 문자를 이스케이프(큰 따옴표 표시)합니다.

re*

이전 식의 0회 이상의 발생과 일치합니다.

re+

이전 식의 1회 이상의 발생과 일치합니다.

re?

이전 식의 0회 또는 1회 발생과 일치합니다.

re{ n}

이전 식의 정의된 n회 발생과 일치합니다.

re{ n,}

이전 식의 n회 이상의 발생과 일치합니다.

re{ n, m}

이전 식의 정의된 n회 이상, m회 이하의 발생과 일치합니다.

\s

공백 문자와 일치합니다(탭, 라인 피드, 폼 피드, 캐리지 리턴 또는 공백).

\S

공백이 아닌 문자와 일치합니다.

\w

단어 문자와 일치합니다.

\W

단어가 아닌 문자와 일치합니다.

\z

전체 문자열의 마지막 문자입니다.

\Z

허용되는 최종 라인 종결자를 제외한 전체 문자열의 마지막 문자입니다.

예를 들어 regex(.,'^[A-Za-z]*$') 정규식의 경우 사용자는 숫자나 특수 문자를 제외한 문자만 문자열 질문에 입력할 수 있습니다.

Esri 필드 유형

bind::esri:fieldType 열을 사용하면 기본 필드 유형을 다음 값 중 하나로 덮어쓸 수 있습니다. 자세한 내용은 Esri 사용자 설정 열을 참고하세요.

필드 값결과

esriFieldTypeDate

날짜 및 시간 값

esriFieldTypeDateOnly

시간 값 없이 날짜 값만

esriFieldTypeTimeOnly

날짜 값 없이 시간 값만

esriFieldTypeTimestampOffset

협정 세계시(UTC)로부터의 날짜, 시간, 오프셋 값

esriFieldTypeDouble

2배 정밀도 부동 소수점 수

esriFieldTypeGUID

GUID(Globally Unique Identifier)

esriFieldTypeInteger

숫자(32비트)

esriFieldTypeBigInteger

다음으로부터의 숫자(64비트)

esriFieldTypePointZ

지오포인트의 고도 캡처 활성화

esriFieldTypeString

일련의 영숫자 심볼

null

Null 필드이며, 값을 저장하지 않습니다.

특수 문자

질문 이름 및 선택 이름은 공백, 쉼표, 하이픈, 괄호, 중괄호 같은 특수 문자 또는 $, %, # 등의 문자를 포함할 수 없습니다. select_multiple 질문의 선택 이름에는 공백이나 쉼표가 포함되지 않는 것이 중요합니다.