Форум продуктов IBM Lotus

Общие вопросы => Разработка приложений => Тема начата: Sergey_st85 от 18 Август 2009, 17:14:40

Название: Функция для сортировки документов в коллекции.
Отправлено: Sergey_st85 от 18 Август 2009, 17:14:40
Объект - Notesdocumentcollection.

Как бы вы не пихали в него док-ты - они сортируются по непонятному признаку (возможно, по юниду), или вообще вразнобой. Как рассортировать такую коллекцию по определенному полю?

Название: Re: Функция для сортировки документов в коллекции.
Отправлено: ViV от 18 Август 2009, 17:34:59
А если использовать NotesViewEntryCollection? тогда будет порядок представления документов в виде.
Название: Re: Функция для сортировки документов в коллекции.
Отправлено: Sergey_st85 от 18 Август 2009, 17:43:34
Мне не все док-ты нужны, а только выделенные пользвоателем. Я не знаю, как через ентри-коллекшн это сделать.
Название: Re: Функция для сортировки документов в коллекции.
Отправлено: Sergey_st85 от 18 Август 2009, 17:44:32
Есть такая шняга, но у меня несоответствие типов для
'   Set sortDocs = New SortCollection(doccol, "surname", True   )

http://www.notesnet.ru/nn/notesnet.nsf/note/0D195AE50D36BA64C3256E41003EC3FD
Название: Re: Функция для сортировки документов в коллекции.
Отправлено: nadya от 19 Август 2009, 08:47:21
посмотри сюда, возможно поможет
http://www.notesnet.ru/nn/notesnet.nsf/note/0D195AE50D36BA64C3256E41003EC3FD
только сообщи потом о результатах))
Название: Re: Функция для сортировки документов в коллекции.
Отправлено: Sergey_st85 от 19 Август 2009, 10:14:54
Работает, как часы.

Входные параметры - коллекция док-тов, поле, ключ "является ли поле формулой". Что за формула - не разобрался, поэтому false.

Помещаем класс в Declaration.

В Option автоматически пропишется: Option Base 0.

В коде я записал так:

Dim key(0) As String
   key(0)="surname"
   Dim sortDocs As Variant
   Set sortDocs = New SortCollection( cur_doccol, key , False   )
   Set cur_doccol = sortDocs.Result