摘要
在某些情况下,字段需要根据上一个问题的值使用多个公式来填充答案。 以下是使用 ArcGIS Survey123 Connect 实现此目的的三个示例。
过程
根据所选仪表类型,使用公式计算并填充仪表功率
在本示例中,仪表的功率是根据选择的仪表类型,通过两种不同的公式计算得出的。 使用 IF 函数根据所选仪表类型来计算正确的公式。
- 在 ArcGIS Survey123 Connect 中,打开调查的 XLSForm。
- 创建并配置 select_one 问题。
- 在调查工作表的 type 列中,选择 select_one 并指定选项列表名称。 在本示例中,选项列表名称为“meter”。
- 指定 name 和 label 列中的值。 在本示例中,该问题名为“themeter”,标注为“Meter Type”。
- 导航至工作表的底部,然后单击选项选项卡,打开选项工作表。
- 在 list_name 列中,指定在步骤 2a 中创建的选项列表名称。
- 在 name 列中,指定选项的名称。 在本示例中,使用“With CT”和“Without CT”。
- 在 label 列中,指定要在调查中显示的值。 在此示例中,使用“With CT”和“Without CT”。
- 创建并配置多个公式组成的数值问题。
- 在调查工作表的 type 列中,选择整数或小数问题类型。 在本示例中,选择了“integer”。
- 指定 name 和 label 列中的值。 在本示例中,该问题名为“seconds1”,标注为“Seconds1”。
- 根据需要重复步骤 3a 和 3b,形成多个公式。 在本示例中,创建并配置了另一个整数问题。 第二个整数问题名为“factor”,标注为“Factor”。
- 配置公式组件与选项
- 在两个整数问题的 relevant 列中,指定所需的公式组件表达式,用于计算仪表的功率。 根据适用性,使用以下一个或两个表达式来指定公式组件。
selected(${select_one fieldname},'<choice 1>') or selected(${select_one fieldname },'<choice 2>')
selected(${select_one fieldname},'<choice 1>')
- 创建并配置带计算的数值问题。
- 在调查工作表的 type 列中,选择整数或小数问题类型。 在本示例中,选择了“integer”。
- 指定 name 和 label 列中的值。 在本示例中,该问题名为“kilowatts”,标注为“kW”。
- 在此问题的 calculation 列中,指定将用于计算的多个公式,根据选择的仪表来填充答案。 使用以下表达式指定公式。
if(selected(${select_one fieldname },'<choice 1>'),($<formula 1>),($<formula 2>))
Note:
The <formula 1> is the formula used to calculate ‘<choice 1>.'
下图展示了在 ArcGIS Survey123 Connect 中,根据选择的仪表类型,通过公式计算的功率值。
根据所选形状类型,使用两个公式计算并填充表格面积
在本示例中,表格的面积是根据选择的形状类型,通过两种不同的公式计算得出的。 在本示例中,使用 Coalesce 函数根据所选形状类型来计算正确的公式。
- 在 ArcGIS Survey123 Connect 中,打开调查的 XLSForm。
- 创建并配置 select_one 问题。
- 在调查工作表的 type 列中,选择 select_one 并指定选项列表名称。 在本示例中,选项列表名称为“shape”。
- 指定 name 和 label 列中的值。 在本示例中,该问题名为“theshape”,标注为“Shape of Table”。
- 导航至工作表的底部,然后单击选项选项卡,打开选项工作表。
- 在 list_name 列中,指定在步骤 2a 中创建的选项列表名称。
- 在 name 列中,指定选项的名称。 在本示例中,使用了“triangle”和“rectangle”。
- 在 label 列中,指定要在调查中显示的值。 在本示例中,使用了“Triangle”和“Rectangle”。
- 创建并配置两个公式组成的数值问题。
- 在调查工作表的 type 列中,选择整数或小数问题类型。 在本示例中,将选择“小数”。
- 指定 name 和 label 列中的值。 在本示例中,该问题名为“base”,标注为“Base”。
- 根据需要重复步骤 3a 和 3b,形成多个公式。 在本示例中,创建并配置了另外两个小数问题。第二个小数问题名为“height”,标注为“Height”。第三个小数问题名为“width”,标注为“Width”。
- 配置公式组件与选项
- 在三个小数问题的 relevant 列中,指定所需的公式组件表达式,用于计算形状的面积。 根据适用性,使用以下一个或两个表达式来指定公式组件。
selected(${select_one fieldname},'<choice 1>') or selected(${select_one fieldname },'<choice 2>')
selected(${select_one fieldname},'<choice 1>')
- 创建并配置两个带计算的隐藏问题。
- 在调查工作表的 type 列中,选择隐藏问题类型。
- 指定 name 和 label 列中的值。 在本示例中,该问题名为“area_triangle”,标注为“at”。
- 根据需要重复步骤 2a 和 2b,形成多个公式。 在本示例中,创建并配置了另一个隐藏问题。 第二个隐藏问题名为“area_rectangle”,标注为“ar”。
- 在这些问题的 calculation 列中,指定每个隐藏问题的公式。
- 创建并配置带计算的数值问题。
- 在调查工作表的 type 列中,选择整数或小数问题类型。 在本示例中,将选择“小数”。
- 指定 name 和 label 列中的值。 在本示例中,该问题名为“thearea”,标注为“Area”。
- 在此问题的 calculation 列中,指定用于计算的多个公式,根据选择的形状来填充答案。 使用以下表达式指定公式。
number(coalesce(${<hidden_fieldname1>},${<hidden_fieldname2>}))
根据所选形状类型,使用多个公式计算并填充表格面积
在本示例中,表格的面积是根据选择的形状类型,通过两种不同的公式计算得出的。 使用 IF 函数根据所选形状类型来计算正确的公式。
- 执行上述示例中的步骤 1 到 4。
- 创建并配置带计算的数值问题。
- 在调查工作表的 type 列中,选择整数或小数问题类型。 在本示例中,将选择“小数”。
- 指定 name 和 label 列中的值。 在本示例中,该问题名为“thearea”,标注为“Area”。
- 在此问题的 calculation 列中,指定将用于计算的多个公式,根据选择的形状来填充答案。 使用以下表达式指定公式。
if(selected(${select_one fieldname },'choice1'),($<formula 1>),($<formula 2>))
下图展示了在 ArcGIS Survey123 Connect 中,根据选择的形状类型,通过两个或多个公式计算的面积。