以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]通过代码增加行  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=78959)

--  作者:cqlwsam
--  发布时间:2015/12/21 15:42:00
--  [求助]通过代码增加行
如截图,每次新增两行,“与患者关系”分别为“父亲”与“母亲”。简单的代码怎么写?

图片点击可在新窗口打开查看此主题相关图片如下:360反馈意见截图16230321877183.png
图片点击可在新窗口打开查看


--  作者:cqlwsam
--  发布时间:2015/12/21 16:22:00
--  
已经搞定。用数组加循环就可以了。有没有更简单的方法。
        If s="家庭生活环境史" Then
            Dim Multi As String = "父亲|母亲"
            Dim Values() As String
            Values = Multi.split("|")
            For Index As Integer = 0 To Values.Length - 1
                Dim r As Row =Tables(s1).AddNew()
                r("patientsID")=txt
                r("访问日期")=Date.Today
                r("父母_关系") = Values(Index)
            Next
endif

--  作者:cqlwsam
--  发布时间:2015/12/21 16:23:00
--  
还有一个问题,如果表中已经有了父亲或母亲这行,就涉及只增加一行。加判断,囊个整??
--  作者:大红袍
--  发布时间:2015/12/21 16:33:00
--  

DataRowAdded事件

 

e.DataRow("第一列") = "父亲"
systemready  = False
Dim ndr = e.DataTable.AddNew
ndr("第一列") = "母亲"
systemready  = True


--  作者:cqlwsam
--  发布时间:2015/12/21 17:04:00
--  
那如果某列需要添加很多。某些行有了。如:恶心、呕吐、胃肠不适|糖尿病|高血压|焦虑、忧郁或情绪问题|癫痫、痉挛或抽风|过敏、哮喘或枯草热|皮疹或其他皮肤病|头疼、关节疼、关节炎或其他疼痛性疾病|泌尿道感染或其它感染、炎症发热|甲状腺疾病|胃不适、腹胀或溃疡|便秘|助孕药。
部分内容有了。用这个办法就有点麻烦了。

在点击表前就已经按患者的ID进行了筛选。
[此贴子已经被作者于2015/12/21 17:05:10编辑过]

--  作者:cqlwsam
--  发布时间:2015/12/21 17:08:00
--  
在datarowadded事件中,也通过数组+循环的方式,是否可行。
--  作者:大红袍
--  发布时间:2015/12/21 17:08:00
--  
5楼什么意思?执行什么操作,做什么效果?
--  作者:cqlwsam
--  发布时间:2015/12/21 17:14:00
--  
就是每列,如截图中的“疾病症状或名称”列中,需要根据数组:恶心、呕吐、胃肠不适|糖尿病|高血压|焦虑、忧郁或情绪问题|癫痫、痉挛或抽风|过敏、哮喘或枯草热|皮疹或其他皮肤病|头疼、关节疼、关节炎或其他疼痛性疾病|泌尿道感染或其它感染、炎症发热|甲状腺疾病|胃不适、腹胀或溃疡|便秘|助孕药。添加这么多行,如果有几行已经有了,当然不需要添加了。就这个。


图片点击可在新窗口打开查看此主题相关图片如下:360反馈意见截图16230320628864.png
图片点击可在新窗口打开查看

--  作者:大红袍
--  发布时间:2015/12/21 17:29:00
--  

Dim str As String = "恶心?呕吐?胃肠不适|糖尿病|高血压|焦虑?忧郁或情绪问题|癫痫?痉挛或抽风|过敏?哮喘或枯草热|皮疹或其他皮肤病|头疼?关节疼?关节炎或其他疼痛性疾病|泌尿道感染或其它感染?炎症发热|甲状腺疾病|胃不适?腹胀或溃疡|便秘|助孕药"

For Each s as string In str.split("|")
    If DataTables("表A").find("第一列 = \'" & s & "\'") is Nothing Then
        Dim nr = DataTables("表A").addnew
        nr("第一列") = s
    End If
Next


--  作者:cqlwsam
--  发布时间:2015/12/21 17:35:00
--  
谢谢!这样应该可以。代码简洁。