以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  通过代码设置此列的值。  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=157308)

--  作者:a272797388
--  发布时间:2020/10/12 8:20:00
--  通过代码设置此列的值。

随机抽取大量记录

如果随机抽取的记录较多,可以考虑增加一个逻辑列,假定逻辑列的名称为“选择”,可以参考下面的代码:

Dim cnt As Integer = DataTables("订单").DataRows.Count
Dim
nds As Integer = 100 \'要抽取的记录数
Tables
("订单").StopRedraw()
DataTables
("订单").ReplaceFor("选择",False)
Do

Dim idx As Integer = rand.Next(0,cnt)
Dim dr As DataRow = DataTables("订单").DataRows(idx)
If dr("选择") = False Then
dr("选择") = True
nds = nds - 1
End
If
Loop
While nds > 0
Tables
("订单").Filter = "[选择] = True"
Tables
("订单").ResumeRedraw()

上面的代码从订单表中随机抽取100个订单。
建议逻辑列“选择”采用表达式列,不要给其设置表达式即可,因为:没有设置表达式的表达式列,可以通过代码设置此列的值。

 

 

 

请问:  因为:没有设置表达式的表达式列,可以通过代码设置此列的值。     这句话我没懂, 请问是什么意思啊?

 


--  作者:y2287958
--  发布时间:2020/10/12 8:27:00
--  
照办就是了。很明白,一开始就设置表达式的内容,以后就改变不了该列的值。
--  作者:a272797388
--  发布时间:2020/10/12 8:29:00
--  
增加这列表达式能起到什么作用? 请告知
--  作者:有点蓝
--  发布时间:2020/10/12 8:43:00
--  
表达式列如果不设置表达式,就可以手工赋值。这里使用表达式列的而不是数据列的原因是这个列的数据不需要保存,而只是临时使用