Foxtable(狐表)用户栏目专家坐堂 → find返回值不生效


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

主题:find返回值不生效

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


加好友 发短信
等级:二尾狐 帖子:579 积分:4940 威望:0 精华:0 注册:2014/4/29 14:32:00
find返回值不生效  发帖心情 Post By:2014/5/28 14:24:00 [显示全部帖子]


 Dim dr As DataRow
        dr = .DataTable.Find("yhdm = '"& yhdm &"'")
        If dr IsNot Nothing Then
            MessageBox.Show(.Cols("yhdm").Caption+yhdm+"已经存在!","警告")
            '新增或者修改时默认选中第一行第一列,并进入编辑状态
            e.Form.Controls("you1").BaseControl.Row=0
            e.Form.Controls("you1").BaseControl.Col=1
            e.Form.Controls("you1").BaseControl.StartEditing
            '新增或者修改时默认选中第一行第一列,并进入编辑状态
        Else

end if
以上代码,.DataTable.Find("yhdm = '"& yhdm &"'")无论输入什么都会提示已经存在,如果直接改成.DataTable.Find("yhdm = '005‘)常量就能正常判断

求帮助

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


加好友 发短信
等级:二尾狐 帖子:579 积分:4940 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2014/5/28 14:26:00 [显示全部帖子]

Dim yhdm As String=.current("yhdm"),,yhdm是这样定义的
之前直接用.【.current("yhdm")】也是不行

我用MessageBox.show(yhdm)能获取到在yhdm输入的值
[此贴子已经被作者于2014-5-28 14:28:42编辑过]

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


加好友 发短信
等级:二尾狐 帖子:579 积分:4940 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2014/5/28 14:31:00 [显示全部帖子]

完整代码
'窗口变量,编辑状态
Dim bianji As String=e.Form.Controls("bianji").text

With Tables("yonghu")
    Dim yhdm As String=.current("yhdm")
    Dim yhmc As String=.current("yhmc")
    If yhdm="" Or yhmc="" Then
        If yhdm="" Then
            If MessageBox.Show(.Cols("yhdm").Caption+"不能为空!","警告",MessageBoxButtons.ok,MessageBoxIcon.Question) = DialogResult.ok Then
            End If
            '新增或者修改时默认选中第一行第一列,并进入编辑状态
            e.Form.Controls("you1").BaseControl.Row=0
            e.Form.Controls("you1").BaseControl.Col=1
            e.Form.Controls("you1").BaseControl.StartEditing
            '新增或者修改时默认选中第一行第一列,并进入编辑状态
        ElseIf yhmc="" Then
            If MessageBox.Show(.Cols("yhmc").Caption+"不能为空!","警告",MessageBoxButtons.ok,MessageBoxIcon.Question) = DialogResult.ok Then
            End If
            '新增或者修改时默认选中第一行第一列,并进入编辑状态
            e.Form.Controls("you1").BaseControl.Row=1
            e.Form.Controls("you1").BaseControl.Col=1
            e.Form.Controls("you1").BaseControl.StartEditing
            '新增或者修改时默认选中第一行第一列,并进入编辑状态
        End If
    Else
        Dim dr As DataRow
        dr = .DataTable.Find("yhdm = '"&yhdm&"'")
        If dr IsNot Nothing Then
            MessageBox.Show(.Cols("yhdm").Caption+yhdm+"已经存在!","警告")
            '新增或者修改时默认选中第一行第一列,并进入编辑状态
            e.Form.Controls("you1").BaseControl.Row=0
            e.Form.Controls("you1").BaseControl.Col=1
            e.Form.Controls("you1").BaseControl.StartEditing
            '新增或者修改时默认选中第一行第一列,并进入编辑状态
        Else
            .Current.Save()  '保存后禁止编辑 其他相应按钮禁用
            .AllowEdit = False
            e.Form.Controls("baocun").Enabled =False  '设置按钮状态
            e.Form.Controls("quxiao").Enabled =False
            e.Form.Controls("xinzeng").Enabled =True
            e.Form.Controls("xiugai").Enabled =True
            e.Form.Controls("shanchu").Enabled =True
            e.Form.Controls("shuaxin").Enabled =True
            e.Form.Controls("daochu").Enabled =True
            e.Form.Controls("dayin").Enabled =True
            e.Form.Controls("shezhi").Enabled =True
            e.Form.Controls("guanbi").Enabled =True  '设置按钮状态
            e.Form.Controls("bianji").text="0"        '窗口变量,编辑状态
        End If
    End If
End With

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


加好友 发短信
等级:二尾狐 帖子:579 积分:4940 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2014/5/28 14:36:00 [显示全部帖子]

利用messagebox.show 弹出一下变量的值是正确的,就是我输入的值

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


加好友 发短信
等级:二尾狐 帖子:579 积分:4940 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2014/5/28 14:40:00 [显示全部帖子]

用的是外部数据源,表里面没有对应的值(表里面只有【001
002
003
004
005
006
】)
yhdm数据类型是varchar(50)

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


加好友 发短信
等级:二尾狐 帖子:579 积分:4940 威望:0 精华:0 注册:2014/4/29 14:32:00
回复:(有点甜)很矛盾的代码,肯定是查得到的啊。...  发帖心情 Post By:2014/5/28 14:43:00 [显示全部帖子]

老大,这段要怎么改,没看懂

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


加好友 发短信
等级:二尾狐 帖子:579 积分:4940 威望:0 精华:0 注册:2014/4/29 14:32:00
回复:(Bin)没看懂你想干嘛,在表中取值判断有没这个...  发帖心情 Post By:2014/5/28 14:48:00 [显示全部帖子]

我要判断,我输入的值在表中是否重复,【.current("yhdm")  '我输入的值】【dr = DataTables("yonghu").Find("yhdm = '"& yhdm & "'")  ’取表中的值】这段要怎么改吗?

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


加好友 发短信
等级:二尾狐 帖子:579 积分:4940 威望:0 精华:0 注册:2014/4/29 14:32:00
回复:(Bin)参考帮助http://www.foxtable.com/help/...  发帖心情 Post By:2014/5/28 14:56:00 [显示全部帖子]

大哥,看了帮助还是不知道要怎么改

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


加好友 发短信
等级:二尾狐 帖子:579 积分:4940 威望:0 精华:0 注册:2014/4/29 14:32:00
回复:(有点甜)dr = .DataTable.Find("yhdm = '"&am...  发帖心情 Post By:2014/5/28 15:09:00 [显示全部帖子]

非常感谢,可以了!

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


加好友 发短信
等级:二尾狐 帖子:579 积分:4940 威望:0 精华:0 注册:2014/4/29 14:32:00
  发帖心情 Post By:2014/5/28 15:17:00 [显示全部帖子]

为什么加判断 _Identify才生效呢?

 回到顶部
总数 14 1 2 下一页