Открытие модального окна
В таблице списке объектов сущности вывести страницу в контекстное меню
Например у вас есть список пользователей и на карточке пользователя есть страница проектов, доступных пользователю.
- Включите режим разработчика, если он не ключен
- Зайдите на интресующую вас страницу
- Откройте меню радактирования настроек приложения
- в поле "Вид в контекстном меню" выберите "Модальное окно" или "Выезжающее справа окно"
- Сохраните
- Сбросьте кеш меты
- Обновите страницу через F5
Пример такой страницы: https://samples-demo.devision.io/card?e=example_entity&o=08f3395b-31f2-42c9-917e-a5f2b7bd4a95&p=5183&a=35 (opens in a new tab)
На карточке объекта сущности нужно вывести меню действия над объектом
Например вы хотите сделать какое-то кастоное действие - выставить счет контагенту, по особенному удалить или что-то другое, не связанное просто с отображением таблиц и другой информации.
Для меты это будет обычная страница, как и например та, которая просто отображает списки с фильтрами, поэтому ничего страшного в том, что она будет для ас и в левом меню тоже.
- Включите режим разработчика, если он не ключен
- Зайдите на интресующую вас страницу
- Откройте меню радактирования настроек приложения
- в поле "Роль" выберите "Актор объекта. В списке действий Сущности в модальном окне"
- проверьте, что стоит галочка на чекбоксе "Показывать в меню только разработчикам"
- Сохраните
- Сбросьте кеш меты
- Обновите страницу через F5
Пример такой страницы: https://samples-demo.devision.io/card?e=example_entity&o=08f3395b-31f2-42c9-917e-a5f2b7bd4a95&p=5311&a=35 (opens in a new tab)
Стоит сказать, что галочка на "Показывать в меню только разработчикам" сейчас не обязательна, но по внутренним договоренностям мы считаем хорошей практикой показывать страницы действий только сверху.
Открыть добавление объекта через html
Приведу пример из биллинга - подача заявки для перехода на дргой тариф. Заявка выполнена в виде тикета с типом согласование Тут мы видем использование технологии разметки перевода "i18n" в кнопке добавления новых объектов для entityId=2701 с заранее установленным env.sp
<elem>
<tpl>
<me-add-obj-btn attrs='{"addObjectButton":{
"mode": "sidenav",
"title": "${i18n("#.productTariffTicketAdd", "Подать заявку")}",
"modalSize": "lg",
"modalTitle": "${i18n("#.productTariffTicketAdd", "Подать заявку")}",
"cssClass": "btn btn-sm btn-main",
"icon": "fa-gavel",
"env": {
"sp": {
"card": {
"no_redirect_after_save": true,
"entity_id": "2651",
"object_id": "${env.companyId}",
"issue_type_id": "devision_billing_tariff",
"form_data": {"product_id": ${env.objectId}}
}
}
}
}, "entityId": "2701"}'></me-add-obj-btn>
</tpl>
</elem>
Открыть карточку объекта сущности при клике на ее название в списке
Обязательно изучите документацию документацию по IEntityCardLink и изучите возможные атрибуты таблицы.
В данном примере код entityCardLink говорит, что при клике на название объекта будет происходить не переход на новую страницу, а будет открываться модальное окно с карточкой объекта.
<script type="meta/sql" db-alias="adplatform" id="res" entity-id="2876" order="100500"
elem-attrs='{"addObjectButton":{"title":"Группа", "mode":"modal", "env":{"sp":{"obj":{"entity_id":2876}}} }}'
elem-attrs.entityCardLink.mode='modal'
>
....
Открыть карточку выбранного объекта в выпадающем списке (me-input type=select)
Например у вас сложная форма, где много инпутов и вам надо дать возможность быстро посмотреть карточку выбранного в одном из инпутов клиента. Для это используется атрибут элемента fastViewObjectButton.
Так же обратите внимание на параметр addObjectButton он позволяет настроить поведение инпута для добавления объекта в список, например удобно там открывать страницу добавления клиента.
{
id: "ex_access_id",
label: "Доступ",
name: "me-input",
refPvmData: {id: 'access_list', sp:{}, waitingId: 'wait_ex_access_for_google'},
attrs: {
type: "select",
required: true,
fastViewObjectButton: {
drawActorList: false,
drawTopMenu: false,
modalSize: 'xs'
},
"addObjectButton": {
"mode": "sidenav",
"env": {
"sp": {
"obj": {
"mode": "feed",
"ex_system_id": "google_adwords"
}
}
},
"title": "Подключить аккаунт"
}
},
"listen": [
{
"code": [
"ADD",
"SET"
],
"entityId": 2830,
"selectAfterAdd": true,
"refreshRefPvmData": {}
}
],
"entityId": 2830,
}