Bitrix подключить класс компонента

CBitrixComponent::includeComponentClass('custom:crm.quote.pdf.generate');
// Если компонент подключен успешно вернет строку с названием класса этого компонента Пример: string(19) "CrmQuotePdfGenerate"
// Дальше можно работать с классом компонента
CrmQuotePdfGenerate::someMethod();

Варианты использования:

  • Компонент может принимать ajax запросы и чтобы вся логика работы компонента находилась в одном месте описываем её в классе компоненте, а в ajax скрипте просто вызываем нужные методы
  • В одном компоненте может потребоваться вызвать метод из другого компонента. Например метод по выборке каких-то данных или метод расчета каких-либо значений

Пример ajax скрипта

<?php 
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");

\CBitrixComponent::includeComponentClass('custom:order.generate.pdf');
$result = CustomOrderGeneratePdf::generate($_REQUEST["id"]);
echo json_encode(array(
"result" => $result,
"msg" => ($result) ? GetMessage("GENERATE_SUCCESS") : GetMessage("GENERATE_FAIL")
));

require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/epilog_after.php');
die();

В этом скрипте подключается класс компонента 'custom:order.generate.pdf' - CustomOrderGeneratePdf и вызываем его статический метод generate().

Рубрики: PHP Bitrix

Если есть вопросы, что-то в статье не понятно или нашли ошибку, напишите об этом в комментариях, все комментарии читаются и по возможности материал будет доработан.
Популярные статьи

Bitrix выполнить произвольный sql запрос

В статье приведен пример как выполнить произвольный sql запрос используя стандартные средства Bitrix

Bitrix подключить модуль

Так как bitrix состоит из большого количества различных модулей, знать как их правильно подключать просто необходимо.

Bitrix получить путь до компонента

В статье приводится пример кода для получения директории в которой находится файл компонента.

Bitrix 24 получить ссылку на контакт, сделку, компанию, лид и т.д.

В статье приводится пример кода для получения ссылки на контакт, сделку, компанию, лид и т.д. с помощью метода \CCrmOwnerType::GetEntityShowPath()

Команда grep. Примеры использования

grep - удобная и быстрая команда, здесь приведены примеры как произвести рекурсивный поиск в каталоге, поиск среди запущенных процессов и другие.

PHP Удалить лишние нули после запятой

Когда в проекте диапазон чисел от 0,0001 до 1 000 000, удобно автоматически удалять лишнии нули после запятой.

Комментарии

Комментариев пока нет
Данный сайт использует файлы cookies. Продолжая просмотр сайта, вы соглашаетесь с использованием файлов cookies.
ОК