Foxtable(狐表)用户栏目专家坐堂 → 窗口按钮事件命令问题


  共有2602人关注过本帖树形打印复制链接

主题:窗口按钮事件命令问题

帅哥哟,离线,有人找我吗?
bestorange
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
窗口按钮事件命令问题  发帖心情 Post By:2015/7/15 0:15:00 [只看该作者]

我在窗口中的按钮控件上 编写了事件命令:

Dim g As New CrossTableBuilder("统计表1", DataTables("陪练课时统计表"))
g.Caption = "课时结算"
g.HGroups.AddDef("教师姓名")
g.VGroups.AddDef("签到时间", "{0}月")
g.VGroups.AddDef("授课内容")
g.Totals.AddDef("授课内容", AggregateEnum.Count, "累计课时")
g.VerticalTotal = True
g.Subtotal = True
g.Filter = "教师姓名 = '" & e.Form.Controls("ComboBox1").Text & "'"
g.Build()
MainTable = Tables("统计表1")

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")

 

 

单击执行 错误提示 无法找到列 授课内容


 回到顶部
帅哥哟,离线,有人找我吗?
bestorange
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
  发帖心情 Post By:2015/7/15 0:29:00 [只看该作者]

应该是错在 临时表的多层表头这个问题上了

[此贴子已经被作者于2015/7/15 0:39:44编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
bestorange
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
  发帖心情 Post By:2015/7/15 1:15:00 [只看该作者]

我把命令改成:

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")

 

 就可以执行了,执行后数据导入下表如图


图片点击可在新窗口打开查看此主题相关图片如下:课时.png
图片点击可在新窗口打开查看

问题一,按月统计教师课时数的功能怎样才能实现??

问题二,

前三列的数据是单击控件代入的,后面课时费列能否根据授课内容自动代入,分成比例根据教师姓名自动代入。这样课程收费列就可以按照表达式直接算出结果。

我分别建了 关于课程价格 和教师分成比例的表,是用表关联就可以实现吗?

[此贴子已经被作者于2015/7/15 1:16:34编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/15 9:19:00 [只看该作者]

1、设置分组统计,然后查看代码

 

http://www.foxtable.com/help/topics/2670.htm

 


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/15 9:20:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
bestorange
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
  发帖心情 Post By:2015/7/15 14:45:00 [只看该作者]

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")

 

我现在是这么写的命令


 回到顶部
帅哥哟,离线,有人找我吗?
bestorange
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
  发帖心情 Post By:2015/7/15 14:47:00 [只看该作者]

Dim g As New CrossTableBuilder("统计表1", DataTables("陪练课时统计表"))
g.Caption = "课时结算"
g.HGroups.AddDef("教师姓名")
g.VGroups.AddDef("签到时间", "{0}月")

这样可以出 月份  但是第二步就找不到列明了

 


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/15 14:49:00 [只看该作者]

1、用分组统计,不要用交叉统计;

 

2、看4楼5楼


 回到顶部
帅哥哟,离线,有人找我吗?
bestorange
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
  发帖心情 Post By:2015/7/15 15:44:00 [只看该作者]

明白了,还有一个问题 多个窗口共用(控件绑定表)一张表的数据,我想打开单一窗口时,窗口中绑定的表只显示指定行的内容 (比如我在教师一览表中设计了每一名教师都有一个专属资料窗口,窗口中都绑定了工资结算表,我打开窗口时,只显示该名教师的工资)可以实现吗?

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/15 15:55:00 [只看该作者]

 AfterLoad事件加入筛选代码

 

Tables("表A").Filter = "第一列 = '1234'"


 回到顶部
总数 13 1 2 下一页