Задать вопрос
  • Как передать REST API параметр типа Integer?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Вы не правильно составляете запрос. Вы посылаете не TASKID = 2, а структуру из content которая содежит json от http_build_query и уже нужного массива.

    Замените:
    $data = array('TASKID' => $number);
    $curl_post_data = array(
        'content' => http_build_query($data)
    );
    $curl_post_data = json_encode($curl_post_data);


    На:
    $curl_post_data = array('TASKID' => $number);
    Ответ написан
    Комментировать
  • Не работает вебхук в Битрикс24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Судя по ответам сервера в Битрикс24 у вас есть обязательные поля "Тематика" и "Проект", которые вы не передаете в CURL-запросе
    Ответ написан
    Комментировать
  • Как установить модуль Диск на 1С-Битрикс: Корпоративный портал 14.9.3?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Никак. Согласно истории версий модуль Диск появился в системе с 15 версии (v15.0.1).
    Вам нужно либо обновить портал, либо отказаться от использования этого модуля.

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

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


    Да, такое сделать возможно.

    а самое главное целесообразно ли c точки зрения его архитектуры?


    Не вижу ничего, что бы ломало архитектуру продукта
    Ответ написан
    Комментировать
  • Можно ли в Bitrix написать API на основе компонента формы?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Можно ли это сделать? Можно.
    Существует ли это в данный момент? Нет.

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

    gromdron
    @gromdron
    Работаю с Bitrix24
    Попробуйте отлавливать на событии OnAfterUserLogin - в нем уже есть $arParams, в котором есть USER_ID (в случае успешной авторизации). Единственное, нужно предусмотреть корректную обработку backurl.
    Ответ написан
    Комментировать
  • Как убрать дубли из массива bitrix?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Читаем внимательно документацию к CIblockElement::getList().


    arGroupBy
    Массив полей для группировки элемента. Если поля указаны, то выборка по ним группируется (при этом параметр arSelectFields будет проигнорирован), а в результат добавляется поле CNT - количество сгруппированных элементов. Если указать в качестве arGroupBy пустой массив, то метод вернет количество элементов CNT по фильтру. Группировать можно по полям элемента, а также по значениям его свойств. Для этого в качестве одного из полей группировки необходимо указать PROPERTY_, где PROPERTY_CODE - ID или символьный код свойства.
    Необязательное. По умолчанию false - записи не группируются.
    Ответ написан
    Комментировать
  • Почему скрипт выпуска сертификата LetsEncrypt не находит сайт?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Есть у меня подозрение что вы не то пишите.
    При выходе в панель у вас должна быть аналогичная картинка
    ------------------------------------------------------------------------------------
    SiteName        | dbName          |       Type | S | Certificate          | Key
    ------------------------------------------------------------------------------------
    default         | sitemanager0    |     kernel | N |  |
    ------------------------------------------------------------------------------------

    И при указании
    Enter site name (default): xxxxxxxxxx.com

    Вы должны писать то, что находится в первом столбце. Т.е. не url-сайта, а вот это вот "default" или что у вас там.
    Ответ написан
    4 комментария
  • Как создать корзину пользователя средствами API без авторизации, без $USER для любого пользователя?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Вы не можете создать заказ не имея пользователя в системе сохранив нормальную работу системы.

    1С-Битрикс нормально работает только в двух вариантах:
    1) Вы регистрируете пользователя и оформляете заказ на него
    2) Вы обязательно требуете авторизации у пользователя перед созданием заказа

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

    gromdron
    @gromdron
    Работаю с Bitrix24
    Битрикс Windows-окружение больше нет?


    Веб-окружение под Windows уже 2 года как не распространяется, однако его можно найти на просторах интернета.
    Не рекомендую использовать данный способ, так как он имеет значительные проблемы для последних версий битрикса.
    Например с 1 января 2018 битрикс требует php5.6, а насколько я помню в веб-окружении 5.4

    Тестировать локально теперь только на виртуалке? Как я понимаю на альтернативных Web-cерверах надо шаманить чтоб запустить его.


    Если мы говорим о "Битрикс: Управление сайтом", то сюда прекрасно подходит OpenServer.
    Да, нужно будет подшаманить с mbstring, да и вообще по bitrix_server_test.php проверить его, но вы, как разработчик, должны уметь это делать и не иметь с этим проблем.

    Если вы хотите работать максимально просто и приближенно к боевым, то виртуальная машина вам в помощь. Там уже все настроено.
    Ответ написан
    Комментировать
  • Как правильно настроить многоуровневые скидки через правила корзины?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Вы просто не внимательно почитали документацию по продукту.
    Если покопаться в документации (я привожу пример из блога, но в документации это тоже есть), то можно увидеть, что скидки применяются последовательно по матрице применения. Сначала отрабатывают ВСЕ скидки минимального приоритета, то есть по П(риоритету) и С(оритровке): П1С1, П1С2, П1С10, а затем уже П2С1, П2С4.... Таким образом П1С2 будет выполнена раньше П2С1.

    Таким образом порядок правил у Вас такой:
    10% на бренды ААА и БББ, новую коллекцию если не отработало идем дальше
    50% на бренд ССС, новую коллекцию если не отработало идем дальше
    30% на всю новую коллекцию

    Для того чтобы диагностировать эту ситуацию нужно:
    1) Скриншоты условий скидок (как они прописаны в правилах корзины 1 и 2 вкладки)
    2) Данные по 3м товарам: к какой категории они относятся (и вообще все параметры которые задействованы в п.1)
    Ответ написан
    Комментировать
  • Как добавить свои собственные поля в уже имеющийся склад в 1С-Битрикс:Управление сайтом?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Вы можете их добавлять.

    Посмотрите в карточке склада - https://screenshots.firefox.com/sKkHtPmyBo8eMMZZ/w...
    Почитайте про пользовательские поля: https://dev.1c-bitrix.ru/learning/course/index.php...

    Объект который вас интересует: CAT_STORE
    Ответ написан
    1 комментарий
  • Бизнес-процесс в Битрикс24. Проверка условий по переменным - где я ошибаюсь?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Эм... а что у Вас за жесть со скобками происходит?

    Это не нормально
    =if ({=Variable:TODAY{{=datediff({=Variable:DATE1}, {=System:DATE}, '%d' ) }}} <4, 'true')


    Для корректной работы создайте 2 переменных:

    1) Количество дней (тип "Число"), которое будет хранить разницу между двумя числами
    2) Условие (тип "Да/Нет"), которое будет хранить соответствие условий количества дней

    Лучше разделить эти переменные, так как в случае усложнения процесса количество дней и условие может ветвится.

    В блоке изменение переменных можно прописать соответствующие значения
    Для получения разницы:
    =datediff({=Template:DATA1}, {=System:Now}, '%d')

    Для сравнения
    =if({=Variable:diffDate}<4, 'Y', 'N')
    Ответ написан
    1 комментарий
  • Как получить корневой раздел элемента инфоблока?

    gromdron
    @gromdron
    Работаю с Bitrix24
    CIblockElement получает элемент, но не раздел и элемент не может быть вложен в элемент - только в раздел (причем не в один).
    CIBlockElement::GetByID($id)

    Если Вас интересуют все корневые элементы (т.е. элементы у которых нет раздела для привязки), то нужно воспользоваться CIblockElement::getList() и получить все товары у кого SECTION_ID = false, "" или 0. Почитайте в документации на эту тему: https://dev.1c-bitrix.ru/api_help/iblock/classes/c...

    Если так получается, что в инфоблоке у Вас есть 1 корневой раздел и Вам нужно получить его элементы, то для начала Вам нужно получить его ID через CIblockSection::getList() и уже потом в SECTION_ID через CIblockelement::getList достать все его элементы (INCLUDE_SUBSECTIONS = N!). Почитайте в документации на эту тему: https://dev.1c-bitrix.ru/api_help/iblock/classes/c...
    Ответ написан
  • После смены пароля через CUser::Update вход по CUser::Login на 20 минут перестает работать. Что делать?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Надеюсь меня тут поругают и ответят как надо было побороть эту проблему.


    Конечно поругают: вы ведь делаете кривой велосипед, вместо того чтобы взять и использовать штатную CUser::ChangePassword (ее описание в API).

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

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Ситуация довольно щекотливая, так как активити "Пауза в выполнении" принимает в себя дату, а активити "Ближайший день недели" (из приложения kosas.active) возвращает строку, которую Вы ну никак не можете использовать для использования в поле типа "Дата и время".
    Однако есть небольшой хак, который пока работает. В активити "Паузка в выполнении" можно модиифицровать дату добавив 0 дней.

    Т.е. вместо:
    {=A72863_31163_92582_78356:s_date}
    Написать:
    =Dateadd({=A72863_31163_92582_78356:s_date}, "-0d")


    Тогда это прекрасно работает... пока работает...
    Ответ написан
    2 комментария
  • Как создать локальное приложение обработчик в Bitrix24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Изучить документацию по Приложениям24 и начать их создавать :)
    Ответ написан
    Комментировать
  • Какой функционал необходим в CRM для веб-студии?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Возможно в меня сейчас что-нибудь прилетит, но мы используем Битрикс24 (собственно его же и внедряем).
    Сделка прекрасно разбиваемся по направлениям:
    - Проект
    - Сопровождение
    - Домены
    - Лицензии

    Для разработчиков используем Redmine, а для тех.поддержки Okdesk.

    Получается следующий кейс: все новые обращение поступают в лиды, их обрабатывают сейлы (сотрудники отдела продаж), они определяют куда это все отправляется.
    Далее заключаются соответствующие договоры.
    - Лицензии (они же регулярные/разовые продажи продлений).
    За Н дней до окончания лицезнии напоминание ответственному менеджеру, печать документов по лицензии, согласование цены и особых условий (для крупняков, госов и т.п.)

    - Домены
    То же, что и с лицензией, за исключением того что там нет согласования, а из документов только счет/акт

    - Сопровождение
    Просто перечень сделок на основании договоров, только справочная информация, бизнес-процесс на заведение (создание учетных записей в Okdesk-системе) и учет статусов (нужно ли заключать доп.соглашения или что)

    - Проект
    Длительная штука, там есть интеграция с Redmine по количеству задач и потраченных часов.

    Все внутренние коммуникации, евенты и т.п. берет на себя битрикс24. Учет рабочего времение (формальный, т.е. не сколько отработал, а работал ли вообще).
    Рядовые сотрудники получают задачи в Redmine / Okdesk, а портал у них для общей информации по компании.

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

    P.S. Jira кусается по цене сильно
    Ответ написан
    4 комментария
  • Как вывести пользовательское свойство для раздела Bitrix?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Ну так вы же фильтруете по IBLOCK_ID, что мешает фильтровать по коду раздела или по его ID?

    $select = [
    	"UF_HEADH1"
    	
    ];
    
    $sort = [
    	"SORT" => "ASC"
    ];
    
    $filter = [
    	/* @var int ID инфоблока */
    	'IBLOCK_ID' => 1,
    
    	/* @var string Символьный код раздела */
    	'CODE' => 'SECTION_CODE',
    
    	/* @var int ID раздела */
    	'ID' => 123,
    ];
    
    $rsResult = CIBlockSection::GetList(
    	$sort,
    	$filter,
    	false,
    	$select
    );
    while($arResult = $rsResult->GetNext())
    {
    	echo $arResult['UF_HEADH1'];
    }
    Ответ написан
    4 комментария
  • Лид не найден. Не создается лид при повторном обращении через открытую линию после удаления первого лида. Почему?

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


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

    Как создать сделку с клиентом, с которым идет общение в открытой линии, когда при попытке перейти в CRM лид не обнаруживается? При этом я не могу создать новый лид и внести в него id vk, так как в открытой линии не виден id vk клиента.


    Для уже удаленного, кроме как через API в коробочной версии никак.
    Для облака - вообще никак.
    Ответ написан
    Комментировать