Блог Горошко Андрея Bitrix24,PHP Пункт контекстного меню дела в карточке элемента CRM_XXX_ACTIVITY_TIMELINE_ME…

Пункт контекстного меню дела в карточке элемента CRM_XXX_ACTIVITY_TIMELINE_ME…

Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Пункт контекстного меню дела в карточке элемента CRM_XXX_ACTIVITY_TIMELINE_ME…», проанализируем лучшие практики и покажем, как правильно использовать пункт контекстного в реальных задачах.

Пункт контекстного меню дела в карточке элемента CRM_XXX_ACTIVITY_TIMELINE_MENU, CRM_DYNAMIC_XXX_ACTIVITY_TIMELINE_MENU

> Scope: crm

Вы можете добавить свой пункт контекстного меню дела в карточке объектов CRM: лиды, сделки, коммерческие предложения, новые счета, пользовательские типы объектов.

!Виджет в виде пункта контекстного меню дела в лиде

Код конкретного места встройки виджета указывается в параметре PLACEMENT метода placement.bind.

Встройка не будет отображаться в интерфейсе, пока установка приложения не завершена. Проверьте установку приложения

Куда встраивается виджет

Код встройкиМесто
CRM_LEAD_ACTIVITY_TIMELINE_MENUПункт контекстного меню дела в лиде
CRM_DEAL_ACTIVITY_TIMELINE_MENUПункт контекстного меню дела в сделке
CRM_QUOTE_ACTIVITY_TIMELINE_MENUПункт контекстного меню дела в коммерческом предложении
CRM_SMART_INVOICE_ACTIVITY_TIMELINE_MENUПункт контекстного меню дела в новых счетах
CRM_DYNAMIC_XXX_ACTIVITY_TIMELINE_MENUПункт контекстного меню дела в пользовательских типах объектов CRM. Вместо XXX необходимо указывать числовой идентификатор конкретного пользовательского типа объектов. Например, CRM_DYNAMIC_183_LIST_MENU

Что получает обработчик

Данные передаются в виде POST-запроса {.b24-info}

  • CRM_LEAD_ACTIVITY_TIMELINE_MENU
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => e6a18a6abe41ba3bd944897d8dc5186d
        [AUTH_ID] => 45d4a06600631fcd00005a4b00000001f0f10767246d86a580fae119d2a2601665eb33
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => 3553c86600631fcd00005a4b00000001f0f1074bdbcddd7232d3413e2b9ff1ee91dc96
        [member_id] => da45a03b265edd8787f8a258d793cc5d
        [status] => L
        [PLACEMENT] => CRM_LEAD_ACTIVITY_TIMELINE_MENU
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"6591","TYPE_ID":"1","TYPE_CATEGORY_ID":"6","ASSOCIATED_ENTITY_ID":"1523","ASSOCIATED_ENTITY_TYPE_ID":"6","TIMELINE_ITEM_ID":"29937"}
    )
  • CRM_DEAL_ACTIVITY_TIMELINE_MENU
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => 71cc8c707a630542d5e2cf7435bf88c4
        [AUTH_ID] => 87d4a06600631fcd00005a4b00000001f0f10758d4aabbf27967a9af747de646c5447c
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => 7753c86600631fcd00005a4b00000001f0f1078ec2dd6e94d5dc8f1aebf6524a86ee78
        [member_id] => da45a03b265edd8787f8a258d793cc5d
        [status] => L
        [PLACEMENT] => CRM_DEAL_ACTIVITY_TIMELINE_MENU
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"3463","ASSOCIATED_ENTITY_ID":"1517","ASSOCIATED_ENTITY_TYPE_ID":"6"}
    )
  • CRM_QUOTE_ACTIVITY_TIMELINE_MENU
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => a63d2f88ffd62d6a300aaea7bf5ebf32
        [AUTH_ID] => 757ba26600631fcd00005a4b00000001f0f107b07473a33f9378bf912d602ecb056119
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => 65fac96600631fcd00005a4b00000001f0f10726b77ceb5a0aaa50e143b1086fa03324
        [member_id] => da45a03b265edd8787f8a258d793cc5d
        [status] => L
        [PLACEMENT] => CRM_QUOTE_ACTIVITY_TIMELINE_MENU
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"5","ASSOCIATED_ENTITY_ID":"1529","ASSOCIATED_ENTITY_TYPE_ID":"6"}
    )
    
  • CRM_SMART_INVOICE_ACTIVITY_TIMELINE_MENU
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => a2032d292bcc91a22022db330433a933
        [AUTH_ID] => ee2ad0670076a4b8006f518000000001201c07383646b2116914be86aecd467ade5a3e
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => dea9f7670076a4b8006f518000000001201c07e183b89e2613ce88ba7c56f8f80f19d9
        [member_id] => e8857f161a1a8288f312b6cc6ad67995
        [status] => L
        [PLACEMENT] => CRM_SMART_INVOICE_ACTIVITY_TIMELINE_MENU
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"32","ASSOCIATED_ENTITY_ID":"238","ASSOCIATED_ENTITY_TYPE_ID":"6"}
    )
    
  • CRM_DYNAMIC_XXX_ACTIVITY_TIMELINE_MENU
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => d659900f7e966c5d135d349b7b7f3c0d
        [AUTH_ID] => 4a7ba26600631fcd00005a4b00000001f0f1071e1f009645e93bf550bc02ac4f8fdcf6
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => 3afac96600631fcd00005a4b00000001f0f107adfab4bb11ae71eaf061319f2b4b2f87
        [member_id] => da45a03b265edd8787f8a258d793cc5d
        [status] => L
        [PLACEMENT] => CRM_DYNAMIC_183_ACTIVITY_TIMELINE_MENU
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"3","ASSOCIATED_ENTITY_ID":"1527","ASSOCIATED_ENTITY_TYPE_ID":"6"}
    )
    

PLACEMENT_OPTIONS

Значением PLACEMENT_OPTIONS является JSON-строка, содержащая массив из одного и более ключей.

ПараметрОписание
ENTITY_ID
string
Идентификатор объекта CRM, для которого был открыт виджет.

Может быть использован для получения дополнительной информации с помощью соответствующих методов:

— любой тип объекта crm.item.get с указанием entityTypeId = ‘1’ для лидов, ‘2’ для сделок и т.д.
— лид crm.lead.get
— сделка crm.deal.get
— коммерческое предложение crm.quote.get

В случае встройки виджета в объект пользовательского типа, идентификатор типа можно получить из значения параметра PLACEMENT. В примере выше, это 183

ASSOCIATED_ENTITY_ID
string
Идентификатор дела CRM, для которого был открыт виджет.

Может быть использован для получения дополнительной информации с помощью метода crm.activity.get

ASSOCIATED_ENTITY_TYPE_ID
string
Идентификатор типа сущности дела (Activity)
TYPE_ID
string
Идентификатор типа события
TYPE_CATEGORY_ID
string
Идентификатор типа записи таймлайна
TIMELINE_ITEM_ID
string
Идентификатор записи таймлайна
  • [](../placement-bind)
  • [](../ui-interaction/index)
  • [](../ui-interaction/crm-card)
  • [](../../../settings/interactivity/index)
  • [](../open-application)
  • [](../open-path)

💡 Экспертное мнение и рекомендации

Советы эксперта по интеграции:

  • Всегда используйте кэширование при частых запросах к пункт контекстного, чтобы разгрузить базу данных.
  • Соблюдайте стандарты PSR при написании обработчиков для «Пункт контекстного меню дела в карточке элемента CRM_XXX_ACTIVITY_TIMELINE_ME…».
  • Регулярно проводите аудит производительности системы с помощью встроенного монитора 1С-Битрикс.

Похожая задача в бизнесе?

Помогу автоматизировать процессы и внедрить ИИ

Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.

Related Post

Как использовать метод SDK crm.status.update в Битрикс24Как использовать метод SDK crm.status.update в Битрикс24

При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Как использовать метод SDK crm.status.update в Битрикс24», разберем

Получить доступные поля единиц измерения catalog.measure.getFieldsПолучить доступные поля единиц измерения catalog.measure.getFields

Оптимизация производительности и безопасности — залог успешного проекта на 1С-Битрикс. Данный материал посвящен практическому применению «Получить доступные поля единиц измерения catalog.measure.getFields». Мы подготовили подробный разбор принципов работы и развернутые примеры

Установить набор контактов, связанных с указанной компанией crm.company.conta…Установить набор контактов, связанных с указанной компанией crm.company.conta…

Эффективная интеграция и кастомизация функционала в Битрикс24 часто требует работы на уровне API. Сегодня мы подробно рассмотрим «Установить набор контактов, связанных с указанной компанией crm.company.conta…». Вы узнаете экспертные методики работы