以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 系统设计求助? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=173844) |
-- 作者:zsxx999ja -- 发布时间:2021/12/19 10:37:00 -- 系统设计求助? 期末考试了,要想实现多人同时给学生录入成绩,但不同的教师只能录入授权的年级与学科。这个系统如何设计? 设计些什么表?各表什么字段?如何来实现不同的人录入相应的年级与学科?
|
-- 作者:有点蓝 -- 发布时间:2021/12/19 20:40:00 -- 添加一个学科教师表,把学科、教师、年级关联起来即可 然后成绩表的年级与学科列做成下拉项目,下拉的内容根据当前登录的用户去查学科教师表的关联年级与学科,类似参考:http://www.foxtable.com/webhelp/topics/1457.htm |
-- 作者:zsxx999ja -- 发布时间:2021/12/19 22:18:00 -- 明白了。 这是我在BeforeLoadOuterTable事件中的代码 Dim dt As DataTable Dim n As Integer Dim cmd As new sqlcommand cmd.C cmd.CommandText = "s elect distinct 用户名,上分列名 FROM {授权表} WHERE 用户名 = N\'" & user.name & "\'" dt = cmd.ExecuteReader \'output.show(user.name) \'output.show(dt.DataRows.Count) Dim str As String str = dt.DataRows(0)("上分列名") \'output.show(str) If e.DataTableName = "学生成绩表" Then e.S electString = "S elect [_Identify],[检测号]," & str & " From {学生成绩表} where substring([检测号],1,1) = \'2\'" End If 运行后出错。 这里出错的原因是:这个事件发生时,datatable还没有形成,故不能引用数据源吗? |
-- 作者:有点蓝 -- 发布时间:2021/12/19 22:22:00 -- 是的。这个事件不能这样用 如果要根据不同权限显示不同列。应该到afteropenproject事件处理,类似:http://www.foxtable.com/webhelp/topics/2257.htm |