ShowTable of Contents
ChildCount
This button gets the first-column value and child count for the top-level entries in a view excluding the total.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null && !entry.isTotal()) {
requestScope.status += "\n" +
entry.getPosition(".") + " " +
entry.getColumnValues().firstElement().toString() + " has" +
entry.getChildCount().toFixed() + " immediate entries";
var tmpentry:NotesViewEntry = nav.getNextSibling(entry);
entry.recycle();
entry = tmpentry;
}
ColumnIndentLevel
This button gets values for the entries in a view and indents them according to their indent level. For level 0, the first column value is used. For other levels, the second column value is used. Entries for response documents are omitted.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null) {
if (entry.getColumnIndentLevel() == 0) {
var tabs:string = "";
for (var i:int = 0; i < entry.getIndentLevel(); i++) {
tabs = tabs + "\t";
}
var element:string = entry.getIndentLevel() == 0 ?
entry.getColumnValues().firstElement().toString() :
entry.getColumnValues().elementAt(1);
requestScope.status += "\n" + tabs + element;
}
var tmpentry:NotesViewEntry = nav.getNext(entry);
entry.recycle();
entry = tmpentry;
}
ColumnValues
This button gets the first-column value and child count for the top-level entries in a view excluding the total.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null && !entry.isTotal()) {
requestScope.status += "\n" +
entry.getPosition(".") + " " +
entry.getColumnValues().firstElement().toString() + " has" +
entry.getChildCount().toFixed() + " immediate entries";
var tmpentry:NotesViewEntry = nav.getNextSibling(entry);
entry.recycle();
entry = tmpentry;
}
DescendantCount
This button gets the first-column value and descendant count for the top-level entries in a view excluding the total.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null && !entry.isTotal()) {
requestScope.status += "\n" +
entry.getPosition(".") + " " +
entry.getColumnValues().firstElement().toString() + " has" +
entry.getDescendantCount().toFixed() + " total entries";
var tmpentry:NotesViewEntry = nav.getNextSibling(entry);
entry.recycle();
entry = tmpentry;
}
Document
This button gets the last accessed time for a view entry.
var bycat:NotesView = database.getView("main");
if (requestScope.query.isEmpty()) return;
var entry:NotesViewEntry = bycat.getEntryByKey(requestScope.query);
if (entry == null || entry.getDocument() == null) {
requestScope.status = "Invalid entry";
return;
}
requestScope.status = entry.getColumnValues().firstElement() + " last accessed on " +
entry.getDocument().getLastAccessed().getLocalTime();
FTSearchScore
This computed field returns information on entries found from a full-text search, including their search scores.
database.updateFTIndex(true);
var v:NotesView = database.getView("By category");
var vec:NotesViewEntryCollection = v.getAllEntries();
vec.FTSearch(requestScope.query);
var entry:NotesViewEntry = vec.getFirstEntry();
while (entry != null) {
requestScope.status += "\n" +
entry.getColumnValues().elementAt(1).toString() + " (" +
entry.getFTSearchScore().toFixed() + ")";
var tmpentry:NotesViewEntry = vec.getNextEntry(entry);
entry.recycle();
entry = tmpentry;
}
IndentLevel
This button gets values for the entries in a view and indents them according to their indent level. For level 0, the first column value is used. For other levels, the second column value is used.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null) {
var tabs:string = "";
for (var i:int = 0; i < entry.getIndentLevel(); i++) {
tabs = tabs + "\t";
}
var element:string = entry.getIndentLevel() == 0 ?
entry.getColumnValues().firstElement().toString() :
entry.getColumnValues().elementAt(1);
requestScope.status += "\n" + tabs + element;
var tmpentry:NotesViewEntry = nav.getNext(entry);
entry.recycle();
entry = tmpentry;
}
IsCategory
This button gets the entries from a categorized view, displaying the first column if the entry is a category and a document item if the entry is a document.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null) {
if (entry.isCategory()) {
requestScope.status += "\n" +
entry.getColumnValues().firstElement().toString();
} else if (entry.isDocument()) {
requestScope.status += "\n\t" +
entry.getDocument().getItemValueString("subject");
}
var tmpentry:NotesViewEntry = nav.getNext(entry);
entry.recycle();
entry = tmpentry;
}
IsConflict
This button gets the entries from a categorized view, displaying the first column if the entry is a category and a document item if the entry is a document, and marking conflict documents.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null) {
if (entry.isCategory()) {
requestScope.status += "\n" +
entry.getColumnValues().firstElement().toString();
} else if (entry.isDocument()) {
requestScope.status += "\n\t" +
entry.getDocument().getItemValueString("subject");
if (entry.isConflict()) {
requestScope.status += " [conflict document]"
}
}
var tmpentry:NotesViewEntry = nav.getNext(entry);
entry.recycle();
entry = tmpentry;
}
IsDocument
This button gets the entries from a categorized view, displaying the first column if the entry is a category and a document item if the entry is a document.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null) {
if (entry.isCategory()) {
requestScope.status += "\n" +
entry.getColumnValues().firstElement().toString();
} else if (entry.isDocument()) {
requestScope.status += "\n\t" +
entry.getDocument().getItemValueString("subject");
}
var tmpentry:NotesViewEntry = nav.getNext(entry);
entry.recycle();
entry = tmpentry;
}
IsTotal
This button gets the first-column value and child count for the top-level entries in a view excluding the total.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null && !entry.isTotal()) {
requestScope.status += "\n" +
entry.getPosition(".") + " " +
entry.getColumnValues().firstElement().toString() + " has" +
entry.getChildCount().toFixed() + " immediate entries";
var tmpentry:NotesViewEntry = nav.getNextSibling(entry);
entry.recycle();
entry = tmpentry;
}
IsValid
This button gets the entries from a categorized view, displaying the first column if the entry is a category and a document item if the entry is a document, and marking non-valid documents.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null) {
if (entry.isCategory()) {
requestScope.status += "\n" +
entry.getColumnValues().firstElement().toString();
} else if (entry.isDocument()) {
requestScope.status += "\n\t" +
entry.getDocument().getItemValueString("subject");
if (!entry.isValid()) {
requestScope.status += " [is not valid]";
}
}
var tmpentry:NotesViewEntry = nav.getNext(entry);
entry.recycle();
entry = tmpentry;
}
NoteID
This button writes the document note ID for a view entry to a global variable.
var bycat:NotesView = database.getView("main");
if (requestScope.query.isEmpty()) return;
var entry:NotesViewEntry = bycat.getEntryByKey(requestScope.query);
if (entry == null || entry.getDocument() == null) {
requestScope.noteid = null;
return;
}
requestScope.noteid = entry.getNoteID();
This computed field uses the note ID to display the value of an item in the document.
if (requestScope.noteid == null) {
return null;
}
var doc:NotesDocument = database.getDocumentByID(requestScope.noteid);
return doc.getItemValueString("subject");
Parent
This button assigns a view entry to a global variable.
var bycat:NotesView = database.getView("main");
if (requestScope.query.isEmpty()) return;
var entry:NotesViewEntry = bycat.getEntryByKey(requestScope.query);
if (entry == null || entry.getDocument() == null) {
requestScope.unid = null;
return;
}
requestScope.entry = entry;
This computed field uses the global variable to get the name of the parent view.
var entry = requestScope.entry;
if (entry == null) {
return null;
} else {
return entry.getParent().getName();
}
SiblingCount
This computed field returns the number of categories for a view by getting the first entry and counting the siblings.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
return "Number of categories: " + entry.getSiblingCount();
UniversalID
This button writes the document universal ID for a view entry to a global variable.
var bycat:NotesView = database.getView("main");
if (requestScope.query.isEmpty()) return;
var entry:NotesViewEntry = bycat.getEntryByKey(requestScope.query);
if (entry == null || entry.getDocument() == null) {
requestScope.unid = null;
return;
}
requestScope.unid = entry.getUniversalID();
This computed field uses the universal ID to display the value of an item in the document.
if (requestScope.unid == null) {
return null;
}
var doc:NotesDocument = database.getDocumentByID(requestScope.unid);
return doc.getItemValueString("subject");
getPosition
This button gets the position, first-column value, and child count for the top-level entries in a view excluding the total.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null && !entry.isTotal()) {
requestScope.status += "\n" +
entry.getPosition(".") + " " +
entry.getColumnValues().firstElement().toString() + " has" +
entry.getChildCount().toFixed() + " immediate entries";
var tmpentry:NotesViewEntry = nav.getNextSibling(entry);
entry.recycle();
entry = tmpentry;
}
getRead
This button indicates whether each document in a view is read.
var nav:NotesViewNavigator = database.getView("By category").createViewNav();
var entry:NotesViewEntry = nav.getFirst();
while (entry != null) {
if (entry.isCategory()) {
requestScope.status += "\n" +
entry.getColumnValues().firstElement().toString();
} else if (entry.isDocument()) {
requestScope.status += "\n\t" +
entry.getDocument().getItemValueString("subject");
if (entry.getRead()) {
requestScope.status += " [has been read]";
} else {
requestScope.status += " [has not been read]";
}
}
var tmpentry:NotesViewEntry = nav.getNext(entry);
entry.recycle();
entry = tmpentry;
}