У меня есть 100 документов с многозначным полем. Поле имеет 5 возможных значений (Альберт, Бен, Крис, Дон, Эд), скажем так. Поле должно содержать значение 1, но может содержать до 5.Xpages: получить количество значений в многозначном поле в поле зрения
Мне нужно вычислить количество документации, содержащую каждое значение, так
Albert 56
Ben 22
Chris 79
т.д.
Это казалось легко. Я построил представление, которое содержит документы, первый столбец - это поле, и я выбрал отображение нескольких документов для нескольких каналов.
В SSJS цикл через мой главный список значений в поле, а для каждого из них - getDocumentByKey.
myArray = applicationScope.application;
var dc:NotesDocumentCollection;
for (index = 0; index < myArray.length; ++index) {
dc = view1.getAllDocumentsByKey(myArray[index]);
Print(dc.getCount())
}
Это первое правильное значение, но после него ничего не происходит. Если я просто жестко кодирую определенное значение, он работает. Но когда я вызываю getAllDocumentsByKey второй раз, он не возвращает правильное значение.
Я думаю, что это нормально работает в LS, но в SSJS я должен очистить или переработать или что-нибудь о чем-то отдохнуть, но я не знаю, что.
Возможно, попробуйте либо dc = null, либо dc.recycle() в конце цикла for –
Кроме того, что-то не выглядит правильно относительно первой строки. Вам не хватает var, и вы не даете ему тип. Вы уверены, что на самом деле получаете массив? Перед циклом добавьте печать (myArray.length) и убедитесь, что у вас есть правильная длина. Я подозреваю, что у вас будет «1», что объясняет, почему вы видите только первое значение. –
Выполнение ответа из моих комментариев –