以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 自动输入班级 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=109880) |
||||
-- 作者:良才 -- 发布时间:2017/11/22 9:43:00 -- 自动输入班级 在学生基本信息窗口学生姓名下拉选择学生姓名后,自动输入学生编号,学生编号发生变化后,如果上学期是春季(本学期是秋季),班级自动加1,比如:上学期是602班,本学期是702班,假如本学期没有702班,那么自动找是否有701,701已招满,提示701已招满,清除班级。 基本都做到,唯一701已招满了,会到801,请老师指点,谢谢!
|
||||
-- 作者:有点甜 -- 发布时间:2017/11/22 10:43:00 --
|
||||
-- 作者:良才 -- 发布时间:2017/11/22 11:19:00 -- 谢谢 |
||||
-- 作者:良才 -- 发布时间:2017/11/23 19:59:00 -- 老师碰到问题,三年级3个班,四年级2个班,401已招满,402未招满,选择302、303可以自动在班级输入框输入402,唯独选择301不能,请老师指教。谢谢! |
||||
-- 作者:有点甜 -- 发布时间:2017/11/23 21:16:00 -- Dim ary() As String = Functions.Execute("Xueqi") Dim fdr = DataTables("学生基本信息").SQLFind("学生编号 = \'"& e.Form.Controls("学生编号").Text & "\'") If fdr IsNot Nothing Then e.Form.Controls("学生姓名").Text = fdr("学生姓名") End If Dim s1 As Integer = val(Left(ary(1),4)) cmd.ConnectionName = "数据库" cmd.CommandText ="Select TOP 1 班级 From {缴退费信息} WHERE 缴费项目 = \'学费\' And 缴费状态 = \'已缴\'And 学生编号 = \'"& e.Form.controls("学生编号").Text &"\' ORDER BY 缴费日期 Desc" dt = cmd.ExecuteReader() If dt.DataRows.Count > 0 Then Dim m As Integer = dt.DataRows(0)("班级") + 100 Dim bjs As List(Of String) = DataTables("招生计划").SQLGetValues("班级","学期 = \'"& ary(1) &"\' and 班级 = \'" & m & "\'") Dim drs = DataTables("招生计划").Select("学期 = \'"& ary(1) &"\' and 班级 like \'" & cstr(m).Substring(0,1) & "%\'", "班级") If ary(1) Like "*秋*" Then Dim count As Integer Dim newbj As String = "" If bjs.Contains(cstr(m)) Then For Each dr As DataRow In drs If dr("班级") = m Then count = DataTables("缴退费信息").SQLCompute("count(学生编号)","学期 = \'" & ary(1) & "\'And 班级=\'" & m & "\' And 缴费项目 = \'学费\' And 缴费状态 = \'已缴\'") If count < dr("计划人数") Then newbj = dr("班级") Exit For End If End If Next If newbj > "" Then e.Form.controls("班级").Text = newbj Else e.Form.controls("班级").Text = "已招满" End If End If If newbj = "" Then For Each dr As DataRow In drs count = DataTables("缴退费信息").SQLCompute("count(学生编号)","学期 = \'" & ary(1) & "\'And 班级=\'" & dr("班级") & "\' And 缴费项目 = \'学费\' And 缴费状态 = \'已缴\'") If count < dr("计划人数") Then newbj = dr("班级") Exit For End If Next If newbj > "" Then e.Form.controls("班级").Text = newbj Else e.Form.controls("班级").Text = "已招满" End If End If Else If bjs.Contains(cstr(m)) Then If m = 1 Then e.Form.controls("班级").Text = "001" Else e.Form.controls("班级").Text = m End If End If End If End If |
||||
-- 作者:良才 -- 发布时间:2017/11/23 21:25:00 -- 谢谢老师,您休息吧! |
||||
-- 作者:良才 -- 发布时间:2018/1/8 9:15:00 -- 老师想了解这两段代码,第一段(加载数据)是可以的,我想从后台提取用第二段不可用,请老师指点,谢谢! Dim drs = DataTables("招生计划").Select("学期 = \'"& ary(1) &"\' and 班级 like \'" & cstr(m).Substring(0,1) & "%\'", "班级") Dim drs = DataTables("招生计划").SQLSelect("学期 = \'"& ary(1) &"\' and 班级 like \'" & cstr(m).Substring(0,1) & "%\'", "班级")
[此贴子已经被作者于2018/1/8 9:21:26编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2018/1/8 9:46:00 -- 这样写
Dim drs = DataTables("招生计划").SQLSelect("学期 = \'"& ary(1) &"\' and 班级 like \'" & cstr(m).Substring(0,1) & "%\'", "", "班级")
http://www.foxtable.com/webhelp/scr/2900.htm
|
||||
-- 作者:良才 -- 发布时间:2018/1/8 9:56:00 -- 谢谢! |