2016-09-12 2 views
0

Мне нужна помощь в Lotus Domino Web. В представлении «Фамилия» можно щелкнуть. Когда я нажимаю на один документ (Last Name = например, Doe), документ откроется, и появится кнопка «Добавить гостя».Lotus Domino web: как скопировать некоторые значения полей в текущий документ, сохранить его в новый документ и перенаправить браузер, чтобы открыть новый документ.

После нажатия кнопки «Добавить гостя» необходимо скопировать некоторые значения полей в текущем документе (дата создания, время создания, состояние), скопированный документ должен быть сохранен, а скопированный документ ДОЛЖЕН открыть с помощью ПЕЧАТИ (? EditDocument) поэтому я могу добавить дополнительные детали в документ.

Обратите внимание, что это Web, а не Клиент.

Screen shot of view with last name, and current document with Add Guest button.

Любая помощь будет очень ценна.

+0

Что вы пробовали? Во время события WebQuerySave для первого документа вы можете получить значения из session.DocumentContext, создать новый документ в конце, сохранить его и затем перенаправить на него. – Duston

+0

Что сказал Duston +, что, собственно, проблема? –

+0

Кроме того, вы действительно хотите совершить кругосветное путешествие на сервер? Вам действительно нужно использовать «печать»? Мне кажется, что такого рода вещи лучше позаботиться о клиентском JavaScript. –

ответ

0

Я предполагаю, что вы написали агента WebQuerySave с использованием LotusScript, DocumentContext - это переменная «context», а скопированный документ - это переменная «newdoc».

После сохранения нового документа ...

print "[http://" + context.Server_Name(0) + "/" + newdoc.ParentDatabase.Filepath + "/0/" + newdoc.UniversalID + "?EditDocument]" 

Это должно быть только оператор печати, который выполняется в агенте.

+0

Привет, Ричард, спасибо, что ответили. Я не использую агент веб-запроса. Я использую агент, вызываемый кнопкой. Теперь после обработки агента и сохранения нового документа у меня возникла проблема с открытием созданного документа в режиме редактирования. Ниже код - это фрагмент из кнопки Javascript. add.new click содержит агент для сохранения. 'myForm.addnew.click();' ' window.open (myForm.AddGuestURL.value)' С помощью этого кода я получаю: HTTP Web Server: Exception Коррумпированные данных – Ragome

+0

Вы, вероятно, получили сроки проблема. Сценарий не ждет после вызова click(). Он вызывает window.open(), но действие на сервере еще не завершено, поэтому у вас поврежденные данные. Правильный способ сделать это с помощью submit, который запускает агент WebQuerySave. Агент не вернется, пока копия не будет завершена, поэтому у вас не будет этой проблемы. Вы все равно можете открыть его, чтобы открыть новое окно, но трюк заключается в том, что агент WQS печатает перенаправление на тот же документ, а не на копию. Агент устанавливает значение скрытого поля для newdoc.UniversalID, и событие onload обнаруживает это и открывает новое окно. –