Закрыть форму без запроса на сохранение

Тема в разделе "Lotus - Программирование", создана пользователем 777DEN777, 9 сен 2009.

Наш партнер Genesis Hackspace
  1. 777DEN777

    777DEN777 Гость

    Есть форма которая служит для ввода параметров по котором формируется отчет, например пользователь указывает период.
    Соответственно, если поля отредактированы при закрытии формы выходит сообщении о сохранении документа ("Do you want to save this new document?"), как игнорировать это сообщение и закрыть форму без изменений.

    Хотелось так же услышать мнение: верно использовать данный метод для указания параметров при формировании отчета?
     
  2. Omh

    Omh Well-Known Member
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Ну цеж бойан
    Поле "SaveOptions" со значением "0" и ничего спрашиватся не будет.
     
  3. 777DEN777

    777DEN777 Гость

    а где его прописать, в каком событии формы?
    правописание
    SaveOptions=0?
     
  4. nvyush

    nvyush Well-Known Member
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Из хелпа: поле SaveOptions; "0" - запрос на сохранение не выдаётся, документ не сохраняется (даже принудительно), "1" - документ сохраняется без запроса.
    От ВЕЛИКИХ ГУРУ - если SaveOptions не "0" и не "1", а, например, "00" - запрос на сохранение не выдаётся, документ можно сохранить.
    Лучше SaveOptions делать CFD.


    На форме нарисовать :)
     
  5. 777DEN777

    777DEN777 Гость

    (Options)?
     
  6. Omh

    Omh Well-Known Member
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    777DEN777
    Тупо сделай CFD поле
     
  7. nvyush

    nvyush Well-Known Member
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    В самом верху собственно формы добавляем пустую строку, на неё добавляем поле, именуем SaveOptions, тип - техт, computed for display (CFD), на предпоследней вкладке свойств ставим флажки скрытия во всех клиентах, чтоб глаза не мозолило.
     
  8. 777DEN777

    777DEN777 Гость

    ;)
    я конечно извиняюсь, в Lotus я новичок...



    разобрался...
     
  9. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.109
    Симпатии:
    19
    777DEN777
    а чем для ввода параметров вас диалогбокс не устроил?
     
  10. 777DEN777

    777DEN777 Гость

    спасибо, буду знать ;)

    ...работает

    честно говоря не в курсе... ;)

    можно подробней?
     
  11. nvyush

    nvyush Well-Known Member
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Ищем в хелпе класс NotesUIWorkspace, метод Dialogbox.
    Если на собаках - ищем функцию @Dialogbox
     
  12. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.109
    Симпатии:
    19
    удобсво диалогбокса как раз в том что это окно над окном, и его размеры как и его все кнопки - настраиваемы
     
  13. 777DEN777

    777DEN777 Гость

    Не пойму как его открыть, в хелпе нашел пример
    Код (Text):
    Sub Click(Source As Button)
    Dim workspace As New NotesUIWorkspace
    Call workspace.DialogBox _
    ( "policy", True, True, True, True, _
    False, False, "Policy" )
    End Sub
    выходит ошибка "DialogBox cannot be used in this context; a document must be selected"
     
  14. ToxaRat

    ToxaRat Чёрный маг
    Lotus team

    Регистрация:
    6 ноя 2007
    Сообщения:
    3.109
    Симпатии:
    19
    777DEN777
    используете форму "policy" которая у вас судя по всему лишь для респонсов

    Код (Text):
    Syntax
    flag = notesUIWorkspace.DialogBox( form$ , [autoHorzFit] , [autoVertFit] , [noCancel] , [noNewFields] , [noFieldUpdate] , [readOnly] , [title$] , [notesDocument] , [sizeToTable] , [noOkCancel] , [okCancelAtBottom] )

    3.  This script brings up a dialog box with the category and subject of the first document in the "By Category" view.
    Sub Click(Source As Button)
    Dim db As NotesDatabase
    Dim s As New NotesSession
    Dim workspace As New NotesUIWorkspace
    Dim view As NotesView
    Dim doc As NotesDocument
    Set db = s.CurrentDatabase
    Set view = db.GetView( "By Category" )
    Set doc = view.GetFirstDocument
    Call workspace.DialogBox _
    ("Dialog Box", True, True, False, False, False, _
    False, "Dialog Box", doc)
    Call doc.save (True, False)
    End Sub
     
  15. Lina

    Lina Гость

    В продолжение темы... почему у меня, при том, что в Dialogbox-форме поля те же, что и в доке, по которому она вызвана, непосредственно ПОСЛЕ диалога значения в доке не меняются? (А после переоткрытия новые, как ни в чем не бывало)...
    Код (Text):
        Dim wfdocGlobal As NotesDocument
    Dim col As NotesDocumentCollection
    Set col = db.unprocessedDocuments
    Set wfdocGlobal = col.GetFirstDocument
    If UIWrkSpc.DialogBox("DateTimeForAction", True, True, False, False,False, False,"Определите дату, время и участников встречи с кандидатом") Then
    If (Cstr(WFDocGlobal.MeetDate(0))="" Or Cstr(WFDocGlobal.MeetTimeB(0))="" Or Cstr(WFDocGlobal.MeetParticipants(0))="") Then
    (вот сюда ВСЕГДА заходит, хотя все поля потом оказываются вполне заполненными...) (((
    WFID_ErrorName = {Не заполнено одно из полей (дата, время, участники). Переход не будет выполнен}
    WFID_ErrorCode = 1
    Exit Sub

    End If
    End If
    Что я делаю не так??? Суть на самом деле в проверке заполненности полей после диалога, при этом диалог ОБЯЗАТЕЛЬНО должен быть по доку, потому что в одном из полей - MV по другим полям, по-другому их я не добуду, КАК?
     
  16. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.445
    Симпатии:
    7
    Может, добавить параметр документа в вызов UIWrkSpc.DialogBox?
    или где-то рефреш (RefreshParentNote) из диалога не вызывается?
     
  17. Lina

    Lina Гость

    Это где-то в событии формы прописывать? (RefreshParentNote) Обязательно?
     
  18. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.445
    Симпатии:
    7
    если кастомизированная кнопка ОК - обязательно.

    Добавлено: у вас вроде стандартная, должно само обновлять... попробуйте WFDocGlobal добавить в диалогбокс.
     
Загрузка...
Похожие Темы - Закрыть форму без
  1. bobo
    Ответов:
    0
    Просмотров:
    2.323
  2. swyatogor
    Ответов:
    40
    Просмотров:
    2.138
  3. Надя
    Ответов:
    3
    Просмотров:
    1.566
  4. Shouldercannon
    Ответов:
    3
    Просмотров:
    3.954
  5. deeeman
    Ответов:
    5
    Просмотров:
    2.560

Поделиться этой страницей