ИСТОРИЯ

 

Компания продаёт металлорежущие инструменты. Сотрудничает с организациями, частниками. Заказы выполняются по заявкам. Ассортимент огромен - полмиллиона позиций поступают от нескольких десятков поставщиков. Каждый формирует их названия по собственным правилам.

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

 

ЗАДАЧА

 

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

 

РЕШЕНИЕ

 

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

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

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

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

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

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

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

В результате написано семь сотен линий программного кода. Укомплектованы десятки шаблонов, разработана методика чистки информации. Получен опыт сбора, хранения, использования знаний. Целью выбора такого процесса стала корректность и прозрачность.

МАКРОСЫ ИЗВЛЕЧЕНИЯ ЗНАНИЙ

Таблица исходных и готовых строк брендов
Таблица исходных и готовых строк материалов
Таблица старых и новых строк названий