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

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

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

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

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

Не создается документ

  • Автор темы azat20
  • Дата начала
A

azat20

Добрый день!
Столкнулся с такой проблемой. Есть некий документ по форме. На ней кнопка. По нажатию на кнопку нужно открыть новый документ по той же самой форме. Кто-нибудь знает почему нельзя создать такой документ? Причем через ws.compose работает, но мне надо использовать ws.editdocument


[codebox] Dim db As NotesDatabase
Dim sess As New NotesSession
Dim admindoc As NotesDocument
Dim uidoc As NotesUIDocument
Dim ws As New NotesUIWorkspace
Set db = sess.CurrentDatabase
Set admindoc = db.CreateDocument
admindoc.Form = "request"
Set uidoc=ws.EditDocument(True,admindoc,,,,)
Call uidoc.Refresh(False,False,True)[/codebox]

Не получаю объект uidoc. НО Если указываешь любую ответную (тип Response) форму, то документ создается.
 

erdi

Green Team
20.08.2008
264
17
BIT
0
А зачем тебе надо именно ws.editdocument? при создании документа через ws.compose документ уже создается в режиме редактирования
 
K

K-Fire

Непонятно в чем проблема.
ws.editdocument должно замечательно работать, и без разницы по той же форме новый док создается или по другой.

Хотя попробуй вместо Set uidoc=ws.EditDocument(True,admindoc,,,,) написать просто Set uidoc=ws.EditDocument(True,admindoc), может быть в этом разница.
 
A

azat20

compose не подходит, т.к. там надо заранее заполнить несколько полей, одно из которых - по сути определяющее загрузку подформ, выбирается через листбокс. там в defaultvalue записано. мне надо чтобы окно с выбором не появлялось.

to K-Fire: не помогает.
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Может документ сразу же закрывается?
Т.е. смотри события в форме request
 
K

K-Fire

еще попробуй поиграться с параметрами EditDocument. Например EditDocument(True,admindoc, false, "", true, false)

Попробуй ws определять сразу перед EditDocument.
 
T

TIA

Проверь, что в QueryOpen формы request либо её подформах, не устанавливается Continue = false.
 
A

AvasKvas

А я думал что EditDocument - это открытие документа в режиме редактирования, а не создания!?
 
A

azat20

Спасибо, Всем! На QueryOpen по условию Not(Isnewdoc) переходил на continue=false :unsure: теперь буду знать. Еще раз всех благодарю за ответы!
 
N

nvyush

Проверь, что в QueryOpen формы request либо её подформах, не устанавливается Continue = false.

TIA - спасибо. Имел аналогичную проблему, проверил QueryOpen формы создаваемого документа и вот оно

If Isnewdoc = False Then
If Mode Then Continue = 0
End If

заменил на

If Source.Document.IsNewNote = False Then
If Mode Then Continue = 0
End If
и все заработало! +1

P.S. Сия конструкция, чтоб юзеры не открывали доки сразу в режиме редактирования по Ctrl+E. Редактировать - только по кнопке, доступной избранным :unsure: .
 
N

nvyush

а авторс-поля не для этого придуманы?..

Не вдаваясь в подробности - юзеры могут изменить статус документа, но не должны трогать его содержимое. Разделы с управляемым доступом не везде удобны. Поля авторс здесь не катят.
 
T

TIA

Не вдаваясь в подробности - юзеры могут изменить статус документа, но не должны трогать его содержимое. Разделы с управляемым доступом не везде удобны. Поля авторс здесь не катят.

А Protected-поля тоже не катят?
 
N

nvyush

А Protected-поля тоже не катят?

Может быть катят, но в данном конкретном случае мне проще не дать юзеру на редактирование в УИ док целиком, чем заморачиваться с управляемыми разделами или защищенными полями.
 

Kizarek86

Green Team
20.07.2007
871
7
BIT
33
Если реально не должны трогать данные в документе, то статус документа храните в респонсе.
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
А зачем им плодить агентов? Агентов должен плодить дизайнер.
 
Мы в соцсетях:

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