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

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

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

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

поменять Replicaid в ссылке на документ

  • Автор темы newlord
  • Дата начала
N

newlord

Есть база DB1, в ней есть линки на документы в базе DB2.
У базы DB2 поменлась ReplicaID.
Можно как нибудь поменять ID и в линках первой базы?
Вообще линки редактируются?
 
N

newlord

Да, я уже смотрю его ;)
тока еще не очень разобрался
 
A

Akupaka

задавай вопросы, разберемся вместе ;)

element = notesRichTextNavigator.GetFirstElement( type% )
notesRichTextNavigator.FindFirstElement( type% )

type%
Constant. The type of element:
RTELEM_TYPE_DOCLINK (5)
...

element = notesRichTextNavigator.GetElement
 
N

newlord

В общем я в хелпе все нашел;)
вот что получилось

Dim session As NotesSession
Dim db As NotesDatabase
Dim dc As NotesDocumentCollection
Dim doc As NotesDocument
Dim rti As NotesRichTextItem
Dim rtnav As NotesRichTextNavigator
Dim rtlink As NotesRichTextDocLink

Set session = New NotesSession
Set db = session.CurrentDatabase
Set dc = db.UnprocessedDocuments
Set doc = dc.GetFirstDocument
Set rti = doc.GetFirstItem("ZZ")
Set rtnav = rti.CreateNavigator


If Not rtnav.FindFirstElement(RTELEM_TYPE_DOCLINK) Then
Messagebox "No doclinks in Body item",, "No doclinks"
Exit Sub
End If
Set rtlink = rtnav.GetElement

If rtlink.DBReplicaID = "C32572F0002DEAAF" Then
rtlink.DBReplicaID = "C32575AF00351EAB"
End If

Call doc.Save(True,True)
 
A

Akupaka

В общем я в хелпе все нашел
молодец!

единственное, что...
а одна ли только ссылка в том поле может быть? в твоем коде только первая проверяется.
Messagebox "No doclinks in Body item",, "No doclinks" - не самый красивый месадж, но, если только для себя...
rtlink.DBReplicaID = "C32572F0002DEAAF" - подобные значения иногда лучше не константами делать, вдруг пригодится в аналогичном случае, но с другими данными...
 
N

newlord

В поле только одна ссылка
мессадж остался из хелпа;)
про константы понятно, просто очень срочно надо было делать, некогда облагораживать:(

единственное не пойму...
я сделал на агент по выбранным документам, а он не отрабатывает по всем, только один первый
 
A

Akupaka

я сделал на агент по выбранным документам, а он не отрабатывает по всем, только один первый
ну, если вышеуказанный код - весь код, то не удивительно ;)

Код:
Set dc = db.UnprocessedDocuments
Set doc = dc.GetFirstDocument
while not(doc is nothing)
...
обработка документа
...
set doc = dc.getNextDocument(doc)
wend


Код:
Dim session As NotesSession
Dim db As NotesDatabase
Dim dc As NotesDocumentCollection
Dim doc As NotesDocument
Dim rti As NotesRichTextItem
Dim rtnav As NotesRichTextNavigator
Dim rtlink As NotesRichTextDocLink

Set session = New NotesSession
Set db = session.CurrentDatabase
Set dc = db.UnprocessedDocuments
Set doc = dc.GetFirstDocument


while not(doc is nothing)
Set rti = doc.GetFirstItem("ZZ")
Set rtnav = rti.CreateNavigator
If rtnav.FindFirstElement(RTELEM_TYPE_DOCLINK) Then
Set rtlink = rtnav.GetElement
If rtlink.DBReplicaID = "C32572F0002DEAAF" Then
rtlink.DBReplicaID = "C32575AF00351EAB"
Call doc.Save(True, True)
End If
End If
Set rti = nothing
Set rtnav = nothing
set doc = dc.getNextDocument(doc)
wend

msgbox "Усьо"

где-то так
 
N

newlord

Огромное спасибо. Самое то;)

сорри за тупость:(
 
Мы в соцсетях:

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