Добрый день, я пользуюсь версией bpm'online 7.6 . Возникла надобность в Карточке редактирования Заказа возможности редактирования имени текущего контакта, который связан с заказом полем ContactId. Хотелось бы с заказа не переходить в Контакт и там его редактировать, а сразу делать изменения в имени прямо из карточки заказа. Подскажите, каким способ это можно решить?
Нравится
Одним полем, а именно стандартным лукап полем этого не сделать, но вы можете рядом с ним разместить текстовое поле. Назвать его как-то, к примеру «Имя контакта», привязать его к атрибуту текстовому. В методе onEntityInitialized и в методе изменения лукапного контакта, заполнять «Имя контакта» значением имени контакта, через запрос esq, или прямо из значения лукапа.
А уже при изменении вашего «Имя контакта», в событии изменения атрибута «Имя контакта», брать, и через esq, апдейтить имя контакта в объекте контакта, получая его id из главного лукап поля. И, после изменения, обновлять значение лукапного поля.
Стоит ли, конечно, возможность быстро переименовать поле, не переходя в карточку контакта, лишнего поля на форме заказа, вам решать.
Если возникнут точечные вопросы в процессе разработки, пишите, подскажем.
Сделал 2 текстовых виртуальных поля "ФИО контакта" и "телефон" в "OrderPageV2", по вашим инструкциям, при инициализации все подтягивает, при сохранении ("onSaved" ) записывает редактируемые данные в текущий контакт. Все работает. А вот как сделать маску и валидацию для поля "телефон" в "OrderPageV2" из данного примера? В документации только описана возможность базовой валидации контакта в карточке Контакта. Если можно, скиньте пример кода.
На сколько я могу видеть, в базовом функционале поля ввода телефона не используют маску, но вы можете написать свой контрол с маской, или использовать наработки ниже:
Инструкция:
mask.docx
Код модуля который необходимо добавить как модуль у себя в конфигурации:
multimaskedit.txt
И тот же самый код только в ворде так как рус. символы превратились в зюки в тхт:
multicodeinword.docx