例如希望在产品表中修改单价后,订单表中已经付款的订单,继续保持原单价不变,而未付款的订单采用新的单价。为此,我们可以在产品表的DataColChanged事件中加入如下代码:
If e.DataCol.Name = "单价" Dim Filter As String = "[品名] = '" & e.DataRow("品名") & "' 已付款 = False" DataTables("订单").ReplaceFor("单价", e.NewValue, Filter)End If
上述代码能够相对禁止“单价”的更新,但是当重置订单表“品名”列后,单价依然更新为新的单价。
如果“已付款 = true”,如何绝对禁止单价的更新呢?
代码又如何写呢?