この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Apex Connector Framework でのページング

ユーザーインターフェースに大量のレコードセットを表示する場合、Salesforce はレコードセットをバッチに分割して、1 つのバッチを表示します。これらのバッチはページ処理できます。ただし、Salesforce Connect のカスタムアダプターでは、どのようなページングも自動的にサポートされることはありません。カスタムアダプターで取得された外部オブジェクトデータのページ処理をサポートするには、サーバー駆動またはクライアント駆動のページングを実装します。

サーバー駆動のページングでは、外部システムがページングを制御し、クエリで指定されたバッチの区切りやページサイズは無視されます。サーバー駆動のページングを有効にするには、DataSource.Provider クラスで QUERY_PAGINATION_SERVER_DRIVEN 機能を宣言します。また、Apex コードでクエリトークンを生成し、そのトークンを使って結果の次のバッチを判断して取得する必要があります。

クライアント駆動のページングでは、LIMIT および OFFSET 句を使用して結果セットをページ処理します。DataSource.QueryContextoffset および maxResults プロパティを考慮して、どの行を返すかを判断します。たとえば、結果セットに数値の ExternalID が 1 ~ 20 の 20 行あるとします。offset5maxResults5 とすると、ID が 610 の行を取得します。絞り込みはすべて Apex 外の外部システムで、そのシステムがサポートする方法で行うことをお勧めします。