Foxtable(狐表)用户栏目专家坐堂 → [求助]“投保日期”上366天,如何写代码


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

主题:[求助]“投保日期”上366天,如何写代码

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


加好友 发短信
等级:婴狐 帖子:15 积分:602 威望:0 精华:0 注册:2009/2/15 13:14:00
[求助]谢谢!  发帖心情 Post By:2009/2/20 0:02:00 [只看该作者]

看到老师改过的文件包,并下载了,但无法解压。提示:“! C:\Documents and Settings\Administrator\桌面\人员及车辆管理系统.rar: 不可预料的压缩文件末端”。

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/2/20 0:06:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:abc.rar


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


加好友 发短信
等级:婴狐 帖子:15 积分:602 威望:0 精华:0 注册:2009/2/15 13:14:00
[求助]谢谢!  发帖心情 Post By:2009/2/20 0:20:00 [只看该作者]

已经收到并解压,但是第二个问题没有得到解决——
2) ElseIf e.DataCol.Name = "二维到期" Then
    IF dr.IsNull("二维到期") Then
      dr("二维日龄")  = Nothing
    Else
       Dim Val As Date = dr("二维到期")
       dr("二维日龄") = (Date.Today -Val).Days
    End If
End If
   中的第一语句“ElseIf e.DataCol.Name = "二维到期" Then”编译错误。不知是何原因?

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/2/20 0:27:00 [只看该作者]

我加进去了,一切正常:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:abc2.rar



这么多IF,看起来比较晕,你可以看看Select Case语句,用起来会简洁一点。

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


加好友 发短信
等级:婴狐 帖子:15 积分:602 威望:0 精华:0 注册:2009/2/15 13:14:00
[求助]谢谢!  发帖心情 Post By:2009/2/20 9:23:00 [只看该作者]

收到。一切正常,十分感谢,今后遇到什么问题再各老师请教。


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


加好友 发短信
等级:婴狐 帖子:15 积分:602 威望:0 精华:0 注册:2009/2/15 13:14:00
[求助]十分抱歉,又有问题了  发帖心情 Post By:2009/2/21 12:39:00 [只看该作者]

十分抱歉,又有问题了:
一、日龄语句无法加载。因为“车辆档案”除“二维日龄”外还有“行车证副日龄”、“加强险日龄”、“统筹日龄”和“合同日龄”;而“车主及驾驶员档案”有“准驾证副日龄”、“驾驶证副日龄”和“从业证副日龄”。按理,将
“ElseIf e.DataCol.Name = "到期字段名" Then
    IF dr.IsNull("字段名") Then
      dr("日龄字段名")  = Nothing
    Else
       Dim Val As Date = dr("到期字段名")
       dr("日龄字段名") = (Val-Date.Today ).Days
    End If
End If”
加载上去即可,但是一加载,就报错,无法加载。
二、自动输入问题:我在“理赔结帐台帐”和“车辆档案”已经各加载了一段自动输入的语句,运行很好。但是当我在“车辆档案”中加载第二个自动输入语句:

'如果刚刚输入的不是"车辆品牌"或"车辆型号"列
If e.DataCol.Name <> "车辆品牌" AndAlso e.DataCol.Name <> "车辆型号" Then
    Return '则返回
End If
'如果"车辆品牌"或"车辆型号"列的内容为空
If e.DataRow.IsNull("车辆品牌") OrElse e.DataRow.IsNull("车辆型号") Then
    '则清除"轮距"和"轴距""外廊尺寸""总质量"四列的内容
    e.DataRow("轮距") = Nothing
    e.DataRow("外廊尺寸") = Nothing
    e.DataRow("总质量") = Nothing
    Return '然后返回
End If
'在"品牌型号"表"查找所输入"车辆品牌""车辆型号"的行
dr = DataTables("品牌型号").Find("[车辆品牌] = '" & e.DataRow("车辆品牌") & "' And [车辆型号] = '" & e.DataRow("车辆型号") & "'")
If dr IsNot Nothing Then '如果找到
    '将找到行的"轮距""轴距""外廊尺寸""总质量"内容填入到正在输入的行中.
    e.DataRow("轮距") = dr("轮距") '
    e.DataRow("外廊尺寸") = dr("外廊尺寸")
    e.DataRow("总质量") = dr("总质量")
End If
时,结果是A)加载成功;B)无运行结果。

同时上传文件——
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:新建文件.rar


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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/2/21 13:59:00 [只看该作者]

你自己逻辑正确,只是代码太长,你搞不清楚IF Elseif End If的对应关系了,而且后面的判断有点问题,如果不是A列就退出,那么接下来如果不是B列就退出,还有什么意义呢。

代码编辑器窗口有重拍按钮,可以自动排版代码,有助于你搞清楚各个If ElseIf End If 的关系。

不过最好的是Select Case,看下面这个,要清爽多了:


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:人员.rar

[此贴子已经被作者于2009-2-21 14:05:40编辑过]

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


加好友 发短信
等级:婴狐 帖子:15 积分:602 威望:0 精华:0 注册:2009/2/15 13:14:00
[求助]  发帖心情 Post By:2009/2/21 14:34:00 [只看该作者]

收到。虽然在“车辆档案”中已经加载了“日龄”语句,但在数据表中并没有执行结果。同样自动输入也没有动静。而在“车主及驾驶员档案”表中无法加载“日龄”语句。


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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/2/21 14:52:00 [只看该作者]

以下是引用yndlyh在2009-2-21 14:34:00的发言:

收到。虽然在“车辆档案”中已经加载了“日龄”语句,但在数据表中并没有执行结果。同样自动输入也没有动静。而在“车主及驾驶员档案”表中无法加载“日龄”语句。


1、哪一个日龄没有执行?
2、车辆档案的两个自动输入我测试都没有问题。
3、在“车主及驾驶员档案”表中无法加载“日龄”语句,这个问题我前面已经说了,你的If Else End IF完全乱套,要知道这些要配对使用的:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:123.rar


刚开始学习的时候,不要一次写这么长,调试清楚一段,再增加下一段。
强烈建议你再看两次帮助,在IF语句的基本语法还不太清楚的情况下编程,只能事倍功半。
要知道对于代码来说,差一个字母,一个引号,都是无法通过的。

[此贴子已经被作者于2009-2-21 14:55:57编辑过]

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


加好友 发短信
等级:婴狐 帖子:15 积分:602 威望:0 精华:0 注册:2009/2/15 13:14:00
[求助]谢谢!  发帖心情 Post By:2009/2/21 15:32:00 [只看该作者]

收到。大概我的机器或FoxTadle出了什么问题了。
     一、“车辆档案”日龄列除了“二维日龄”列有运行结果外,其他列都没有运行结果。“车主及驾驶员档案”日龄列均无运行结果。
     二、自动输入:在“车辆档案”中case "车辆品牌" ,"车辆型号"、"轴距"、"外廊尺寸"、"总质量"五列只有"车辆品牌" ,"车辆型号"两列起作用,其余三列不起作用用。
       


 回到顶部
总数 30 上一页 1 2 3 下一页