以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]查询、打开窗口、赋值问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=14949)

--  作者:cqlwsam
--  发布时间:2011/12/7 18:22:00
--  [求助]查询、打开窗口、赋值问题
我设计了一个窗口(窗口5),当检查框(家族史)选中后查询“家族史”表中“姓名”、“性别”、“出生日期”、“患者ID号”字段中内容和“基本情况”表中相同字段中一样结果的记录。如果不存在,提示“是否在家族史添加记录”,如果选择“是”,则打开“窗口4”,并在“基本情况”表的上述字段的内容赋值在“窗口4”的相应字段中,如果选“否”,则进行“窗口5”中下一个检查框;如果存在,提示“家族史中存在 条相同记录,是否打开”,如果选“是”,则打开“窗口4”并赋值于各控件,并可以进行编辑。编辑保存完记录后,返回“窗口5”。 有点复杂吧!!谢谢各位!!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


--  作者:狐狸爸爸
--  发布时间:2011/12/7 22:35:00
--  

这种问题,你交代得清清楚楚,通常应该自己写一下,至少知道自己哪里不会:

 

If e.Sender.Checked = True Then
    Dim r As Row = Tables("基本情况").current
    Dim dr As DataRow
    dr = DataTables("家族史").Find("姓名 = \'" & r("姓名") & " And 性别 = " &  r("性别") & " And 出生日期 = #" & r("出生日期") & "# And ID号 = " & r("ID号"))
    If dr Is Nothing Then
        If MessageBox.Show("是否在家族史添加记录","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes Then
            Dim r2 As Row = Tables("家族史").AddNew
            r2("姓名") = r("姓名")
            r2("性别") = r("性别")
            r2("出生日期") = r("出生日期")
            r2("ID号") = r("ID号")
            Forms("窗口4").Open()
        End If
    Else
        If MessageBox.Show("家族史中存在 条相同记录,是否打开","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes Then
            Tables("家族史").Position = Tables("家族史").FindRow(dr)
            Forms("窗口4").Open()
        End If
    End If
End If


--  作者:cqlwsam
--  发布时间:2011/12/7 23:33:00
--  
提示出现了问题。帮我看看,是什么原因呀!
图片点击可在新窗口打开查看此主题相关图片如下:捕获.png
图片点击可在新窗口打开查看

--  作者:程兴刚
--  发布时间:2011/12/7 23:39:00
--  

..........

dr = DataTables("家族史").Find("姓名 = \'" & r("姓名") & "\' And 性别 = \'" & r("性别") & "\' And 出生日期 = #" & r("出生日期") & "# And ID号 = " & r("ID号"))
..........


--  作者:cqlwsam
--  发布时间:2011/12/8 19:03:00
--  
目前出现新问题,在打开“窗口5”的时候就出现了“窗口4”,我的目的是在检查框(家族史)成为焦点后在执行上述代码,如何实现???
--  作者:cqlwsam
--  发布时间:2011/12/8 22:20:00
--  
我通过move up属性实现我的要求,不知道对执行效率有什么影响没有?