Foxtable(狐表)用户栏目专家坐堂 → [求助]临时表输入问题


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

主题:[求助]临时表输入问题

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


加好友 发短信
等级:童狐 帖子:274 积分:2303 威望:0 精华:0 注册:2008/9/12 16:46:00
[求助]临时表输入问题  发帖心情 Post By:2014/2/27 18:07:00 [只看该作者]

关于临时表输入问题:
1、有一个表A:

图片点击可在新窗口打开查看此主题相关图片如下:tu1.png
图片点击可在新窗口打开查看
第一列可重复,第二列不重复并与第一列有对应关系。
2、有一个打开项目就产生的临时表,第二列的数据是通过窗口的组合框从表A中取得的,确定的代码是:
   Dim s As Row = Tables("临时表").Addnew
   s("第二列")=e.form.controls("Combobox1").text
       If s("第二列") = Tables("表A").Current("第二列") Then
            s("第一列")= Tables("表A").Current("第一列")
       End If
3、我的问题是上面的红色代码如何改写确保临时表第二列自动输入后,第一列始终与表A对应的值同时自动输入?否则结果就是见下面的图,第三行第一列没有自动输入对应的数据:

图片点击可在新窗口打开查看此主题相关图片如下:tu2.png
图片点击可在新窗口打开查看
例子:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目7.foxdb







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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/2/27 20:48:00 [只看该作者]

  代码

Dim s As Row = Tables("临时表").addnew
s("第二列")=e.form.controls("Combobox1").text
Dim fdr As DataRow = DataTables("表A").Find("第二列 = '" & s("第二列") & "'")
If fdr IsNot Nothing Then
    s("第一列") = fdr("第一列")
End If


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


加好友 发短信
等级:童狐 帖子:274 积分:2303 威望:0 精华:0 注册:2008/9/12 16:46:00
  发帖心情 Post By:2014/2/27 21:16:00 [只看该作者]

自己刚才解决了,我的代码如下:
 Dim s As Row = Tables("临时表").addnew
    s("第二列")=e.form.controls("Combobox1").text
      With Tables("表A")
        Dim r As Integer
        r = .Find(s("第二列"), 0,"第二列", False, False, True)
        If r > - 1 Then '如果找到符合条件的行   
        .Position = r  '则选择该行
        End If 
      End With
   If s("第二列") = Tables("表A").Current("第二列") Then
      s("第一列")= Tables("表A").Current("第一列")
   End If

但有点甜的代码更简洁,非常感谢有点甜!

 回到顶部