Foxtable(狐表)用户栏目专家坐堂 → 控件命令问题


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

主题:控件命令问题

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


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

Dim f As new Filler
f.SourceTable = DataTables("钢琴课时统计表") '指定数据来源
f.SourceCols = "学员姓名,授课内容,签到时间,签到次数" '指定数据来源列
f.DataTable = DataTables("学员上课记录表") '指定数据接收表
f.DataCols = "学员姓名,上课内容,上课时间,节数" '指定数据接收列

f.Fill() '填充数据

DataTables("学员上课记录表").save

 

Dim mr As Row =Tables("钢琴课时统计表").Current
Dim Result As DialogResult
Result = MessageBox.Show(mr("教师姓名") &" 要签到吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then

        '找到对应的学员这一行,改怎么减就怎么减
    Dim dr1 As DataRow = DataTables("学员一览表").Find("辅导老师 = '" & mr("教师姓名") & "' And 课程 = '" & mr("授课内容") & "' and 姓名 = '" & mr("学员姓名") & "'")
    Dim dr2 As DataRow = DataTables("钢琴价格表").Find("级别 = '" & mr("授课内容") & "'")
   

    If dr1 Is Nothing OrElse dr2 Is Nothing Then

        messagebox.show("输入错误")

    End If

    mr.Save

    dr1("学费余额") = dr1("学费余额") - dr2("课时费")
    MessageBox.Show(mr("教师姓名") &" 签到成功","提示")

    mr.Save
   
End If

 

 

我在控件事件命令中加入了新增了红色字体部分,想将签到数据同时录入另一个表格中

可是执行后,会一次性录入("教师课时统计表")所有行的数据

[此贴子已经被作者于2015/7/17 20:26:59编辑过]

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


加好友 发短信
等级:一尾狐 帖子:431 积分:3214 威望:0 精华:2 注册:2011/9/10 21:35:00
  发帖心情 Post By:2015/7/17 23:31:00 [只看该作者]

你可以设置一下filter嘛

例如f.filter =......


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


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

。。。。=什么?

 

按我发的那组命令 是一个签到确认按钮的事件命令 单击执行

 

我是想单击之后,在绑定表增加一行记录之外,在另一表也同步增加一行。。。

我记得以前学过,死活想不起来了


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2015/7/18 11:14:00 [只看该作者]

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

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

 

你只是复制一行数据,可以直接在签到按钮后加一段代码:

 

Dim nma()As String ={“学员姓名","授课内容","签到时间","签到次数"}'A表数据来源列
Dim nmb() As String = {"学员姓名","上课内容","上课时间","节数"} 'B表数据接收列

Dim dr1 As Row = Tables("钢琴课时统计表").Current
Dim dr2 As Row = Tables("学员上课记录表").AddNew
For i As Integer = 0 To nma.Length - 1
      dr2(nmb(i)) = dr1(nma(i))
Next


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


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

Dim mr As Row =Tables("乐理课时统计表").Current
Dim Result As DialogResult
Result = MessageBox.Show(mr("教师姓名") &" 要签到吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
   
    '找到对应的学员这一行,改怎么减就怎么减
    Dim dr1 As DataRow = DataTables("学员一览表").Find("乐理辅导 = '" & mr("教师姓名") & "' and 姓名 = '" & mr("学员姓名") & "'")
    Dim dr2 As DataRow = DataTables("乐理价格表").Find("科目 = '" & mr("授课内容") & "'")
   
   
    If dr1 Is Nothing OrElse dr2 Is Nothing Then
       
        messagebox.show("输入错误")
       
    End If
   
   
    dr1("乐理学费余额") = dr1("乐理学费余额") - dr2("课时费")
    dr1("乐理课时") = dr1("乐理课时") - 1
    MessageBox.Show(mr("教师姓名") &" 签到成功","提示")
   
    mr.Save
End If

 

Dim nma()As String = {"学员姓名","授课内容","签到时间","签到次数"}  'A表数据来源列
Dim nmb()As String = {"学员姓名","上课内容","上课时间","节数"}  'B表数据接收列

Dim dr3 As Row = Tables("乐理课时统计表").Current
Dim dr4 As Row = Tables("学员上课记录表").AddNew
For i As Integer = 0 To nma.Length - 1
    dr4(nmb(i)) = dr3(nma(i))
Next


 回到顶部