Динамическое создание поля карточке редактирования

Добрый день!
Вводная: Клиенту не удобно использовать деталь характеристика у Продукта. Хочет все поля заполнять в самой карточке. Характеристики разные в зависимости от типа продукта.
Простое решение: Добавить все поля-характеристики в карточку и скрывать в зависимости от типа.
Вопрос: Но хотелось бы сделать красиво. Есть ли возможность для BPMOnline 7.8 отображать поле и привязывать его к колонке объекта на этапе инициализации карточки редактирования? Ext.JS позволяет это сделать, но попытки реализовать по примерам для него к успеху не привели. Прошу помочь небольшим примером.

Нравится

3 комментария

Здравствуйте!

Поля можно скрывать бизнес-правилами. Пример:
https://academy.terrasoft.ru/documents/technic-sdk/7-8/pravilo-bindpara…

"Мотков Илья" написал:

Здравствуйте!

Поля можно скрывать бизнес-правилами


Здравствуйте, Илья! Да, через бизнес-правила тоже можно. Но, и скрытие полей кодом, и через правила требует внесения изменений в код, каждый раз, при добавлении нового типа продукта. Необходимо сделать универсально. Т.е. динамически удалять/добавлять поля. А сами имена полей и зависимость от типа получать из справочника. При такой реализации, достаточно будет добавить запись в такой справочник, а код страницы редактирования останется прежним. Именно поэтому, нужен пример создания поля динамически.

Здравствуйте, Эмин.

К сожалению, данная задача не является возможной без серьезных доработок в системе, поскольку
изначально карточка генерируется на основании массива из diff, а добавление элементов в DOM карточки в рантайме не даст желаемого результата. Вам необходимо будет написать свой генератор карточки, основывающийся на значениях из базы данных.

Более простым, но не столь функциональным решением будет использовать стандартные свойства visible элементов и добавлять поля на карточку стандартными

Показать все комментарии