Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе
help сказал(а):If multiple items in a document have the same name, programmatic access is limited to the first item. The remaining items yield invalid data. A work-around is to get the first item, process it, remove it, again get the first item (which was the second item), and so on until you process all the items with the same name. If you do not save the document, the items are not actually removed. However, the recommendation is that you avoid creating multiple items with the same name.
шальная мысль: а вот если найти эту древнюю четверку где-нить, написать агента, скомпилировать и скопипастить в R7 например...а метод для доступа к дублям (doc.GetNextItem. В 4.11 ещё был) - ликвидировали
STATUS LNPUBLIC NSFItemInfoNext(
NOTEHANDLE note_handle,
BLOCKID NextItem,
const char far *item_name,
WORD name_len,
BLOCKID far *item_blockid_ptr,
WORD far *value_type_ptr,
BLOCKID far *value_blockid_ptr,
DWORD far *value_len_ptr);
Идея интересная, а LS разве линкуется в исполняемый код, разве он не исполняется виртуальной машиной, как Java?а вот если найти эту древнюю четверку где-нить, написать агента, скомпилировать и скопипастить в R7 например
Зачем там сохранение и "взять док опять", еще и гоу-ту-лейбл?!!! Турумбая на тебя не хватает! )))мысь об удалении
while doc.HasItem(ItemName)
call doc.RemoveItem(ItemName)
wend
- Слушай, я был неправ, как мне загладить свою вину? С меня пару банок пива, ок?
- Один! ящик! водки!
- Какой ты, цуко, ранимый!!!!
HELP сказал(а):Call notesDocument.RemoveItem( itemName$ )
Parameters
itemName$
String. The name of the item to delete from the document. If more than one item has the specified name, all items with this name are deleted. If there is no item with the specified name, the method does nothin
While doc.HasItem(itemName)
Set item = doc.GetFirstItem(itemName)
Call item.Remove()
Wend
хм... надо проверить, я хэлпу на 100% не доверяю (могу просто не правильно понять)И вообще!
И вообще!
Set item = doc.getFirstItem( ITEM_NAME )
while not item is nothing
' сюда код по сохранению значений поля, если надо....
Call item.remove()
Set item = doc.getFirstItem( ITEM_NAME )
wend
Работает как написано.хм... надо проверить, я хэлпу на 100% не доверяю
А у меня ещё на одну строчку меньше !А у меня на одну строчку меньше!
Do While doc.HasItem(itemName)
Call doc.GetFirstItem(itemName).remove()
Loop
Sub Initialize
Print "--------------"
Dim s As New NotesSession
Dim db As NotesDatabase
Set db = s.CurrentDatabase
Dim doc As New NotesDocument(db)
Dim item As NotesItem
Const itemName = "i1"
Call doc.AppendItemValue(itemName, "1")
Call doc.AppendItemValue(itemName, "2")
Call doc.AppendItemValue(itemName, "3")
Do While doc.HasItem(itemName)
Print {item.Text = } + doc.GetFirstItem(itemName).Text 'если здесь закомментировать от плюса, цикл выполнится один раз
Call doc.GetFirstItem(itemName).remove()
Loop
End Sub
Обучение наступательной кибербезопасности в игровой форме. Начать игру!