public ApexPages.StandardSetController ssc{get; set;}
public SSCSample() { ssc = new ApexPages.StandardSetController(Database.getQueryLocator('Select Id, Name From CustomObject__c')); ssc.setPageSize(30); // 1ページあたりの最大レコード数をセット }
// 最初のページへ public void first() { ssc.first(); } // 前のページへ public void previous() { ssc.previous(); } // 次のページへ public void next() { ssc.next(); } // 最後のページへ public void last() { ssc.last(); } }
public ApexPages.StandardSetController ssc{get; set;}
public SSCSample() { ssc = new ApexPages.StandardSetController(Database.getQueryLocator('Select Id, Name From CustomObject__c')); ssc.setPageSize(30); // 1ページあたりの最大レコード数をセット }
// 最初のページへ public void first() { ssc.first(); } // 前のページへ public void previous() { ssc.previous(); } // 次のページへ public void next() { ssc.next(); } // 最後のページへ public void last() { ssc.last(); } }
<apex:page controller="SSCSample">
<apex:form>
<apex:dataTable var="record" value="{!ssc.records}">
...
</apex:dataTable>
総レコード件数は{!ssc.ResultSize}件
現在のページは{!ssc.PageNumber}ページ目
<apex:commandLink action="{!first}" value="最初へ" rendered="{!ssc.HasPrevious}" />
<apex:commandLink action="{!previous}" value="前へ" rendered="{!ssc.HasPrevious}" />
<apex:commandLink action="{!next}" value="次へ" rendered="{!ssc.HasNext}" />
<apex:commandLink action="{!last}" value="最後へ" rendered="{!ssc.HasNext}" />
</apex:form>
</apex:page>
All Answers
英語のページですが、参考になると思います。
Salesforce <Source>: How to support paging of data in your Visualforce Pages?
http://salesforcesource.blogspot.com/2008/09/how-to-support-paging-of-data-in-your.html
Apexクラス内のプロパティの値を変えれば、30行ごとで分けることもできます。
<apex:page controller="SSCSample">
<apex:form>
<apex:dataTable var="record" value="{!ssc.records}">
...
</apex:dataTable>
総レコード件数は{!ssc.ResultSize}件
現在のページは{!ssc.PageNumber}ページ目
<apex:commandLink action="{!first}" value="最初へ" rendered="{!ssc.HasPrevious}" />
<apex:commandLink action="{!previous}" value="前へ" rendered="{!ssc.HasPrevious}" />
<apex:commandLink action="{!next}" value="次へ" rendered="{!ssc.HasNext}" />
<apex:commandLink action="{!last}" value="最後へ" rendered="{!ssc.HasNext}" />
</apex:form>
</apex:page>
ご回答ありがとうございます。
とても参考になりました。
またよろしくお願いいたします。:smileywink: