以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 跨表应用中没考虑到的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=48071) |
||||
-- 作者:zhangchi96 -- 发布时间:2014/3/22 14:04:00 -- 跨表应用中没考虑到的问题 引用一段说明书的内容 3.4.2.4.3.11 跨表引用的自动更新上一节提到,如果在订单表的DataColChanged事件中加入如下代码: If e.DataCol.Name = "品名" Then \'如果内容发生变动的是品名列
问题:如果在“产品”中,有这样的记录
产品表: -------------------------------- 序号 时 间 品名 单价 1 2013-1-1 钢笔A 7.00 2 2013-1-2 铅笔 2.00 3 2013-1-3 钢笔A 9.00 4 2013-1-4 钢笔B 5.00 5 2013-1-5 钢笔A 8.00 6 2013-1-5 钢笔A 8.00 6 2013-1-6 钢笔A 8.00
订单表: -------------------------------- 序号 时 间 品名 最初单价 第2次单价 最终单价 平均单价 1 2013-3-1 钢笔A 7.00 ?? ?? ?? 4 2013-3-4 钢笔B 5.00 ?? ?? ??
最初单价:就是第一次的找到的记录,关于问号(??)部分的代码如何实现,请教各位高手! (最想解决的是: 填写“最终单价”的代码) [此贴子已经被作者于2014-3-22 14:06:50编辑过]
|
||||
-- 作者:Bin -- 发布时间:2014/3/22 14:08:00 -- Find(Filter,Sort,Index) dr = DataTables("产品").Find("[品名] = \'" & e.NewValue & "\'","时间",1)
|
||||
-- 作者:lsy -- 发布时间:2014/3/22 14:10:00 -- 又发代码,又发图片,就是不肯发例子,至少表导出来,也省不少事。 |
||||
-- 作者:lsy -- 发布时间:2014/3/22 14:55:00 --
|
||||
-- 作者:zhangchi96 -- 发布时间:2014/3/23 9:07:00 -- 衷心谢谢版主,我图省事,就没有做文件,这个方面以后一定要改,给版主填麻烦,给大家添麻烦了,另外,我提的问题的意思也没有能表达明白,请诸位谅解。
我重传了文件,
1、主要目的:为了获得“最初单价”和“最终单价”, 2、含义解释 【商 品】:品名相同、产地相同 则为一个 商品 【最初单价】:在按一定顺序排列后,从第一行开始查找到的单价, 【最终单价】:从最后一行开始向上找到的单价,而不是紧接最初单价后的第二个找到的单价
3、设置了两个按钮【盘点1】【盘点2】,这两个按钮使用后的结果中 “最初单价”和“最终单价”应该是相反的结果
恳请版主在百忙中帮我把触发代码修改一下,再次对版主的指导表示衷心感谢!
|
||||
-- 作者:有点酸 -- 发布时间:2014/3/23 9:34:00 -- 1、看这个:
3、交换两列的值更简单:
For Each dr As DataRow In DataTables("表B").DataRows
|
||||
-- 作者:zhangchi96 -- 发布时间:2014/3/23 11:18:00 -- 谢谢,一下子没想到,我原来想,求最终单价就从最后一行向上找数据,没想到是把原来的排序颠倒一下,你太厉害了,谢谢! |