描述
在 ArcGIS Survey123 Connect 中,可以创建动态调查标题,以根据输入信息对调查进行个性化设置。 调查标题通常在设置工作表的 form_title 列中定义。 但是,form_title 不支持动态元素。 要创建动态调查标题,必须使用 generated_note_form_title 注释问题。
本文介绍创建动态调查标题的两种方法;一个使用对问题的响应,另一个使用从 ArcGIS Survey123 Connect 中使用 pulldata() 函数检索到的数据。
解决方案或解决方法
调查响应中的动态标题
- 在 ArcGIS Survey123 Connect 中,打开调查的 XLSForm。
- 创建必须动态使用响应作为调查标题的问题。
- 在调查工作表的类型列中,选择文本并指定名称和标注列。 在此示例中,问题名为“the_name”并标注为“名称”。
- 创建 generated_note_form_title 注释问题。
- 在调查工作表的类型列中,选择注释。
- 在名称列中,键入 generated_note_form_title。
- 在 label 列中,指定以下表达式:
<the question label> ${<the question name from previous step>}
- 保存 XLSForm 并发布调查。
下图显示了基于对“名称”问题的回答的动态标题的调查。
使用 pulldata() 函数检索的数据中的动态标题
pulldata() 函数可用于调查,以从 CSV 文件、EXIF 元数据、地理点问题、ArcGIS 要素图层等中提取数据。 这种方法可以节省时间,同时还可以确保数据的精度和准确性,因为它不需要提交者手动输入响应。
- 在 ArcGIS Survey123 Connect 中,打开调查的 XLSForm。
- 创建必须动态使用响应作为调查标题的问题。
- 在调查工作表的类型列中,选择文本并指定名称和标注列。 在本示例中,该问题名为“full_name”,标注为“Full Name”。
- (可选)在外观列中,从下拉列表中选择隐藏以隐藏问题,使其不显示在调查中。
- 在计算列中,指定 pulldata() 表达式。 有关使用 pulldata() 函数提取某些数据的详细信息,请参阅 ArcGIS Survey123:函数。 在此示例中,pulldata("@property") 函数用于提取已登录用户的属性,例如其姓名。
pulldata("@property" , 'userFullName')
- 创建 generated_note_form_title 注释问题。
- 在调查工作表的类型列中,选择注释。
- 在名称列中,键入 generated_note_form_title。
- 在 label 列中,指定以下表达式:
<the question label> ${<the question name from previous step>}
- 保存 XLSForm 并发布调查。
调查将显示基于已登录用户的动态标题。