yihuizeng 发表于 2007-4-9 22:19

最多只可以提取6条数据,怎样取消这样的限制?

我有一个data window, 叫d_clm_lcad, 里面有clmnum和chdrnum两个栏位, 他们的类型都是string, 举例:clmnum: 700000016,chdrnum:00155231. 而另外还有一个data window: d_clm_0701和他响应的window w_clm0701 在我PB中想在w_clm0701这个界面里面通过d_clm_lcad中的chdrnum作为查询条件来查询数据。 不过查询出来的数据的数量现在被限制只可以查询出五条, 我想知道如何才可以去除这个限制, 由于coding太长,我只可以选择扼要的放上来<br><br>datastore lds_claim<br>string ls_newsql<br>string ls_contract_num,ls_clmnum[6] //限制了ls_clmnum是个最多6条数据的array<br>datastore lds_claim<br>long ll_int<br><br>ls_contract_num=dw_input4.GetItemString(1, "contract_num") //dw_input4所对应的就是d_clm_lcad这个                                                            // data window<br>if ls_contract_num&lt;&gt;'' then<br>    lds_claim = create datastore<br>   lds_claim.dataobject = 'd_clm_lcac'   //这里开始连接d_clm_lcac<br>   lds_claim.SetTransObject(SQLCA)<br>    lds_claim.retrieve(ls_contract_num)  <br>    for ll_int=1 to 6                    //这里开始设置限制<br>        ls_clmnum[ll_int]=' '<br>    next<br>    for ll_int=1 to lds_claim.rowcount()<br>        ls_clmnum[ll_int]=lds_claim.getitemstring(ll_int,'clmnum')<br>    next<br>end if<br><br>if is_oldsql = '' then<br>    is_oldsql = THIS.GetSQLSelect()<br>end if                               //is_oldsql是d_clm_0701的SQL语句, 查询时就是以d_clm0701的语句为<br>                                       //主, 再在语句的后面加上想要查询的条件<br><br>if trim(ls_contract_num) &lt;&gt; '' then<br>    ls_newsql = is_oldsql + " WHERE ( clmnum = '" + ls_clmnum[1]  + "' or " + &amp; //is_oldsql后面加上了<br>     "   clmnum = '" + ls_clmnum[2]  + "' or " + &amp;                              //新SQL,列出最多6条数据<br>     "   clmnum = '" + ls_clmnum[3]  + "' or " + &amp;                               <br>     "   clmnum = '" + ls_clmnum[4]  + "' or " + &amp;<br>     "   clmnum = '" + ls_clmnum[5]  + "' or " + &amp;<br>     "   clmnum = '" + ls_clmnum[6]  + "' ) " <br>end if<br><br><br>我想过个很笨的方法, 就是把ls_clmnum设置成ls_clmnum{10]什么的,就可以显示ls_clmnum[1],[2],[3]到[10]了,反正不可能带出太多的数据嘛。 这样的方法毕竟不应该是我们编程员所想出来的, 太窝囊了, 请高手给于指教,有任何不清楚的地方我都会马上回答<br>


页: [1]

编程论坛