Foxtable(狐表)用户栏目专家坐堂 → [求助]调用的目标发生了异常


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

主题:[求助]调用的目标发生了异常

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


加好友 发短信
等级:三尾狐 帖子:739 积分:7229 威望:0 精华:0 注册:2015/9/14 14:26:00
[求助]调用的目标发生了异常  发帖心情 Post By:2015/9/25 13:31:00 [只看该作者]

刚刚购买产品,在练习过程中遇到了一个困难

总是 提示  调用的目标发生了异常。数组超接。

麻烦专家给予指正

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

 

 

报错所在代码

 


If e.DataCol.Name = "身份证号码" Then '如果更改的是身份证号码列
    If e.DataRow.IsNull("身份证号码") Then '身份证号码是否为空
        e.DataRow("出生日期") = Nothing '如果为空,则清除出生日期
        e.DataRow("性别") = Nothing
    Else
        '否则从身份证号码列中提取出生日期
        e.DataRow("出生日期") = ReadBirthday(e.DataRow("身份证号码"))
        'MessageBox.Show(ReadSex(e.DataRow("身份证号码")))
        e.DataRow("性别") = ReadSex(e.NewValue)
        e.DataRow("性别")= ReadSex(e.DataRow("身份证号码"))
        Dim bm As String = e.DataRow("身份证号码").SubString(0,6)
        Dim cmd As new  SQLCommand
       cmd.C
       cmd.CommandText=" selec  t 籍贯 from {身份证籍贯编码} where 籍贯编码= '" & bm & " '  "
      ' MessageBox.Show(bm)
        Dim dt As DataTable
         dt = cmd.ExecuteReader()
          e.DataRow("籍贯")=(dt.DataRows(0)(0))       
    End If
End If

 

[此贴子已经被作者于2015/9/25 13:52:36编辑过]

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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2015/9/25 13:35:00 [只看该作者]

把出错代码贴出来

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


加好友 发短信
等级:三尾狐 帖子:739 积分:7229 威望:0 精华:0 注册:2015/9/14 14:26:00
  发帖心情 Post By:2015/9/25 13:37:00 [只看该作者]

附件不能上传,代码贴上了 提示没有权限

[此贴子已经被作者于2015/9/25 13:38:00编辑过]

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


加好友 发短信
等级:三尾狐 帖子:739 积分:7229 威望:0 精华:0 注册:2015/9/14 14:26:00
  发帖心情 Post By:2015/9/25 13:40:00 [只看该作者]

里面有图片,现在传上来了 不好意思
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:人事管理系统.rar

[此贴子已经被作者于2015/9/25 13:44:31编辑过]

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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2015/9/25 13:40:00 [只看该作者]

代码上传http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=69632

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


加好友 发短信
等级:三尾狐 帖子:739 积分:7229 威望:0 精华:0 注册:2015/9/14 14:26:00
  发帖心情 Post By:2015/9/25 13:41:00 [只看该作者]

传附件了


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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2015/9/25 14:05:00 [只看该作者]

If e.DataCol.Name = "身份证号码" Then '如果更改的是身份证号码列
    If e.DataRow.IsNull("身份证号码") OrElse ValidPIN(e.DataRow("身份证号码")) = False Then '身份证号码是否为空
        e.DataRow("出生日期") = Nothing '如果为空,则清除出生日期
        e.DataRow("性别") = Nothing
    Else
        '否则从身份证号码列中提取出生日期
        e.DataRow("出生日期") = ReadBirthday(e.DataRow("身份证号码"))
        'MessageBox.Show(ReadSex(e.DataRow("身份证号码")))
        'e.DataRow("性别") = ReadSex(e.NewValue)
        e.DataRow("性别")= ReadSex(e.DataRow("身份证号码"))
        Dim bm As String = e.DataRow("身份证号码").SubString(0,6)
        Dim cmd As new  SQLCommand
        cmd.C
        cmd.CommandText=" sele ct 籍贯 from {身份证籍贯编码} wh ere 籍贯编码= '" & bm & "'"
        ' MessageBox.Show(bm)
        Dim dt As DataTable
        dt = cmd.ExecuteReader()
        If dt.DataRows.Count > 0 Then
            e.DataRow("籍贯")=dt.DataRows(0)("籍贯")
        End If
    End If
End If


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/9/25 14:07:00 [只看该作者]

Dim dt As DataTable
dt = cmd.ExecuteReader()
e.DataRow("籍贯")=(dt.DataRows(0)(0))

 

改成

 

Dim dt As DataTable
dt = cmd.ExecuteReader()

If dt.DataRows.Count > 0 Then
    e.DataRow("籍贯")=(dt.DataRows(0)("籍贯"))

End If


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


加好友 发短信
等级:三尾狐 帖子:739 积分:7229 威望:0 精华:0 注册:2015/9/14 14:26:00
  发帖心情 Post By:2015/9/25 14:15:00 [只看该作者]

谢谢  列名问题 啊 

 回到顶部