В ответе интеграции один заказ может содержать список товаров и общую сумму. После раскрытия товаров строк становится больше, а сумма заказа повторяется. Это ожидаемое поведение преобразования; ошибка возникает, когда повторённое поле затем складывают как независимые продажи.

Опишите уровни исходной записи

Отделите поля заказа от полей позиции. Номер заказа, время создания и общая сумма относятся к шапке. Артикул, количество и сумма конкретной строки относятся к товару. Если источник не даёт суммы позиции, её нельзя молча заменить общей суммой заказа.

Сохраните неизменный пример ответа и его идентификатор. Для начала используйте один небольшой заказ, где вручную понятны все вложенные элементы. Большая таблица с тысячами строк плохо показывает, на каком шаге поменялся смысл наблюдения.

Проверьте результат раскрытия списка

Microsoft описывает Table.ExpandListColumn так: для каждого значения списка создаётся строка, остальные колонки повторяются. Учебный пример редакции: заказ A на 900 рублей содержит три товарные позиции. После раскрытия получится три строки, и поле общей суммы может содержать 900 в каждой.

Суммирование такого поля даст 2700, хотя новых денег не появилось. Для отчёта по заказам сохраните отдельную таблицу шапок. Для отчёта по позициям используйте подтверждённые суммы строк, если источник их содержит. Выбор уровня данных связан с устройством модели фактов.

Не перемножьте независимые списки

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

Разберите списки в отдельные запросы с ключом заказа. Если бизнес-задача требует связать конкретный платёж с конкретной позицией, необходимо реальное правило распределения из источника. Сам порядок элементов массива не доказывает такую связь.

Примите результат по трём контрольным величинам

Сверьте количество уникальных заказов, количество исходных позиций и сумму по таблице шапок. Отдельно проверьте, что каждому элементу списка сохранился правильный родитель. Совпадение общей суммы недостаточно, если позиции случайно перепутались между заказами.

В тестовом наборе предусмотрите заказ с одной позицией, несколькими позициями и отсутствующим ожидаемым списком. Последний случай требует отдельной диагностики полноты ответа; не называйте его заказом без товаров до проверки смысла поля. Сохраните число строк после каждого раскрытия. Это позволит локализовать ошибку раньше, чем она попадёт в итоговую сверку выручки и себестоимости.

Справка проверена редакцией 13 октября 2026 года. Это дата проверки, а не запуска функции.