Foxtable(狐表)用户栏目专家坐堂 → [求助]窗口中控件代码错误


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

主题:[求助]窗口中控件代码错误

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


加好友 发短信
等级:五尾狐 帖子:1022 积分:7598 威望:0 精华:0 注册:2010/4/12 12:23:00
[求助]窗口中控件代码错误  发帖心情 Post By:2013/12/12 12:36:00 [只看该作者]

窗口中有控件“统计”,click代码如下:
Dim cmb1 As WinForm.ComboBox=e.form.Controls("Cmb_kind")
Dim cmb2 As WinForm.ComboBox= e.Form.Controls("Cmb_tongji")
Dim txt As String= cmb1.Text
Dim txt1 As String=cmb2.text
Dim dtp1 As WinForm.DateTimePicker= e.Form.Controls("DateTimePicker1")
Dim d1 As Date=dtp1.value
Dim dtp2 As WinForm.DateTimePicker= e.Form.Controls("DateTimePicker2")
Dim d2 As Date=dtp2.value
Dim sql As String
If e.Form.Controls("Rdo_dengji").checked=False And e.Form.Controls("Rdo_ruyuan").checked=False Then
    MessageBox.Show("为提高统计的准确性,请选择统计时段种类","提示",MessageBoxButtons.OK,MessageBoxIcon.warning)
    Return
End If
If d1=Nothing Then
    MessageBox.Show("为提高统计的准确性,请选择统计开始时间","提示",MessageBoxButtons.OK,MessageBoxIcon.warning)
    Return
End If
If d2=Nothing Then
    MessageBox.Show("为提高统计的准确性,请选择统计截止时间","提示",MessageBoxButtons.OK,MessageBoxIcon.warning)
    Return
End If
If txt="" Then
    MessageBox.Show("为提高统计的准确性,请选择患者种类","提示",MessageBoxButtons.OK,MessageBoxIcon.warning)
    Return
End If
If txt1="" Then
    MessageBox.Show("为提高统计的准确性,请选择统计项目","提示",MessageBoxButtons.OK,MessageBoxIcon.warning)
    Return
End If
If e.Form.Controls("Rdo_dengji").checked=True Then
    If txt="预约患者(登记时间)" Then
        sql="select * from {基本情况} where 登记日期>#d1# and 登记日期<#d2#"
    Else If txt="住院患者(登记时间)" Then
        sql="select * from {基本情况} where 情况说明='已入院' and 登记日期>#d1# and 登记日期<#d2#"
    Else If txt="推迟入院(登记时间)" Then
        sql="select * from {基本情况} where 情况说明='推迟入院' and 登记日期>#d1# and 登记日期<#d2#"
    Else If  txt="失访患者(登记时间)" Then
        sql="select * from {基本情况} where 情况说明='无法联系' and 登记日期>#d1# and 登记日期<#d2#"
    End If
End If
If e.Form.Controls("Rdo_ruyuan").checked=True Then
    If txt="入院患者(入院时间)" Then
        sql="select * from {基本情况} where 情况说明='已入院' and 预约日期>#d1# and 预约日期<#d2#"
    Else If txt="预约患者(入院时间)" Then
        sql="select * from {基本情况} where (情况说明='已入院' or 情况说明='') And 预约日期>#d1# And 预约日期<#d2#"
    End If
End If
If e.form.Controls("Cmb_tongji").Text="性别" Then
    Dim g As New GroupTableBuilder("统计表1", sql)
    g.Caption = "性别统计"
    g.Groups.AddDef("性别", "", "性别")
    g.Totals.AddDef("姓名", AggregateEnum.Count,"","病例数")
    forms("统计图形").Open
    Forms("统计图形").Controls("Table1").Table.DataSource = g.BuildDataSource()
    Dim Chart As WinForm.Chart '定义一个图表变量
    Dim Series As WinForm.ChartSeries '定义一个图系变量
    Dim t As Table = Tables("统计图形_table1") '定义一个变量t引用数据表
    Chart= e.form.Controls("Chart1") ' 引用窗口中的图表
    Chart.VisualEffect = True '加上这一行,让你的图表更漂亮
    Chart.ChartType = ChartTypeEnum.Pie '图表1类型改为Bar(条形)
    Chart.SeriesList.Clear()
    For Each r As Row In t.Rows
        Series = Chart.SeriesList.Add() '增加一个图系
        Series.Length = 1 '一个系列只能包括一个值
        Series.Text = r("性别") & "(" & r("姓名") & ")" '设置图系的标题
        Series.Y(0) = r("姓名") '指定值
    Next
    Chart.LegendVisible = True '显示图列
    Chart.LegendCompass= CompassEnum.East '图列显示在东方(右方)
End If


代码运行提示错误,截图如下:

图片点击可在新窗口打开查看此主题相关图片如下:360软件小助手截图20131212123140.jpg
图片点击可在新窗口打开查看

看看问题出在哪儿?谢谢!


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


加好友 发短信
等级:五尾狐 帖子:1022 积分:7598 威望:0 精华:0 注册:2010/4/12 12:23:00
  发帖心情 Post By:2013/12/12 12:43:00 [只看该作者]

前面不用各种条件,直接使用:sql=“select * from {基本情况}”就没有错误。

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/12 14:06:00 [只看该作者]


条件不是这样拼接的 

sql="select * from {基本情况} where (情况说明='已入院' or 情况说明='') And 预约日期>#" & d1 & "# And 预约日期<#" & d2 & "#"

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


加好友 发短信
等级:五尾狐 帖子:1022 积分:7598 威望:0 精华:0 注册:2010/4/12 12:23:00
  发帖心情 Post By:2013/12/12 15:01:00 [只看该作者]

我改了有出现了下图的错误。哎。拼接是我的软肋。

图片点击可在新窗口打开查看此主题相关图片如下:360软件小助手截图.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2013-12-12 15:01:37编辑过]

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/12 15:06:00 [只看该作者]

你后面不是又少一个 &  吗



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


加好友 发短信
等级:五尾狐 帖子:1022 积分:7598 威望:0 精华:0 注册:2010/4/12 12:23:00
  发帖心情 Post By:2013/12/12 15:07:00 [只看该作者]

呵呵。好哈哟!

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


加好友 发短信
等级:五尾狐 帖子:1022 积分:7598 威望:0 精华:0 注册:2010/4/12 12:23:00
  发帖心情 Post By:2013/12/12 15:19:00 [只看该作者]

谢谢!


 回到顶部