Задать вопрос
Ответы пользователя по тегу Битрикс24
  • Как зарезервировать переговорную комнату через API в Битрикс24 (коробка)?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Я не уверен в корректности данного решения, так как мало работаю с облаком и REST, однако вы можете попробовать метод calendar.event.add с использованием параметров is_meeting и location
    Ответ написан
  • Как построить структуру компании ОТ подразделения?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Вам необходимо изменить компонент.
    Смотрите в сторону обработки параметров: $mode == 'subtree' и $_REQUEST['mr']
    Ответ написан
    1 комментарий
  • При создании заказа через rest api в битрикс24 создаются лишние компания и контакт при указанном companyId, в чем может быть проблема?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Это ошибка (или особенность поведения) о которой необходимо сообщить тех.поддержке.
    Насколько я знаю, в данный момент связь между заказом и контактами/компанией через rest api не отлажена.
    Ответ написан
    Комментировать
  • Как сделать разграничение прав телефонии битрикса?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Система не предполагает таких разграничений и скорее фокусируется на одном комплексном отделе продаж.
    В случае коробочной версии есть возможность изменить отдельные подсистемы платформы (влияет на обновления).
    В случае облачной версии могу лишь порекомендовать оставить заявку на такую возможность в техподдержку (возможно когда-нибудь сделают).
    Ответ написан
    Комментировать
  • Как прикреплять запись с видеовстречи в Битрикс24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Возможно ли каким то способом сделать так, чтобы после разговора, запись конференции прилетала еще и в сделку, в ленту?


    Механика еще новая и думаю это будет обкатываться дополнительно.
    Подобное действие возможно только в коробочной версии Битрикс24 силами разработчиков.

    Можете оставить идею по реализации данной механики на сайте битрикса (или написав в поддержку).
    Ответ написан
    Комментировать
  • Возможно ли остановить БП на время выполнение задачи?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    это есть в самом БП, можно ли остановить выполнение БП пока не выполнится задача?


    Бизнес-процесс выполняется блоками и как только отработал один блок сразу запускается следующий.
    Для того чтобы поставить паузу необходимо создать свое действие бизнес-процесса, где написать обработчик ситуации паузы.
    Ответ написан
    Комментировать
  • Как сделать несколько чек листов в одной задаче?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Измените свой код создания чек-листа, можете воспользоваться фрагментом:

    use \Bitrix\Main,
    	\Bitrix\Tasks\CheckList\Task
    	;
    
    Main\Loader::IncludeModule('tasks');
    
    /**
     * @var integer Идентификатор задачи
     */
    $taskId = 6;
    
    /**
     * @var integer Идентификатор пользователя
     */
    $userId = 1;
    
    $result = Task\TaskCheckListFacade::add(
    	$taskId,
    	$userId,
    	[
    		'TITLE'        => 'Test data',
    		'PARENT_ID'    => 0,
    		'SORT_INDEX'   => '10',
    		'IS_COMPLETE'  => 'N',
    		'IS_IMPORTANT' => 'N',
    		'MEMBERS'      => [],
    		'ATTACHMENTS'  => [],
    	]
    );
    
    var_dump($result);
    Ответ написан
    4 комментария
  • Как вывести popup окно стандартной bx библиотекой в карточке лида?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    сам шаблон, вопрос где его найти ?


    Любая подобная модификация является изменением функциональной части системы, т.е. при любом обновлении необходимо будет проверять не сломалось ли чего.

    Как можно притворить это решение в жизнь?

    1) Кастомизировать шаблон компонента bitrix:crm.lead и поместить код в details.php
    Плюсы:
    - Мнимальное изменение
    - Шаблон меняется очень редко

    Минусы:
    - Придется поддерживать до конца проекта при любом обновлении

    2) Кастомизировать шаблон компонента bitrix:crm.lead.details

    Плюсы:
    - Незначительное изменение
    - Частично можно опираться на поля лида

    Минусы:
    - Придется поддерживать до конца проекта при любом обновлении

    3) Делать это через JS.
    На событии эпилога подключать библиотеку, которая будет проверять нужную страницу и выводить popup

    Плюсы:
    - Не влияет на обновления

    Минусы:
    - Не просто в разработке (требует глубоких знаний платформы)
    - Будет сложнее поддерживать, если битрикс будет менять апи/чпу

    Документации по всем 3 способам в интернете не найти.
    Ответ написан
    2 комментария
  • Битрикс24 коробка. Дела-письма произвольно переходят в статус прочитано,в чём дело?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    При отправке с почты яндекса сразу меняется статус дела в сrm на прочитано.


    Битрикс вставляет в отправляемое письмо специальное пиксель-изображение, при загрузке которого письмо отмечается прочитанным. Некоторые системы (например упомянутый яндекс) делают предзагрузку всех изображений, соответственно оно сразу отмечается прочитанным.
    Ответ написан
    2 комментария
  • Можно ли сделать из Bitrix24 видео-сервер?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    уже имеющиеся в составе коробки, с помощь. которых можно в битрикс загружать видео


    В составе коробочного Битрикс24 имеются штатные средства для загрузки и проигрывания видео в ленте или на диске, однако в некоторых местах они не совсем корректно работают (некоторые видео требуют конвертирования, что занимает достаточно много времени и ресурсов).
    Возможности стриминга видео тоже ограничены.

    Я бы посоветовал вам поискать сторонние средства видеотрансляции и уже их код вставить внутри битрикс24, т.е. чисто модули под Б24 вы не найдете.
    Ответ написан
    Комментировать
  • Как экспортировать таблицу html в Excel?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Если уж мы говорим про Битрикс24, то для начала было бы не плохо не выводить содержимое буфера до вызова вашего кода.
    Это можно сделать при помощи кода:
    global $APPLICATION;
    $APPLICATION->RestartBuffer();


    Затем чтобы это все корректно прочиталось, необходимо еще и предотвратить вывод после этого кода.
    Упрощенный вариант как можно это сделать:
    \CMain::FinalActions();

    Таким образом ваш код можно дополнить до следующего результата:
    global $APPLICATION;
    $APPLICATION->RestartBuffer();
    
    $file="demo.xls";
    $test="<table  ><tr><td>Cell 1</td><td>Cell 2</td></tr></table>";
    header("Content-type: application/vnd.ms-excel");
    header("Content-Disposition: attachment; filename=$file");
    echo $test;
    
    \CMain::FinalActions();
    Ответ написан
    Комментировать
  • Как при каждой итерации подставлять значение массива?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Структурируйте пожалуйста ваш код, чтобы не было скачущих отступов.

    Что касается задачи, если $arProps['OPLATY_PO_SCHETAM']['VALUE'] у вас содержится массив идентификаторов то это тоже сработает.
    То есть, если у вас он имеет вид:
    $arProps['OPLATY_PO_SCHETAM']['VALUE'] = [
        1,
        2,
        3,
        4
    ];


    То вам достаточно заменить ваш фильтр на
    $arFilterOplataPoSchetam = array(
        "IBLOCK_ID" => "89",
        "ID" => $arProps['OPLATY_PO_SCHETAM']['VALUE'],
        ">=DATE_CREATE" => $minDate,
        "<=DATE_CREATE" => $maxDate
    );


    Т.е. удалить "[0]"

    Как только вы это сделаете, у вас вернется массив элементов, но в вашем коде в $arFieldsOplataPoSchetamDluaDolgNaDatu всегда будет 1 результат - последний.

    Чтобы предотвратить это, нужно куда-то складывать результаты.
    Например сделать так:
    $debtsOnDate = [];
    
    while ($obOplataPoSchetamDluaDolgNaDatu = $resOplataPoSchetamDluaDolgNaDatu->GetNextElement()) {
        $debtsOnDate[] = $obOplataPoSchetamDluaDolgNaDatu->GetFields();
    }


    А после того как это сделаете можно еще и ускорить весь цикл (убрав лишние запросы):
    while ( $debtOnDate = $resOplataPoSchetamDluaDolgNaDatu->GetNext() )
    {
        $debtsOnDate[] = $debtOnDate;
    }


    Ну и конечно же, если не предусматривается вывод пользователю (например нужен только подсчет), то можно заменить GetNext на Fetch метод.
    Ответ написан
    Комментировать
  • Как создать новый тип отображения списков в Bitrix24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Битрикс24 не предполагает такой возможности без изменения ядра системы (что в рамках Битрикса не желательно, а в рамках Битрикс24 я бы сказал строго противопоказано).
    Вы можете скопировать существующий тип и создать на его основе свой, однако это не описанная в документации операция и вам необходимо будет разобраться в этом самостоятельно.

    Отчасти могут помочь статьи сторонних авторов, но их вы можете найти самостоятельно поискав по запросу "Битрикс свой тип пользовательского поля"
    Ответ написан
    Комментировать
  • Как добавить обработку события изменения сделки в коробке Битрикс24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Попробуйте использовать новую запись EventManager:

    <?php
    
    $eventManager = \Bitrix\Main\EventManager::getInstance();
    
    $eventManager->addEventHandlerCompatible(
    	'crm',
    	'OnAfterCrmDealUpdate',
    	function (&$arFields){
    
    		ob_start();
    		echo PHP_EOL."<pre>".PHP_EOL;
    		var_dump($arFields);
    		file_put_contents(__DIR__.'/log.log', ob_get_clean(), FILE_APPEND);
    	}
    );
    Ответ написан
    Комментировать
  • Как сделать автоматическое распределение лидов на ответственных менеджеров ПО ДНЯМ НЕДЕЛИ?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Я не встречал таких приложений, но это совершенно возможно сделать написав свое приложение или БП который в зависимости от дня недели распределит на того или иного менеджера ответственность за лид
    Ответ написан
    Комментировать
  • Как найти сделки у контакта в Битрикс?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Во-первых, сделки получаются методом crm.deal.list. То что вы указали (crm.lead.list) это Лиды.

    Во-вторых, увы в облачной версии нельзя так искать, только по primary контакту.
    А поле CONTACT_IDS действительно есть, но оно больше в коробке и не для всех методов используется.
    Ответ написан
    1 комментарий
  • Почему не обновляются значения списка в битрикс через REST API?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Вот и ошибка.

    В поле `LIST` автор пытается отправить json структуру, в то время как битрикс ожидает HTTP параметры.
    Таким образом его исходный запрос:
    https://domain.bitrix24.ua/rest/321/apicode/crm.deal.userfield.update.json?ID=223&LIST=[{"id": "49", "DEL": "Y"}]


    Должен выглядеть следующим образом:
    https://domain.bitrix24.ua/rest/321/apicode/crm.deal.userfield.update.json?id=223&LIST[0][ID]=49&LIST[0][DEL]=Y


    Либо, установить заголовок отправляемой информации в javascript и отравить json:
    {
    	"id": 223,
    	"LIST": [{"id": "49", "DEL": "Y"}]
    }
    Ответ написан
    Комментировать
  • Можно ли делать запросы сразу в два Bitrix24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Можно ли делать запросы сразу в два Bitrix24?


    Что такое "rest-запрос"? Это обычный HTTP запрос к определенному URI со указанием данных доступа.
    Поэтому отвечаю на ваш поставленный вопрос: можно делать почти сразу (там все же будет задержка, пусть и небольшая) запросы даже в несколько Битрикс24.

    Я пробовал подключать 2 файла с rest api, что бы они не путались переименовал класс, но не прокатывает


    Если вы говорите о библиотеке CRest которую официально поддерживает битрикс, то она не предусматривает выполнение запросов к разными Битрикс24.
    Вам все равно придется ее доработать.

    К слову сказать, ни одна библиотека из коробки не предоставляет вам таких возможностей.
    Ответ написан
    Комментировать
  • Есть ли возможность запускать cron-задания?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Нет, в облачном Битрикс24 нет ни агентов ни доступа к cron.

    Теоретически возможны следующие варианты:
    - Использовать свое REST приложение для совершения каких-либо действий
    - Использовать RPA ( не путать с модулем битрикса), например Electroneek.
    - Для некоторых задач можно запускать БП с циклом и паузой на некоторый промежуток времени (нужно подходить с осторожностью).
    Ответ написан
  • Как я могу на событии OnAfterCrmDealAdd отображать поля в карточке сделки?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Никак.
    Событие происходит в фоновом режиме и вы не можете влиять на отображение в облачном Битрикс24.
    В коробочном Битрикс24 используя модуль Push'n'pull вы можете делать определенные изменения, однако сложность таких изменений достаточно велика, как и трудозатраты.
    Ответ написан