Задать вопрос
  • Как исправить ошибки Push and Pull в битрикс24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    {"error":"NO_AUTH_FOUND","error_description":"Wrong authorization data"}


    Этот ответ выдает REST часть которая должна вернуть настройки.
    Возможно происходит одна из следующих частей:
    1. Пользователь, под которым наблюдается ошибка, является экстранет пользователем (т.е. не сотрудник организации).
    2. Публичная часть портала закрыта для пользователей (в админке, в настройках главного модуля закрыли доступ)
    3. Есть ошибки с хранением сессии на сервере.

    Если вы не закрывали доступ, то проверьте остальные пункты.
    Как проверить что пользователь является сотрудником организации? Нужно открыть в админке профиль пользователя и проверить чтобы у него было проставлено:
    - Активное подразделение (подразделение, которое является активным, т.е. не деактивировано)
    - Он должен состоять в группе сотрудники (обычно это **: Сотрудники и ID:12)

    Затем нужно проверить сессию.
    Откройте веб-консоль браузера и посмотрите на sessid (PHPSESSID в cookie) значение, при движении по порталу он не должен меняться часто (т.е. когда он один раз в день меняется - нормально, а если он меняется на каждой странице - не нормально).
    Ответ написан
  • Как принудительно обновить карточку лида/сделки?

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


    Никак
    Ответ написан
    Комментировать
  • Как запретить создавать дубль контакта через веб-хук?

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


    Нет, нельзя.
    Проверяйте сами перед созданием (getlist или findbycriteria методами).
    Ответ написан
    Комментировать
  • Как в сделку добавить "Ожидание" (Ждать) с помощью RestAPI?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    В REST такого действия еще не завезли.
    Ответ написан
    Комментировать
  • Есть ли PHP запрос автоматическое создание ссылки Битрикс 24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Если вы имеете ввиду REST методы, то нет.

    Если у вас коробочная версия и вы хотите использовать API битрикса чтобы это сделать, то вы можете посмотреть пример в файле:
    /home/bitrix/www/bitrix/activities/bitrix/crmgetpaymenturlactivity/crmgetpaymenturlactivity.php


    Обратите внимание на getUrlByDealId и createPayment методы - они как раз делают то что вам нужно.

    У меня есть небольшая, но непроверенная заготовка-выжимка:

    use \Bitrix\Main,
    	\Bitrix\Salescenter\Builder,
    	\Bitrix\Salescenter\Integration
    	;
    
    /**
     * @var int
     */
    $dealId = 1;
    
    try
    {
    	Main\Loader::requireModule('crm');
    
    	$deal = \CCrmDeal::GetByID($dealId, false);
    	if (!$deal)
    	{
    		throw new \Exception("Deal not found");
    	}
    
    	$builder = Builder\Manager::getBuilder(
    		Builder\SettingsContainer::BUILDER_SCENARIO_PAYMENT
    	);
    
    	$builder->build(
    		$this->getBuilderData($deal)
    	);
    
    	$order = $builder->getOrder();
    
    	$r = $order->save();
    
    	if (!$r->isSuccess())
    	{
    		throw new \Exception("Order update error:".implode(', ', $r->getErrorMessages()));
    	}
    
    	$foundPayment = null;
    
    	foreach ($order->getPaymentCollection() as $payment)
    	{
    		$foundPayment = $payment;
    	}
    
    	if ( is_null($foundPayment) )
    	{
    		throw new \Exception("Payment not found");
    	}
    
    	$urlInfo = Integration\LandingManager::getInstance()->getUrlInfoByOrder(
    		$payment->getOrder(),
    		['paymentId' => $payment->getId()]
    	);
    
    	// Payment url: $urlInfo['shortUrl']
    }
    catch( \Throwable $e )
    {
    	var_dump($e);
    }
    Ответ написан
    Комментировать
  • Как обновить страницу пользователя с помощью Push&Pull?

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


    Если вы спрашиваете про абстрактную возможность обновления страницы через push'n'pull технологии то она есть.
    Если вы спрашиваете конкретно про использование push'n'pull технологии в приложениях Битрикс24, то ее нет.
    Ответ написан
  • Как настроить пропущенные звонки в B24 коробка?

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

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

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


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

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


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

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

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

    Насколько я знаю, там дело в самом парсере - он не рассчитан больше чем на 3 уровня.
    Ответ написан
    Комментировать
  • Каково нормальное значение memory_limit (PHP как модуля Apache) для современных скриптов?

    gromdron
    @gromdron
    Работаю с Bitrix24
    - А каково вообще нормальное значение для современных скриптов?


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

    У него вообще морда не треснет от 256 метров на процесс? -)


    В зависимости от настроек, например 1С-Битрикс может требовать 257/512 со старта, а некоторые нерадивые разработчики и вовсе увеличивают лимиты до 1ГБ. Здесь все зависит от характера выполняемой работы и подходить нужно индивидуально.

    Каково нормальное значение memory_limit (PHP как модуля Apache)


    Не существует единого "нормального значения", но практика показывает - чем меньше тем лучше.
    Ответ написан
    4 комментария
  • Может ли Битрикс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 комментарий
  • Как правильно кастомизировать файл header.php шаблона Битрикс?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Как можно внести изменения в header не копируя весь шаблон в local?

    Как правильно кастомизировать файл header.php шаблона Битрикс?


    Вы задали 2 противоречивых вопроса потому что "чтобы работало" не есть "правильно".

    Способ "Правильно": копируете весь шаблон в папку local.
    На каждом обновлении смотрите dif'ы и обновляете так же local.

    Способ "чтобы работало": можете обьявить папку положить туда файл, а дальше - симлинки.
    Но в таком случае вам придется проверять симлинки что очень не хорошо.

    Рекомендую не заниматься ерундой и копировать шаблон as is, а сравнивать уже diff инструментами
    Ответ написан
  • Возможно ли создание девелоперского сайта в Bitrix24 коробка?

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

    Либо у вас не активный лицензионный ключ (или он редакции CRM)
    Либо вы не развернули многосайтовость
    Ответ написан