Утилита для расчета ABC и XYZ анализа

Шо это?

Это ABC/XYZ анализ для ленивых

Количество обсуждений и выяснений, как делать ABC/XYZ анализ в последнее время превысило все разумные пределы. Хотя, казалось бы, эти элементарные вещи уже у всех завязли в зубах и любой может это сделать с закрытыми глазами. В какой-то момент мне это надоело и я в качестве гимнастики и учебной задачи решил на коленке написать инструмент, который будет делать непосредственно анализ за человека. Программа имеет всего две кнопки, которые и выполняют указанные задачи.

Требования к операционной системе

Требований к операционной системе практически нет. Программа должна работать под Windows, Linux, Mac, всеми разновидностями UNIX. Для работы программе требуется java версии не ниже 1.6.0. Теоретически должно работать на любой начиная с 1.4 (это та, что стоит в стандартной поставке Windows, если Вы ни разу не обновляли), но поскольку у меня такой древности давно уже нет, я не в состоянии собрать программу под эту платформу. К тому же официально поддержка старой платформы заканчивается летом 2008г. Даже если Вы не собираетесь пользоваться данным софтом, крайне рекомендую поставить свежую версию, берут ее бесплатно здесь. На момент написания этого документа последняя версия была Java Runtime Environment (JRE) 6 Update 4. Если при запуске программы Вы получаете ошибку навроде " (Unsupported major.minor version 49.0)", значит необходимо установить свежую версию Java.

Как установить?

 

  1. Содержимое архива развернуть в любой удобный каталог
  2. Отредактируйте первую строку командного файла ABC.cmd, чтобы она указывала на установленную версию Java. К примеру, если Вы установили Java Runtime Environment (JRE) 6 Update 4, скорее всего строка будет выглядеть как

    SET JAVA_HOME=C:\"Program Files"\Java\jre1.6.0_04

  3. Запустите ABC.cmd, если все правильно, должно появиться нечто вроде этого

    Main window

Как это работает?

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

ART SDATE QTY
333 2007-01-01 0
333 2007-02-01 1.3
333 2007-03-01 1.5

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

Формат данных жестко задан

Первая колонка - артикул изделия. Формат - текстовая строка до 50 символов длиной.

Вторая колонка - дата в формате YYYY-MM-DD

Третья колонка - количество в формате числа с плавающей точкой

Порядок работы

  1. В поле Delimiter выбираем разделитель полей либо из списка, либо задав произвольный. По умолчанию используется символ табуляции. Внимание! Программа запоминает последний установленный разделитель и при следующем запуске будет пытаться использовать именно его.
  2. Нажимаем кнопку Data и выбираем файл с исходными данными. Программа открывает файл и сразу же импортирует данные. В зависимости от объема это может занимать заметное время. Внимание! Программа запоминает имя последнего файла данных и при следующем запуске будет пытаться использовать именно его.
  3. Кнопки ABC и XYZ производят соответствующие расчеты
  4. Для XYZ-анализа можно выбрать, по каким периодам будет делаться анализ.
  5. Кнопка Export to TXT, как нетрудно догадаться, экспортирует результаты всех расчетов в текстовый файл с параметрами, в точности совпадающими с исходным. Имя файла формируется как <имя исходного файла>.out.txt.
  6. Кнопка Open with Excel позволяет сохранить результат в виде файла MS Excel.
  7. Все. Для желающих посмотреть графики распределения сделаны закладки ABC и XYZ (не забудьте нажимать кнопку "Refresh"). Для желающих вгрузить это в Excel на файле отчеста нажать правую кнопку мыши, открыть с помощью Microsoft Excel

Настройки

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

Производительность

Исходные данные тестирования

Были взяты реальные данные о продажах за 12 месяцев по списку ~14.5 тыс. позиций, что составило ~2.7 млн записей. Поскольку ставилась цель провести анализ помесячно, после перехода к месчным продажам получился файл с ~173 тыс. записей. Результат:

Старт и инициализация 25 сек
Импорт данных 22 сек
ABC 1 мин 03 сек
XYZ 43 сек

 

Где брать?

Последняя версия берется здесь.

Удачи вам, вопросы можно (и нужно, наверное) задавать по адресу stanley ( at ) pochtamt.ru или на форумах logist.ru, zakup.ru - ник stanley.