Я пытаюсь сгенерировать ссылки на документы из другой формы, используя созданную мной кнопку (ниже). После нажатия кнопки агент должен запуститься, и должны быть сгенерированы ссылки на документы, а текущая форма все еще должна находиться в режиме редактирования (веб).
Вот вопросы:
1. Я не могу сгенерировать ссылки на документы из другой формы через представление. Ключом является PeopleID, в текущем документе есть вычисляемое поле, которое должно соответствовать другой форме.
2. Когда я нажимаю на кнопку, он перенаправляет меня на страницу агента и говорит, что агент завершил работу (не дословно). Он все еще должен быть в текущем документе (на текущей странице, только для ссылки на документ).
Ниже приведен код, который я использую в форме (в сквозном режиме) для кнопки и функции JS для запуска агента.
<input type="button" value="Generate Link" onclick="javascript:runAgent();">
<script language="JavaScript">
function runAgent() {
var path = document.forms[0].BaseLink.value; // BaseLink is the prefix url.
var completeUrl = path + '(GenerateDoc)?OpenAgent&UNID=' + document.forms[0].UniqueID.value;
self.location.href = completeUrl;
}
</script>
После этого у меня есть расширенное текстовое поле с именем «DocumentLink», вычисленное.
Код агента здесь:
Dim session As New NotesSession
Dim db as NotesDatabase
Dim curDoc as NotesDocument
Dim difDoc as NotesDocument
Dim view as NotesView
Dim rtitem as NotesRichTextItem
Dim peopleID as String
Set db = session.currentDatabase
thisDocumentID = Right$(session.DocumentContext.query_string(0),32)
Set curDoc = db.GetDocumentByUNID(thisDocumentID) //For some reason I am not getting anything here.
Set view = db.GetView("MyView")
peopleID = curDoc.PeopleID(0)
Set difDoc = view.GetDOcumentByKey(peopleID,true)
If Not difDoc Is Nothing Then
Set rtitem = curDOc.GetFirstItem("DocumentLink")
rtitem.values = ""
Call rtitem.AppendDocLink(difDoc,"Link to other form")
Call curDoc.Save(True,False)
End If
Ценю вашу помощь.