有dw_1,dw_2,dw_query,em_start,em_end还有按钮“查询”。
dw_1为DropDownListBox,value:人事科 10
教育科 20
宣传科 30
dw_2为DropDownDW,
在“查询”代码中
int ll_s
string class,dept
datetime start_date,end_date
start_date=datetime(date(em_start_date.text),time('00:00:00'))
end_date=datetime(date(em_end_date.text),time('23:59:59'))
dept=dw_1.getitemstring(1,'dept')
class= dw_2.getitemstring(1,'class_name')
ll_2=dw_query.retrieve(dept,start_date,end_date,class)
if ll_dept <= 0 then
messagebox("提示","没有检索到符合条件的信息!")
return
end if
弹出“Retrieve argument 1 does not match expected type”本以为是时间类型出错,之后发现删了检索条件中的“dept”可以查询数据,加入就提示错误,dept检索类型是string 数据库类型varchar.为什么还是出错???
另问,如果dw_2为空时,可否写为
if class="" then
class="%"
ll_2=dw_query.retrieve(dept,start_date,end_date,class)
这样查询出数据呢????
------解决方案--------------------
1.根据提示来看肯定是你的数据类型弄错了,新建一个数据窗口,只加一个参数试试
2.如果你的Sql语句中用的是like,不是=的话,用%可以实现你说的效果
------解决方案--------------------
Retrieve argument 1 does not match expected type
表示检索条件里面有一个类型不正确,而不是提示第一个的类型不正确。
建议你检查参数,debug跟踪一下你的各个参数值。