Foxtable(狐表)用户栏目专家坐堂 → 高精度小数列数据归零问题?


  共有3602人关注过本帖树形打印复制链接

主题:高精度小数列数据归零问题?

帅哥哟,离线,有人找我吗?
xnsiwei
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:454 积分:3241 威望:0 精华:0 注册:2019/11/3 22:21:00
高精度小数列数据归零问题?  发帖心情 Post By:2023/6/27 17:05:00 [只看该作者]

高精度小数列数据归零问题?

有多列高精度小数列,列属性设置小数位数为8
对应存入3至5位小数的数据若干行,保存
重新打开后数据统统变成了0


请教版主!!

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/6/27 17:23:00 [只看该作者]

是不是有什么事件代码影响了?或者这是个表达式列?
[此贴子已经被作者于2023/6/27 17:23:25编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
xnsiwei
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:454 积分:3241 威望:0 精华:0 注册:2019/11/3 22:21:00
  发帖心情 Post By:2023/6/28 17:10:00 [只看该作者]

不是表达式列

表事件代码有影响吗?(某一列数据变化后执行)

If e.DataCol.Name = "COD" Then '如果是分组行的数量列
    If e.DataRow("COD") >0.0001 And e.DataRow("COD") <= 15 Then
        If e.DataRow("水质类别") < 1 Then
            e.DataRow("水质类别") = 1
        End If
    ElseIf e.DataRow("COD") > 15  And e.DataRow("COD") < =20 Then
        If e.DataRow("水质类别") < 3 Then
            e.DataRow("水质类别") = 3
        End If
    ElseIf e.DataRow("COD") > 20  And e.DataRow("COD") < = 30 Then
        If e.DataRow("水质类别") < 4 Then
            e.DataRow("水质类别") = 4
        End If
    ElseIf e.DataRow("COD") > 30  And e.DataRow("COD") <= 40 Then
        If e.DataRow("水质类别") < 5 Then
            e.DataRow("水质类别") = 5
        End If
    ElseIf e.DataRow("COD") >40  And e.DataRow("COD") < 100 Then
        If e.DataRow("水质类别") < 6 Then
            e.DataRow("水质类别") = 6
        End If
    End If
End If
If e.DataCol.Name = "BOD5" Then '如果是分组行的数量列
    If e.DataRow("BOD5") >0.0001 And e.DataRow("BOD5") <= 3 Then
        If e.DataRow("水质类别") < 1 Then
            e.DataRow("水质类别") = 1
        End If
    ElseIf e.DataRow("BOD5") > 3  And e.DataRow("BOD5") < =4 Then
        If e.DataRow("水质类别") < 3 Then
            e.DataRow("水质类别") = 3
        End If
    ElseIf e.DataRow("BOD5") > 4  And e.DataRow("BOD5") < = 6 Then
        If e.DataRow("水质类别") < 4 Then
            e.DataRow("水质类别") = 4
        End If
    ElseIf e.DataRow("BOD5") > 6  And e.DataRow("BOD5") <= 10 Then
        If e.DataRow("水质类别") < 5 Then
            e.DataRow("水质类别") = 5
        End If
    ElseIf e.DataRow("BOD5") >10  And e.DataRow("BOD5") < 100 Then
        If e.DataRow("水质类别") < 6 Then
            e.DataRow("水质类别") = 6
        End If
    End If
End If
If e.DataCol.Name = "氨氮" Then '如果是分组行的数量列
    If e.DataRow("氨氮") >0.0001 And e.DataRow("氨氮") <= 0.15 Then
        If e.DataRow("水质类别") < 1 Then
            e.DataRow("水质类别") = 1
        End If
    ElseIf e.DataRow("氨氮") > 0.15  And e.DataRow("氨氮") < =0.5 Then
        If e.DataRow("水质类别") < 2 Then
            e.DataRow("水质类别") = 2
        End If
    ElseIf e.DataRow("氨氮") > 0.5  And e.DataRow("氨氮") < =1 Then
        If e.DataRow("水质类别") < 3 Then
            e.DataRow("水质类别") = 3
        End If
    ElseIf e.DataRow("氨氮") > 1  And e.DataRow("氨氮") < = 1.5 Then
        If e.DataRow("水质类别") < 4 Then
            e.DataRow("水质类别") = 4
        End If
    ElseIf e.DataRow("氨氮") > 1.5  And e.DataRow("氨氮") <= 2 Then
        If e.DataRow("水质类别") < 5 Then
            e.DataRow("水质类别") = 5
        End If
    ElseIf e.DataRow("氨氮") >2  And e.DataRow("氨氮") < 100 Then
        If e.DataRow("水质类别") < 6 Then
            e.DataRow("水质类别") = 6
        End If
    End If
End If
If e.DataCol.Name = "P" Then '如果是分组行的数量列
    If e.DataRow("P") >0.0001 And e.DataRow("P") <= 0.02 Then
        If e.DataRow("水质类别") < 1 Then
            e.DataRow("水质类别") = 1
        End If
    ElseIf e.DataRow("P") > 0.02  And e.DataRow("P") < =0.1 Then
        If e.DataRow("水质类别") < 2 Then
            e.DataRow("水质类别") = 2
        End If
    ElseIf e.DataRow("P") > 0.1  And e.DataRow("P") < =0.2 Then
        If e.DataRow("水质类别") < 3 Then
            e.DataRow("水质类别") = 3
        End If
    ElseIf e.DataRow("P") > 0.2  And e.DataRow("P") < = 0.3 Then
        If e.DataRow("水质类别") < 4 Then
            e.DataRow("水质类别") = 4
        End If
    ElseIf e.DataRow("P") > 0.3  And e.DataRow("P") <= 0.4 Then
        If e.DataRow("水质类别") < 5 Then
            e.DataRow("水质类别") = 5
        End If
    ElseIf e.DataRow("P") > 0.4  And e.DataRow("P") < 5 Then
        If e.DataRow("水质类别") < 6 Then
            e.DataRow("水质类别") = 6
        End If
    End If
End If
If e.DataCol.Name = "总氮" Then '如果是分组行的数量列
    If e.DataRow("总氮") >0.0001 And e.DataRow("总氮") <= 0.2 Then
        If e.DataRow("水质类别") < 1 Then
            e.DataRow("水质类别") = 1
        End If
    ElseIf e.DataRow("总氮") > 0.2  And e.DataRow("总氮") < =0.5 Then
        If e.DataRow("水质类别") < 2 Then
            e.DataRow("水质类别") = 2
        End If
    ElseIf e.DataRow("总氮") > 0.5  And e.DataRow("总氮") < = 1 Then
        If e.DataRow("水质类别") < 3 Then
            e.DataRow("水质类别") = 3
        End If
    ElseIf e.DataRow("总氮") > 1  And e.DataRow("总氮") < = 1.5 Then
        If e.DataRow("水质类别") < 4 Then
            e.DataRow("水质类别") = 4
        End If
    ElseIf e.DataRow("总氮") > 1.5  And e.DataRow("总氮") <= 2 Then
        If e.DataRow("水质类别") < 5 Then
            e.DataRow("水质类别") = 5
        End If
    ElseIf e.DataRow("总氮") > 2  And e.DataRow("总氮") < 5 Then
        If e.DataRow("水质类别") < 6 Then
            e.DataRow("水质类别") = 6
        End If
    End If
End If
[此贴子已经被作者于2023/6/28 17:13:18编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/6/28 17:19:00 [只看该作者]

去掉这些代码,测试有没有问题?

 回到顶部
帅哥哟,离线,有人找我吗?
xnsiwei
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:454 积分:3241 威望:0 精华:0 注册:2019/11/3 22:21:00
  发帖心情 Post By:2023/6/28 17:33:00 [只看该作者]

这些代码是必须要用的

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/6/29 8:33:00 [只看该作者]

我的意思是,去掉这些代码,如果测试是没有问题的,说明是这些代码有问题。在一段一段把代码添加回来,看是那个代码影响的,在做对应的改正

 回到顶部