请教TQueryTableProducer控件的用法(50分)

J

Jao

Unregistered / Unconfirmed
GUEST, unregistred user!
哪位大虾用过TQueryTableProducer控件,请详细说说怎么用,我没办法用
它生成页面。同时,如何用TQueryTableProducer控件对所查询的记录进行
分页显示呢?
请各位大虾不吝赐教,谢谢!
 
是在做CGI吗?

它的用法你可以参照delphi本身的例子(在demos/webserv目录下)
 
多谢amo,我在做ISAPI,头一个问题解决了.原来只要将TQueryTableProducer的
Query属性设为TQuery控件的名字,然后在Action中写一句:
Response.content := QueryTableProducer1.content;
完成!连TQuery都不用自己打开,盖了!

第二个问题呢:TQueryTableProducer可以控制在一页最多显示的记录数,那么我
要继续看下面的记录该怎么翻页呢?我想这才是要技巧的时候了,大虾们指点指
点吧!

现在多了第三个问题:TQueryTableProducer可以自动识别POST上来的参数,可
是当我POST上来的参数多于SQL语句所用的参数时,它就会出错,比如说SQL语句
是这样的:
SELECT * FROM Talbe WHERE col=:Value1
当我POST上来的参数为.../Post?Value1=ABC&Value2=DEF时,它会说不知道
Value2,这该怎么解决呢?
 
怎么没人理我,高手都放暑假了?
或者请各位告诉我到哪里去找这方面的资料也好,谢谢
 
别急,这几天我们校园网的服务器有点问题。

关于第二个问题:
请注意TQueryTableProducer有个Content函数,它将触发OnCreateContent事件,在OnCreateContent中有个参数Continue,哈哈!你明白什么了吗?快去看帮助!

第三个问题:
你为什么不把第二个参数加到SQL中呢?

关于资料,大多数国外人写的大块头的书里都有相关内容,国内的可能是就是人民邮电出版的 徐新华抄译著的Delphi 4 高级编程丛书。(其实就是Delphi中的帮助汉化了一下,所最重要的是多看帮助,多看例子)

 
amo大虾,钳子真够大,佩服!
关于第三个问题,我是做了一个FORM,有一些变量是用来做为判断条件的,比如
说一个Radio的值可以用来决定要用哪一个SQL语句,而SQL语句要用到的变量只
是FORM中的部分变量的值,比如说是一个用户输入的TEXT值。
我是不太明白,按理说TQueryTableProducer应该不会有这么死的限制,我曾试
着改过与之关联的TQuery中的ParamCheck属性为False,可是好象也不起作用。因为我是把SQL语句写在程序中的,没有写在TQuery的SQL属性中,所以TQuery的Params里是空,是不是要在这个属性上做点文章呢?
 
对不起, 我有点不明白你的意思。

你是不是想让第二个参数作为区分不同SQL语句的标志。
如果你的SQL是动态生成的话,那么在程序中
你就可以由不同的Radio值生成不同的SQL语句。
 
querytableproducer1的限制就是折磨死,你应该先解析post来的参数
然后根据参数动态生成或选择sql语句.
with querytableproducer1 do
Begin
query.sql.clear;
query.sql.add('SELECT Spzk.SP1 商品编号,..... , where .....);
Request.queryfields.clear;
response.content:=querytableproducer1.content;
query.close;
end;
 
李大虾这招管用了!谢谢!
现在翻页的问题上还有些不太清楚,我看了Delphi的帮助,太简单没什么实际管
用的例子。翻页的时候我该怎样控制记录的移动呢?各位有没有什么例子可以参
考一下呢?谢谢!
没想到就这么个东东就有一大堆的细小地方要注意,真不知该说什么好。
 
多人接受答案了。
 
顶部