z着急的问题,在线给分!!

zzz1975 2002-11-01 12:02:53
我的数据窗口是由两个表构成的quick select
我利用外在的条件flag=1,0,2不同进行检索不同的数据
可是没有错误,就是没有数据
我在retrievea aregment定义了这个look 表。look_flag=:look


再数据窗口里我用
strinf look
look="look_flag='1'"等条件变换
dw-1.retrieve(look)
就是不能检索出数据??
用sqlca.sqlerrtect没有错误提示!
着急,不能吃饭,不解决!!
...全文
41 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
minilin_11 2002-11-01
  • 打赏
  • 举报
回复
过滤函数setFilter()和Filter()函数是成对使用的,只用setFilter()是不会有数据的,它只是给个条件,真正查询还要filter()函数
zzz1975 2002-11-01
  • 打赏
  • 举报
回复
难道是我水平太挖
每人愿意帮忙
数据窗口每么问题,两个数据表组成的,一个表构成的数据窗口没有什么问题!!
两个表构成的就不行 了?/
着到底问什么?/谁遇到过,帮忙。。等待中!!
请细看,我的信箱:zhao.sw@sohu.com
tjzz 2002-11-01
  • 打赏
  • 举报
回复
莫名其妙
zzz1975 2002-11-01
  • 打赏
  • 举报
回复
d是字段,下面是我的程序!
ong li_ql
string a ,b,look
a=trim(sle_1.text)

if a ='' then
messagebox("","清输入你的姓名~r以便验证你的察看权利")
return
sle_1.setfocus()
else
end if

select ql into :li_ql from tUA_UserItem
where UserID=:a;

IF SQLCA.SQLCode <> 0 then
messagebox("","错误的用户id")
return
else
messagebox("",string(li_ql))
end if






CHOOSE CASE li_ql
CASE 1
//dw_1.retrieve()
case 2
// dw_1.setFilter("look_flag = '1' ")
look= " '1' "

messagebox("","ql=2")
case 3
look = "2"
case else
messagebox("","你没有察看此窗口数据权限!")
return
END CHOOSE


IF SQLCA.SQLCode <> 0 then
messagebox("","pass")
return
else
messagebox("",sqlca.sqlerrtext)
end if
LittleDot88 2002-11-01
  • 打赏
  • 举报
回复
look_flag是什么?DW中的一个列字段吗?
tjzz 2002-11-01
  • 打赏
  • 举报
回复
look = '1'就行了
不用look = "look_flag='1'"
yao_xh 2002-11-01
  • 打赏
  • 举报
回复
是不是要加表名:
dw_1.setFilter("'sb_bug.look_flag = '1' ")
Filter(dw_1)
dw_1.retrieve()

zzz1975 2002-11-01
  • 打赏
  • 举报
回复
以下使我的数据窗口的语法
SELECT sb_bug.bug_bill,
sb_bug.char_code,
sb_bug.bug_level,
sb_bug.finder,
sb_bug.find_time,
sb_bug.report_input,
sb_bug.report_unit,
sb_bug.report_audit,
sb_bug.report_date,
sb_bug.repair_unit,
sb_bug.notice_input,
sb_bug.notice_audit,
sb_bug.notice_confirm,
sb_bug.repairer,
sb_bug.notice_receiver,
sb_bug.repair_date,
sb_bug.notice_date,
sb_bug.watcher,
sb_bug.is_solve,
sb_bug.return_audit,
sb_bug.return_date,
sb_bug.return_input,
sb_bug.deal_status,
sb_bug.equip_code,
sb_equip.transf_code,
sb_bug.bug_content,
sb_bug.deal_suggest,
sb_bug.produce_plan,
sb_bug.bug_type,
sb_equip.equip_name,
sb_bug.look_flag
FROM sb_bug,
sb_equip
WHERE ( sb_bug.equip_code = sb_equip.equip_code )
Kanfu 2002-11-01
  • 打赏
  • 举报
回复
你把数据窗口和窗口Export出来,然后再粘添上来给大家看看!
minilin_11 2002-11-01
  • 打赏
  • 举报
回复
对了,最后不要忘了retrieve()
具体写法可以是:
dw_1.setFilter("look_flag = '1' ")
Filter(dw_1)
dw_1.retrieve()
jeking 2002-11-01
  • 打赏
  • 举报
回复
如果使用setfilter()函数,必须与filter() or retrieve()配合使用
jeking 2002-11-01
  • 打赏
  • 举报
回复
哦,两个表
至少你的语法没错,我保证。
但是字段的名称
look="look_flag='1'"等条件变换
“look_flag“是不是正确?
看一下datawindow中的name是什么吧,要一样的
louisa5155 2002-11-01
  • 打赏
  • 举报
回复
你两个数据表有关联没有,如果有关联必须在WHERE写上,也可能你写了,但是没有任何记录符合你的查询条件,建议你把表结构贴出来,程序时没有用的,还有你
LOOK=1
dw_1.retrieve(look)
就行了,look只是临时变量,把1赋给WHERE子句进行查询
只能是里面字段进行赋值查询,你不能写个look = "look_flag='1'这个
权限在你的两个表里有字段记录吗?
没有的话就添加进去,然后在WHERE字句里写上“字段名=:look"
然后就没问题了

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧