当前代码运行提示:
错误的事件名称
System.Data.OleDb.OleDbException (0x80040E14): 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 19 (""): 提供的值不是数据类型 float 的有效实例。请检查源数据中的无效值。例如,小数位数大于精度的数值类型的数据即为无效值。
在 System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
在 System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
在 System.Data.Common.DbDataAdapter.UpdateRowExecute(RowUpdatedEventArgs rowUpdatedEvent, IDbCommand dataCommand, StatementType cmdIndex)
在 System.Data.Common.DbDataAdapter.Update(DataRow[] dataRows, DataTableMapping tableMapping)
综合得分 字段列属性float
当前代码如下:【红色部分代码怎么修正呢?要保持两位小数】
……
cnt = dt.Compute("Count([政治思想满分15分])", "年度='" & e.Values("年度") & "' and 季度='" & e.Values("季度") & "'and 测评对象 = '" & Product & "' ") '如果操作人员属于委领导,则将对应的好等次的数据 计算为A好里面的
If cnt > 0 Then
dr("政治思想") = cnt / e1
Else
dr("政治思想") = Nothing
End If
cnt1 = dt.Compute("Count([担当精神满分15分])", "年度='" & e.Values("年度") & "' and 季度='" & e.Values("季度") & "'and 测评对象 = '" & Product & "' ")
If cnt1 > 0 Then
dr("担当精神") = cnt1 / e1
Else
dr("担当精神") = Nothing
End If
cnt2 = dt.Compute("Count([能力水平满分10分])", "年度='" & e.Values("年度") & "' and 季度='" & e.Values("季度") & "'and 测评对象 = '" & Product & "' ")
If cnt2 > 0 Then
dr("能力水平") = cnt2 / e1
Else
dr("能力水平") = Nothing
End If
cnt3 = dt.Compute("Count([工作实绩满分60分])", "年度='" & e.Values("年度") & "' and 季度='" & e.Values("季度") & "'and 测评对象 = '" & Product & "' ")
If cnt3 > 0 Then
dr("工作实绩") = cnt3 / e1
Else
dr("工作实绩") = Nothing
End If
dr("综合得分") = Format((dr("政治思想") + dr("担当精神") + dr("能力水平") + dr("工作实绩")) / e1, "00.00")
dr.save
[此贴子已经被作者于2024/1/16 23:43:29编辑过]