❶ 关于PB 过滤查询的
DWfilter2 = "t_mat_materialcode_mc_cname=sle_5.text"
改成:
DWfilter2 = "t_mat_materialcode_mc_cname='"+sle_5.text+"'"
试试.
❷ 在PB中怎样设置查询条件,如何设置才是最合适呢
具体问题具体分析. 有两种查询方式,一种是条件少的时候就用setfilter()过滤。第二种多个条件是则拼接数据窗口的sql 语句. 先是用getsqlselect()得到数据窗口语句,然后setsqlselect()重新设置sql查询语句就会显示你所想显示的结果。如有疑问欢迎随时追问。
❸ PB过滤怎么实现
三种常用方式:
1、使用setfilter()设置过滤参数,filter()执行过滤。
2、设置新建数据库窗口的时候设置retrieve()参数,retrieve时调用。
3、动态修改数据库窗口的sqlselect参数。
❹ pb查询语句
这个是过滤的代码,查询(模糊查询)如下:
string s
if sle_1.text='' then
messagebox("提示","请输入要查找的内容")
else
s=sle_1.text//查询框里输入的内容赋值给S
dw_1.setfilter("t1.t1_brxm like'%"+s+"%'")//t1.t1_brxm是指你要查找的内容的代号,比如:姓名,然后后面的s是你在查询框里输入的内容
dw_1.setfocus() //给焦点
dw_1.settransobject(sqlca) //连接上你的数据库
dw_1.retrieve()
end if
("设备序列号 ='"+sle_1.text+"'")这句的加号和引号问题:
+和+中间的部分是一个字符型的变量,所以过滤的PB语法规定在引号内用两+好来表示,其实还可以这样的:'%"+sle_1.text+"%'
这只是它的语法问题,只有可以说该怎么不该怎么的解释。
❺ pb数据过滤问题
datawindowchild dwc
dw_1.getchild("子数据窗口列名",dwc)
dwc.settransobject(sqlca)
dwc就是子数据窗口了,把他当成数据窗口操作就可以了,setsqlselect(),setfilter()这些函数都可以用
dwc.retrieve()
dwc.setfilter("部门=‘01")
dwc.filter()
❻ 关于pb多条件过滤的问题,急!!!
用拼写where 条件的方法.以下是思路和例子.
思路:首先得到数据窗口的原始数据源sql语句.譬如你要对dw_1的数据进行多条件过滤.就在事件中写:
string ls_sql
ls_sql = dw_1.getsqlselct()//此时ls_sql变量得到dw_1的sql语句.
然后将条件拼成一个and 语句 例子:
譬如年龄字段,性别字段和班级字段.(这只是个例子,希望你能明白意思,然后为你所用)
分别为age,sex,class
此时用户已经选完了这三个条件的值(此处可以多种方法实现.1让用户直接输入。单行编辑框 2。多选框。3.下拉列表框.等等)
譬如用户选择的是age = 24,sex = 1(1-为男,0为女),class = 2
此时拼串!
例子:
string ls_sql,ls_sql_new,ls_condition
string ls_age,ls_sex,ls_class
ls_sql = dw_1.getsqlselect()//得到默认的数据窗口sql语句。
ls_age = '24'
ls_sex ='1'
ls_class ='2'
ls_condition =" age='"+ls_age+"' and sex = '"+ls_sex +"' and class = '"+ls_class+"'"//条件拼写完成
ls_sql_new = ls_sql +" where "+ ls_condition //这里注意拼写的时候where 后面 and 前后都要加个空格!
dw_1.setsqlselect(ls_sql_new)//将拼成的串 设置成新的数据窗口sql语句 此时就是多个过滤条件的结果!
❼ 如何用PB实现查询功能
这个很简单哦~
显示查询结果是体现在窗口下面的DW(数据窗口)中的,那么你需要组合好条件,然后利用数据窗口控件的
setSQLSelect(条件字符串)的方法重新设置DW查询SQL,然后再对DW操作retrieve()
即可实现!例如:
string
name
,
gender
name
=
sle_name.text
gender
=
ddlb_gender.text
string
ls_selectCmd
ls_sqlcmd
=
"select
name
,
gender
....
from
employee
"
+
&
"where
(name='"
+
name
+
"')
and
(gender='"
+
gender
+
"')"
dw_1.setTransobject(sqlca)
dw_1.setSQLSelect(ls_selectCmd)
if
dw_1.retrieve()
<
1
then
messagebox("提示"
,
"未找到任何条件的人员信息")
end
if
祝你好运!
❽ pb 的数据窗口报表 的过滤问题,怎么使用pos函数进行过滤
设置一个filter
这个不用pos
在cb中回clicked()写:答
string ls_filter
ls_filter= "contract_no like '%-%'"
dw_3.setfilter(ls_filter)
dw_3.filter()
❾ PB查询界面中,过滤出现expression is not valid的提示
这个错误的信息是过滤公式错误了。
你这个写法肯定是错了,拼的很乱。
你使用断电跟踪一下,看看最后你的这个条件到底是什么,一目了然就知道公式的错误在哪里了。
❿ pb中如何通过FILTER()函数过滤和清除过滤
FILTER()函数过滤和清除过滤方法如下:
dw.setfilter(" name = 'lily' ")
dw.filter() // 查找名字叫lily的数据
dw.setfilter("")
dw.filter() //取消过虑
如果有多个过滤条件 ,可通过and连接起来一起执行:
string DWfilter2
DWfilter2 = "cust_qty > 100 and cust_code >30"
dw_Employee.SetFilter(DWfilter2)
dw_Employee.Filter( )