Вернуть данные из вызванной формы в исходную

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

  1. Xel

    Xel Гость

    Доброго времени суток.
    Только начинаю разрабатывать приложения под Lotus Notes/Domino. Есть такая задача:
    Есть форма для добавления ордера. На ней есть поля для заполнения реквизитов организации.
    Есть форма для добавления организации.
    Должна быть возможность вызова справочника организаций для добавления в него новой организации и ввода добавленных реквизитов в ордер из справочника организаций.​

    Мысль крутится вокруг того, чтобы как-нибудь передать uidoc ордера форме добавления организации, но как это сделать или вообще-то как-то по другому лучше реализовать...
     
  2. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.081
    Симпатии:
    300
    @Picklist, @DbLookup, и диалог тип поля вам в руки...
    и алиасы ключей через пайп, в списках, типа:
    Название | ключ

    также практикуются @DbColumn(..., columnName) + "|" + @DbColumn(..., columnKey)
    тоесть сразу списки вытаскиваем из вьюшек с ключами
    по ключу попавшему в поле - делаем @DbLookup в вычисляемых полях дока (формулу вставляем)

    юнид можно передавать, но это не ваш случай :blink:
    DialogBox метод и так могет апдейтить поля
    а еще есть в форме - наследовать значения из дока...
     
  3. Akupaka

    Akupaka А че я?.. О.о

    Регистрация:
    4 окт 2007
    Сообщения:
    3.373
    Симпатии:
    2
    еще плюс notesuiworkspace.PickListCollection будет полезным изучить, я думаю
     
  4. Xel

    Xel Гость

    PickList'ы и иже с ними это, конечно, все замечательно, но немного не то, что нужно.

    Попробую объяснить еще раз.
    Человек заполняет форму, хочет выбрать из справочника (пусть даже при помощи PickList'а) организацию. Но организацию он там не обнаруживает, и поэтому ему нужно добавить новую организацию. Он жмет на кнопку (пусть будет Action), после чего перед ним вылазит форма для добавления новой организации, и после того, как он сохранит эту организацию, заполненные данные будут внесены на форму ордера.

    Что-то похожее может DialogBox, но смущает "Открывает в модальном диалоговом окне текущий документ по
    указанной форме "форма"." Т.е. новую организацию он в базу не добавит.
     
  5. turumbay

    Регистрация:
    13 мар 2009
    Сообщения:
    625
    Симпатии:
    2
    Внимательнее курИте хелп:

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

    notesDocument
    NotesDocument. Optional. A document to be opened instead of the current document.

    Т.о.:
    Dim doc As New NotesDocument( db )
    if ws.DialogBox( ........ , doc , ...) then
    ......
    doc.save( ... )
    end if
     
  6. Xel

    Xel Гость

    Спасибо!
     
Загрузка...

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