Foxtable(狐表)用户栏目专家坐堂 → [求助]遇到一个怪问题!请教~~~~~~~~~~~(已解决)


  共有9944人关注过本帖树形打印复制链接

主题:[求助]遇到一个怪问题!请教~~~~~~~~~~~(已解决)

帅哥哟,离线,有人找我吗?
gaoyong30000
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
[求助]遇到一个怪问题!请教~~~~~~~~~~~(已解决)  发帖心情 Post By:2012/10/25 17:23:00 [只看该作者]

 
图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看
上面这个录入框  textbox1  为 当前里程
                      DateTimePicker2  为 进店时间

下面这段代码 在命令窗口测试:

Dim v As Double
v = Tables("售后客户录入_table1").Compute("max(公里数)")
Dim d As Date
d  = Tables("售后客户录入_table1").Compute("max(进店时间)")

output.show(forms("售后客户录入").controls("textbox1").text - v)
output.show((CDate(forms("售后客户录入").controls("DateTimePicker2").value) - d).totaldays)


If (forms("售后客户录入").controls("textbox1").text - v) < 7000 And (CDate(forms("售后客户录入").controls("DateTimePicker2").value) - d).totaldays <180 Then
    msgbox(1)
End If

结果为:28099
           548
msgbox(1)条件不符合,不跳出来


但是这段代码在录入窗口的保存里 点保存的时候 msgbox(1)  却跳出来了

图片点击可在新窗口打开查看此主题相关图片如下:未命名1.jpg
图片点击可在新窗口打开查看




图片点击可在新窗口打开查看此主题相关图片如下:未命名2.jpg
图片点击可在新窗口打开查看




附上 保存按钮click代码:

Dim tr As Row = Tables("售后客户档案_售后客户档案Table2").Current
Dim sr As String = "车系|底盘号|型号|建档日期|最后进店日期|里程"
For Each k As String In sr.split("|")
    If  tr.Isnull(k)= True Then
        MessageBox.Show("【" & k & "】"  & "未填写", "提示", MessageBoxButtons.ok, MessageBoxIcon.Information)
        Return
    End If
Next

Dim g As New Filler
g.SourceTable = DataTables("售后客户档案_售后客户档案Table2") '指定数据来源
g.SourceCols = "底盘号,里程,最后进店日期" '指定数据来源列
g.DataTable = DataTables("售后客户录入_Table1")'指定数据接收表
g.DataCols = "底盘号,公里数,进店时间" '指定数据接收列
g.ExcludeExistValue =True
g.ExcludeNullValue =False
g.Distinct =True
g.Append =True
g.Fill()

If DataTables("售后客户录入_Table1").Compute("Count(进店时间)","进店时间 >= #"& date.today.addyears(-1)&"# and 底盘号 = '" & Tables("售后客户档案_售后客户档案Table2").current("底盘号") & "'") >= 4 Then
    Tables("售后客户档案_售后客户档案Table2").current("客户等级") = "A"
ElseIf DataTables("售后客户录入_Table1").Compute("Count(进店时间)","进店时间 >= #"& date.today.addyears(-1)&"# and 底盘号 = '" & Tables("售后客户档案_售后客户档案Table2").current("底盘号") & "'") = 3 Then
    Tables("售后客户档案_售后客户档案Table2").current("客户等级") = "B"
ElseIf DataTables("售后客户录入_Table1").Compute("Count(进店时间)","进店时间 >= #"& date.today.addyears(-1)&"# and 底盘号 = '" & Tables("售后客户档案_售后客户档案Table2").current("底盘号") & "'") = 2 Then
    Tables("售后客户档案_售后客户档案Table2").current("客户等级") = "C"
    'ElseIf DataTables("售后客户录入_Table1").Compute("Count(进店时间)","进店时间 >= #"& date.today.addyears(-1)&"# and 底盘号 = '" & Tables("售后客户档案_售后客户档案Table2").current("底盘号") & "'") <= 1 Then
ElseIf DataTables("售后客户录入_Table1").Compute("Count(进店时间)","进店时间 >= #"& date.today.addyears(-2)&"# and 底盘号 = '" & Tables("售后客户档案_售后客户档案Table2").current("底盘号") & "'") = 0 Then
    Tables("售后客户档案_售后客户档案Table2").current("客户等级") = "无效档案"
Else
    Tables("售后客户档案_售后客户档案Table2").current("客户等级") = "D"
End If

Dim v As Double
v = Tables("售后客户录入_table1").Compute("max(公里数)")
Dim d As Date
d  = Tables("售后客户录入_table1").Compute("max(进店时间)")

If (e.Form.controls("textbox1").text - v) < 7000 And (CDate(e.Form.controls("DateTimePicker2").value) - d).totaldays < 180 Then
    msgbox(1)
    Tables("售后客户档案_售后客户档案Table2").current("客户等级") = "A"

End If

If Date.Today.addmonths(-3) < Tables("售后客户档案_售后客户档案Table2").current("建档日期") Then
    Tables("售后客户档案_售后客户档案Table2").current("客户等级") = "A"
End If

If Tables("售后客户档案_售后客户档案Table2").current.IsNull("编号") = True Then
    Tables("售后客户档案_售后客户档案Table2").current("客户等级") = "E"
End If

Tables("售后客户档案_售后客户档案Table2").current.save()
Dim wbl As WinForm.Table = e.Form.Controls("Table1")
Dim tbl As Table = wbl.Table
tbl.DataTable.Save()
DataTables("售后客户档案_售后客户档案Table1").load
Tables("售后客户档案_售后客户档案Table1").filter = "底盘号 = '" & Tables("售后客户档案_售后客户档案Table2").Current("底盘号") & "'"
e.sender.Enabled = False


百思不得其解 ,请教~~~~~~~~~~~~~~


[此贴子已经被作者于2012-10-25 17:30:31编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
muhua
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:等待验证 帖子:3855 积分:20692 威望:0 精华:5 注册:2012/6/21 14:03:00
  发帖心情 Post By:2012/10/25 17:25:00 [只看该作者]

用户已被锁定

 回到顶部
帅哥哟,离线,有人找我吗?
gaoyong30000
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1165 积分:9032 威望:0 精华:1 注册:2011/5/25 16:33:00
  发帖心情 Post By:2012/10/25 17:30:00 [只看该作者]

多谢  自己解决了!图片点击可在新窗口打开查看


Dim g As New Filler
g.SourceTable = DataTables("售后客户档案_售后客户档案Table2") '指定数据来源
g.SourceCols = "底盘号,里程,最后进店日期" '指定数据来源列
g.DataTable = DataTables("售后客户录入_Table1")'指定数据接收表
g.DataCols = "底盘号,公里数,进店时间" '指定数据接收列
g.ExcludeExistValue =True
g.ExcludeNullValue =False
g.Distinct =True
g.Append =True
g.Fill()

这个提前 fill了 导致后面的 等级判断不对  放到
Tables("售后客户档案_售后客户档案Table2").current.save()

下面 就OK了~~~~~~~~~~

 回到顶部