此主题相关图片如下:qq图片20150807163237.png

把之前的各种课程的签到和课时统计表按照大师说的
合并成为一个表,几个窗口也共用同一模板,那么我签到窗口的命令应该怎样修改,好想命令会很繁琐,因为在统一窗口("签到")里 要根据不同的课程,在“学员一览表”中减去相应课程的课时,目前已有4种课程,也许还会增加,该如何编写命令才好呢?
另外,既然在学员一览表中 每一位学员的教师和课程都已经记录,在签到中,如我选中该名教师后,学员的下拉菜单中,可否只出现该名教师所教学员的名字。
选中教师,学员后,该学员所学课程的内容,可以自动代入,不需要再选择了。
下面是现有签到按钮的事件命令,红色部分是我比较困惑的问题,这样写会不会出现问题??
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("课时费")
dr1("剩余课时") = dr1("剩余课时") - 1
dr1("乐理余额") = dr1("乐理余额") - dr2("乐理费")
dr1("乐理课时") = dr1("乐理课时") - 1
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
Dim nmd()As String = {"教师姓名","授课内容","学员姓名","签到时间","签到次数"} 'A表数据来源列
Dim nmc()As String = {"教师姓名","授课内容","学员姓名","签到时间","签到次数"} 'B表数据接收列
Dim dr6 As Row = Tables("培训课时统计表").Current
Dim dr5 As Row = Tables("教师签到记录").AddNew
For i As Integer = 0 To nmd.Length - 1
dr5(nmc(i)) = dr6(nmc(i))
Next
forms("教师签到").close