У метода выборки секций CIBlockSection::GetList есть опция подсчета элементов в каждой секции, значение выводится в ELEMENT_CNT. И у него нету возможности делать подсчет с учетом прав на элементы. В самом catalog.section.list для этого делается дополнительная выборка через CIBlockElement::GetList
У меня возник вопрос. Через вебхук и свойство crm.company.get я получаю информацию о компании. Но как мне считать галочку "готова к шерингу". Нужны ли вебхуку отдельные права для этого? Буду очень благодарен.
Было бы удобно, будь возможность работать с сущностью: Email-маркетинг. А точнее возможность с помощью REST через веб-хук отправлять заявку на подписку клиента.
если в битриксе объединить 2 компании - то через REST api об этом никак не узнать.
При этом если выполнить запрос по crm.company.get по удаленному id то в ответ получим только {"error":"","error_description":"Not found"}
Если бы в этом ответе было еще одно поле merged_with id то счастье бы наступило немедленно в области синхронизации.
Я получу этот ид и повторю операцию объединения в базе 1С. Если этого не сделать - то при следующем обмене 1С увидит "нового" не синхронизированного контрагента и выдавит его в битрикс. и опять придется бороться с дублями.
добавьте в crm.company.get и crm.contact.get поле с информацией о выжившем после объединения id
Сейчас для передачи файлов в/из облака нужно держать постоянно браузер открытым. Если у вас в облаке картинки, например 500k шт, то при скорости передачи 1шт/сек процесс длится очень долго (6 дней, круглосуточно). При этом если браузер закрыть, то он прерывается. На cron не посадить. Крайне неудобно и долго.
Реализовал загрузку файлов на форме через AJAX-действия, хотелось бы подписаться на прогресс upload'а, но в методе BX.ajax.runComponentAction такой возможности нет. Зато в BX.ajax (который по сути вызывается для Ajax-действия) есть параметр start - можно было бы получить var xhr = BX.ajax.runComponentAction, подписаться на нужные события и после запустить запрос xhr.send. Но параметр start для BX.ajax.runComponentAction отсутствует. Предлагаю добавить такой параметр.
В ядре D7 было б не плохо внедрить обработчик "OnBeforGetMap", в котором можно было б добавлять свои зависимости после формировании результата но перед его возвратом в методе getMap. Для модуля report это панацея на сегодняшнее время)
Компоненты Bitrix уже поддерживает ajax режим, но можно пойти дальше
Реализовать аналог laravel livewire - Fullstack web технология которая избавляет от необходимости трогать js код руками и изменяет вашу жизнь к лучшему
Сейчас основываясь на поле LID таблицы b_sale_basket можно создавать на сайт возможности многокорзинности, когда покупателю может быть доступно несколько корзин для товаров. Это очень удобно с точки зрения покупателя, можно создать 1-у корзину, 2-ю, 3-ю где покупатель может хранить товары и переключатсья между корзинами и в тоже время в заказ отправить любую из корзин, а другие просто будут хранится дальше. Есть небольшой пример этого здесь https://coderun.ru/blog/neskolko-korzin-pokupatelya-v-bitrix-redakciya-bizness/
Но хотелось бы увеличить длину поля LID в таблице что бы можно было туда писать не 2-а символа а осмысленную строку, например клиент имеет уникальный ид и можно к примеру писать запись ид_клиента_префикс_корзины.
При разработке приложений для Битрикс24 можно пользоваться методами js-библиотеки, среди которых есть несколько методов для показа системных диалогов. Например, метод BX24.selectUser позволяет открыть системный диалог выбора пользователей. Проблема в том, что нет соответствующих методов, чтобы программно закрыть показанный системный диалог.
Поэтому хотелось бы, чтобы js-библиотека Б24 была дополнена методами закрытия показанных системных диалогов.
Добавить метод GetPublicEditHTMLMulty для Пользовательского свойства который будет отвечать за вывод множественного свойства в публичной части сайта. На подобие того как это сделано для вывода множественного свойства в административной части.
В модуле catalog есть красивое js-расширение core_condtree, на основании которого можно строить сложные условия для правил корзины (модуль sale) и т.п. Он регистрируется как extension core_condtree и его классы напрямую никак не связаны с каталогом товаров. То же и со стороны php - в модуле каталога лежит CGlobalCondCtrl, который из названия с самим каталогом никак не связан.
Предложение: вынести эти классы в Главный модуль (main) чтобы можно было использовать их в своих проектах, когда нет (или не требуется подключения) модуля Каталог
Хотелось быть иметь событие в методах CompareFields сущностей CRM. Например CCrmCompany::CompareFields, чтобы добавлять свою логику, например обработчик сверки пользовательских свойств.