• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Восстановление связи

  • Автор темы OlgaI
  • Дата начала
Статус
Закрыто для дальнейших ответов.
O

OlgaI

Существовали два связанных между собой документа (исх. ответ со вх. запросом). Один из документов (исх. ответ) был скопирован на локальную БД, соответственно связь у него потерялась (не то чтоб потерялась, просто ссылка идет уже на совершенно другой вх. документ, находящийся также на локальной БД). Теперь я попыталась вернуть этот документ обратно в основную БД, также путем копирования, но связь с нужным вх. документом не восстановилась.
Возможно, ли восстановить утерянную связь?
Заранее спасибо.
 
A

Akupaka

что есть "связь"? стандартная лотусевая через $REF?
в любом случае, скорее всего кодить придется
 
O

OlgaI

да именно $REF.
А как это сделать, подскажите.
 
R

RAJ

Агент на выделенных дочерних документах.
При запуске выбираем вьюху, а в ней главный док и нажимаем ОК

Код:
Sub Initialize
Dim NS As New NotesSession
Dim NDC As NotesDocumentCollection
Dim NDC_Parent As NotesDocumentCollection
Dim NUIWS As New NotesUIWorkspace
Dim ND_Parent As NotesDocument
Dim ND As NotesDocument
Dim Views As Variant
Dim NamesV() As String
Dim View As NotesView

Set Db=Ns.CurrentDatabase
Set NDC = Db.UnprocessedDocuments
If NDC Is Nothing Then
Print "Необходимо выделить документы!!!"
Exit Sub
Else
If NDC.Count = 0 Then
Print "Необходимо выделить документы!!!"
Exit Sub
End If
End If

'Выбор вьюхи из которой удобно выбирать документ, который будет родительским
Views = Db.Views
Redim NamesV(0)
For i% = 0 To Ubound(Views)
Set View = Views(i%)
If i% = 0 Then
Redim NamesV(0)
NamesV(0) = View.Name
Else
Redim Preserve NamesV(Ubound(NamesV)+1)
NamesV(Ubound(NamesV)) = View.Name
End If
Next

ResultNames = Evaluate({@Sort("} + Implode(NamesV, {":"}) + {"; [ASCENDING])})
NameV$ = NUIWS.Prompt(PROMPT_OKCANCELLIST, "Выбор вида...", "Выберите вид из которого будет выбираться родительский документ:", "", ResultNames)
If NameV$="" Then Exit Sub

'Выбор родительского документа
Set NDC_Parent = NUIWS.PickListCollection(3, False, Db.Server, Db.FilePath, NameV$, "Выбор родительского документа...", "Выберите один документ")
Set ND_Parent = NDC_Parent.GetFirstDocument
For i% = 1 To NDC.Count
Set ND = NDC.GetNthDocument(i%)
Call ND.MakeResponse(ND_Parent)
Call ND.Save( True, True )
Next

End Sub
 
O

OlgaI

при сохранении агента ругается
 

Вложения

  • _____________________.doc
    24 КБ · Просмотры: 158
H

hosm

Implode (Join) появился вроде в 6-ке только, для 5-ки надо написать свою функцию, сливающую массив в строку.
Если лень, то можно, в принципе, обойтись без сортировки и выводить несортированный список представлений :lol:
Кстати, внимательней с Evaluate, если в имени представления есть \
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

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