以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] 自定义函数的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=136575) |
-- 作者:shilhoue -- 发布时间:2019/6/16 16:09:00 -- [求助] 自定义函数的问题 下列代码用于在点击【任务完成】按钮时释放被占用的人员和设备(分别在人员和设备表中进行标记),由于程序中多处要用到相同代码,请问能不能把这段代码直接保存为自定义函数,而直接在相关事件中直接调用,增加代码的可读性。如果不能,该如何编写自定义函数以实现相同功能? Dim str As String = Tables("任务安排").Current("项目负责人") If str > "" AndAlso Tables("任务安排").Current.IsNull("参加检测人员") = False str = str & "," & Tables("任务安排").Current("参加检测人员") End If DataTables("人员").ReplaceFor("已占用",False,"姓名 In (\'" & str.Replace(",","\',\'") & "\') ") DataTables("人员").Save() Tables("任务安排").Current("任务状态")="完成检测" Tables("任务安排").Current("操作日期")=Format(Date.Today(),"yyyy-MM-dd") Tables("任务安排").Current.Save() Dim rwh As String = Tables("任务安排").Current("任务号") Dim Products As List(Of String) Dim s As String = "" Products = DataTables("设备安排").GetValues("设备编号","[任务号]= \'" & rwh & "\'" ) For Each Product As String In Products s= s & "," & Product Next s=s.Trim(",") DataTables("设备").ReplaceFor("在库状态",True,"设备编号 In (\'" & s.Replace(",","\',\'") & "\') ") DataTables("设备").Save() |
-- 作者:y2287958 -- 发布时间:2019/6/16 21:22:00 -- 可以,但要判断一下表是否存在 |
-- 作者:shilhoue -- 发布时间:2019/6/17 6:14:00 -- 谢谢,能举个例子如何写这个函数么,比方说人员表标记的问题 |
-- 作者:有点甜 -- 发布时间:2019/6/17 9:09:00 -- 直接写即可
http://www.foxtable.com/webhelp/scr/1486.htm
|