Dialog Server Side.help

Тема в разделе "Lotus - Xpages", создана пользователем susinmn, 12 май 2011.

  1. susinmn

    susinmn Well-Known Member

    Регистрация:
    16 окт 2007
    Сообщения:
    530
    Симпатии:
    8
    Задача: утвердить выделенные документы во view. Причем нужно, если документ не получилось утвердить (есть стоп-условия), нужно вывести диалог со стоп-условиями и вопросом продолжить выполнение остальных документов (Ок/Отмена).

    Пытаюсь сделать через Dialog библиотеки XPagesExtensionLibrary. Возможно ли дождаться ответа от пользователя и отловить события нажатия кнопок в диалоговом окне?
     
  2. susinmn

    susinmn Well-Known Member

    Регистрация:
    16 окт 2007
    Сообщения:
    530
    Симпатии:
    8
    Получилось пока только так:

    Обрабатываю ssjs выделенные документы во view. Как только в документе возникает стоп-условие:
    1. передаю в viewScope стоп-условие
    1. передаю в viewScope NoteID оставшихся выделенных документов
    2. вывожу Dialog из XPages Extension Library с кнопками OK и Cancel

    На кнопке OK ssjs обрабатываю оставшиеся документы c Partial Update view, csjs-XSP.closeDialog('#{id:dialog1}');

    Вопрос: в IE после выполнения, при нажатии F5 вылазиет сообщение *Что бы еще раз отобразить эту веб-страницу, веб-обозревателю нужно повторить отправку указанных данных...*. Как это обойти?

    P.S.: Если сделать на страничке только view, по кнопке утвердить только обработку выделенных документов, запись стоп-условий в viewTitle и Partial Update view, то при нажатии F5 в IE сообщение не возникает. Если же view поместить в табличку с закладками и переключиться с одной закладки на другой, то после нажатия F5 сообщение вылазиет(
     
  3. susinmn

    susinmn Well-Known Member

    Регистрация:
    16 окт 2007
    Сообщения:
    530
    Симпатии:
    8
    Помогает context.redirectToPage().
     
  4. Amfion

    Amfion Well-Known Member

    Регистрация:
    26 май 2010
    Сообщения:
    138
    Симпатии:
    3
    Можно пример как выводите диалог после серверной обработки
     
  5. susinmn

    susinmn Well-Known Member

    Регистрация:
    16 окт 2007
    Сообщения:
    530
    Симпатии:
    8
    Посмотри пример в XPages Extension Library
    Код (Text):
    var d = getComponent('dialog1');
    d.show()
    Не стали так делать. Сейчас стоп-условия вывожу по каждому документу через dojo dGrowl. Комментарий при отклонении через xe:tooltipDialog.
     
    #5 susinmn, 22 июл 2015
    Последнее редактирование модератором: 22 июл 2015
  6. alexas1

    alexas1 Lotus team
    Lotus team

    Регистрация:
    10 апр 2014
    Сообщения:
    567
    Симпатии:
    214
    Естественно - там не оптимальная логика: работа в клиенте, а логика через жопу сервер. Плохо это. И Дожо этим же часто грешит.
    Да и диалоги, часто, лучше делать ручками, через обычный контейнер.
     
  7. lmike

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

    Регистрация:
    27 авг 2008
    Сообщения:
    6.080
    Симпатии:
    300
    стоп-условие зависит от обработки предыдущих доков или специфично документу?
    Если документу - то может стоп условия вынести сразу в клиентскую часть?
    м.б. я процесс не правильно понимаю - звиняйте, что помешал общаться :)
     
  8. susinmn

    susinmn Well-Known Member

    Регистрация:
    16 окт 2007
    Сообщения:
    530
    Симпатии:
    8
    Изначально делалось это, например, для случая, когда сотрудник пытается утверждить несколько документов, но у него нет доверенности для их утверждения. Что бы не выводить 10 стоп-условий, хотели сделать остановку.
     
Загрузка...
Похожие Темы - Dialog Server Side
  1. RenatAhmetshin
    Ответов:
    14
    Просмотров:
    679
  2. Cleric-Lviv

    Решено Dialog.show()

    Ответов:
    4
    Просмотров:
    415
  3. valmont
    Ответов:
    5
    Просмотров:
    892
  4. orion
    Ответов:
    3
    Просмотров:
    1.254
  5. xpro
    Ответов:
    12
    Просмотров:
    1.949

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