• Как запросить результат выполнения дела или задачи?

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


    Никак. Дела не предполагают "результата".
    Для этого в Битрикс24 реализована концепция Push-CRM чтобы сущность не оставалась без запланированных дел.

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


    Этот кейс обычно закрывается через задания бизнес-процессов с запросом доп. результатов или ручным движением сделки по стадиям от менеджера.
    Например бывает создают стадию "Недозвон" (если это первичный звонок) или параллельно ставят задачу с требованием результата и заданием с подтверждением.
    Ответ написан
    Комментировать
  • Как вернуться на старую версию чата b24?

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

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Работать с таблицей значений мультиполей для записи/изменения или удаления напрямую нельзя.

    Используйте методы CCrmLead или CCrmContact.

    Например для контакта (взято отсюда):
    $contactFields = [
        "FM"       => [
            "PHONE" => [
                // Телефон с ID 3567 будет изменен
                "3567" => [
                    "VALUE"      => '+78889996644',
                    "VALUE_TYPE" => "WORK",
                ],
                // Телефон в ID 1234 будет удален
                "1234" => [
                    "VALUE"      => '',
                    "VALUE_TYPE" => "HOME",
                ]
            ],
        ],
    ];
    
    $contactEntity = new \CCrmContact(false);
    
    $isUpdateSuccess = $contactEntity->Update($contactId);


    А вот как раз 3567 и 1234 вы можете получить либо через GetList той же сущности, либо через FieldMultiTable.
    Ответ написан
    Комментировать
  • Можно ли использовать Bitrix Framework без Bitrix CMS? Как начать?

    gromdron
    @gromdron
    Работаю с Bitrix24
    TLDR: Никак.

    Давно читал что Битрикс CMS -- это продукт, построенный на Bitrix Framework. Как и Битрикс 24. И по идее, можно построить на нём свой собственный продукт. Использовать без CMS или любого готового решения или продукта.


    Да, есть Bitrix Framework, но это не фреймворк в общепринятом виде, а именно каркас проприетарной системы который непрерывно связан с CMS (точнее обмазан вокруг).

    Есть ядро продукта (которое состоит из модулей main, fileman, ui, rest и сайта-админки), так вот Framework это часть модуля main который обеспечивает работоспособность системы.
    Ответ написан
    Комментировать
  • CRM Битрикс для медцентра со стоматологией, как настроить?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    TLDR;

    Внимательно ознакомьтесь с приказом Министерства здравоохранения РФ от 24 декабря 2018 г. N 911н - он сильно подпортит вам жизнь и наложит серьезные ограничения на ваши хотелки относительно Битрикс24. На вашем месте в указанных случаях лучше рассматривать профильные МИС (Медицинские информационные системы), коих великое множество и они могут существенно упростить жизнь. Лучше заплатить больше, но получить узкоспециализированное решение, чем выбрать "массовый инструмент" и получить штраф/уголовку.

    1. Сайт с возможностью записаться к врачу на прием ( врач, сам выставляет свое расписание доступности в crm и принимает заявки на прием)
    также регистратура имеет доступ к записи пациентов и отмене


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

    Можно было бы конечно приспособиться и слепить какую-нибудь интеграцию с каким-нибудь Y.Clients или сделать свою страницу через приложение, но тут решать вам.

    2. Нужно напомнить о записи пациенту через смс в день записи или заранее (текстом)

    Есть и штатные сопособы уведомления по СМС (без приложения в маркете), но в конечном итоге решать вам.

    3. Нужны карточки пациентов, с историей оказанных им услуг, оплатах и истории болезни


    Очень внимательно почитайте Приказ Министерства здравоохранения РФ от 24 декабря 2018 г. N 911н.
    Вы можете хранить историю обращений, оплаты, и некоторые персональные данные клиента в своей CRM, однако она должна соответствовать критериям МИС.
    Если вы решите хранить заключения врачей, протоколы исследований, результаты анализов - вы НЕ МОЖЕТЕ этого делать в Битрикс24.

    4. Возможность проводить рассылки смс пациентам


    Это +- штатный механизм, но какой-нибудь unisender справляется с этим намного лучше

    5. Вести финансовый отчет, сколько услуг оказано в день, на какую суммму, каким пациентам, долг пациента (если не оплатили, или оплатил частично)


    Зависит от того как в итоге вы построите работу. В целом это можно и в BI смотреть и в аналитике придумать как.

    6. Считать комиссию врачей, у каждого врача свой процент - врач А зарабатывает 20%, врач Б - 30 %


    Битрикс не предполагает работу с комиссионными вознаграждениями. Т.е. либо писать свое приложение (или искать в маркете) либо высчитывать где-то на бумажке потом.

    7. Хотели рассылки в whatsapp делать, но сервис


    Есть много других систем которые общаются с Whatsapp - посмотрите и посравнивайте.
    Ответ написан
    Комментировать
  • Как правильно делать SELECT в методе CCrmProductRow::GetList Bitrix API?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    CCrmProductRow возвращает данные по товарным позициям - это НЕ товары, а отдельная запись в b_crm_product_row которая характеризуется строго определенным набором полей вида - Название, Цена, Количества, Скидка, Тип скидки, Налог, Тип налога, Идентификатор товара.
    Она НЕ расширяется и НЕ содержит свойств инфоблока.

    Для того чтобы получить "PROPERTY_62" вам нужно:
    1. Запросить товарные позиции для Сделки
    2. Отобрать только те товарные позиции у которых заполнен PRODUCT_ID
    3. Выполнить дополнительный запрос к инфоблоку торгового каталога и каталогу торговых предложений для получения свойств.
    Ответ написан
    Комментировать
  • Как импортировать записи в Ленту новостей Битрикса помимо API?

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

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


    Открыть форму создания задачи, развернуть блок "Дополнительно", нажать "Добавить поле".
    6544bec3ee645910942197.png

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

    Если все равно хотите добавить: Админка - Настройки - Настройки продукта - Пользовательские поля.
    При добавлении указать код сущности TASKS_TASK
    Ответ написан
    Комментировать
  • Как мне добавить пользовательское поле в поисковый "движок" в Битрикс24?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    В коробочной версии:
    - Зайти в админку
    - Выбрать инфоблок с товарами
    - В свойствах отметить "Участвует в поиске"
    - Обновить товары.
    Ответ написан
  • Bitrix24 Можно ли использовать вебхуки и prolog_before.php в одном файле обработчике?

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


    Возможен, но это костыль - нужно отключить авторизацию для этого файла (NEED_AUTH).

    Если вы уже работаете с коробкой Битрикс24, то зачем вам вообще rest?
    Вы можете штатно подписаться на это и множество других событий и обработать их без всякого http взаимодействия (даже страницу не нужно новую создавать).

    Почитайте про события:
    https://dev.1c-bitrix.ru/learning/course/index.php...
    https://bx24devbook.website.yandexcloud.net/Razrab...

    И про свой код в битрикс: https://bx24devbook.website.yandexcloud.net/Razrab...
    Ответ написан
    Комментировать
  • Как загрузить папку в Б24?

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


    Здесь вы уперлись в ваш собственный лимит и решили перейти на более "простой" как вам показалось вариант.
    Нет, лучше не использовать эластичные диски, а выделять квоту явно и прогнозировать ее рост.
    Сотни гб - это объем который пугает вашу организацию (или вас), но у нас на некоторых проектах расчет идет в ТБ.

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


    Здесь вы упираетесь в организацию файлов - любая ФС будет тормозить при большом количестве файлов в одной директории. Диск битрикса24 не исключение - каталогизируйте ваши данные. Старайтесь не допускать более 500 объектов в директории.

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


    Если коробочный Битрикс24 находится у вас внутри сети, то скорее всего неправильный проброс.
    Неправильная конфигурация встречается очень редко, но если вы используете не bitrix env, то такое возможно.
    Ответ написан
    Комментировать
  • Как сделать, чтобы когда пользователь изменял данные клиента в Bitrix24, они автоматически менялись у остальных пользователей битрикс24?

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

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Штатно такой возможности нет. Интеграция Битрикс24 <-> БУС подразумевает что интегрируется стандартный Б24 и стандартный БУС без допилов.
    Ответ написан
    Комментировать
  • Где посмотреть созданные мною поля в карточке сотрудника?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    UPD 07.12.2023: Приношу свои извинения - неправильно прочитал и интерпретировал вопрос.

    Да, на данный момент есть такая проблема - созданные поля для сотрудника в облачном битрикс24 нельзя удалить через интерфейс. Об этом создана заявка в разработку 115505, можете подключиться (написать в техпод для повышения приоритета). Ждем исправление.

    Поля, однако, можно удалить через REST:
    * получить ID поля через user.userfield.list - https://dev.1c-bitrix.ru/rest_help/users/userfield...
    * удалить по ID поле через user.userfield.delete - https://dev.1c-bitrix.ru/rest_help/users/userfield...


    Предыдущий ответ удаляю чтобы не вводить в заблужение.
    Ответ написан
  • Как сделать pdf файл для скачивания из элемента битрикс?

    gromdron
    @gromdron
    Работаю с Bitrix24
    CFile::MakeFileArray

    MakeFileArray принимает параметром физический файл который будет, т.е. сначала вам нужно создать корректный pdf файл и положить его куда-нибудь в tmp директорию, а оттуда сохранить.

    А у вас судя по всему render() отрисовывается в контексте текущей страницы, где уже выведен хедер и от этого файл битый.
    Ответ написан
    Комментировать
  • ЧПУ на Битрикс через urlrewrite?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Вот прям вот так на стандартных компонентах вряд ли получиться.
    Дело в том что у вас конфликт с SEF. С одной стороны вы скорее всего в SEF указали что путь к детальной странице у вас выглядит как: #SECTION_CODE_PATH#/#ELEMENT_ID# и в таком случае ваша фраза "brands" воспринимается как символьный код одного из разделов.

    Я бы порекомендовал собрать свой комплексный компонент, который бы работал со следующими ЧПУ:
    /catalog/brands/#BRAND_CODE#/ - деталка конкретного бренда
    /catalog/brands/ - список брендов
    /catalog/item/#ELEMET_CODE#/ - деталка конкретного элемента
    /catalog/section/#SECTION_CODE_PATH#/ - отображение списка элементов в разделе
    /catalog/ - отображение списка разделов.

    А уже в качестве простых компонентов (в составе комплексного) использовать штатные компоненты битрикса.
    Ответ написан
  • Можно ли запрашивать хуки без https?

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

    Однако, для тестовых разработок и внутренних можно использовать и незащищенное HTTP соединение, правда для этого необходимо обьявить константу: REST_APAUTH_ALLOW_HTTP.

    Пропишите где-нибудь в dbconn.php или init.php:

    define("REST_APAUTH_ALLOW_HTTP", true);
    Ответ написан
    Комментировать
  • Как интегрировать фильтр в гриды битрикса?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Простейший пример проиллюстрирован в документации на соответствующей странице: main.ui.grid и main.ui.filter, там же можно почитать больше подробностей про дополнительные ключи.
    Ответ написан
    Комментировать
  • Bitrix 24 как добавить редактирование своего поля?

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

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

    В теории конечно можно разрешить редактирование этих столбцов, но только для тех товарных позиций что созданы из товаров, однако это будет водить в заблуждение - будет создаваться визуальная коллизия что свойство заполняется у конкретной позиции данной сделки, однако это будет редактироваться у всех товарных позиций созданных по этому товару во всех сделках.
    Да и даже это изменение возможно только в коробке Битрикс24.
    Ответ написан
    Комментировать
  • Как сделать сортировку по стрелкам в компоненте main.ui.grid?

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

    Если вы внимательно посмотрите на код, то у вас есть фрагмент:

    $sort = $grid_options->GetSorting(['sort' => ['ID' => 'DESC'], 'vars' => ['by' => 'by', 'order' => 'order']]);


    Если вы поставите дебаг переменной `$sort` и будете смотреть как он меняется при обновлении страницы (щелкать по столбцам и обновлять страницу), то вы увидите что он содержит там ключ стобца из HEADERS (COLUMNS) и направление (ASD/DESC), и все это будет вроде бы в `$sort['sort']`.

    Далее, если вы посмотрите на фрагмент кода:

    $res = \CIBlockElement::GetList(array("ID"=>"ASC"), $filterD, false, $nav_params);


    То благодара документации по методу вы узкаете что первым параметром передается массив для сортировки результатов и в вашем случае он всегда фиксированный - по возрастанию ID.

    Если вместо фиксированного параметра вы передадите тот самый набор из сорт то у вас все заработает.
    Ответ написан
    1 комментарий