0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【OutSystems】ページネーションの実装

Last updated at Posted at 2025-08-12

ページネーションの実装方法について、公式サイトを参考にまとめます。
ぶっちゃけ、EntityをInterfaceにドラッグ&ドロップするだけで自動で作成してくれます。しかし、開発者であれば微修正や改修などは自身でする必要があるため、一から実装できるように知識をつけておくことは大切かなと思います。

ページネーションとは

そもそもページネーションとは何でしょうか。

ページネーションとは、大量のデータを一度にすべて表示するのではなく、複数のページに分割して表示するUIの仕組みのことです。

ウェブサイトやアプリケーションで、検索結果や商品リストなどが何百、何千件とある場合に、画面下部に「1 2 3 ... 次へ」のようなナビゲーションが表示されているのを見たことがあるかと思います。これがページネーションです。

上記はGeminiに質問して解答してもらったものをそのまま載せてます。
要はTable WidgetやList Widgetのデータをすべて表示すると、処理時間・ユーザビリティが低下するため、分割して表示することで処理速度・使い勝手もよくしよう!とした機能です。

ページネーションの実装

Step1.DataとTableを用意しよう!

適当にTableを用意して、Dataをバインドさせます。ここでは、Productデータを作成しました。

image.png

この状態でアプリケーションを起動すると、すべてのデータが表示されます。
image.png

Step2.Pagenationを用意しよう!

ドラッグ&ドロップでPagenation Widgetを配置します。

image.png

配置するだけではErrorが出るため、Pagenation Widgetのプロパティを設定する必要があります。

image.png

最低限設定が必要なプロパティを挙げます。
・StartIndex:ページネーションを開始する初期インデックスを設定します。
・MaxRecords:各ページに表示するレコード数を設定します。
・TotalCount:テーブルの総レコード数を設定します。
・Handler:ユーザーがページボタンを押下した際のアクションを設定します。

Step3.Pagenationを設定しよう!

まずは「StartIndex」と「MaxRecords」を設定します。
そのために、Screenのローカル変数に「StartIndex_Screen」と「MaxRecords_Screen」を用意します。二つのローカル変数の設定は、下記となります。
「StartIndex_Screen」:Integer型、Default Value = 「0」
「MaxRecords_Screen」:Integer型、Default Value = 「3」
これをPagenationに設定します。

image.png

次は「TotalCount」ですが、これはテーブルの総数=バインドしたDataの総レコード数に設定します。Aggregate.countで設定できます。

image.png

Handlerのアクションを設定します。
「Add Client Action」からでも作れますが、Handlerから「New Client Action」で作成したほうが楽です。
すると、入力変数「NewStartIndex」を持つアクションを作成してくれます。「NewStartIndex」はページボタン押下時に、そのページ番号の開始レコード数を受け取る変数となります。そのため、「NewStartIndex」の値を先ほど作成した「StartIndex_Screen」にAssignし、AggregateをRefreshします。

image.png

最後に、TableにバインドしたAggregateの「StartIndex」と「MaxRecords」にも先ほど作成した変数を設定して完成です。

image.png

Step4.アプリケーションを確認しよう!

Step1~Step3の実装結果は下記となります。

image.png

image.png

表示するレコード数や切り替え処理がうまくいってますね!これにて実装完了です!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?