• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Открыть документ по другой форме...

Murtas

Green Team
11.04.2006
137
1
BIT
4
Собственно сабж.

Может кто-нибудь знает способ открытия документа по указанной форме, кроме открытия через EditDocument в событиях открытия документа? ... может чего полегче есть ...

Документ отрывается по линку.
 
I

interrupt

может чего полегче есть ...
А в чем тут трудность?
Если документ открывается по линку , то вроде других способов нет.
На QueryOpen стандартной формы делаешь
EditDocument по нужной форме
Continue = false и Exit sub.
 
30.05.2006
1 345
12
BIT
0
Еще - через формулу формы вьюхи. Собственно, таким способом можно в линке "задать" форму
 
I

interrupt

Constantin A Chervonenko , а при чем тут формула формы вьюхи?
Я так понял он документ открывает не из вида, а по линку (ссылка на документ например из письма)
 

Murtas

Green Team
11.04.2006
137
1
BIT
4
вот собственное исследование привело к использованию - @Command( [ViewSwitchForm]; "NewForm" ) в пост опен формы
 
30.05.2006
1 345
12
BIT
0
а при чем тут формула формы вьюхи? .. документ открывает не из вида, а по линку (ссылка на документ например из письма)
Если УНИМАТЕЛЬНО посмотреть свойства линка, то там можно различить 3 компоненты:
ссылка на базу (ReplicaID)
ссылка на вьюху - UNID
ссылка на документ (опять-же UNID)
(Что интересно, сервера там может и не быть)

Вот и объясните обчеству, на кой там вьюха?
 
I

interrupt

Constantin A Chervonenko , не знал, спасибо!
Но все равно такой вариант прокатит, когда линк формируется вручную (Copy document as link) или программно через
.AppendDocLink(), но часто линки делают в виде гиперссылок типа таких:
Код:
urlNotes$ = "notes://" + Server_Notes_Name.common + "/" + doc.ParentDatabase.replicaid + "/0/" + doc.Universalid
здесь открытие происходит без участия вида, и указание в представлении формулы формы не приведет к результату. Документ откроется через форму, указанную в поле form.

Вот и объясните обчеству, на кой там вьюха?
Теперь понятно, что используются некоторые свойства представления, но не знаю какие еще кроме формулы формы, придется вам помочь объяснить :)
В хелпе написано "If the doclink does not target a view, this property is 32 zeros."
но я проверил, если дефолтного вида нет, а документ больше ни в каком виде не открывается, то линк вообще не создается, вылетает ошибка:
---------------------------
IBM Lotus Notes
---------------------------
Couldn't get default View id for database (testdb.ntf)
---------------------------
ОК
---------------------------
 
30.05.2006
1 345
12
BIT
0
Теперь понятно, что используются некоторые свойства представления, но не знаю какие еще кроме формулы формы
IMHO - никакие (кроме).
В вашем "ручном" примерчике UNID вьюхи тоже присутствует (в виде ../0/..)
 

VladSh

начинающий
Lotus Team
11.12.2009
1 783
157
BIT
53
EditDocument можно делать не в событиях открытия документа, а в том месте, где нужно открытие.
Но перед этим:
Код:
ND.ReplaceItemValue("Form", "OtherForm").SaveToDisk = False
@Command( [ViewSwitchForm]; "NewForm" ) в пост опен формы
хорошо, но:
во-1 документ уже открыт по старой форме, а это время;
во-2 - дёргания при закрытии и открытии другой формы;
в-3 - меньшая гибкость - форумулу труднее написать бывает, чтобы иногда открывал в другой форме, а иногда нет; если же всегда открывать по другой форме, то... спрашивается, зачем? Может тогда просто перепрописать в доке поле Form и сохранить док..

EditDocument и ручное прописывание Form мне кажется лучшим вариантом.
P.S. Если пользователю нужно показать лишь часть данных документа, то иногда подходит просто выдавать док в диалоге по нужной форме.
 
Мы в соцсетях:

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