Форма объекта в бизнес процессе ELMA (динамическая)

Около года назад я писал о том как встроить форму объекта в форму другого или в процесс

  • Но я забыл упомянуть что встроить можно только статичную форму)

И у Михаила возникла проблема со встраиванием в задачу бизнес процесса

Кнопка с проверкой обязательности заполнения  не нажимается, даже при заполненных обязательных переменных.

Встроенная карточка в бизнес процесс

Динамическая форма ELMA — это форма которую можно отправить на сервер —
сервер считывает из нее объект и вернуть изменения на форме. (ищите во вкладке Network в браузере)

Для объектов созданных в дизайнере — по умолчанию создается динамическая форма.

Как обнаружить проблему в браузере?

На деле все довольно просто 

  1. Откройте консоль браузера
  2. Повторите ошибку
  3. Нажмите на строчку из ошибки
Консоль браузера и отладчик

* опытные разработчики могут отладить код в браузере — благо javascript в ELMA не минифицирован (упрощен)

Поигравшись с отладчиком и изучив форму (html) — проблема найдена.

Причина

Динамическая форма ELMA — обрамляется в html тегом <form> которая как раз и отправляется на сервер

  1. Она имеет атрибут  id=’GlobalForm’ также как и форма самой задачи — что запрещено в разметке html
  2. Валидатор — проверяющий форму проверял как раз по 
    GlobalForm которых теперь две на форме, так еще и одна вложена в другую (что не сработает в html )

будь форма не динамическая — было бы все ок, осталась бы только форма задачи

Вложенные формы

Как встроить динамическую форму задачи ELMA в форму задачи бизнес процесса

Все еще проще чем кажется

в форму объекта можно встроить таким же способом

1.Вынести на форму — значение поля 

Перетащить на форму только значение

2. Создать Razor форму для просмотра

Установить только для чтения

Галочка обязательна — представление мы будем редактировать для просмотра

Указать новую форму

Код гораздо короче чем в прошлый раз — как обычно помог IlSpy

Готово

Теперь нет лишней «формы» в html  и кнопки продолжают работать!)

Завершенная задач ELMA

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Форма объекта в бизнес процессе ELMA (динамическая): 1 комментарий

  • 04.10.2018 в 11:18
    Permalink

    Спасибо, работает!

    Ответ

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

%d такие блоггеры, как:

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: