Iterators.foreach
Mit der Iterators.foreach Funktion, können documents Iterators-Klassen durch iteriert werden.
Iterators.foreach(iterable, callback: (item, index) => void, count?: number);
Folgende Iteratoren werden unterstützt:
- AccessProfileIterator
- ArchiveConnectionBlobIterator
- ArchiveFileResultset
- ArchiveServerIterator
- ControlFlowIterator
- CustomPropertyIterator
- DocumentIterator
- FileResultset
- FolderIterator
- HitResultset
- RegisterIterator
- SystemUserIterator
- WorkflowStepIterator
tipp
Alle Funktionen sind hier beschrieben.
Beispiel FileResultset
context.enableModules();
const { Iterators } = require("ou.sp.Iterators");
const files = new FileResultset(fileType, filter, sortOrder);
Iterators.foreach(files, (file, index) => {
const id = file.getid();
util.out("Iterating file " + id + " at index " + index);
})
Beispiel SystemUserIterator
context.enableModules();
const { Iterators } = require("ou.sp.Iterators");
const users = context.getSystemUsers();
// Iterate through 10 users
Iterators.foreach(users, (user, index) => {
util.out("Iterating user " + user.login + " at index " + index);
}, 10);
Beispiel FolderIterator
context.enableModules();
const { Iterators } = require("ou.sp.Iterators");
const folders = context.getFoldersByName("Inv*");;
Iterators.foreach(folders, (folder, index) => {
util.out("Iterating folder " + folder.name + " at index " + index);
})
Iterationen beschränken
Über den dritten Parameter count kann, die Iteration beschränkt werden. Wird 10 angegeben, wird der Callback maximal 10x aufgerufen.
Iterators.foreach(iterable, callback: (item, index) => void, count?: number);
Beispiel:
context.enableModules();
const { Iterators } = require("ou.sp.Iterators");
const users = context.getSystemUsers();
Iterators.foreach(users, (user, index) => {
util.log(user.login + " at " + index);
}, 10);