Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!
1. По дополнительным сущностям - обычно делаем так: комплексный компонент делаем свой (копируем оригинальный и добавляем вызовы своих компонентов по дополнительным url). Ну а свои компоненты уже на базе "оригинальных" ЦРМовских делают всё что нужно. Из минусов - нужно поддерживать получившийся результат, если Битрикс что-то кардинально меняет - нужно транслировать изменения в свои компоненты. Из плюсов - чаще всего трансляция обновлений на уровне diff сравнения текста оригинального и изменённого компонентов носит тривиальный характер.
2. А тут я бы предложил такой подход - по событию OnEndBufferContent например, если страница по url нужная нам, добавляем свои скрипты и навешиваем свои обработчики нажатий на кнопки, которые могут и попап показать, и хидден поля в форму со значениями пользовательских полей добавть.
Так понял что копируем комплексный компонент в свое пространсво имен, при этом меняем имена обычных компонентов, подключаемых в комплексный, но при таких условиях таблица будет использоваться та же что и у стандартного компонента "Лиды", подключение происходит же в
Не совсем понял вопрос. Копируем в своё пространство имён crm.lead, crm.lead.edit и т.д., а в них уже задействуем своё API, а не modules/crm/classes/crm.lead.php
Ваш комментарий к ответу:
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Так понял что копируем комплексный компонент в свое пространсво имен, при этом меняем имена обычных компонентов, подключаемых в комплексный, но при таких условиях таблица будет использоваться та же что и у стандартного компонента "Лиды", подключение происходит же в
modules/crm/classes/crm.lead.php
а это же ядро
как быть?