Foxtable(狐表)用户栏目专家坐堂 → [求助] 请高手们帮我查查代码哪里有错!!!


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

主题:[求助] 请高手们帮我查查代码哪里有错!!!

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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
[求助] 请高手们帮我查查代码哪里有错!!!  发帖心情 Post By:2009/9/5 15:23:00 [只看该作者]

在按钮中放了以下代码,第一次单击按钮正常,第二次单击就会出现错误提示“abc不存在名为“客户”的列”,请教高手,下面代码哪里有错?

Dim q As new QueryBuilder
q.TableName = "abc"
q.SelectString = "Select * From {表A}"
q.Build
With DataTables("abc")
    .DataCols.Add("日期", GetType(Date))
    .DataCols.Add("客户", GetType(String),10)
    .DataCols.Add("产品", GetType(String),10)
End with
Tables("窗口1_Table1").DataSource = DataTables("abc")
e.Form.Controls("Table1").Visible = true


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table


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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/5 16:12:00 [只看该作者]

图片点击可在新窗口打开查看  出现错误提示就不正常了!!!

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


加好友 发短信
等级:三尾狐 帖子:719 积分:5181 威望:0 精华:1 注册:2008/9/24 10:41:00
  发帖心情 Post By:2009/9/5 16:14:00 [只看该作者]

QueryBuilder 是按条件生成查询表呀,你增加列的目的是什么?
如是要统计,你参阅:
CrossTableBuilder
DataTableBuilder
GroupTableBuilder
[此贴子已经被作者于2009-9-5 16:16:54编辑过]

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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/5 16:24:00 [只看该作者]

以下是引用狐哥在2009-9-5 16:14:00的发言:
QueryBuilder 是按条件生成查询表呀,你增加列的目的是什么?
如是要统计,你参阅:
CrossTableBuilder
DataTableBuilder
GroupTableBuilder
[此贴子已经被作者于2009-9-5 16:16:54编辑过]

附件是从我的系统中把出错的部份分解精简出来的,QueryBuilder是用来从SQL Server中查询数据的。 
q.SelectString = "Select ×××,×××,××× from a union Select ×××,×××,××× from b"
这样把多个表的数据查询出来并放到一个表中。增加临时列用于统计一些数据。

出错应该跟QueryBuilder没什么关系,但是找了好久也没找到哪里出了错。 

[此贴子已经被作者于2009-9-5 16:27:11编辑过]

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


加好友 发短信
等级:三尾狐 帖子:719 积分:5181 威望:0 精华:1 注册:2008/9/24 10:41:00
  发帖心情 Post By:2009/9/5 16:30:00 [只看该作者]

不好意思。刚错了,这个语句我也没搞懂。
但我认为你不能用这个查询表。

[此贴子已经被作者于2009-9-5 16:34:07编辑过]

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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/5 16:32:00 [只看该作者]

以下是引用狐哥在2009-9-5 16:30:00的发言:
for each dc as col in tables("abc").cols
    if dc.name = "客户" then
        Return
    end if
next

这一段的目的是什么?加在哪里?图片点击可在新窗口打开查看


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


加好友 发短信
等级:三尾狐 帖子:719 积分:5181 威望:0 精华:1 注册:2008/9/24 10:41:00
  发帖心情 Post By:2009/9/5 16:35:00 [只看该作者]

贴出你全部公式,想办法改一下

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


加好友 发短信
等级:三尾狐 帖子:719 积分:5181 威望:0 精华:1 注册:2008/9/24 10:41:00
  发帖心情 Post By:2009/9/5 16:41:00 [只看该作者]

苯办法一个:

If tables("abc").Cols.Contains("客户") Then
    Return
Else
    With DataTables("abc")
        .DataCols.Add("日期", GetType(Date))
        .DataCols.Add("客户", GetType(String),10)
        .DataCols.Add("产品", GetType(String),10)
    End with
End If
Tables("窗口1_Table1").DataSource = DataTables("abc")
e.Form.Controls("Table1").Visible = true

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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/5 16:49:00 [只看该作者]

以下是引用狐哥在2009-9-5 16:35:00的发言:
贴出你全部公式,想办法改一下

 
 全部贴出来不太方便,用的外部数据而且代码很长。


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


加好友 发短信
等级:一尾狐 帖子:495 积分:4013 威望:0 精华:0 注册:2008/10/10 19:36:00
  发帖心情 Post By:2009/9/5 16:50:00 [只看该作者]

以下是引用狐哥在2009-9-5 16:41:00的发言:
苯办法一个:

If tables("abc").Cols.Contains("客户") Then
    Return
Else
    With DataTables("abc")
        .DataCols.Add("日期", GetType(Date))
        .DataCols.Add("客户", GetType(String),10)
        .DataCols.Add("产品", GetType(String),10)
    End with
End If
Tables("窗口1_Table1").DataSource = DataTables("abc")
e.Form.Controls("Table1").Visible = true

 
照你的方法试过还是出现同样的错误提示。按说再次单据按钮就是一个全新的开始,为什么为出现这种提示呢?图片点击可在新窗口打开查看


 回到顶部
总数 14 1 2 下一页