Datacolchanged事件,代码
Select Case e.DataCol.Name
Case "样品编号","样品类型","取样体积","前处理后体积","分取体积","稀释倍数","样品吸光度"
Dim idx As Integer = Tables("分光法记录主表.分光法记录明细").FindRow(e.DataRow)
If idx > -1 Then
If idx = 0 Then
e.DataTable.DataCols("样品吸光度").RaiseDataColChanged("_Identify <> " & e.DataRow("_Identify") & " And 项目编号 = '" & e.DataRow("项目编号") & "'")
Else
e.DataRow("校正吸光度") = e.DataRow("样品吸光度")-Tables("分光法记录主表.分光法记录明细").Rows(0)("样品吸光度")
Dim pdr As DataRow = e.DataRow.GetParentRow("分光法记录主表")
e.DataRow("样品浓度") = (e.DataRow("校正吸光度") - pdr("截距")) / (pdr("斜率") * e.DataRow("取样体积")) * iif(e.DataRow.isnull("稀释倍数"), 1, e.DataRow("稀释倍数"))
If e.DataRow("样品类型") = "平行" Then
Dim fdr As DataRow = e.DataTable.Find("项目编号 = '" & e.DataRow("项目编号") & "' And 样品编号 = '" & e.DataRow("样品编号") & "'")
If fdr IsNot Nothing Then
e.DataRow("相对偏差") = Math.Abs(fdr("样品浓度") - e.DataRow("样品浓度")) / (fdr("样品浓度") + e.DataRow("样品浓度")) * 100
End If
End If
End If
End If
End Select