Foxtable(狐表)用户栏目专家坐堂 → TopicBar显示统计信息的问题


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

主题:TopicBar显示统计信息的问题

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


加好友 发短信
等级:五尾狐 帖子:1174 积分:8782 威望:0 精华:0 注册:2012/4/18 16:28:00
TopicBar显示统计信息的问题  发帖心情 Post By:2015/7/8 16:22:00 [只看该作者]

参照帮助设计任务栏动态任务时出现以下问题
在开发者登录情况下,以下代码在任务栏的统计信息没有问题,也能打开表A窗口
表A行的内容是从表B通过数据填充提取数据的
1. 我做的是自定义登录系统,自定义登录后,以下代码统计信息为(0),并且表A只见表头没有行
2. 在开发者登录情况下,表A和表B可见行及其内容,在表A窗口和表B窗口显示也正常
3. 代码中如果设置SQLCompute"Count(*)"为Compute"Count(_Identify)"会报错
    目前报错为“列_约束值是唯一的,值”33“已存在,有时是值”11“已存在,有时是值”25“已存在。

我不知道是哪里冲突了,怀疑是主键出现问题,请老师指导指导,谢谢!!


在AfterLoad设置的代码
Dim Page As WinForm.TopicPage
Dim cnt1 As Integer = DataTables("表A").SQLCompute("Count(*)","任务发布时间 = #"  & DateTime.Today & "#")
Page = e.Form.Controls("TopicBar1").Pages.Add("市场部","市场部")
Page.Links.Add("今日新增任务","今日新增任务(" & cnt1 & ")" )

TopicLinkClick设置的代码
Select Case e.Link.Name
    Case "今日新增任务"
    Tables("表A").Filter = "任务发布时间 = #"  & DateTime.Today & "#"
        Forms("市场任务接收").Open()
   End Select

表A与表B的数据填充代码

Dim f As New Filler
f.SourceTable = DataTables("表B") '指定数据来源
f.SourceCols = "部门名称,部门负责人,任务发布时间,工作任务书,发布人" '指定数据来源列
f.DataTable = DataTables("表A") '指定数据接收表
f.DataCols = "部门名称,部门负责人,任务发布时间,工作任务书,发布人" '指定数据接收列
f.filter = "_Identify = " & Tables("市场部任务发出").Current("_Identify")
f.fill()'填充数据

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/8 16:25:00 [只看该作者]

 你确定是这句代码出问题?Compute"Count(_Identify)"

 

 那写成 Compute"Count(部门名称)" 呢?


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


加好友 发短信
等级:五尾狐 帖子:1174 积分:8782 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2015/7/8 16:38:00 [只看该作者]

我也无法确认,感觉是哪里冲突了,写成 Compute"Count(部门名称)"后问题依然存在(开发者登录后,在预览时填写任务发布时间后,今日新增任务会正常显示行和统计行数的信息,但已自定义登录测试时,今日新增任务(0),也只显示表A的表头,无行显示)

如果把代码Tables("市场部任务接收").Filter = "任务发布时间 = #"  & DateTime.Today & "#" 全部删除后,自定义登录点击任务栏中的今日新增任务,打开表A显示全部行内容,统计信息为(0);这段代码加上,自定义登录后只显示表B列头,无行显示。

我在表B列任务发布时间DataRowAdding设置的是e.DataRow("任务发布时间") = DateTime.now,不知是否有影响
[此贴子已经被作者于2015/7/8 16:54:44编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/8 17:02:00 [只看该作者]

呃,代码这样写

 

Tables("市场部任务接收").Filter = "任务发布时间 >= #"  & Date.Today & "# and 任务发布时间 < #" & Date.Today.AddDays(1) & "#"


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/8 17:04:00 [只看该作者]

 报错是数据库有问题,去压缩修复一下。把主键重复的删除。

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


加好友 发短信
等级:五尾狐 帖子:1174 积分:8782 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2015/7/8 17:08:00 [只看该作者]

好的,谢谢老师!!!

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


加好友 发短信
等级:五尾狐 帖子:1174 积分:8782 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2015/7/8 17:14:00 [只看该作者]

再请教下,老师给的代码自定义登录后显示表A了,但今日新增任务不统计行数,依然为(0),是不是我写的统计信息代码有误?

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/8 17:27:00 [只看该作者]

 统计条件要这样写 "任务发布时间 >= #"  & Date.Today & "# and 任务发布时间 < #" & Date.Today.AddDays(1) & "#"

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


加好友 发短信
等级:五尾狐 帖子:1174 积分:8782 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2015/7/8 17:37:00 [只看该作者]

晕了,晕了,是的,应该在AfterLoad的代码中修改条件的,非常感谢老师!!!!!

 回到顶部