ЧИСТЫЕ ДАННЫЕ / P08-C01 · P08-C01

Литры, штуки и исключения: нормализация садового каталога

Получить воспроизводимое преобразование товарных строк с сохранением исходных данных.

Проверить свою строку

Вход — JSON-массив с полями id и raw. Измените пример и выполните преобразование.

Задача и выбор

В исходной выгрузке объём и комплектность записаны одной строкой. Простое удаление единиц превращает 2 × 1 л в один литр.

Сначала разбираю количество, значение и единицу, затем считаю общий объём. Исходная строка остаётся в записи, а дробь без единицы не получает догадку.

Что получилось

Рабочий преобразователь обработал 8 строк: 6 записей разнесены по полям, 2 отправлены в журнал исключений. Исходные значения сохранены; результат можно пересчитать на странице и сопоставить с JSON.

Нормализованные поля
Нормализованные поля — 6 готовых записей; остальные 2 требуют отдельного решения.
Исключения не потеряны
Исключения не потеряны — Причины каждого исключения доступны в полном JSON.

Спецификация решения

idcountunitLiterstotalLiters
G-10110.50.5
G-102155
G-103212
G-10410.750.75
G-10610.250.25
G-10730.51.5
Происхождение и границы

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