以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何以列数据的比较结果作为条件对比另一列两个数据的大小并返回相应的结果?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=89691)

--  作者:幸福地微笑
--  发布时间:2016/8/27 1:19:00
--  如何以列数据的比较结果作为条件对比另一列两个数据的大小并返回相应的结果?


图片点击可在新窗口打开查看此主题相关图片如下:趋向.png
图片点击可在新窗口打开查看

 

上面提及的学生成绩标识码组成说明:

201520150102

2015:代表2015学年

:代表第二学期,1代表第一学期

:代表期末考试,1代表期中考试

2015:代表入学年份,本例中与学年一致,代表一年级

01:代表班号,不满10前面补0

02:代表学号,不满10前面补0


 

[此贴子已经被作者于2016/8/27 1:22:08编辑过]

--  作者:y2287958
--  发布时间:2016/8/27 7:23:00
--  
做个例子上传
--  作者:y2287958
--  发布时间:2016/8/27 7:24:00
--  
原理就是找出两个相邻的行,然后计算
--  作者:Hyphen
--  发布时间:2016/8/27 9:07:00
--  
建议增加列,用来表示第几学期和期中期末,然后可以通过这些字段进行排序,最后顺序比较排名
--  作者:Hyphen
--  发布时间:2016/8/27 9:07:00
--  
不会就上传例子
--  作者:幸福地微笑
--  发布时间:2016/8/27 13:20:00
--  辛苦各位教师帮忙看看!

点击“查看更详细信息”打开“学生成绩详细分析”窗口,各科的趋向值如何如我开始时所说的进行统计?

 

实例:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:成绩管理.foxdb


--  作者:Hyphen
--  发布时间:2016/8/27 14:34:00
--  
在生产图表代码之后加上:


Dim filter As String
Dim bh As String = t.current("成绩标识码")
Dim sy As Integer = CInt(bh.SubString(0,4))
Dim sg As Integer = CInt(bh.SubString(4,1))
Dim sx As Integer = CInt(bh.SubString(5,1))
If sx = 2 Then
    sx = 1
ElseIf sg = 2 Then
    sg = 1
Else
    sx = 2
    sg = 2
    sy -= 1
End If
filter = "成绩标识码 = \'" & sy & sg & sx & bh.SubString(6) & "\'"
Dim drprev As DataRow = t.DataTable.Find(filter)
If drprev Is Nothing Then
    e.Form.Controls("班趋向总").Text = "无"
    \'其它趋向......
Else
    Dim q As Integer = t.current("总分排名") - drprev("总分排名")
    e.Form.Controls("班趋向总").Text = iif(q = 0,"平", iif(q < 0,"进","退") & math.Abs(q))
     \'其它趋向......
End If

--  作者:幸福地微笑
--  发布时间:2016/8/27 23:46:00
--  
还是高手厉害!佩服!!!!