Foxtable(狐表)用户栏目专家坐堂 → 代码不执行,高手请进


  共有10238人关注过本帖平板打印复制链接

主题:代码不执行,高手请进

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


加好友 发短信
等级:童狐 帖子:212 积分:1564 威望:0 精华:0 注册:2011/7/20 21:00:00
代码不执行,高手请进  发帖心情 Post By:2011/8/1 10:13:00 [只看该作者]

With Tables("长期医嘱")
    .Position = .Rows.Count - 1
End With
If e.form.Controls("ComboBox1").Value Is Nothing Or e.form.Controls("ComboBox4").Value Is Nothing Then
    MsgBox("请选择患者住院号和追加类别!",64,"提示")
If Tables("长期医嘱").Rows.count >0 Then
Dim cm4 As WinForm.ComboBox = e.Form.Controls("ComboBox4")
    Dim f As New Filler
    f.SourceTable = DataTables("追加项目")
    f.SourceCols = "拼音码,项目名称"
    f.DataTable = DataTables("长期医嘱")
    f.DataCols = "拼音码,项目名称"
    f.Filter = "分组名称 ='" & cm4.Value & "'"
    f.Fill()
Dim Nu ,X ,Rq,Ys As String
Nu =CurrentTable.Current("编号")
X = e.Form.Controls("ComboBox1").value
Rq= e.Form.Controls("DateTimePicker1").value
Ys=e.Form.Controls("ComboBox5").value
Dim drs As List(Of DataRow)
drs = DataTables("长期医嘱").Select("[编号] >'" & Nu &"'")
For Each dr As DataRow In drs
    dr("住院号") = X
    dr("开嘱日期") = Rq
    dr("医生") = Ys
Next
With Tables("长期医嘱")
    .Position = .Rows.Count - 1
End With
Else
Dim cm4 As WinForm.ComboBox = e.Form.Controls("ComboBox4")
    Dim f As New Filler
    f.SourceTable = DataTables("追加项目")
    f.SourceCols = "拼音码,项目名称"
    f.DataTable = DataTables("长期医嘱")
    f.DataCols = "拼音码,项目名称"
    f.Filter = "分组名称 ='" & cm4.Value & "'"
    f.Fill()
Dim Nu ,X ,Rq,Ys As String
Nu =CurrentTable.Current("编号")
X = e.Form.Controls("ComboBox1").value
Rq= e.Form.Controls("DateTimePicker1").value
Ys=e.Form.Controls("ComboBox5").value
Dim drs As List(Of DataRow)
drs = DataTables("长期医嘱").Select("[编号] ='" & Nu &"'")
For Each dr As DataRow In drs
    dr("住院号") = X
    dr("开嘱日期") = Rq
    dr("医生") = Ys
Next
With Tables("长期医嘱")
    .Position = .Rows.Count - 1
End With
End If
End If

 

问题可能出在If语句上。

我的意思:

第一步:返回最末行

第二步:如果表中为空行,执行第二个IF

否则执行else

[此贴子已经被作者于2011-8-1 10:32:28编辑过]

 回到顶部