以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 代码能简化 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=127546) |
-- 作者:良才 -- 发布时间:2018/11/16 13:11:00 -- 代码能简化 老师,下面代码能简化吗?请指教,谢谢! 初始不加载任何数据 Dim ary() As String = Functions.Execute("Xueqi") |
-- 作者:有点甜 -- 发布时间:2018/11/16 15:06:00 -- 1、不建议简化;
2、如果确实要简化,只能把这一段提取出来
dr("录入人") = _UserXingming |
-- 作者:lihe60 -- 发布时间:2018/11/16 15:14:00 -- Dim ary() As String = Functions.Execute("Xueqi") cmd.C cmd.CommandText = "select * F rom {教工基本信息} Where 教工编号 = \'" & e.Form.Controls("教工编号").Text & "\' And 离职日期 Is Null" dt = cmd.ExecuteReader(True) \'记得将参数设置为True Dim dr As DataRow If dt.DataRows.Count = 0 Then Dim max As String = DataTables("教工基本信息").SQLCompute("Max(教工编号)","教工编号 Like \'" & ary(2) & "%\'") If max = "" Then e.Form.Controls("教工编号").text= ary(2) & "01" Else Dim v As Integer = max.SubString(6,2) e.Form.Controls("教工编号").text= ary(2) & format(v +1,"00") End If dr = DataTables("教工基本信息").AddNew() dr("录入人") = _UserXingming dr("录入日期") = Format(Date.Now,"yyyy-MM-dd") Else If dt.DataRows.Count > 0 Then dr = dt.DataRows(0) dr("修改人") = _UserXingming dr("修改日期") = Format(Date.Now,"yyyy-MM-dd") End If Dim names() As String = {"中国","美国","日本","俄罗斯"} For Each name As String In names dr(name) = e.Form.Controls(name).text Next Tables("教工基本信息").Save() |
-- 作者:良才 -- 发布时间:2018/11/16 15:35:00 -- 谢谢 |