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

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


    Читайте документацию:
    1. Как работают события в Bitrix Framework
    2. События CRM
    Ответ написан
    Комментировать
  • Как при импорте создавать категории?

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


    Ответ на этот вопрос можно дать только после полного анализа следующих факторов:
    1. Коробка/Облако? Если коробка, какой версии.
    2. Нужно предоставить файл для анализа

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

    И как прописать категории более 4-ого уровня

    Насколько я знаю, там дело в самом парсере - он не рассчитан больше чем на 3 уровня.
    Ответ написан
    Комментировать
  • Может ли Битрикс24 заменить low-code BPM систему?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    есть ли у продуктов вроде ELMA преимущество перед Битрикс24


    Безусловно есть.
    Например Битрикс24 это не low-code BPM система.
    Ответ написан
    Комментировать
  • Как реализовать выбор пользователя по должности в битрикс24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    1. Поля в бизнес-процессе поддерживают ограниченный набор типов полей.
    Соответственно перед тем как что-то делать, нужно понять что мы хотим "заполнить".

    Предположим, что у нас есть некоторая переменная "UsersWithTargetPosition", имеющая тип - Пользователь, множественная.

    2. Т.е. набор типов ограничен, то и набор значений ограничен.
    Например, если это множественная переменная, то она должна принимать массив.
    CUser::GetList - вернет объект, который нужно обработать.

    3. Внимательнее читайте документацию к методу: https://dev.1c-bitrix.ru/api_help/main/reference/c...
    У вас несовпадение входящих переменных.
    Для вашего случая, я бы воспользовать более лаконичным UserTable

    4. Не забывайте обрабатывать ошибки. Вы работаете с блоком php кода.

    Для приведенного случая, код получиться примерно таким:

    $usersWithPosition = [];
    
    try
    {
    	$position = "Кладовщик";
    
    	$users = \Bitrix\Main\UserTable::getList([
    		'select' => ['ID'],
    		'filter' => [
    			'=WORK_POSITION' => $position
    		]
    	]);
    
    	foreach( $users as $user )
    	{
    		$usersWithPosition[] = "user_".$user['ID'];
    	}
    }
    catch( \Throwable $e )
    {
    	$this->WriteToTrackingService($e->getMessage(), 0, \CBPTrackingType::Error);
    }
    
    $this->SetVariable('UsersWithTargetPosition', $usersWithPosition);


    Проверьте код, возможно там есть ошибки.
    Ответ написан
    Комментировать
  • Бизнес-процесс в битрикс24 - как проверить год работы сотрудника?

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


    Штатно - никак.

    В Битрикс24 бизнес-процесс это последовательность действий запускающася над определенной сущностью, поддерживающей БП.
    Пользователи - не являются сущностью для которой доступны бизнес-процессы.
    Соответственно - нужно либо прийти к дублирующему механизму использующему БП, либо отказаться от того чтобы делать это на БП в пользу, например REST-приложения.

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

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

    Что касается БУС, то кто во что горазд:
    - Создавать дополнительный сайт
    - Создавать дополнительные свойства и ими управлять
    - Просто подключить google translate к сайту

    Сильно много зависит от того на какую аудиторию расчитано, потому что у каждой страны свои законы относительно работы ИМ.
    Ответ написан
    Комментировать
  • Сайт эро массажа с интеграцией битрикс24?

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

    Наверное я бы исходил из следующих утверждений:
    1. Получать заявки с ваших сайтов эротическим содержимым можно. Особенно если они не противоречат законодательству РФ.
    2. Если важна приватность, я бы рекомендовал Коробочную версию Битрикс24 - там вы можете вообще все что угодно что не противоречит законодательству РФ (а если нет решения суда, то и ограничений нет). Мне кажется, что таким сайтам очень важна приватность.
    Ответ написан
    2 комментария
  • Как вывести миниатюру фото в списках CRM Битрикс 24 (Коробочная версия)?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Как в представлении списка, в разделах CRM системы вывести миниатюры изображений (фотографий)?


    Какой-то волшебной кнопки-настройки нет.
    Все по-старинке:
    - Копируем цепочку шаблонов к себе (чтобы шаблоны компонентов прямо в bitrix24 шаблоне сайта не править)
    - Определяем что поле типа файл, определяем что файл - изображение, выводим превью.

    Увы, но в реальности эта работа не на ответ на Q&A, а даже на целую статью или задачу тянет.
    Ответ написан
    Комментировать
  • Почему метод crm.item.update не обновляет поле?

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

    Давайте попробую обьяснить:
    - Есть смарт-процесс. Это верхнеуровневая сущность подсистемы смарт-процессов. За работу с ними отвечают crm.type.* методы.
    - У каждого смарт-процесса есть элементы, которые состоят из фиксированных полей и пользовательских полей.
    - Когда вы создаете элемент сп вы заполняется фиксированные поля + пользовательские поля элемента.

    Таким образом, метод crm.item.update обновляет значения полей у элементов смарт-процесса.
    И на вход вы должны подавать ID элемента смарт-процесса, а не ID самого смарт-процесса.
    Ответ написан
    Комментировать
  • Как поправить карточку в CRM после восстановления?

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

    1. Проверка доступности и мониторингом в админке портала. Что она сообщает?
    2. Понять были ли кастомизации? Может быть существует папка local и переопределенные шаблоны/компоненты.
    3. Какие кастомные модули установлены. Возможно через marketplace.1c-bitrix.ru что-то ставили.
    4. Возможно собрали кривой бекап и часть файлов не загрузилось.
    5. Рекомендую так же проверить логи php и коносль браузера.

    Причин как видите может быть много и с наскока такие вещи отгадать будет очень сложно.
    Если вы собирали бекап стандартными средствами, не проводили кастомизаций портала и разворачиваетесь в чистом окружении Bitrix Env, то можете сэкономить себе кучу времени и обратиться в техподдержку, либо попробовать диагностировать проблему самостоятельно.
    Ответ написан
    1 комментарий
  • Возможно ли создание девелоперского сайта в Bitrix24 коробка?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Скорее всего вы не выполнили начальные требования к девелоперскому сайту:

    Либо у вас не активный лицензионный ключ (или он редакции CRM)
    Либо вы не развернули многосайтовость
    Ответ написан
  • Как в bitrix24 с помощью входящего вебухка получать из задачи только определённые поля?

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


    Метод task.item.getdata устарел и не имеет параметров фильтрации полей. Возвращаются ВСЕ поля задачи.

    Используйте метод tasks.task.get который и вернет необходимые вам поля.
    Ответ написан
    Комментировать
  • Bitrix24 перенос на ubuntu?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Кто сталкивался переноса сетевого окружения и cms bitrix24 c centos7 на убунту?


    Если вы обладаете достаточными знаниями в Битрикс24 и в системном администририровании то можно поднять на чем угодно.
    Если хотя бы один из этих пунктов отсутствует (например вы разработчик, но никогда не трогали linux-сервер ИЛИ вы системный администратор но в php и битриксе ни бум-бум), то лучше сразу оставить это дело и перейти на Fedora-based дистрибутивы в качестве сервера.

    С технической точки зрения Битрикс24 представляет собой целый комплекс программного обеспечения: помимо рутинной базы данных с картинками сюда же входит достаточно сильная зависимость от серверного ПО. Можно ли пользоваться Битрикс24 на голом Apache или PHP-FPM? Конечно можно, однако из-за некачественной настройки будет страдать конечный пользователь. Системному администратору все равно, а вот пользователю явно не будет комфортно, если вдруг какие-то из заявленных возможностей (например скачивание файлов в архиве, загрузка больших файлов или быстрая отдача файлов) работать не будут.

    Bitrix Env это подготовленное окружения для платформы Битрикс (вне зависимости БУС это или Б24). Уже "из коробки" будут произведены настройки некоторого системного программного обеспечения (SElinux), установлены необходимое ПО (nginx, apache, percona, php и другие) и поготовлены ansible playbook'и для установки/изменения сопутствующего ПО. Ну и конечно обертка в виде bash-меню для их запуска.

    В целом из чего состоит bitrix env не секрет, это явно описано в документации. Не смотря на то что вся документация пишется по Fedora-based дистрибутивы, при наличии должных знаний и опыта не составит труда перенести все это на Ubuntu или любой другой дистрибутив.
    Ответ написан
  • Как внедрить фотогалерею в карточку клиента в CRM Bitrix24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Подскажите пожалуйста решение.


    Стандартного способо (активировал и поехали) нет, т.е. слишком узкая потребность.
    Есть несколько способов штатно добиться чего-то подобного:
    1. Использовать в качестве файлов и папок элементы универсального списка, привязанные к компании
    2. Сделать БП, который при создании компании на общем диске будет создавать папку под клиента и сохранять ссылку в пользовательское поле.

    Есть другой вариант: написать свое rest приложение с встройкой в карточу компании вкладкой - там можно будет делать все что вам угодно, но без навыков и знаний программирования вы просто не сможете это сделать.
    Ответ написан
    Комментировать
  • Почему \Bitrix\Crm\FieldMultiTable::getList не находит компанию с номером телефона +7, а с 7 видит?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Дело в том что у вас номер телефона хранится в международном формате, т.е. "+7...", а вы в первой регулярке указываете что он должен начинаться строго с цифры.

    Надо сказать что искать по сырым значениям телефонного номера это то еще занятие и так лучше не делать.

    Лучше воспользоваться методом поиска дубликатов:

    \Bitrix\Main\Loader::requireModule('crm');
    
    /**
     * Телефон который будем искать
     * @var string
     */
    $phone = '2131164';
    
    /**
     * Список всех ID лидов с этим телефонным номером
     * @var int[]
     */
    $leadIds = [];
    
    
    $adapter = \Bitrix\Crm\EntityAdapterFactory::create([
            'FM' => [
                'PHONE' => [
                    ['VALUE' => $phone]
                ]
            ]
        ],
        \CCrmOwnerType::Lead
    );
    
    $dups = (new \Bitrix\Crm\Integrity\ContactDuplicateChecker())
        ->findDuplicates(
            $adapter,
            new \Bitrix\Crm\Integrity\DuplicateSearchParams([
                'FM.PHONE'
            ])
        );
    
    foreach($dups as &$dup)
    {
        if(!($dup instanceof \Bitrix\Crm\Integrity\Duplicate))
        {
            continue;
        }
    
        $entities = $dup->getEntities();
        if(!(is_array($entities) && !empty($entities)))
        {
            continue;
        }
    
        //Each entity type limited by 50 items
        foreach($entities as &$entity)
        {
            if(!($entity instanceof \Bitrix\Crm\Integrity\DuplicateEntity))
            {
                continue;
            }
    
            if ( $entity->getEntityTypeID() != \CCrmOwnerType::Lead)
            {
                continue;
            }
    
            $leadIds[] = $entity->getEntityID();
        }
    }
    Ответ написан
    Комментировать
  • Как вы делаете бекап портала большого объема?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Это сильно зависит от целевой потребности, от архитектуры используемого Битрикс24, от навыков системного администратора. Надо сказать что 500ГБ это не большой портал.

    Если предположить что у вас один сервер, на котором находится и файлы и базы данных и сама система то мы обычно поступаем так:

    1. Бекап базы данных снимать через Percona XtraBackup.
    Можно использовать mysqldump с разными опциями производительности, но тут уже зависит от разных обстоятельств.

    2. Файловая часть.
    Тут зависит от способа ведения разработки и других требований.
    В самом простом случае: просто tar'ом в архив и отправка на сервер бекапов
    Если места не очень много: rsync на удаленный сервер as is

    Если есть разработка то снимается 2 бекапа: ядро (все кроме папки upload) и файлы (только upload).
    Методы те же.

    Т.е. по факту разработчикам отдается дамп базы и ядро, а пользовательские файлы не передаются.
    Если есть git с внешним репозиторием, то можно снимать вообще 2 бекапа: ядро (только папка bitrix) и файлы (только папка upload)

    Иногда используется сокращенный бекап: средствами системы формируется бекап без поискового индекса и папки upload и хранится он в облаке б24, а файлы в файловом хранилище (AWS S3-совместимое хранилище, например Yandex.Object Storage).

    Все очень индивидуально.
    Ответ написан
    Комментировать
  • Как заставить работать обработчик событий битрикс?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Нужно больше контекста.

    Я сейчас поставил вот такой код в PHP консоль:
    AddEventHandler("crm", "OnBeforeCrmLeadAdd", "CheckOnBeforeCrmLeadAdd");
    AddEventHandler("crm", "OnAfterCrmLeadAdd", "CheckOnBeforeCrmLeadAdd");
    AddEventHandler("crm", "OnAfterExternalCrmLeadAdd", "CheckOnBeforeCrmLeadAdd");
    
    function CheckOnBeforeCrmLeadAdd(&$arFields) {
    file_put_contents($_SERVER["DOCUMENT_ROOT"]."/log_lead.log",print_r($arFields,true)."\n",FILE_APPEND);
    }
    
    \Bitrix\Main\Loader::IncludeModule('crm');
    
    $obLead = new \CCrmLead(false);
    $ID = $obLead->Add(
    	$leadfields = ['TITLE'=>'test'],
    	true,
    	array("REGISTER_SONET_EVENT" => true, "DISABLE_USER_FIELD_CHECK" => true)
    );


    Файл создался.

    Проверь права на папку куда записываешь файл и проверь подключен ли модуль crm на странице.
    Ответ написан
    Комментировать
  • Как добиться отображения Чатов в мобильном приложении Битрикс аналогично приложению Битрикс24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Вам нужно не открывать iframe в чаты, а разработать код, который будет делать то же самое.
    Т.е. это не какая-то галочка или другой шаблон компонента, а уже более нативная разработка.
    Ответ написан
    Комментировать
  • Как получить id лида созданного через плагин WooCommerce(Интеграция wooCommerce с bitrix)?

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


    Замените вызов архаичного метода с логином и паролем на вебхук crm.lead.add
    В результате вызова он вернет вам идентификатор созданного лида, который вы сможете использовать для заполнения товарных позиций
    Ответ написан
    1 комментарий
  • Как отобразить файлы на физическом диске в диске Битрикс24?

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


    Нельзя.
    Архитектурно программным продуктом не заложена такая возможность.
    Ответ написан
    Комментировать