Foxtable(狐表)用户栏目专家坐堂 → [求助]重置时保持数据不变?


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

主题:[求助]重置时保持数据不变?

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


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
[求助]重置时保持数据不变?  发帖心情 Post By:2011/8/27 14:03:00 [只看该作者]

Select Case e.DataCol.Name
    Case "住院号","患者姓名","主管医生"
        If e.DataCol.Name = "患者姓名" Then
            If e.DataRow.IsNull("患者姓名") Then
                e.DataRow("sys_拼音码") = Nothing
            Else
                e.DataRow("sys_拼音码") = getpy(e.DataRow("患者姓名"),True)
            End If
        End If
        If e.DataCol.Name = "患者姓名"
            Dim Filter As String = "[住院号] = '" & e.DataRow("住院号") & "'"
            DataTables("长期医嘱").ReplaceFor("患者姓名", e.NewValue, Filter)
            DataTables("临时医嘱").ReplaceFor("患者姓名", e.NewValue, Filter)
        End If
        If e.DataCol.Name = "主管医生"
            Dim Filter As String = "住院号= '" & e.DataRow("住院号") & "'"
            Dim drs1 As List(of DataRow) = DataTables("长期医嘱").Select(Filter)
            Dim drs2 As List(of DataRow) = DataTables("临时医嘱").Select(Filter)
            For Each dr1 As DataRow In drs1
                If dr1("医生") = ""
                    dr1("医生") = e.DataRow("主管医生")
                End If
            Next
            For Each dr2 As DataRow In drs2
                If dr2("医生") = ""
                    dr2("医生") = e.DataRow("主管医生")
                End If
            Next
        End If      
End Select

 

 

问题在标注为红色的代码。

 

我在入院登记表写入代码,要求:长期医嘱和临时医嘱表“医生”列如果存在医生姓名,那么姓名保持不变,如果更换了医生,那么新录入的数据将显示更换的医生姓名。

 

简单的说就是:长期医嘱和临时医嘱表“医生”列,就得数据保持不变,新的数据使用新的医生。

 

 

[此贴子已经被作者于2011-8-27 14:09:27编辑过]

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


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
  发帖心情 Post By:2011/8/27 14:15:00 [只看该作者]

 

文件已上传

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:住院收费.rar

 


 

简单的说就是:长期医嘱和临时医嘱表“医生”列,旧的数据保持不变,新增数据使用新的医生。

[此贴子已经被作者于2011-8-27 15:30:48编辑过]

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


加好友 发短信
等级:等待验证 帖子:386 积分:2482 威望:0 精华:1 注册:2011/5/10 11:13:00
  发帖心情 Post By:2011/8/27 16:09:00 [只看该作者]

Select Case e.DataCol.Name
    Case "住院号","患者姓名","主管医生"         
         Dim drs1,drs2 As  List(of DataRow)
         Dim dt1,dt2 as DataTable
         Dim dr,dr1 As  DataRow
         dr = e.DataRow
         Dim Filter As String = "[住院号] = '" & dr("住院号") & "'"
         dt1 = DataTables("长期医嘱")
         dt2 = DataTables("临时医嘱")
         drs1 = dt1.Select(Filter)
         drs2 = dt2.Select(Filter)

         If e.DataCol.Name = "患者姓名"
           dr("sys_拼音码") = getpy(dr("患者姓名"),True)
            For Each dr1  In drs1           
                    dr1("患者姓名") = e.NewValue
            Next
            For Each dr1 In drs2
                 dr1("患者姓名") = e.NewValue
            Next
        End If

        If e.DataCol.Name = "主管医生"            
            For Each dr1 In drs1
                If dr1("医生") = Nothing Then
                    dr1("医生") = dr("主管医生")
                End If
            Next
            For Each dr1 In drs2
                If dr1("医生") = Nothing Then
                    dr1("医生") = dr("主管医生")
                End If
            Next
        End If

End Select

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


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
  发帖心情 Post By:2011/8/27 17:15:00 [只看该作者]

朋友的代码不能满足我的要求。

 

入院登记表某个病人更换医生后,长期医嘱和临时医嘱重置后刷新为更换后的医生。

我的要求是更换以前的医生不变。


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


加好友 发短信
等级:等待验证 帖子:386 积分:2482 威望:0 精华:1 注册:2011/5/10 11:13:00
  发帖心情 Post By:2011/8/27 17:20:00 [只看该作者]

我的要求是更换以前的医生不变

上面是什么意思?

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


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
  发帖心情 Post By:2011/8/27 17:35:00 [只看该作者]

比如入院登记是某个病人“唐连刚”的医生是“张月霞”,那么长期医嘱和临时医嘱该病人的医嘱“医生”列为“张月霞”。

过得一段时间,该病人的医生更换为“武爱花”,那么该病人新增医嘱医生为“武爱花”,此前的医生姓名不变。


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


加好友 发短信
等级:等待验证 帖子:386 积分:2482 威望:0 精华:1 注册:2011/5/10 11:13:00
  发帖心情 Post By:2011/8/27 18:04:00 [只看该作者]

我测试3楼代码没有更改 旧数据

 回到顶部