После объединения в Power Query выросла выручка: как проверить ключи
До объединения запросов продажи составляли 100 тысяч, после раскрытия справочника стали 120 тысяч. Power Query мог выполнить все шаги без ошибок: в справочнике оказалось две строки одного товара, и одна продажа превратилась в две. Проверять здесь нужно количество совпадений, а не формат суммы.
Установите смысл одной строки справочника
Для справочника товаров обычно ожидается одна строка на SKU. Но таблица себестоимости может содержать несколько периодов или складов. Тогда повторный артикул сам по себе допустим: просто выбран неполный ключ объединения. Определите, что нужно присоединить к продаже: текущую стоимость, стоимость на дату или стоимость конкретного склада.
Если каждая продажа должна получить одно значение, для выбранного ключа справа должно быть ровно одно совпадение. Удаление дублей по артикулу без правила выбора оставит случайную версию стоимости и скроет проблему.
Посчитайте совпадения перед раскрытием
В M объединение создаёт вложенную таблицу. Добавьте столбец с её числом строк и отфильтруйте значения больше единицы. Так вы увидите продажи, которые размножатся при раскрытии. Удобно сохранить запрос исключений до загрузки итогового отчёта.
let
Joined = Table.NestedJoin(Sales, {"SKU"}, Costs, {"SKU"}, "Matches", JoinKind.LeftOuter),
Counts = Table.AddColumn(Joined, "N", each Table.RowCount([Matches]), Int64.Type),
Conflicts = Table.SelectRows(Counts, each [N] > 1)
in
Conflicts
Исправьте ключ или подготовку справочника
Если стоимость зависит от склада, объединяйте по SKU и Warehouse. Если нужна текущая строка, сначала отберите её по согласованному признаку действия. Для стоимости на дату потребуется правило интервала; обычное равенство артикула не выбирает нужную историческую запись.
Когда строки действительно повторены ошибочно, очистите справочник в отдельном шаге и проверьте, что повторения одинаковы по значимым полям. Две разные цены нельзя разрешить командой «Удалить дубликаты» без решения владельца данных. Список конфликтов лучше отправить ему вместе с ключами и значениями.
Поставьте контроль до и после
Учебный пример: продажа A на 100 и B на 200; для A в справочнике две строки. После раскрытия получится 100+100+200=400 вместо 300. В сверке нужны число строк, сумма выручки и число ключей с несколькими совпадениями. Одной суммы недостаточно: положительная и отрицательная строка могут взаимно скрыть размножение.
После исправления повторите обновление на тех же продажах. Число строк должно соответствовать ожидаемой кардинальности, выручка — исходной, а исключения — выбранной политике. Не компенсируйте завышенную сумму делением на число совпадений: для разных товаров оно отличается, а присоединённые поля всё равно останутся неоднозначными.
Для регулярного отчёта поставьте такую проверку перед публикацией. Новый месяц может принести повторный ключ, которого не было на учебной выгрузке. Ошибка должна дать понятный список конфликтов до того, как руководитель увидит неверную маржу.
Сохраните определение ключа рядом с описанием отчёта. Коллеге важно знать, почему объединение идёт по двум полям и какое изменение справочника требует пересмотра правила. Это часть сопровождения рабочей книги, которую легко потерять при передаче.
Соберите обновляемый отчёт на практике
На курсе вы научитесь проверять ключи при объединении выгрузок и строить модель со связями один-ко-многим. В работе по продажам и марже потребуется проверить контрольные суммы после обновления. Это помогает отличать допустимые повторения фактов от ошибок справочника и принимать новый комплект данных осмысленно.
Откройте программу курса «Продвинутый Excel: Power Query, Power Pivot и автоматизация отчётов».
Начните с пробного урока о рабочей книге и первом запросе Power Query.
Для следующего этапа: объединение файлов из папки и обновление отчёта.
Продолжить на практике
- Продвинутый Excel: Power Query, Power Pivot и автоматизация отчётов ↗
Научитесь собирать и обновлять рабочие отчёты в Excel. Power Query для загрузки и очистки данных, сложные формулы, Power Pivot и DAX для расчётов. Практикумы по продажам, остаткам и закупкам, план-факту подразделений.
