Вопрос

Вызов мини-карточки и несколько страниц редактирования

Всем доброго времени суток. Версия 7.11.

Задача в общем такая: есть несколько страниц редактирования раздела (к примеру, обращения Case). То, какую страницу показывать зависит от значения специальной справочной колонки "Тип страницы редактирования", здесь всё стандартно.

Далее есть другая колонка обращения - например, "Сервис", при этом в данных сервиса указывается, какая страница редактирования соответствует выбранному сервису. Всё дело в том, что одна и та же страница редактирования может соответствовать нескольким сервисам, т.е. связь примерно такая:

Сервис 1 - Тип страницы 1
Сервис 2 - Тип страницы 1
Сервис 3 - Тип страницы 2

Соответственно, привязать вид страницы редактирования напрямую к сервису не получается, из-за чего и вводится та самая дополнительная колонка "Тип страницы".

Возможна ли реализация такого вариант: по клику на кнопку "Добавить" в разделе всплывает мини-карточка, в которой указывается сервис (и несколько других колонок, необходимых для настройки), после чего по нажатию на кнопку "Сохранить" в мини-карточке открывается уже полноценная страница соответствующего типа?

На практике такую конструкцию реализовали при помощи бизнес-процесса и преднастроенной страницы вместо мини-карточки. Вариант с мини-карточкой конечно смотрелся бы намного изящнее.

Нравится

7 комментариев

Я так понимаю, у вас уже для раздела несколько страниц редактирования?

Тогда в теории: достаточно в onSaved методе министраницы делать вызов нужной страницы (в зависимости от типа) на редактирование.

Варфоломеев Данила,

да.

Проблема в том, как вызывать сразу миникарточку без выпадающего меню с типом страницы.

Инструкция на академии не помогла: https://academy.terrasoft.ru/documents/technic-sdk/7-12/kak-sozdat-mini…

Смородинов Денис пишет:

без выпадающего меню с типом страницы.

Вот тут даже интересно. У вас стоит галочка в мастере "использовать миникарточку на добавление"? Если да, то он открывает одну и ту же миникарточку, но только после выбора какого-либо типа из выпадающего меню?

В любом случае самый топорный метод - перегрузить initEditPages, зачистить тот мусор, что попадает в коллекцию и занести 1 запись со ссылкой на миникарточку

Варфоломеев Данила,

это 7.11. Там ещё нет галочки и мастера дизайна миникарточки((

Собственно, задача состояла в том, чтобы избавиться от этого выпадающего меню, и открывать нужную страницу после выбора сервиса в миникарточке, т.к.  - см выше в основном описании. Ну и всего типов страниц может быть в итоге много.

Варфоломеев Данила пишет:

перегрузить initEditPages

Не подскажете, где он определяется? В BaseSectionV2 уже следует вызов в init.

Смородинов Денис,

BaseSchemaViewModel. 

Кстати, вы можете остановись дебагером, навести на функцию, вам хром выдаст её определение, щёлкаете на него, попадаете в функцию(и соответственно в модуль где она определена)

Ясно, спасибо.

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