以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  值为空  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=172092)

--  作者:0000
--  发布时间:2021/9/23 9:53:00
--  值为空
老师你好,我偶尔会出现点击跟进中或已结案会有报错的现象
--  作者:0000
--  发布时间:2021/9/23 9:54:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:5411.png
图片点击可在新窗口打开查看
跟进中代码如下
Dim tbx As WinForm.TextBox = e.Form.Controls("状态")
tbx = Forms("录入窗口").Controls("状态")
Tables("Table_3").current("记录日期") = Date.now
Tables("Table_3").current("状态") = "跟进中"
If Tables("Table_3").current("状态") = "跟进中"
e.Form.TimerEnabled = True
Else
e.Form.TimerEnabled = False
End If

--  作者:0000
--  发布时间:2021/9/23 9:54:00
--  
已结案Dim tbx As WinForm.TextBox = e.Form.Controls("状态")
tbx = Forms("录入窗口").Controls("状态")
Tables("Table_3").current("结束日期") = Date.now
Tables("Table_3").current("状态") = "已结案"

--  作者:有点蓝
--  发布时间:2021/9/23 10:02:00
--  
计时器代码发上来看看
--  作者:0000
--  发布时间:2021/9/23 10:14:00
--  
Dim dr As Row = Tables("Table_3").Current
If dr Is Nothing Then Return
If dr("状态")="跟进中"
Dim d As Date = cdate(dr("记录日期")).adddays(val(e.Form.Controls("TextBox6").text)) 
Dim dt As Date =  format(d,"yyyy-MM-dd 23:59:59")
Dim t As TimeSpan = dt - Date.Today     \'计算现在离今天的24时整还差多少时间
e.Form.Controls("Label29").Text = "剩余" & t.Days & "天" & t.Hours & "小时" & t.Minutes & "分" & t.Seconds & "秒"

Dim Lbl As WinForm.Label = e.Form.Controls("Label29")
If Lbl.ForeColor = Color.Red Then
    Lbl.ForeColor = Color.Black
Else
    Lbl.ForeColor = Color.Red
End If
Else
e.Form.Controls("Label29").text =""
End If

--  作者:有点蓝
--  发布时间:2021/9/23 10:25:00
--  
看不出什么问题,请上传实例测试
--  作者:0000
--  发布时间:2021/9/23 10:33:00
--  
老师还有一个问题
Select Case e.DataCol.Name
    Case "状态","记录时间","店铺名称","产品类别","单号","产品SKU","责任方","状况描述 原因","客户姓名","联系方式","寄送地址","处理方式","寄送SKU","配件SKU","数量","备注","发货仓库","系统单号","追踪号","物流公司","发货日期","下单日期","回访","记录日期","结束日期","赠送SKU"
        e.DataRow("记录内容") = user.name & "在" & Date.now & "把【" & e.DataCol.name & "】值【" & e.OldValue & "】修改成【" & e.NewValue & "】" & vbcrlf & e.DataRow("记录内容")
End Select
代码是放在DataColChanged里面
但是我想他保存修改才会写,应该怎么判断呢

--  作者:有点蓝
--  发布时间:2021/9/23 10:37:00
--  
这个事件无法判断。放到BeforeSaveDataRow事件,旧值使用这种方式获取:http://www.foxtable.com/webhelp/topics/2369.htm
--  作者:0000
--  发布时间:2021/9/23 14:31:00
--  
老师我知道为什么会错,但这个应该怎么避免解决呢
--  作者:0000
--  发布时间:2021/9/23 14:32:00
--  
我删除记录是Dim Result As DialogResult
Result = MessageBox.Show("是否要真的删除此数据?","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
    If Tables("Table_3").Current IsNot Nothing Then
        Tables ("Table_3").Current.Delete()
        
    End If
Else
    
End If