在帮助里面,有关动态加载->父表与子表同步加载的说明中,有如下一段代码:
If DataTables("订单").DataRows.Count = 0 Then '如果订单表没有数据
DataTables("订单明细").LoadFilter = "订单ID Is Null"
'不加载订单明细
Else
Dim ids As String
For Each dr As DataRow In DataTables("订单").DataRows
ids = ids
&
","
&
dr("订单ID")
Next
ids= ids.Trim(",")
DataTables("订单明细").LoadFilter = "订单ID In ("
&
ids
&
")"
End If
DataTables("订单明细").Load()
我不知道老大在写这段代码的时候,“订单ID”是基于字符串的还是数值的。下午我在写如上的一段代码时,发现假如“订单ID”是字符串值的话,ids = ids
&
","
&
dr("订单ID") 这条语句是错误的,参考了SQL的IN参数,前面的这条语句应该写成:ids = ids & ",'" & dr("订单ID") & "'"
亦即帮助里的“加载条件为:订单ID In (1,2,6,7,8,9)”应该是“加载条件为:订单ID In ('1','2','6','7','8','9')”
不知是否正确?供参考