• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Простой вопрос

  • Автор темы Автор темы bodybuilder
  • Дата начала Дата начала
B

bodybuilder

Нужно сделать простую тестовую программку, которая бы добавляла новый пункт в меню Actions в форме нового контакта.
При выборе этого пункта меню должен открываться Windows Modal Dialog, в котором было бы 4 поля First, Last, Company, Job Title
и в них содержались бы данные из аналогичных полей открытого контакта. Ну и парочка кнопок - save и cancel.
Как добавить пункт в меню я разобрался, а вот как считать данные из полей открытого контакта не могу понять.
Покажите, плиз, как это делается или хотя бы намекните, в какую сторону копать.
 
на кнопку save повесте @Command( [RefreshParentNote] ), если конечно поля в диалоге называюся так же как и в основном документе...
 
Честно говоря не понял. Кнопка сейв вообще ничего делать не должна. Мне непонятно как прочитать данные из полей открытого контакта.
 
Честно говоря не понял. Кнопка сейв вообще ничего делать не должна. Мне непонятно как прочитать данные из полей открытого контакта.

А, то есть у Вас проблема передать данные в диалог а не получить их оттуда?
Если да, то создаете форму, на неё лепите поля с такими же именами как и в контакте, потом из контакта выхываете диалог (@DialogBox) по этой форме.
Значения в диалоге появятся автоматически. По нажатию на "ок" в диалоге, в поля контакта попадут обновленные в диалоге данные.

Или я опять не понял суть проблемы? Задавайте вопрос неиного понятней.. :wacko:
 
Что-то вроде
Код:
Dim ws As New NotesUIWorkspace
Dim uiDoc As NotesUiDocument
Dim Doc As NotesDocument
Set uiDoc = ws.CurrentDocument
Set Doc = uiDoc.Document

If ws.DialogBox("(FORM)",True, True, False, False, False, False, "TITLE", Doc, True) = True Then
Call Doc.Save(True, False)
End If
 
Наверно я как-то криво объясняю или вообще не в состоянии уже ничего понять. Честно говоря я не вникал в архитектуру Lotus Notes, поэтому просто напишу что мне написали:
Задача:
1. Создать в Lotus Notes новый контакт.
2. Заполнить поля:
First, Last, Сompany, Job Title
3. В форме контакта добавить пункт меню в меню Actions:
Actions -> Additional Fields.
4. При выборе данного окна открывается Windows Modal Dialog, в котором:
Присутствует список полей из формы контакта, который открыт:
First – значение
Last – значение
Company – значение
Job Title – значение
Owner – любое текстовое значние
Account – любое текстовое значение
Кнопки:
Save & Close – пока ничего не делает, кроме закрытия окна
Cancel – закрывает окно.
Пример добавления пункта меню в Actions я нашел, разобрался в нем, а дальше не получается.
 
Я немного тогда поясню, что в коде написал Omh ...

Когда вы вызываете DialogBox, и передаете в него параметр Doc, то если в FORM есть поля с такими же именами, как и в Doc, то в диалоге отображатся те значения из полей, которые уже занесены в Doc.... вот :wacko:
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab