Timber Trade – сервис учета для лесозаготовительных компаний или как мы нашли пропавшие "кубы"

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

Первый же звонок дал понять, что проект совершенно нестандартный. Например, необходимо было организовать работу оператора в оффлайн-режиме. И все бы ничего, но рабочей станцией заказчика и операторов является Windows 10. С оффлайн-режимом мы уже работали и знаем, поэтому трудностей тут никаких не возникало. А вот приложение под Windows 10 — это новость! Таких заказов у нас еще не было, ведь «зверь» совершенно редкий. Дальше мы решили провести звонок с заказчиком, чтобы прояснить цель самого проекта.

На звонке с заказчиком удалось понять следующие проблемы:

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

Набор проблем оказался понятен, откуда и вытекала цель внедрения данного проекта.

Мы выявили бизнес-требования, которые необходимо было выполнить и принялись за расчет проекта. В процессе переговоров мы пришли к нескольким вариантам реализации: с внутренним сервисом отчетов, реализованных в самой программе, либо интеграция BI-аналитики. После ряда звонков и подготовки прототипов решено было остановиться на следующем объеме проекта:

Объем работ был согласован, и мы принялись за аналитику и разработку архитектуры. Требования к дизайну в целом отсутствовали, таким образом мы пользовались полностью нативными UWP-компонентами.

367c6cabb25b0e5501dd897f517bdbfb.png

Пример экрана на стадии аналитики (Сплав)

c803fc6d2384b6989d5f722fd68f53b2.png

Пример экрана на стадии аналитики (Приход лесовоза)

Не обошлось и без нюансов, на стадии разработки специалистам не удавалось оперативно построить интерфейс без знания UWP-платформы. Проект еще и примечателен тем, что к нему подключился наш Генеральный Директор, и «засучив рукава» помогал команде. За спиной у директора обширный опыт в разработке на многих языках программирования (в том числе и на C#, языке, который использовался для написания данного приложения) и управлении проектами. Команда сразу почувствовала помощь, и мы начали двигаться гораздо интенсивнее.

Разработка сервера была завершена, базы данных прошли миграцию и были готовы к тестированию. Оставалось подключить клиента и посмотреть работу offline-синхронизации. К счастью, все прошло гладко. Данные успешно добавлялись на клиенте в режиме отсутствия интернета и с успехом попадали в базу данных, когда связь возобновлялась. В режиме онлайн все работало безупречно.

94b343df90bb5d2a7317dad1da63f70c.png

Приход, рабочая версия продукта

d9bc3598934190bac576217afc551eb8.png

Настройки, рабочая версия продукта

97c72c6aa065c3d285f39d7aa68b1003.png

Добавить приход, рабочая версия продукта

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

Оставалось дело за малым, необходимо было создать ряд отчетов. Мы уже делали ряд решений на Microsoft PowerBI и были готовы.

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

61fd36c75e5475548491947f14acd29e.png

Отчет Погрузка / Разгрузка

f81d8b6aca733a16958cf35662d1620d.png

Отчет Сброска

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

fee633f614c18f4443964992a62eaa42.png

Отчет по вывозке на нижний склад

17d5c1f28a602b83c90c481bcd4b5c95.png

Отчет по вывозке из лесосеки

Прошла буквально неделя, а мы уже получаем восторженные отзывы нашего заказчика: «Спасибо! За первую неделю мы уже нашли несколько «кубов». А вот и подтверждение нашего успеха!»

f988dc13bd13a0a121d1aec9556a69ad.png

Благодарственное письмо

Перейти на сайт

Полный текст статьи читайте на CMS Magazine