我现在的操作系统是win7,用pb9
在win7系统下正常,如下图:
编译后,在xp系统下提示expression is not valid
如下图:
有个窗口里面用了setfilter,代码如下
dw_1.settransobject(sqlca)
dw_1.retrieve();
long l_column_count,ls_row
integer i,j,k
datetime ls_temp
date dt_temp
decimal ds_temp
string str_column[],colname,colname1,ls_filter
string str_column_text[]
ls_row=dw_1.rowcount()
l_column_count=long(dw_1.describe("Datawindow.column.count"))-12
for j=1 to ls_row
i=3
do
str_column[i]=dw_1.describe("#"+string(i)+".name")
str_column[i+1]=dw_1.describe("#"+string(i+1)+".name")
str_column_text[i]=dw_1.describe(str_column[i]+"_t.text")
ls_temp=dw_1.getitemdatetime(j,str_column_text[i])
if month(date(ls_temp))=month(today()) and year(date(ls_temp))=year(today()) then
k=i
end if
i=i+2
loop until i > l_column_count
next
dw_1.modify(str_column[k]+".width=398")
dw_1.modify(str_column[k] + "_t.visible = true")
dw_1.modify(str_column[k] + ".visible = true")
dw_1.modify(str_column[k+1] +".width=274")
dw_1.modify(str_column[k+1] + "_t.visible = true")
dw_1.modify(str_column[k+1] + ".visible = true")
colname="是否返还"+mid(str_column[k],9,2)
colname1="返还日期"+mid(str_column[k],9,2)
dt_temp=date(f_dateadd('year',1,datetime(f_dateadd('month',-1,datetime(today())))))
dw_1.setfilter(colname + " <> " +"1" + " and "+ string(colname1) + " < " + string(dt_temp))
dw_1.filter()
------解决方案--------------------