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

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

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

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

Обновление/загрузка Документа В Соседний Фрейм

  • Автор темы cLif
  • Дата начала
C

cLif

Ситуация следующая:
Есть фреймсет с 2 фреймами. В 1ый загружается основной документ, в соседний загружается форма, содержащая EmbView и респонзы основного документа.

Пробую записать в переменную окружения UNID основного документа, но вот беда: форма с респонзами открывается раньше и ее содержимое не корректное (в связи с тем, что UNID основного загружается позже).
Не могу понять как обойти проблему именно в текущей реализации (с 2мя фреймами).

В целом, общая задача, наверно, стоит так:
Есть основной документ, в котором содержится информация о дополнительных/взаимосвязанных документах (unid, filepath и пр), категориях и пр. Нужно во фреймсете открыть эти самые дополнительные документы при открытии основного документа. Как? =)
 
N

nvyush

Попробуйте сделать второй фрэйм пустым, в PostOpen формы основного документа добавить:
Код:
Call UIWorkspace.SetTargetFrame("frame2")
Call UIWorkspace.ComposeDocument("", "", "form2")

Добавлено
А разместить внедрённое представление в форме самого документа не проще ли было бы?
 
H

hosm

cLif
можно попробовать где-то уже в постопене документа 1го фрейма записывать унид и рефрешить 2й фрейм путем повторного открытия формы (т.е. через SetTargetFrame + [Compose]). такое сама не пробовала

Добавлено: nvy уже всё сказал :)
 
C

cLif

А разместить внедрённое представление в форме самого документа не проще ли было бы?
Проще, но интересует именно такая постановка вопроса, поскольку в общем случае, это может быть не форма с EmbView, а просто другой документ (не новый)

К сожалению при WS.ComposeDocument разваливается фреймсет (даже, если у открываемой формы проставить фреймсет для открытия)
При WS.EditDocument вообще вываливается ошибка Expression out of range...причем если дебажить - нет ошибки...но при закрытии валится Лотус.

Добавлено:
Ещё не всё smile.gif. Вслед за Imike рекомендую для взаимодействия использовать очереди сообщений
Уф...тем не менее, спс за линк=) буду осиливать)

Обновление внедренного представления
Тут, к сожалению, проблема не в обновлении внедренного представления...а в том, что значение "не попадает" в форму при открытии...
 

VladSh

начинающий
Lotus Team
11.12.2009
1 786
157
BIT
79
А если использовать классы NotesProperty, NotesPropertyBroker?
Помню, что идея работает, но надо париться с Composite application..
И это более "честное решение", чем "очереди сообщений".
 
N

nvyush

К сожалению при WS.ComposeDocument разваливается фреймсет (даже, если у открываемой формы проставить фреймсет для открытия)
При WS.EditDocument вообще вываливается ошибка Expression out of range...причем если дебажить - нет ошибки...но при закрытии валится Лотус.
Тогда м.б. настраивать unid в представлении из которого открывается главный документ (в кнопке или QueryOpenDocument).
 
C

cLif

Благодарю за помощь!
Решение найдено из наиболее простых, но не самых красивых - первый раз пишем в окружение нужные значения, затем переоткрываем документ.

nvy, VladSh, спасибо за новую информацию о потоках сообщений и классах NotesProperty, NotesPropertyBroker - будет что изучить.
 
Мы в соцсетях:

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