以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 自动输入班级 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=92878) |
||||
-- 作者:联友 -- 发布时间:2016/11/15 16:11:00 -- 自动输入班级 一年级3个班分别:101、102、103 二级2个班分别;201、202 101、102升二年级分别到201、202 代码是 Dim fdr As DataRow = DataTables("学生信息").find("学期 = \'2016年春季\' And 学生姓名 = \'" & e.Form.controls("学生姓名").Text & "\'") 那么103升二年级分别到201或202,可招人数比较多的班级去,求代码?谢谢!
|
||||
-- 作者:有点蓝 -- 发布时间:2016/11/15 16:38:00 -- 没看懂 以下是引用联友在2016/11/15 16:11:00的发言:
具体什么操作逻辑那么103升二年级分别到201或202,可招人数比较多的班级去,求代码?谢谢! |
||||
-- 作者:联友 -- 发布时间:2016/11/15 16:56:00 -- 2016年春季一年级3个班分别:101、102、103
2016年秋季二年级只有2个班,分别到201、202 原101班的到现201班,原102班的到现202班,原103班分别到现201或者202班,人数比较少的班级去
[此贴子已经被作者于2016/11/15 17:00:34编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2016/11/15 17:30:00 -- 这样就只能写死了 Dim d As Date = Date.Today Dim SXQ As String If d.Month >= 5 And d.Month <=11 Then SXQ = d.Year & "年春季" Else If d.Month = 12 Then SXQ = d.Year & "年秋季" Else If d.Month < 5 Then SXQ = (d.Year-1) & "年秋季" End If Dim min As Integer = DataTables("学生信息").Compute("Count(学生姓名)","学期 = \'"& SXQ &"\'And 班级 = \'101\'") Dim c As Integer = DataTables("学生信息").Compute("Count(学生姓名)","学期 = \'"& SXQ &"\'And 班级 = \'102\'") Dim bj As Integer = 101 If c < min Then bj = 102 Dim fdr As DataRow = DataTables("学生信息").find("学期 = \'"& SXQ &"\'And 学生姓名 = \'" & e.Form.controls("学生姓名").Text & "\'") If fdr IsNot Nothing Then If fdr("学期") Like "*春*" Then If fdr("班级") = 103 Then e.Form.controls("班级").Text = bj+100 Else e.Form.controls("班级").Text = fdr("班级")+100 End If Else e.Form.controls("班级").Text = fdr("班级") End If End If |
||||
-- 作者:联友 -- 发布时间:2016/11/15 19:44:00 -- 这样不行,能不能像这样 在班级 输入框 ValueChanged If forms("可招人数").Opened Then e.Form.controls("班级").Text=e.Form.controls("班级").Text-1 Else e.Form.controls("班级").Text=e.Form.controls("班级").Text |
||||
-- 作者:有点蓝 -- 发布时间:2016/11/15 20:45:00 -- Dim d As Date = Date.Today Dim SXQ As String If d.Month >= 5 And d.Month <=11 Then SXQ = d.Year & "年春季" Else If d.Month = 12 Then SXQ = d.Year & "年秋季" Else If d.Month < 5 Then SXQ = (d.Year-1) & "年秋季" End If Dim fdr As DataRow = DataTables("学生信息").find("学期 = \'"& SXQ &"\'And 学生姓名 = \'" & e.Form.controls("学生姓名").Text & "\'") If fdr IsNot Nothing Then If fdr("学期") Like "*春*" Then Dim bjs As List(Of String) = DataTables("计划人数").GetValues("班级","学期 = \'"& SXQ &"\'") If bjs.Contains(cstr(fdr("班级")+100)) Then e.Form.controls("班级").Text = fdr("班级")+100 Else Dim pre As String = cint(fdr("班级").ToString().SubString(0,1)) + 1 Dim count As Integer Dim min As Integer = 999 Dim newbj As String For Each bj As String In bjs If bj.StartsWith(pre) Then count = DataTables("学生信息").Compute("count(学生姓名)","学期 = \'" & SXQ & "\' And 班级=\'" & bj & "\'") If count < min Then min = count newbj = bj End If End If Next e.Form.controls("班级").Text = newbj End If Else e.Form.controls("班级").Text = fdr("班级") End If End If
|
||||
-- 作者:联友 -- 发布时间:2016/11/15 20:50:00 -- 谢谢老师,早点休息吧 |