- •Оглавление
- •Введение
- •1 Постановка задачи
- •1.1 Разработка программного продукта
- •1.1.1 Выбор метода построения оптимальгоно пути.
- •1.1.2 Определение логистических расходов на транспорте. Транспортные тарифы.
- •1.2 Техническое задание на разработку программного продукта.
- •1.4.1.2 Определение требований к надежности, техническому и программному обеспечению
- •1.4.1.3 Требования к составу и параметрам технических средств
- •1.4.1.4 Требования к информационной и программной совместимости
- •1.4.1.5 Стадии и этапы разработки:
- •1.2.5 Описание работы программы
- •2 Разработка программного продкута автоматизации процесса грузоперевозок
- •2.1 Разработка алгоритма поиска пути
- •2.2 Концептуальное проектирование базы данных
- •2.3 Логическое проектирование базы данных
- •2.4 Выбор целевой субд и среды программирования
- •2.5 Физическое проектирование бд
- •2.6 Разработка форм приложения
- •3. Обоснование экономической эффективности проекта
- •3.1 Экономические показатели системы
- •3.2 Трудоемкость обработки информации
- •3.3 Жизненный цикл проекта
- •Заключение
- •Список литературы
- •Приложения
2.6 Разработка форм приложения
Для того, чтобы определить формы, необходимые при работе приложения, будем анализировать то что необходимо получить после работы с приложением, поэтому рассмотрим возможности системы:
Система обеспечивает:
простую и быструю интеграцию с вашей учетной системой;
автоматизацию работ по распределению заказов между автомобилями;
автоматизированный расчет маршрутов доставки заказов;
визуализацию адресов и маршрутов доставки на электронной карте;
формирование оптимального порядка объезда точек доставки с возможностью его изменения.
Система формирует:
базу данных складов отгрузки заказов;
базу данных автотранспорта с характеристиками каждого автомобиля;
базу данных грузополучателей с адресами, привязанными к карте;
базу данных заказов клиентов с характеристиками заказов.
Система рассчитывает:
планируемый расход бензина, пробег и время работы каждого автомобиля;
затраты в рублях на топливо для каждого рейса;
топливную составляющую удельных затрат на доставку грузов в руб/кг;
коэффициенты загрузки автомобилей и рейсов;
потребность в автомобилях для обеспечения развозки.
Т.е. обеспечивает оптимизацию грузоперевозок и облегчает планирование доставки.
Система учитывает:
рабочее время каждого автомобиля;
время подачи автомобиля под загрузку;
время работы точек доставки;
временные интервалы доставки заказов;
ограничения по грузоподъемности для каждого автомобиля в местах, кг и м3;
ограничения по количеству точек доставки для каждого автомобиля;
ограничения по пробегу для каждого рейса;
продолжительность разгрузки заказа в точке доставки;
любую специфику заказов на основе создаваемых вами определений;
любую специфику адресов доставки на основе создаваемых вами определений;
специализацию автомобилей для удовлетворения специфике заказов и адресов доставки;
зональный принцип формирования заказов. Поддерживаются подчиненные зоны и перечисления зон.
Благодаря этому управление доставкой и перевозками существенно упрощается.
Логистика транспортных перевозок – это не только машины, но и склады и адреса доставки. Ими и займемся, т.к. в цели транспортной логистики входит и оптимизация перевозок и доставки.
В окне ‘Адреса доставки’ вместо слова ‘Склад’ введите адрес склада и нажмите Enter или дважды кликните мышкой на введенный адрес (‘Софийская 6’):
В окне ‘База адресов ТопПлан’ дважды кликните мышкой на номер дома (на цифру 6):
Склад будет привязан к карте и фон строки в окне ‘Адреса доставки’ станет серым:
В окне ‘Адреса доставки’ нажмите кнопку и добавьте несколько клиентов. Для этого введите название клиента и адрес доставки в разделе ‘Добавить нового клиента и адрес доставки’. Нажмите ‘Добавить’. Добавьте 2-3 клиента.
После этого в окне ‘Адреса доставки’ вы увидите следующее:
Розовым фоном выделены строки с адресами, не привязанными к карте. Нажмите кнопку и произведите автоматическую привязку адресов. Цвет фона привязанных адресов станет белым. Раскройте окно ‘Адреса доставки’ во весь экран и убедитесь, что в колонке ‘Адрес ТопПлан’ записаны правильные адреса:
Можете проверить правильность автоматического нахождения адреса, изменяя значение адреса прямо в колонке ‘Адрес’. При этом оригинальное значение адреса, который вы ввели, не изменится, так как оно находится в колонке ‘Оригинал адреса’. Предполагается, что в дальнейшем вы не будете вводить вручную клиентов и адреса, а будете их импортировать из вашей учетной системы. Поэтому все, что вы введете или измените в колонке ‘Адрес’, не сохраняется. Редактирование здесь нужно лишь для исправления грамматических ошибок. И, как следствие этого, вы можете использовать возможность вводить любой адрес в колонке ‘Адрес’ для проверки правильности автоматической привязки. (Изменения, которые вы внесете в колонку ‘Оригинал адреса’, будут сохранены).
После ввода адреса в колонке ‘Адрес’ нажмите Enter или дважды кликните мышкой на адрес (как вы уже делали при привязке склада). В окне ‘База адресов ТопПлан’ выберите нужную улицу (если она не первая в списке) и дом на этой улице. Или выберите населенный пункт в таблице ‘поселок’. Вы сможете убедиться, что точность автоматического распознавания вашего адреса, записанного в свободном формате, составляет 80-90 %.
Логистика транспортных перевозок – это не только машины, но и склады и адреса доставки. Ими и займемся, т.к. в цели транспортной логистики входит и оптимизация перевозок и доставки.
Запустите программу Address:
В окне ‘Адреса доставки’ вместо слова ‘Склад’ введите адрес склада и нажмите Enter или дважды кликните мышкой на введенный адрес (‘Софийская 6’):
В окне ‘База адресов ТопПлан’ дважды кликните мышкой на номер дома (на цифру 6):
Склад будет привязан к карте и фон строки в окне ‘Адреса доставки’ станет серым:
В окне ‘Адреса доставки’ нажмите кнопку и добавьте несколько клиентов. Для этого введите название клиента и адрес доставки в разделе ‘Добавить нового клиента и адрес доставки’. Нажмите ‘Добавить’. Добавьте 2-3 клиента.
После этого в окне ‘Адреса доставки’ вы увидите следующее:
Розовым фоном выделены строки с адресами, не привязанными к карте. Нажмите кнопку и произведите автоматическую привязку адресов. Цвет фона привязанных адресов станет белым. Раскройте окно ‘Адреса доставки’ во весь экран и убедитесь, что в колонке ‘Адрес ТопПлан’ записаны правильные адреса:
Можете проверить правильность автоматического нахождения адреса, изменяя значение адреса прямо в колонке ‘Адрес’. При этом оригинальное значение адреса, который вы ввели, не изменится, так как оно находится в колонке ‘Оригинал адреса’. Предполагается, что в дальнейшем вы не будете вводить вручную клиентов и адреса, а будете их импортировать из вашей учетной системы. Поэтому все, что вы введете или измените в колонке ‘Адрес’, не сохраняется. Редактирование здесь нужно лишь для исправления грамматических ошибок. И, как следствие этого, вы можете использовать возможность вводить любой адрес в колонке ‘Адрес’ для проверки правильности автоматической привязки. (Изменения, которые вы внесете в колонку ‘Оригинал адреса’, будут сохранены).
После ввода адреса в колонке ‘Адрес’ нажмите Enter или дважды кликните мышкой на адрес (как вы уже делали при привязке склада). В окне ‘База адресов ТопПлан’ выберите нужную улицу (если она не первая в списке) и дом на этой улице. Или выберите населенный пункт в таблице ‘поселок’. Вы сможете убедиться, что точность автоматического распознавания вашего адреса, записанного в свободном формате, составляет 80-90 %.
В реальной работе вам не придется добавлять заказы таким образом. Все-таки программа транспортной логистики предназначена для того, чтобы облегчить организацию, автоматизацию и оптимизацию грузовых перевозок. Вместо этого вы будете их импортировать вместе с адресами доставки и многими характеристиками заказов. Подробно об импорте заказов и адресов рассказано в главе 5.1. А сейчас для импорта вы можете воспользоваться файлом ‘импорт_пример.txt’, находящимся в папке \Doc. Для этого выберите в меню Сервис -> Импорт заказов и адресов, выберите папку Doc, выберите файл ‘импорт_пример.txt’ и нажмите ‘OK’:
Ответьте ‘Нет’ на следующий вопрос:
В окне ‘Заказы’ появятся еще 3 заказа из файла ‘импорт_пример.txt’:
Адреса импортированных заказов еще не привязаны к карте. Поэтому они изображены в таблице курсивом. Для привязки к карте новых импортированных адресов закройте программу Top-Logistic, запустите программу Address и привяжите их к карте, как вы уже делали. Процесс несложный, тем более, что, в отличии от «1с транспортной логистики», мы сами разрабатываем карты, что упрощает задачу.
В данном примере мы работаем с транспортной логистикой Санкт-Петербурга и области. Однако, мы не ограничены только этой картой. Транспортная логистика и экспедирование представлены и на других наших картах (Москва, Псков, Новгород и пр.)
В колонке ‘вид’ указывается символьно-цифровой код, характеризующий особенности товара (или даже адреса доставки). Этот механизм подробно описан в главе 8.7. Здесь же просто будем считать, что заказ 1 содержит товары категорий ‘а’, ’б’ и ‘в’, заказ 2 – категорий ’г’ и ‘д’, а заказ 3 – категории ‘е’. Например, категории могут означать следующее: а – охлажденный товар; б – замороженный товар; в – оплата наличкой; г – низкая арка у адреса доставки; е – доски длиной более 5 м. Буквы и цифры для обозначения количественных и качественных характеристик товаров и адресов доставки вы придумываете сами. Важно то, что для обозначения одной характеристики нужна одна буква или цифра.
Добавление автомобилей.
Запустите программу и выберите в меню ‘Автомобили’. Нажмите в окне ‘Типы автомобилей’ и добавьте Газель грузоподъемностью 1500 кг и с максимальным количеством точек в рейсе 20:
Нажмите в окне ‘Рейсы’ и добавьте несколько автомобилей с номерными знаками в окне ‘Добавление рейсов и автомобилей’:
Раскройте окно ‘Рейсы’ во весь экран и убедитесь, что значения 1500 кг и 20 точек, которые вы вводили в таблице ‘Типы автомобилей’, переписаны. В окне ‘Рейсы’ вы можете изменять эти значения для каждого отдельного рейса. Обязательно поставьте время начала рейса для каждого рейса в колонке ‘с’:
Автомобили, для которых не указано время начала рейса, отображаются в окне ‘Рейсы’ на сером фоне (как на предыдущем рисунке). Предполагается, что они не участвуют в текущей развозке. Поэтому при автоматической маршрутизации заказы в них размещены не будут. Обратите внимание на число 4500кг – это максимальная грузоподъемность всех свободных рейсов готовых к развозке автомобилей. Если автомобиль недогружен, то свободное место в автомобиле тоже учитывается.
В колонку ‘спец’ для первого автомобиля введите ‘дгбав’ (порядок букв значения не имеет), а для второго – введите ‘е’.
Нажмите кнопку и произведите автоматическую маршрутизацию:
Кликните в окне ‘Заказы’ на заголовок ‘№ а/м’ – заказы будут упорядочены по рейсам. Рейсы будут выделены цветом фона в шахматном порядке: зеленый – белый – зеленый – и т.д. В колонке ‘№’ – порядок объезда точек:
Синим цветом в окне ‘Заказы’ отображены заказы текущего рейса. Текущим рейсом в окне ‘Рейсы’ является рейс д457ет. Переместившись в окне ‘Рейсы’ на другой рейс, вы увидите, что в окне ‘Заказы’ произойдет соответствующее изменение цвета заказов.
Синим цветом в окне ‘Рейсы’ отображен рейс, в котором размещен текущий заказ. Текущим заказом в окне ‘Заказы’ является заказ 001. Он размещен в рейс а937во. Перемещаясь в окне ‘Заказы’ на другие заказы, вы увидите, что в окне ‘Рейсы’ произойдет соответствующее изменение цвета рейсов.
Двойной клик на номере автомобиля в окне ‘Рейсы’ (например, ‘к397ам’) установит указатель в окне ‘Заказы’ на первый заказ этого рейса. Двойной клик на номере автомобиля в окне ‘Заказы’ (например, ‘д457ет’) установит указатель в окне ‘Рейсы’ на соответствующий рейс. Попробуйте – это удобно.
Несколько слов об интерфейсе. Все заголовки таблиц и все кнопки снабжены всплывающими подсказками. Также всплывающими подсказками снабжены некоторые ячейки таблиц. Поскольку целью этой главы является краткое описание функциональности, то на этом этапе рекомендуем вам самостоятельно ознакомиться с заинтересовавшими вас элементами программы.
В программе нет модальных окон, то есть окон, требующих закрыть их для продолжения работы с другими окнами. Можете оставлять все окна на экране, если они вам не мешают. Некоторые окна закрываются автоматически, когда вы переходите в другое окно. В меню есть пункт ‘Окна’, который позволяет скрывать и отображать окна.
В окнах ‘Типы автомобилей’, ‘Заказы’ и ‘Рейсы’ можно скрыть колонки, которые вам не нужны. Например, лишние измерения (мест, м3) или другие. В дальнейшем вы настроите интерфейс так, чтобы он соответствовал вашим задачам. Для того чтобы скрыть ненужные колонки, нажмите правой кнопкой мыши на заголовок таблицы и определите нужные и ненужные колонки. Учтите, что если колонка содержит информацию, то она работает, даже если скрыта. Например, вы можете скрыть колонку, в которой указано максимальное количество точек для рейса (20). При автоматической маршрутизации это ограничение все равно будет учитываться.
От того, какие колонки вы скроете, будет зависеть набор кнопок в окнах ‘Заказы’ и ‘Рейсы’. Например, если вы скроете колонки ‘вид’ и ‘спец’ в окне ‘Рейсы’, то кнопки в окне ‘Рейсы’ не станет. Но если кнопкабыла нажата, то она останется нажатой, даже если скрыта. И программа будет работать соответственно нажатой кнопке.
Благодаря таким настройкам, автоматизация управления перевозками (планирование доставки, эффективность использования транспорта, экспедирование, оптимизация грузоперевозок и пр.) становится гораздо проще.
Вот список колонок окна Рейсы:
Итак, автоматическая маршрутизация создала 3 рейса. Нажмите кнопку в окне ‘Рейсы’ – будет установлен режим автоматического масштабирования карты. Нажмите клавишу Shift и, удерживая ее, сделайте двойной клик на слово Газель в колонке ‘тип’ в окне ‘Рейсы’ – рейсы отобразятся на карте. Нажмите кнопкуна верхней панели инструментов – карта станет прозрачной. Окно ‘Заказы’ сдвиньте так, чтобы оно вам не мешало, или сверните его. Отожмите кнопку- теперь масштаб автоматически меняться не будет. Снова сделайте двойной клик на каком-нибудь рейсе в колонке ‘тип’, но не удерживайте клавишу Shift – будет отображен только один рейс и все остальные заказы. Еще раз сделайте двойной клик в поле ‘тип’, но при этом нажмите и удерживайте клавишу Ctrl – будет отображен чисто один рейс (другие заказы не будут отображены). Можно также одновременно удерживать сразу две клавиши – Shift и Ctrl. Для изменения масштаба карты и перемещения на карте воспользуйтесь кнопкамина верхней панели инструментов.