2012-04-13 20 views
3

CellTableでページングを実装しようとしていますが、現在、「1-10 of 1000」レコードの代わりに「1-10 of 10」レコードを表示しています。総レコード数をどこで更新できるのか分かりません。疑問符が準備された文で、開始と終了の範囲によって置き換えられGWT CellTableページングの合計行数を取得する方法

SELECT * 
    FROM (SELECT outlet_id, 
      outlet_name, 
      image, 
      ROWNUM rn 
     FROM ( SELECT outlet_id outlet_id, 
        account_name outlet_name, 
        image_score image, 
       FROM outlets) 
      ORDER BY OOI.created_on DESC, OOI.account_name)) 
WHERE rn > ? AND rn < ?  

AsyncDataProvider<OutletSearchVO> latestProvider = new AsyncDataProvider<OutletSearchVO>() { 

     @Override 
     protected void onRangeChanged(HasData<OutletSearchVO> display) { 
      final int start = display.getVisibleRange().getStart(); 
      int length = display.getVisibleRange().getLength(); 
      AsyncCallback<List<OutletSearchVO>> callback = new AsyncCallback<List<OutletSearchVO>>() { 
       @Override 
       public void onFailure(Throwable caught) { 
        Window.alert(caught.getMessage()); 
       } 

       @Override 
       public void onSuccess(List<OutletSearchVO> result) { 
        updateRowData(start, result); 
       } 
      }; 
      // The remote service that should be implemented 
      service.getOutletPage(start, length, callback); 

     } 
    }; 

私はレコードをつかむために使用しているSQLは次のようになります。私のAsyncDataProviderは、このようになります。

答えて

4

あなたはその数(または少なくとも近似にサーバーを聞いて、その後、あなたがtruefalseを渡すかどうかを選択しなければならないことを意味する、あなたのAsyncDataProvider(あなたがupdateRowDataを呼び出す方法に類似)内からupdateRowCountを呼び出す必要があります2番目の引数としてupdateRowCount)。

onRangeChangeの外からupdateRowCountに電話することもできます。特に、行数を知ることができれば、その数はあまり変更されません。

関連する問題