以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  问题求解  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=71853)

--  作者:bestorange
--  发布时间:2015/7/19 13:52:00
--  问题求解

此主题相关图片如下:531.jpg
按此在新窗口浏览图片

以下是我窗口种按钮的事件命令:

Dim g As New GroupTableBuilder("统计表1", DataTables("钢琴课时统计表"))
    g.Groups.AddDef("教师姓名")
    g.Groups.AddDef("授课内容")
    g.Totals.AddDef("授课内容", AggregateEnum.Count,"签到次数")
    g.Filter = "教师姓名 = \'" & e.Form.Controls("ComboBox1").Text & "\'"
    g.Build(False)


DataTables("教师课时统计表").DataRows.Clear
Dim f As new Filler
f.SourceTable = DataTables("统计表1") \'指定数据来源
f.SourceCols = "教师姓名,授课内容,签到次数" \'指定数据来源列
f.DataTable = DataTables("教师课时统计表") \'指定数据接收表
f.DataCols = "教师姓名,授课内容,签到次数" \'指定数据接收列
f.Fill() \'填充数据

MainTable = Tables("教师课时统计表")
DataTables.Unload("统计表1")

 

根据命令看 ,我将绑定表”钢琴课时统计表“中的数据 复制到”教师课时统计表“中。即我每次点击这个按钮都会复制表内指定列的所有行到数据接收表。

怎样可以实现不复制重复记录到数据接收表呢?

 

我试过 DataRows.Clear,但是效果不理想。想起之前专家教我用逻辑列来筛选统计。应该也可以用逻辑列解决当前问题。

我在"钢琴课时统计表"中增加了一个逻辑列。"已结算"

能否在上面的命令中同时实现:只复制"已结算“列下未选定的行的内容到"教师课时统计表",并将复制过的内容自动勾选呢??

最好能够一键实现。 实在不行只好再添加个按钮了


 

PS:数据接收表是临时表,所以不能使用

Dim f As new Filler
f.SourceTable = DataTables("统计表1") \'指定数据来源
f.SourceCols = "教师姓名,授课内容,签到次数" \'指定数据来源列
f.DataTable = DataTables("教师课时统计表") \'指定数据接收表
f.DataCols = "教师姓名,授课内容,签到次数" \'指定数据接收列
f.ExcludeExistValue = true
f.Fill() \'填充数据

 

 

 

 


--  作者:大红袍
--  发布时间:2015/7/19 14:15:00
--  

 没看得懂你的意思,直接用你写的代码就行啊。

 

 


--  作者:大红袍
--  发布时间:2015/7/19 14:15:00
--  

 不懂,就先去打一下基础

 

http://foxtable.com/bbs/dispbbs.asp?boardid=2&Id=67187