Подготовить план объединения одинаковых товарных строк
Робот «Подготовить план объединения одинаковых товарных строк» сравнивает реальные строки карточки и предлагает новый состав с суммой количеств для совместимых позиций.

Видимая часть формы настройки в Битрикс24. Скриншот показывает поля действия; он не подтверждает выполнение учебного примера.
Для кого и какую задачу решает
Администратору CRM и менеджеру, который проверяет повторяющиеся товарные строки перед упрощением спецификации.
Одинаковый товар может продаваться с разной ценой, скидкой или НДС. Простое объединение по названию потеряло бы условия. Робот предлагает объединять только строки с совпавшими неидентификационными полями и сохраняет исходные строки для проверки.
Параметры и подготовка
| Поле | Как заполнить |
|---|---|
Тип карточки (ENTITY_TYPE_ID) |
Обязательное поле |
ID карточки (ENTITY_ID) |
Обязательное поле |
Совместимость (GROUP_POLICY) |
Обязательное поле. Все неидентификационные поля совпадают (strict_same_conditions) |
Перед настройкой выберите, откуда процесс получит каждое значение: постоянная настройка, поле карточки или результат предыдущего шага. Подписи в таблице соответствуют полям робота. Коды в скобках помогают различать похожие параметры при передаче данных между шагами.
Как использовать
- Укажите тип и ID карточки. Выберите единственное поддерживаемое правило strict_same_conditions: все неидентификационные условия должны совпасть.
- Получите план и проверьте hasMerges. При отрицательном признаке совместимых групп для объединения не найдено.
- Для каждой предложенной группы изучите исходные ID, новое количество и различия sort/xmlId/basketCode. Проверьте внешние связи строк до изменения состава.
- Передайте proposedRows только на ручное согласование. Сам робот ничего не применяет и не удаляет; действие записи должно быть отдельным и осознанным.
Учебный пример и ожидаемый результат
В учебной карточке две строки одного товара с одинаковыми единицей, ценой, скидкой, налогом и прочими условиями имеют количества 2 и 3. Ожидается предложение одной группы с суммарным количеством 5. Если цена хотя бы одной строки отличается, эта пара не объединяется в одну совместимую группу, а расхождение отражается в differences.
Пример показывает подготовленные учебные данные. Фактический результат зависит от переданных значений и доступных данных вашего процесса.
Что возвращает и как продолжить процесс
- «Есть предлагаемые объединения» (
hasMerges). - «Групп для проверки» (
mergedGroupCount). - «План с исходными строками JSON» (
plan). - «Предлагаемый состав JSON» (
proposedRows). - «Разные условия одного товара JSON» (
differences). - «План требует ручной проверки» (
reviewRequired). - «Валюта карточки» (
currency).
«План с исходными строками JSON» нужен для проверки происхождения предложения. «Предлагаемый состав JSON» содержит новый вариант без его сохранения. reviewRequired при предложенном объединении включён: наличие плана не подтверждает безопасность применения для всех внешних связей.
Выход «Статус выполнения» проверяйте перед передачей результата дальше. При отрицательном статусе прочитайте «Пояснение ошибки» и направьте процесс на исправление исходных данных. Успешный статус подтверждает выполнение действия; содержательные признаки результата проверяйте отдельно.
Ограничения и разбор ошибок
Принимает тип и ID карточки и явное правило strict_same_conditions. Совпасть должны товар, единица, price, налог, скидка и все прочие неидентификационные поля. Неточные числовые значения и неизвестные условия не угадываются. Отличия id, quantity, sort, xmlId и basketCode не объединяются в общие значения: сохраняются в исходных строках плана и требуют ручной проверки. Для совместимой группы предлагает оставить наименьший ID и сложить количества; прочие поля первой строки сохраняются. Возвращает план, предлагаемый состав, исходные ID и расхождения. Свободные позиции productId=0 не объединяет. До 1000 строк / 100 страниц; цены и количества точны только из строк/целых чисел. Ничего не записывает, не удаляет и не гарантирует применимость плана без проверки внешних связей строк.
Свободные позиции с productId=0 не объединяются. Неизвестные условия и неточные числа не угадываются. Даже две совместимые строки могут иметь разные внешние идентификаторы или связь с доставкой; эти связи нужно проверить вручную до отдельного действия записи.