以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 窗口副表中增加临时列并进行跨表表达式计算 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=125972) |
-- 作者:ZJZK2018 -- 发布时间:2018/10/10 23:47:00 -- 窗口副表中增加临时列并进行跨表表达式计算 如题 下面代码出错: Dim cmb7 As WinForm.ComboBox = e.Form.Controls("ComboBox7") Dim tb As Table = Tables(e.Form.Name & "_Table1") For Each dr As Row In tb.Rows Dim fdr As DataRow = DataTables("招标信息").Find("系统编号 = \'" & dr("系统编号") & "\'") If cmb7.Value = "风险控制价" Then tb.DataTable.DataCols.Add("下浮率_风险控制价",Gettype(Double),"IIF(fdr.IsNull("风险控制价"),Nothing,(dr("投标报价") - fdr("风险控制价")) / fdr("风险控制价")") Else If tb.DataTable.DataCols.Contains("下浮率_风险控制价") Then tb.DataTable.DataCols.Delete("下浮率_风险控制价") End If End If Next 错误提示: |
-- 作者:有点甜 -- 发布时间:2018/10/11 8:45:00 -- Dim cmb7 As WinForm.ComboBox = e.Form.Controls("ComboBox7") Dim tb As Table = Tables(e.Form.Name & "_Table1") tb.DataTable.DataCols.Add("下浮率_风险控制价",Gettype(Double)) For Each dr As Row In tb.Rows Dim fdr As DataRow = DataTables("招标信息").Find("系统编号 = \'" & dr("系统编号") & "\'") If cmb7.Value = "风险控制价" Then dr("下浮率_风险控制价") = IIF(fdr.IsNull("风险控制价"),Nothing,(dr("投标报价") - fdr("风险控制价")) / fdr("风险控制价")) End If Next |