• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Обрезание массивов, полученных из Item'а

VladSh

начинающий
Lotus Team
11.12.2009
1 786
157
BIT
78
В LND 5-6 при Redim Preserve массиву, получаемому из item'а документа по GetItemValue, вылетала ошибка, что-то типа "не надо это делать для статических массивов", и все писали циклы получения массива до нужного элемента...

Сейчас, ради интереса, попробовал такой код:
Код:
Dim ns As New NotesSession
Dim ndb As NotesDatabase
Dim nd As NotesDocument
Set nd = ns.CurrentDatabase.CreateDocument
 
Const IN_TMP = "tmp"
vSource = Split("Value1#Value2#Value3", "#")
Call nd.ReplaceItemValue(IN_TMP, vSource)
 
Dim vValues As Variant			'Без этого строка Redim Preserve не скомпилится
vValues = nd.GetItemValue(IN_TMP)
Redim Preserve vValues(1)		'Та самая строчка!
Работает!

P.S. Для меня, честно, это было откровением! Может это баян... )) тогда, плз, удалите тему.
 
A

Akupaka

Влад, вообще-то нельзя выполнять операцию над NotesItem.Values, на сколько мне помнится. А когда засовываешь в другую переменную - то делай, что хошь
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!