我们希望部署一项可供公众访问的调查,以收集 10 个预定地点的潮位信息。我有一个包含 10 个点(站点)的功能类,以及一个包含由志愿者填写的问题的相关表格。这些使用 10 个站点的 GlobalID 和相关表中的 GUID 进行链接 (1:m)。对于员工来说,我们一直使用现场地图来简单地前往每个站点,单击一个点并填写相关表格(效果很好)。
但是,我们的大多数志愿者都不太懂技术,并且习惯于在此类情况下填写表格。理想情况下,我想在我们的网站上嵌入一项调查,他们可以在其中选择网站(从下拉菜单或单击地图上的某个点),然后填写所有相关信息。
我开始使用 Survey123 进行设置,尽管使用 Survey123 应用程序(使用收件箱功能)可以正常填写预定位置的调查,但网络应用程序版本给我带来了很多麻烦。 Web 应用程序上的每个条目都会在父层中创建一个新站点(具有新的 GlobalID)。我了解收件箱功能无法在网络应用程序中使用。如何在 Survey123 Connect 中配置我的 xls,以便网页上的条目向相关表添加新记录(检查),而不向站点(父层)添加新点?
如果您仍在寻找答案,问题是您需要将调查设置为仅使用相关表并从志愿者输入的数据中排除父图层。
转到 ArcGIS Online 中的要素服务,找到您希望志愿者在 Survey123 中填写的相关表的图层 ID 编号和名称。仅供参考,相关表名称中不能有空格。 打开 Survey123 Connect。 根据现有要素服务创建新调查。 打开新调查的 XLS 并转到设置选项卡。 Submit_url 列现在将有一个链接。在链接末尾添加“/”到链接末尾,而不添加“<>。因此您的链接将类似于 https://www.arcgis.com/sharing/rest/content/items/fdklsjkj19827834jhfk89081249j/ 1 更改 form_id 列以匹配相关表的名称。 这会将表单设置为在特定链接处查找相关表,并从数据收集中排除任何父图层。
返回 XLS 中的“调查”选项卡,删除属于父层的响应,并确保删除您从中创建表单的相关表的开始和结束重复,否则它将尝试在其中查找该表表格和表格不起作用。例如,如果您的相关表名为 TideSurveys 并且您有一个开始重复| XLS 中的 TideSurveys,开始重复将在 TideSurveys 表中查找 TideSurveys 表,并且由于该表不能位于其自身内部,因此会产生错误。
这将使您的志愿者仅从相关表中输入数据,并且不会为海滩创建新点。现在第二个问题来了。
如何将志愿者收集的记录与正确的调查地点联系起来?由于您只有 10 个地点,因此您可以采取的一种方法是获得志愿者从中选择的调查地点的列表。然后设置 Survey123 以根据位置名称计算父图层的 globalID 并将其放入相关表的 rel_globalid 或等效字段中。在xls中,您需要将rel_globalid字段名称设置为名称,将类型设置为文本bind::type设置为字符串,将bind:esri:fieldType设置为esriFieldTypeGUID,这将格式化调查以正确格式化您要插入到rel_globalid中的globalId使其作为关联的一部分发挥作用的字段。