RecalcColFor
重算指定表指定列的刷新公式,可以设置重算条件。
语法:
RecalcColFor(Grid,Col,CompareCol,CompareMode,CompareValue,......)
Grid 指定表,可以用表名表示,也可以用位置表示。
Col 指定列,可以用列名称表示,也可以用位置表示。
CompareCol 进行比较的列,可以用列名称表示,也可以用位置表示。
CompareMode 比较方式,包括=、>、<、>=、<=、<>、Like、Instr共8种比较方式。
CompareValue 比较值
可以设置多个比较条件,从第三个参数开始,每三个参数组成一个比较条件。如果比较方式选择的是Instr,则进行包含查询;如果比较方式选择"Like",则可以在比较值中使用通配符进行类似查询。
例如:
RecalcColFor("订单表","金额","产品","= ","PD01")
重算订单表中的PD01产品的金额。
RecalcColFor("订单表","金额","产品","= ",[产品])
重算订单表中产品等于当前表当前行产品的金额。
例如在一个订单管理系统中,产品表和订单表通过产品编号建立关联,订单表中的产品名称列的刷新公式为:
[产品!产品名称]
这样我们在订单表中只需输入产品编号,即可自动输入产品名称。现在的问题是如果在产品表中修改了某个产品编号对应的产品名称,订单表中的产品名称并不会自动更新为新的产品名称,为解决这个问题,可以将产品表中产品名称列的操作公式设为:
RecalcColFor("订单表","产品名称","产品编号","=",[产品编号])