Телефон:
+7 (499) 705-80-32Адрес:
390000, г. Рязань, ул. Ленина, 49
Почта:
info@stecpoint.ruРаскрываем подробности о том, как функционирует и пополняется хранилище информации о товарах, без которого невозможна работа комплексной системы управления закупками.
Наша практика будет интересна, если вы:
Компании нуждаются в постоянном снабжении. В среднем и крупном бизнесе, таких организациях как «Российские железные дороги», «Газпром» или «Вымпелком», материальным обеспечением сотрудников занимаются выделенные структурные подразделения. От одного из заказчиков мы получили задание — оптимизировать работу такого подразделения при помощи централизованной системы управления закупками.
В предыдущих статьях цикла рассказывалось о том, как классифицировать товары и находить выгодные цены при помощи алгоритмов машинного обучения. Разработанные для этого сервисы самодостаточны, функционируют и без выделенной базы данных. Но заставлять сотрудников самостоятельно искать, хранить и актуализировать прайсы для ручной загрузки в автоматизированные сервисы — нерациональное решение сразу по нескольким причинам:
Перечисленное справедливо и для производителей товаров, следящих за предложениями конкурентов, поставщиков. Для них оперативное получение данных о ценах особенно важно, поскольку позволяет отслеживать изменения рыночной ситуации.
С помощью единой базы прайс-листов все сотрудники компании, которым необходимо знать расценки на товары, получают доступ к информации без задержек и бюрократических сложностей. Поэтому задачу сбора и хранения прайс-листов нельзя оставлять нерешенной.
Основа сервиса — система управления базами данных Microsoft SQL Server, заточенная под работу с другими элементами комплекса управления закупками и дополненная функциями, с которыми хранилище прайс-листов проще пополнять.
Чтобы избавить сотрудников отделов закупок компаний от рутинных задач, мы создали «точку входа» для поставщиков и производителей. Они могут зарегистрироваться в личном кабинете, связанном с базой данных, и загрузить прайсы непосредственно в хранилище. Если обычно предложения поступают на электронную почту и теряются в спаме, то с таким сервисом они сразу доступны для обработки и анализа.
Такой способ сбора информации о товарах наиболее актуален для крупных компаний, с которыми производители и поставщики стремятся сотрудничать.
В качестве альтернативного способа пополнения базы данных мы предлагаем использовать периодическую синхронизацию прайс-листов с серверами поставщиков по протоколу FTP. За работу этой функции отвечает многопоточный планировщик задач Hangfire, следящий, чтобы база прайс-листов обновлялась вовремя, а данные поступали без ошибок.
Для загрузки подходят excel-таблицы любого вида, главное, чтобы в них имелись базовые поля, такие как название и артикул товара. Это позволяет организовать автоматический сбор информации с минимумом трудозатрат как со стороны компании, так и со стороны поставщика.
Для клиентов, заинтересованных в поиске товаров в интернет-магазинах, мы разработали третий способ пополнения базы прайс-листов — программу-парсер товарных каталогов на базе .Net Framework и библиотеки AngleSharp.
Перед запуском мы изучаем DOM-структуру онлайн-каталога товаров, интересующих заказчика. Затем настраиваем программу так, чтобы парсер загружал html-страницы с товарами и по элементам верстки, таким как теги и их атрибуты, распознавал ценные данные и сохранял их.
Мы следим за тем, чтобы парсер действовал подобно обычному пользователю, не мешал нормальной работе и не увеличивал нагрузку на сайт интернет-магазина, даже если для этого требуется задействовать дополнительную библиотеку Puppeteer, в которой взаимодействие с сайтом происходит через ядро веб-браузера.
Чтобы не перегружать основную базу данных выполнением большого числа мелких операций, парсер заносит названия товаров и их характеристики в буферное хранилище — базу MongoDB, где формируется готовый прайс, который поступает в основную базу данных целиком.
При разработке баз данных не была забыта и возможность ручной загрузки прайсов, но с появлением альтернатив она утратила прежнее значение и на практике используется редко.
В рамках комплексной системы управления закупками пользователи не взаимодействуют с базой данных. К хранилищу обращаются функциональные сервисы авторасценки и классификации товарных позиций, а сотрудники компании с их помощью получают уже обработанные тем или иным образом прайсы.
И все же, при необходимости базу прайс-листов возможно использовать отдельно от системы управления закупками. Для этого достаточно недорогого сервера или виртуальной машины, взятой в аренду у облачного провайдера.
На такой случай предусмотрен лаконичный веб-интерфейс на основе AngularJS. С помощью встроенных инструментов он позволяет оценить объемы и актуальность загруженных данных, просмотреть отдельные записи, отфильтровать позиции по ключевым словам, а также извлечь из базы данных оригинальные прайсы.
Вместо того чтобы изобретать велосипед, наши программисты объединили проверенные технические решения в готовый сервис, в чьей функциональности, удобстве и стабильности несложно убедиться, обратившись за консультацией и попробовав его в деле.
На весь комплекс работ потребуется около месяца, но ожидание того стоит. Автоматизированный поиск цен
на товары при помощи машинного обучения увеличивает производительность труда и помогает оптимизировать
трудозатраты. Он облегчает работу расценщиков и экономит средства, которые тратятся нерационально
Подпишитесь на рассылку
Без спама и не больше одного раза в месяц.