Заметки
Как выгрузить данные CRM в свою витрину
Как выгрузить данные CRM в свою витрину: REST polling, D7, batch, инкрементальная синхронизация.
Как выгрузить данные CRM в свою витрину. Основной фокус: REST polling, D7, batch, инкрементальная синхронизация.
Задача
Понять, какой отчёт можно собрать штатно, а где нужна собственная витрина или приложение.
Задача — как выгрузить данные CRM в свою витрину. REST polling, D7, batch, инкрементальная синхронизация.
Главное — не искать один универсальный метод, а сначала определить сущность, права и слой API, через который выполняется действие.
Как это устроено
Отчёты зависят от источника данных. CRM-список, BI-конструктор, REST-выгрузка и D7-запросы дают разный уровень детализации и разные ограничения по правам.
Разложите сценарий на уровни: где появляется исходное значение, какой метод его меняет, кто выполняет действие и какое событие должно сработать после изменения.
Если сценарий проверяется под администратором, отдельно повторите его под обычным пользователем. Для прав, CRM, задач, Диска и приложений это часто даёт другой результат.
Рабочий подход
Сначала сформулируйте вопрос отчёта и источник данных. Если нужны исторические состояния, заранее пишите снимки изменений, потому что текущее поле карточки не хранит всю историю.
Сделайте минимальный тест на одной сущности, сохраните входные данные и ответ метода, а затем расширяйте решение на массовый сценарий.
На коробке удобнее добавлять временное логирование рядом с местом выполнения кода, а в облаке — сохранять входящие и исходящие REST-запросы в свой журнал интеграции.
Частые ошибки
Стандартный отчёт часто показывает не ошибку, а ограничение модели данных: нет нужного среза, нет истории или нет прав на часть записей.
- Проверять сценарий только под администратором и не видеть проблему прав обычного пользователя.
- Смешивать ID разных сущностей: задачу, файл Диска, CRM-дело, товарную строку или пользователя.
- Не логировать фактический запрос и ответ, из-за чего ошибка выглядит случайной.