Route Planning (Tourenplanung) #
In the morning the dispatcher has a number of orders in the system. In our company there are about 50-150 orders a day. The dispatcher has to choose which orders are taken by which truck in the morning and let the rest stay till later.
The trucks have special areas where they drive in every day of the week (Touren). e.g. Truck Number 2 driver at Monay morning drives to the inner city.
Every customer needs a field describing which tour he belongs to. In our legacy system we use a number from 1-8 for the area they drive to. It works like a "truck number". Second we need the delivery day in the week. Third we need a subnumber of the truck number to say if it is the first, second or third time this truck drives out of our court.
Is is common that a customer has all these three thinks stuck to a special value with every delivery. This means that one customer gets hin delivery every tuesday everytime in the evening and everytime with the nice driver of truck number 3 that knows his cellar best.
This information has to be copied to every order and when entering the order we can change this (if the customer has no firm day or wants to have the delivery faster). If there is no pre-set tourdata with the customer all this keeps empty.
On Delivery date all orders will be sorted by tours. The empty ones are at the end of this list. The dispatcher can exchange all this data in the morning and can decide which order has to be done with which Truck.
He has to see some sum data of every truck to make his decision: Weight, number of cases and number of barrels.
printout #
If the orders are sorted right I want to print the data of a truck. I want to choose which trucks I want to print. I need:
- Delivery Note (One sheet of paper for every order)
- Sum of Products for this Truck (usually one sheet of paper)
- List of Orders for this truck (same information than all delivery notes but in a shorter format)
Implementation Details #
For the first version it is sufficient to have a list with subsums for every loaded truck.
I saw an implementation with many nice Lists (queues) where you could drag and drop orders from one to the other. Below every queue there is a picture of a truck. It is filled with a growing green bar. If the truck is more filled (by weight) than 100%, it becomes yellow, with 110%, it becomes red.