数据窗口dw_1,数据窗口的dataobject为dw_free,dw_free来自于表table1(qy_code,qy_name,tdlx_name,zdmj,msmj,ysmj,tddj_name,sl,ynse,ynse_bq),其中dw_free的compute_1=zdmj-msmj,compute_2=ysmj*sl,compute_3=ynse/4,tddj_name为dropdownDW
代码如下:dec ld_compute,ld_compute1,ld_compute2, l_sl
long ll_row
string l_column,l_name,l_na
if getrow()>=0 then
l_column=getcolumnname()
if l_column='tddj_name' then
accepttext()
l_name=getitemstring(getrow(),'tddj_name')
if isnull(l_name)=false and l_name<>'' then
select tddj_name,sl into:l_na,:l_sl from mb_tddj where tddj_name=:l_name using sqlca;
object.tddj_name[getrow()]=l_na
object.sl[getrow()]=l_sl
setcolumn('tddj_name')
end if
end if
end if
return
dw_1.accepttext()
for ll_row = 1 to dw_grid1.rowcount()
ld_compute = dw_grid1.object.compute_1[ll_row]
dw_grid1.object.ysmj[ll_row]= ld_compute
ld_compute1 = dw_grid1.object.compute_2[ll_row]
dw_grid1.object.ynse[ll_row]= ld_compute1
ld_compute2 = dw_grid1.object.compute_3[ll_row]
dw_grid1.object.ynse_bq[ll_row]= ld_compute2
next
当我只执行return前面一段代码是可以执行的或者当我只执行return后面一段代码也是可以直接执行的,我就不知道为什么当我把它们放在一起就只能执行return之前的那一段代码,后面的就不执行了,望大神们帮我改改
------解决方案--------------------
1.是不是return的问题?
2.在后面加几个messagebox,看一下执行到哪个地方
3.单步执行测试一下
------解决方案--------------------
贴的太乱。。。
------解决方案--------------------
你的return是无条件执行的啊,都return了后面的当然就不执行。
------解决方案--------------------
for ll_row = 1 to dw_grid1.rowcount()
是不是dw_grid1.rowcount发生了变化?跟踪一下看看