以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] 阶梯价格取出 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=151820) |
||||
-- 作者:susanhe -- 发布时间:2020/7/4 12:04:00 -- [求助] 阶梯价格取出 老师,有个难题帮忙解决一下,从表B中取出相应的单价和供应商到表A相应列中,其中价格是根据表B中数量的不同而取出的。,在窗口1中如何实现 ?实在难点难了,谢谢。 |
||||
-- 作者:susanhe -- 发布时间:2020/7/4 12:05:00 -- 附上实列。
|
||||
-- 作者:有点蓝 -- 发布时间:2020/7/4 13:26:00 --
|
||||
-- 作者:susanhe -- 发布时间:2020/7/5 9:04:00 -- 谢谢,老师。 还请问一下在表B中,起始数量和结束数量如何来控制录入。 即相同产品时:第一条记录录入 0 到 10, 这个产品的第二条记录就只能从 11开始,不可以从0到10的数量起始,不可以交叉。这样可以吗 ? 谢谢。
|
||||
-- 作者:有点蓝 -- 发布时间:2020/7/5 20:49:00 -- 使用compute获取已录入数据结束数量的最大值,判断起始数量录入的数据不能小于这个最大值,当前行结束数量不能小于起始数量。到datacolchanging数据处理 |
||||
-- 作者:susanhe -- 发布时间:2020/7/6 9:08:00 -- 老师,这个不是很懂,麻烦老师。 |
||||
-- 作者:有点蓝 -- 发布时间:2020/7/6 9:33:00 -- datacolchanging事件 If e.DataCol.Name = "起始数量" Dim cnt As Integer = e.DataTable.Compute("max(结束数量)","供应商=\'AA\' and 产品=\'电视机\' and _Identify <" & e.DataRow("_Identify")) If cnt >= e.NewValue Then msgbox("不能大于结束数量") e.Cancel = True End If End If
|
||||
-- 作者:susanhe -- 发布时间:2020/7/6 22:23:00 -- 谢谢老师,可是这个供应商和产品不是固定的,多变的,如何修改,谢谢。 |
||||
-- 作者:有点蓝 -- 发布时间:2020/7/6 22:35:00 -- 我是故意这样写的,看看帮助自己思考一下:http://www.foxtable.com/webhelp/topics/1284.htm |
||||
-- 作者:susanhe -- 发布时间:2020/8/1 14:00:00 -- 教师,麻烦纠正一下。谢谢。 If e.DataCol.Name = "起始数量" Dim cnt As Integer = e.DataTable.Compute("max(结束数量)","供应商=e.row() and 产品=e.row( and _Identify <" & e.DataRow("_Identify")) If cnt >= e.NewValue Then msgbox("不能大于结束数量") e.Cancel = True End If End If |