查找记录 > 在不同字段中查找具有相等值的记录
 

在不同字段中查找具有相等值的记录

您可以查找记录中不同字段具有相同值的记录。例如,您要查找付款金额与结算金额相同的所有订单。在脚本中使用计算字段或循环来比较每个记录中两个字段的值。

使用计算字段查找具有相等值的记录:

1. 在包含要比较的字段的表中,创建一个计算字段,其结果类型为数字。请参阅定义计算字段

例如,创建一个名为 CompareFields 的计算字段。

2. 在“指定计算”对话框中,输入一个比较两个字段的表达式。

例如,只有当两个字段具有相同的值时,表达式 FieldA = FieldB 才将 CompareFields 字段设置为 1;否则,CompareFields 值为 0。

3. 将计算字段 (CompareFields) 添加到布局。

请参阅在布局上放置和删除字段

4. 启动查找请求,在计算字段 (CompareFields) 中键入 1,然后单击执行查找

请参阅创建查找请求

找到的集合是计算字段 CompareFields 等于 1 的所有记录,即 FieldA 与 FieldB 具有相同值的所有记录。

使用脚本查找具有相等值的记录:

1. 创建脚本。

请参阅创建并编辑脚本

2. 将以下步骤添加到脚本,其中 Table::FieldA 和 Table::FieldB 是要在特定布局(在本例中为“我的布局”)中比较的两个字段。

转到布局 [“我的布局”(表)]
显示所有记录
转到记录/请求/页面 [第一个]
Loop
If [ Table::FieldA = Table::FieldB ]
转到记录/请求/页面 [下一步; 最后一步后退出: On ]
Else
省略记录
End If
End Loop

3. 执行此脚本。

该脚本显示所有记录并转到第一条记录。然后,针对每条记录,它会比较两个字段,并省略 FieldA 不等于 FieldB 的记录。

注释  无需在计算字段中或在上面的 If 脚本步骤中使用等号,您可以使用任何比较运算符或逻辑运算符来比较字段。例如,使用 Table::FieldA > Table::FieldB 查找 FieldA 大于 FieldB 的记录。请参阅比较运算符逻辑运算符