This article explains the paging functionality available for <a href="/Training:Seeker_view" title="Training:Seeker view" data-bs-title="Training:Seeker_view">seeking the database with OCLps</a>.
Using the multivariable seeker to search the database, you can configure the seeker to return the number of search result pages if the search does not fit within the <a href="/Documentation:MaxFetch" title="Documentation:MaxFetch" data-bs-title="Documentation:MaxFetch">MaxFetch</a> setting.
To set this up, the seeker logic looks for a set of known variable names to communicate the results in:
<tbody></tbody>Variable name | Type | Use |
---|---|---|
vSeekerPage | Integer | You set: If this variable is found in a seeker - it controls what the search shows, on what page it is - vSeekerResultCount/vSeekerPageLength |
vSeekerPageLength | Integer | You set: The number of items you want on a page |
vSeekerPageCount | Integer | Logic sets: The number of pages is set by the search logic for you to use, add variable, and use type integer |
vSeekerResultCount | Int64 | Logic sets: Total number of results by the search. The count of the SQL query is set by search logic |
IsSeekerResultGrid=true on the Nesting of your grid to know where paging buttons should go
|
See also: <a href="/Documentation:MaxFetch" title="Documentation:MaxFetch" data-bs-title="Documentation:MaxFetch">MaxFetch</a>. MaxFetch controls the maximum number of records returned. The default - if not using MaxFetch - is 20 records. MaxFetch doesn't need the above variables to work. Note that MaxFetch is a tagged value.
The Autoforms construct seeker that makes use of paging refers to an Autoform-generated seeker to see details.
Currently, this is available in the WPF-client and Angular-Turnkey-client (new 2020-Aug).
To let the Framework know which grid on the page handles your search result, you must also add the tagged value IsSeekerResultGrid=true
on the Nesting of your grid - again this is done by the AutoForms seekers.
Same Explained in Other Words[<a href="/index.php?title=Documentation:Search_result_pages&veaction=edit§ion=1" class="mw-editsection-visualeditor" title="Edit section: Same Explained in Other Words" data-bs-title="Documentation:Search_result_pages">edit</a> | <a href="/index.php?title=Documentation:Search_result_pages&action=edit§ion=1" title="Edit section: Same Explained in Other Words" data-bs-title="Documentation:Search_result_pages">edit source</a>]
When paging is turned on (define the variables above to turn it on), you will first execute the query with "select count(*) ...." to get the total count of hits in the DB - this value is assigned to the variable vSeekerResultCount
.
You should set a desired page length - or expose this to your end users in the variable vSeekerPageLength
.
The total number of pages available after the search is then vSeekerPageCount:=vSeekerResultCount/vSeekerPageLength
If there are X pages available, you control what page is actually fetched from the DB by setting a value in vSeekerPage between 1 and X prior to the search.
UI is now generated in both WPF and Angular.
a.k.a Seekmore, seek more