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

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

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

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

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

Как убрать диалог сохранения документа?

  • Автор темы iosif88
  • Дата начала
I

iosif88

Как сделать так чтобы при нажатии на крестик Lotus не выводил диалог сохранения, даже если в документе есть изменения? Документ должен сохраняться лишь программно если послан на утверждение т.е. лишь в том случае если нажата кнопка Submit . А в остальных случаях документ должен просто без вопросов закрываться без сохранения.
 
I

iosif88

Возник еще один вопрос.

На закрытие все же нужно спрашивать подтверждение если документ изменен (просто подтверждение закрытитя, без сохранение)

Я в Queryclose прописал следующее:


Код:
answer = Msgbox ("Do you want to close?", 4, "Continue?")	

If answer = "6" Then
Continue=True
Else
Continue=False
End If

На форма есть созданная мною кнопка "Close" в которой дается команда @Command([FileCloseWindow]).

Так вот когда нажимаю на кнопку все нормально. Выходит диалог и только после подтверждения закрывается.

А если просто нажать на крестик то глюк : форма сначала закроется а потом выйдет диалог на подтверждение.. И если нажать на "No" заново откроется форма но уже полностью пустая (вообще без полей белая форма). Что не так?

И еще как проверить изменился ли документ? Чтобы если док не изменялся не спрашивать подтверждения?
 
T

TIA

answer - целое, а не строка. Соответственно проверять надо так.
If answer = 6 Then
И еще как проверить изменился ли документ? Чтобы если док не изменялся не спрашивать подтверждения?
Недокументированный метод NotesUIDocument.ModifiedSinceSaved
 
I

iosif88

answer - целое, а не строка. Соответственно проверять надо так.
If answer = 6 Then

Недокументированный метод NotesUIDocument.ModifiedSinceSaved

Думаю дело не в этом
Проблема в том что неправильно срабатываетс только при нажатии на крестик. А при нажатии на кнопку "Закрыть" ( внутри формула @Command([FileCloseWindow]) работает правильно)
 
T

TIA

Думаю дело не в этом
Проблема в том что неправильно срабатываетс только при нажатии на крестик. А при нажатии на кнопку "Закрыть" ( внутри формула @Command([FileCloseWindow]) работает правильно)
Дело конечно же не в синтаксической ошибке. Я и не пытался объяснить описанный Вами эффект.
Но вот сейчас попробовал и выяснил, что описываемый вами эффект из-за наличия SaveOptions. Если его убрать (ну или не делать со значением "00", "0") эффект уходит. Это новый глюк Нотеса 8. В 7.0.2 не воспроизводится.

ModifiedSinceSaved помог?
 
  • Нравится
Реакции: Gandliar
I

iosif88

Дело конечно же не в синтаксической ошибке. Я и не пытался объяснить описанный Вами эффект.
Но вот сейчас попробовал и выяснил, что описываемый вами эффект из-за наличия SaveOptions. Если его убрать (ну или не делать со значением "00", "0") эффект уходит. Это новый глюк Нотеса 8. В 7.0.2 не воспроизводится.

ModifiedSinceSaved помог?

Да, помог. В Queryclose прописал следующий код:

Код:
Sub Queryclose(Source As Notesuidocument, Continue As Variant)
Dim w As New NotesUIWorkspace	 
Dim uidoc As NotesUIDocument	
Set uidoc = w.CurrentDocument	

Dim answer As Integer 
If uidoc.ModifiedSinceSaved Then
answer = Msgbox ("Do you want to close?", 4, "Continue?")	

If answer = "6" Then
Continue=True
Else
Continue=False
End If
End If	
End Sub

А поле SaveOptions необходимо оставить пустым "" (удалять само поле нельзя иначе выходит диалог на сохранение)
Теперь работает как надо.

Еще раз спасибо.

P.S. Кстати почему синтаксически неверное (взято из книги Марка Эллиотта :) ) выражение
Код:
If answer = "6" Then
работает ?
 
  • Нравится
Реакции: Gandliar
Мы в соцсетях:

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