以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 自动编考号 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=87595) |
-- 作者:刘林 -- 发布时间:2016/7/14 11:50:00 -- 自动编考号 有年级表,班级表,成绩表,在年级中的班级数更改的时候自动把班级表的班数录入,现想同理在年级中录入参考人数时自动在成绩表中将考号录入,录入原则是在年级表的年级其础上后缀4位代码,如年级为32120182 (3表示区县,21代表学校,2018代表级,2代表第2期,****后四位为其考试号) If e.DataCol.name = "班级数" Then DataTables("班级表").DeleteFor("班级 Like \'" & e.DataRow("年级") & "-" & "%\'") For i As Integer = 1 To e.DataRow("班级数") Dim str As String = e.DataRow("年级") & "-" & i & "班" \'Dim fdr As DataRow = DataTables("表B").find("班号 = \'" & str & "\'") \'If fdr IsNot Nothing Then Dim nr As DataRow = DataTables("班级表").AddNew nr("班级") = str \'Next Next End If If e.DataCol.name = "参考人数" Then DataTables("成绩").DeleteFor("考号 Like \'" & e.DataRow("年级")*1000) For i As Integer = 1 To e.DataRow("参考人数") Dim str As Integer = e.DataRow("年级")*1000 + i \'Dim fdr As DataRow = DataTables("表g").find("班号 = \'" & str & "\'") \'\'If fdr IsNot Nothing Then Dim nr As DataRow = DataTables("成绩").AddNew nr("学校班级") = str \'\'Next Next 我改了下,改不对,请帮忙看下,谢谢
|
-- 作者:大红袍 -- 发布时间:2016/7/14 12:13:00 -- If e.DataCol.name = "参考人数" Then DataTables("成绩").DeleteFor("考号 Like \'" & e.DataRow("年级") & "%\'") For i As Integer = 1 To e.DataRow("参考人数") Dim str As Integer = e.DataRow("年级") & format(i, "0000") Dim nr As DataRow = DataTables("成绩").AddNew nr("学校班级") = str Next End if |
-- 作者:刘林 -- 发布时间:2016/7/14 12:31:00 -- .NET Framework 版本:2.0.50727.8689 Foxtable 版本:2014.11.11.1 错误所在事件:表,年级表,DataColChanged 详细错误信息: 调用的目标发生了异常。 无法在 System.Int32 和 System.String 上执行“Like”操作。 |
-- 作者:大红袍 -- 发布时间:2016/7/14 13:01:00 -- If e.DataCol.name = "参考人数" Then DataTables("成绩").DeleteFor("convert(考号, \'System.String\') Like \'" & e.DataRow("年级") & "%\'") For i As Integer = 1 To e.DataRow("参考人数") Dim str As Integer = e.DataRow("年级") & format(i, "0000") Dim nr As DataRow = DataTables("成绩").AddNew nr("学校班级") = str Next End if |
-- 作者:刘林 -- 发布时间:2016/7/14 14:57:00 -- .NET Framework 版本:2.0.50727.8689 Foxtable 版本:2014.11.11.1 错误所在事件:表,年级表,DataColChanged 详细错误信息: 调用的目标发生了异常。 算术运算导致溢出。 考号列为整数型,我估计是这行为误,不晓得该怎么改,请帮忙指点 Dim str As Integer = e.DataRow("年级") & format(i, "0000")
|
-- 作者:大红袍 -- 发布时间:2016/7/14 15:00:00 -- 1、考号列改成字符列
2、代码
If e.DataCol.name = "参考人数" Then |
-- 作者:刘林 -- 发布时间:2016/7/14 15:06:00 -- 对了,谢谢指导 |