Блог Горошко Андрея Bitrix24,PHP Пункт выпадающего меню генератора документов CRM_XXX_DOCUMENTGENERATOR_BUTTON

Пункт выпадающего меню генератора документов CRM_XXX_DOCUMENTGENERATOR_BUTTON

При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Пункт выпадающего меню генератора документов CRM_XXX_DOCUMENTGENERATOR_BUTTON», разберем архитектурные особенности и предоставим готовые к интеграции примеры кода.

Пункт выпадающего меню генератора документов CRM_XXX_DOCUMENTGENERATOR_BUTTON

> Scope: intranet

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

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

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

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

Код встройкиМесто
CRM_LEAD_DOCUMENTGENERATOR_BUTTONПункт в выпадающем меню генератора документов лидов
CRM_CONTACT_DOCUMENTGENERATOR_BUTTONПункт в выпадающем меню генератора документов контактов
CRM_COMPANY_DOCUMENTGENERATOR_BUTTONПункт в выпадающем меню генератора документов компаний
CRM_DEAL_DOCUMENTGENERATOR_BUTTONПункт в выпадающем меню генератора документов сделок
CRM_SMART_INVOICE_DOCUMENTGENERATOR_BUTTONПункт в выпадающем меню генератора документов счетов
CRM_QUOTE_DOCUMENTGENERATOR_BUTTONПункт в выпадающем меню генератора документов коммерческих предложений
CRM_DYNAMIC_XXX_DOCUMENTGENERATOR_BUTTONПункт в выпадающем меню генератора документов пользовательского типа объектов CRM. Вместо XXX необходимо указывать числовой идентификатор конкретного пользовательского типа объектов. Например, CRM_DYNAMIC_183_DOCUMENTGENERATOR_BUTTON

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

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

  • CRM_LEAD_DOCUMENTGENERATOR_BUTTON
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => 459ca665c9cab4ddfe9ea5ae2a0840f1
        [AUTH_ID] => d54bba6600631fcd00005a4b00000001f0f10778a1773b649abec1feea11861a78c85a
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => c5cae16600631fcd00005a4b00000001f0f1070bb92bc9d139bcccf13fd5061e168c97
        [member_id] => da45a03b265edd8787f8a258d793cc5d
        [status] => L
        [PLACEMENT] => CRM_LEAD_DOCUMENTGENERATOR_BUTTON
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"6591"}
    )
  • CRM_DEAL_DOCUMENTGENERATOR_BUTTON
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => 23ab3058338edf7c4c30a52e4d0b3f94
        [AUTH_ID] => 024cba6600631fcd00005a4b00000001f0f10776117251d4c2d883c3b981273ddc1d2f
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => f2cae16600631fcd00005a4b00000001f0f1071ccf5fc07f1f6e09595a46e2689ad63b
        [member_id] => da45a03b265edd8787f8a258d793cc5d
        [status] => L
        [PLACEMENT] => CRM_DEAL_DOCUMENTGENERATOR_BUTTON
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"3473"}
    )
  • CRM_CONTACT_DOCUMENTGENERATOR_BUTTON
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => 8610c737a7b6d9e8707e897310c92a5c
        [AUTH_ID] => 234cba6600631fcd00005a4b00000001f0f107e5d9a6b11c75b358354b7909a3cbb1d5
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => 13cbe16600631fcd00005a4b00000001f0f1072808b892db51d0797e9f6ef1f47ac479
        [member_id] => da45a03b265edd8787f8a258d793cc5d
        [status] => L
        [PLACEMENT] => CRM_CONTACT_DOCUMENTGENERATOR_BUTTON
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"13037"}
    )
  • CRM_COMPANY_DOCUMENTGENERATOR_BUTTON
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => 6c69387b1893adfbce7b0e9dd09a4334
        [AUTH_ID] => 474cba6600631fcd00005a4b00000001f0f1075e5c6675d9cc38d0226e8d64a137f0d4
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => 37cbe16600631fcd00005a4b00000001f0f107ad057bdb52baf3c9f25ebd88c351e5cb
        [member_id] => da45a03b265edd8787f8a258d793cc5d
        [status] => L
        [PLACEMENT] => CRM_COMPANY_DOCUMENTGENERATOR_BUTTON
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"2946"}
    )
        
  • CRM_QUOTE_DOCUMENTGENERATOR_BUTTON
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => 92520ef005add4cddf34ce7d56417cd6
        [AUTH_ID] => 734cba6600631fcd00005a4b00000001f0f10783d784554c5d20e60a70194e7fae0928
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => 63cbe16600631fcd00005a4b00000001f0f107f7e3fca578b3e3b68e5be0cf70b35ccc
        [member_id] => da45a03b265edd8787f8a258d793cc5d
        [status] => L
        [PLACEMENT] => CRM_QUOTE_DOCUMENTGENERATOR_BUTTON
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"5"}
    )
    
  • CRM_SMART_INVOICE_DOCUMENTGENERATOR_BUTTON
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => adada92053b22a4de3895402a01693cf
        [AUTH_ID] => 69c7ca670076a4b8006f518000000001201c0720c9c9d78077b5f2c5530f64b061c8a1
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => 5946f2670076a4b8006f518000000001201c07709da4b12d3c7e82e120a20e547b638f
        [member_id] => e8857f161a1a8288f312b6cc6ad67995
        [status] => L
        [PLACEMENT] => CRM_SMART_INVOICE_DOCUMENTGENERATOR_BUTTON
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"32"}
    )
    
  • CRM_DYNAMIC_ХХХ_DOCUMENTGENERATOR_BUTTON
    Array
    (
        [DOMAIN] => xxx.bitrix24.com
        [PROTOCOL] => 1
        [LANG] => en
        [APP_SID] => e704d5033456989068deea36a324b888
        [AUTH_ID] => 904cba6600631fcd00005a4b00000001f0f1072f641be14b9ac7606506e5e3ed850130
        [AUTH_EXPIRES] => 3600
        [REFRESH_ID] => 80cbe16600631fcd00005a4b00000001f0f107151fd45dc66ee22283e42cdf941e8436
        [member_id] => da45a03b265edd8787f8a258d793cc5d
        [status] => L
        [PLACEMENT] => CRM_DYNAMIC_183_DOCUMENTGENERATOR_BUTTON
        [PLACEMENT_OPTIONS] => {"ENTITY_ID":"3"}
    )
    

PLACEMENT_OPTIONS

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

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

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

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

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

  • [](../placement-bind)
  • [](../ui-interaction/index)
  • [](../ui-interaction/crm-card)
  • [](../../../settings/interactivity/index)
  • [](../open-application)
  • [](../open-path)

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

Ключевые выводы по теме «Пункт выпадающего меню генератора документов CRM_XXX_DOCUMENTGENERATOR_BUTTON»:

Использование современных стандартов D7 при работе с пункт выпадающего позволяет писать чистый, масштабируемый и безопасный код. Не забывайте обрабатывать исключения (try/catch) и проверять права доступа текущего пользователя перед выполнением критических операций.

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

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

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

Related Post

Копировать файл в указанную папку disk.file.copytoКопировать файл в указанную папку disk.file.copyto

При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Копировать файл в указанную папку disk.file.copyto», разберем архитектурные

Получить список зарегистрированных обработчиков событий event.getПолучить список зарегистрированных обработчиков событий event.get

При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Получить список зарегистрированных обработчиков событий event.get», разберем архитектурные

Как использовать метод SDK sale.property.get в Битрикс24Как использовать метод SDK sale.property.get в Битрикс24

Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Как использовать метод SDK sale.property.get в Битрикс24», проанализируем