NotesViewNavigator (JavaScript™)
Represents a view navigator. A view navigator provides access to all or a subset of the entries in a view.
Creation
You create a view navigator through the following NotesView methods:- createViewNav
- createViewNavFrom
- createViewNavFromAllUnread
- createViewNavFromCategory
- createViewNavFromChildren
- createViewNavFromDescendants
- createViewNavMaxLevel
Usage
The NotesViewNavigator methods let you:- Access categories and totals as well as documents.
- Access information specific to the view such as the number of siblings of a view entry.
- Subset the view.
The NotesViewNavigator methods maintain a current pointer, which is the most recent entry you get or go to.
A goto
method is favored over a get
method
for navigation-only purposes because a goto
method
does not create a NotesViewEntry object.
In a categorized view, documents are children of categories.
If a view has totals, the grand total is considered a category entry, and getLast returns that entry. Subtotals are available in the columnValues of category entries.
A view navigator remains associated with the parent view. A refresh of the parent view affects the view navigator. However, if a view navigator is empty upon creation, it remains empty and refreshing the parent view has no effect.
For remote (IIOP) operations, NotesViewNavigator caches entries. Methods that navigate using the current pointer take advantage of the cache while methods that navigate relative to a specified entry do not take advantage of the cache. Refreshing the parent view causes a cache update. The cache is turned off if IsAutoUpdate is true for the parent view; caching is resumed if IsAutoUpdate is set to false. You can set the cache size and should set it to try to minimize server access.
Automatic updates: avoid
Avoid automatically updating the view by explicitly setting IsAutoUpdate to false especially if the view is a base for navigators or entry collections. Automatic updates degrade performance and may invalidate entries in child objects ("Entry not found in index"). You can update the view as needed with refresh.