Tag Archives: paraplan desktop

Use QueryBuilder to get a list of all places

30 July

Excel logo 2

With ParaPlan, getting data out of the system and into another format like PDF or Excel is easy. Here is a simple tutorial to get all the Places to Excel using our Query Builder.

  1. Click Reports > Query Builder.
  2. Click Load from text, a new window will appear.
  3. Copy the following text into the window, then close the window:

    Select:new (StopName, Address, Comment, ID)

  4. Click Execute.
  5. Click Export to Excel.

The list of all the places in the system are now displayed in Excel, where any number of formulas or manipulations could be performed.

Geo-fence scheduling with ParaPlan

09 June



Geo-fencing is a powerful tool in scheduling trips. ParaPlan uses geo-fences called zones to label specific geographic areas. Recently, we talked about how to create zones from GPX files and how to create zones from a city name. Today, we are going to talk about how zones can be used during autoschedule to keep vehicles working in a specific region of the service area.

As a recap, zones restrict routes to only perform trips that start and stop in that zone. A route labeled North that is set up around downtown and northern suburbs would not be eligible to perform a trip for Mrs. Jones on the south side of the city. Eligible means that ParaPlan will not auto schedule Mrs. Jones to a route in the North zone. It also means that the reservation for Mrs. Jones will not include North routes on the quick trip assignment. Only routes that contain south side zones OR no zone at all will be in the route drop down list on the reservation screen. This is a new feature in ParaPlan and will greatly reduce scheduling errors during the reservation intake phase.

We typically see three different types of trips, geographically speaking. Service-based trips, needs-based trips and out of town trips.



Service-based trips would cover trips to the grocery store, bank, or the drugstore. These trips are short in distance and short in duration. Usually they occur within the bounds of a single city. Quite frequently, it makes the most the sense for the driver to wait for the client to finish their business, then take them back home. When setting up a zone to perform service-based trips, a good design would encompass the residential and commercial areas of a city or suburban area.


Need based

Needs-based trips typically transport a client to a specialized facility. This could be a daycare or dialysis center. Generally, these places are centrally located and serve individuals from a large region. To set up zones to service these trips, include several known residential areas and the central downtown district.

Out of town

Out of town trips can have zones if the situation calls for it. If there are frequent trips to a facility over 50 miles away then creating a zone that encompasses both areas would make sense. Otherwise, just don’t assign a zone to a route. This will make the route eligible to perform any trip.

Smarter scheduling

By knowing the kinds of trips being performed, users can set up a medley of service-based and needs-based routes to efficiently schedule a large batch of trips. This will keep vehicles working in a very specific region. It is much better for drivers to stay in familiar areas. If they are comfortable driving the bus and appear relaxed, the passengers will also feel more comfortable. We understand how important this is for special needs transportation.

Add PO numbers to Invoices

29 May

Amazon WorkSpaces

Invoices often have purchase orders or billing codes that the recipient needs to record when processing the invoice. We have just added support for this in ParaPlan Billing.

When generating a new invoice, enter the billing code or PO into the Reference field and we will display that value on the invoice. We will also remember this Reference and associated it with the funding source. This means the next time an invoice is generated for that funding source, the Reference field will be pre-populated.

Happy invoicing!

Create simple geofences based on city

21 May


Screenshot 2014 05 21 22 34 43

In our last post, we talked about creating complex geofences by drawing on a map and how that will keep routes working in a specific location. As a simpler alternative we also support geofences based on a city.

Simply create a new zone called “City of Gaffney” and that will keep any routes that are assigned to that zone working only in that city. A common workflow would be to have several routes assigned to the “City of Gaffney” zone that would do all the in-city trips and then several additional routes that are not assigned to any zone that would be eligible to perform the trips that go out of the city limits.

A slightly more complicated example would be the Greenville metro where there are urban and suburban cities. For these cases, we support zones with multiple cities. An agency in this area would have zones that looked like:

“City of Greenville, Mauldin,Simpsonville, Fountain Inn” – This would take people from the south side to downtown.
“City of Greenville, Powdersville, Easley” – This would bring people in from the west side.
“City of Greenville, Taylors, Greer”  – This would cover all the east side trips.
“City of Greenville, Travelers Rest” – This would be for trips to and from the north side of town.

This feature is an easy way to keep vehicles working in the same place, where they are most familiar, instead of spreading them all over the service area. This is good for the drivers and a good way to save on gas. 

How to create a geofence from GPX

21 May


We are almost done with a feature in ParaPlan Desktop that will allow route planners to set up geofences around their routes to keep them working in a specific area of town. In preparation for that, we have added support for direct importing of GPX files to create the geofences.

Here is a quick tutorial:

  1. On the sidebar, click All Elements, then Zones.
  2. In the Zone Finder, click New Zone. A blank zone window will open up.
  3. Open a web browser and navigate to http://www.gpsvisualizer.com/draw/
  4. Click the Track button on the right-side toolbox.
  5. Click on the map to create the geofence. Be sure to circle back to the first point and click it to complete the shape.
  6. Click the GPX button on the right-side toolbox. This will generate a link to a GPX file that can be downloaded to the computer.
  7. Back to ParaPlan and the new Zone window, click Bulk Lat/Long insert, then click Import GPX file. Select the file that was downloaded in step 6.
  8. Label the new Zone.
  9. Click Save and Close.

Route planners can now assign routes to the Zone, and ParaPlan will only schedule trips in that area to that route.

Smarter batch autoscheduling with ParaPlan

13 May


We released a new feature in ParaPlan Desktop that makes it easier to selectively automatically assign trips to routes. This means that if there is a route that is reserved for performing callbacks or just for long runs, you can prevent trips from being automatically scheduled to that route.

To prevent a route from being eligible for autoschedule, simply minimize the route and it will become hidden from the main view and will not have any trips autoscheduled to it.

Single-trip autoscheduling will continue to show all routes that could be used even if they are minimized.

ParaPlan Desktop improvements to autoschedule

24 March

We added several new features to ParaPlan Desktop this week that make auto-scheduling a large batch of trips more powerful, more accurate and more flexible.

Set MPH for different road types

Based on the length of the trip, we are able to make certain assertions about what types of roads the driver is on between their origin and destination and apply smarter time calculations.

We have five new settings that give our clients a high level of control over their travel time estimations.

-MPH on minor city roads. The default is 17 MPH.
-MPH on major city roads. The default is 30 MPH.
-MPH on highways and limited access roads. The default is 55 MPH.
-Average distance spent on minor city roads. The default is .3 miles, or about four blocks.
-Average distance spent on major city roads. The default is 2 miles. 


For example, a typical trip in an urban environment that is ten miles in length is going to start at the client’s house. It will be about four blocks on minor neighborhood roads before reaching a major city street. Once the driver is out of the neighborhood, it will take about two miles to get to the closest limited access highway or interstate. The driver will spend 5.4 miles on the speedier road type before getting off on an exit, driving two miles on a major city road and then another 4 blocks on minor streets to take the client to their destination. 

Different agencies have different geographic footprints, and having the ability to fine-tune all these settings means an agency can expect extremely accurate time estimations. For example, because smaller towns lack major roads, a mostly rural agency will set minor road distance to a larger value and set major city roads to a smaller value. A client in a city with well laid out limited access roads like Minneapolis might set the major road distance to .75 or 1 since the driver will be able to spend the majority of a trip on a highway.

Fine-tuned time windows

ParaPlan uses the concept of Time Windows to help our auto-schedule algorithm determine if a trip can be performed on a route. For example, if Betty has a 10:00 AM appointment and it takes her 5 minutes to get off the bus (dwell time), the latest we can drop Betty off is 9:55 AM. To extend that example, if it is a 30 minute trip, then the latest we can pick her up is 9:20 AM (5 min boarding, 30 min travel, 5 min alighting) for the 10:00 AM appointment. It is obviously not very efficient to pick up Betty and drop her off exactly on time, so we have different variables like Riding Constant and Deviation Time to allow a rider to be on the bus a little bit longer in order to accomplish ride sharing. These variables then create the Time Windows. 

So back to our 10:00 AM appointment. To extend this example a little further, let’s say we have a 15 minute Deviation Time. We can deviate from the scheduled Pick Up or Drop Off time by that 15 minutes. A client can be picked up a little early so the vehicle can do other work with the client on the bus. So our Pick Up Time Windows would be 9:05 AM – 9:20 AM and the Drop Off Time Windows would be 9:40 AM – 9:55 AM. This gives the bus more flexibility to perform other PU or DO stops as they have a window to hit rather than an exact time.

These variables help, but they don’t allow for late drop offs or prevent too-early pick ups, which are common requests. So we added four new variables to help give further control over Time Windows.

-Amount can be late for Pick Up requests and still be considered on time.
-Amount can be early for Pick Up requests.
-Amount can be late for Drop Off requests (Appointments) and still be considered on time.
-Amount can be early for Drop Off requests (Appointments).

If we were to take Betty’s appointment and apply a 5 minute “Can be late for DO” and a 15 minute “Can be early for DO”.  Her Drop Off Time Windows would be 9:40 AM – 10:00 AM. The astute reader will point out that a 10:00 AM drop off isn’t 5 minutes late at all and we would be getting her there right on time. They would be mostly correct, except that it takes Betty 5 minutes to get off the bus, so if we get to the front door at 10:00 AM, it still takes her 5 minutes to get off the bus and into the facility, which would make her Drop Off time 10:05 AM.

Another example would be Ann’s pick-up request of 3:00 PM. We will also assume she has a 5 minute dwell time. If we have a 60 minute PU early time and 15 minute PU late time, the bus could arrive at any time between 1:55 PM and 3:10 PM and still be considered valid.

Max riding time

Extending Time Windows to allow for maximum ride sharing is great, but it is equally important to control the amount of time a specific client can be on a bus. We have a new setting that allows users to set the maximum minutes that a client will be on a bus. Obviously, we can’t apply time changes to trips that are actually longer than the maximum ride time, so if we encounter a riding time greater than allowed by an agency, we will leave it unscheduled and require a dispatcher to manually assign that ride to a bus.


Improvements to create Invoice workflow

22 January

ParaPlan has a fully functional billing system. We can create invoices either for a client or for a single funding source with multiple clients. We also handle payments, pre-payments, over-payments and under-payments. Today our interface for creating invoices got a little bit easier to use.



#1 – Window starts at the top

This window grows vertically as invoices get populated. We watched our users move the window to the top of the screen time and time again to see all the information on the screen. Now, the window starts at the top of the user’s display.

#2 – Smarter billable trips finder

The panel now displays the client name or program name for this invoice. The expander is also auto-expanded after the client or program is selected.

#3 – Sortable headers

The labels are now clickable and will sort the list accordingly. Click once to sort ascending. Click again to sort in descending order. The label turns bold when it is being sorted. Green means sorting ascending. Red means the list is being sorted in descending order.

These changes are currently going through internal testing. It will be released in the next update.

ParaPlan Desktop update v4.1.621.11131

21 June



It is bug fix Friday here at EnGraph Software. We pushed out an update earlier in the week that had some blazing fast improvements to how Scheduling Canvas worked. There were a few oversights on our end and this release will help address those.

Building a new date would cause certain trips to become flagged for sending to MDTs. Drivers were getting wrong trips and too many trips. This has been resolved.

If somebody else cancelled or no-showed a trip, it was showing up in the Unscheduled bin on your computer instead of in the Cancellation bin. This is now going to the correct bin.

If you added a fill-in trip, not all the information that was just entered was being displayed in the Scheduling Canvas. The data was actually there and now it shows up as expected.

If you accidentally clicked “add fill-in”, but closed it before making any changes, you’d expect that trip to go away as it had always done in the past. Well, it wasn’t. It was hanging around and cluttering up your screen and making a few people thinking they had gone crazy. It will now go away and you can have your clean Scheduling Canvas and your sanity back.

As always, the update will install automatically.


ParaPlan Desktop v4.1.617.11125

17 June

Today we released an update to our desktop software. The highlights of this version include support for viewing signatures captured in ParaPlan Mobile for iOS and dramatic speed improvements in Scheduling Canvas.

We found some bottlenecks and bugs in Scheduling Canvas. We sped up how it refreshes in the background and made it much smarter about only refreshing data that actually changed.

Right-clicking on a trip and clicking “View Trip Stream” will provide a detailed chain of custody for a trip, including the client signature from ParaPlan Mobile for iOS.

We made some changes to Billing to better handle past due balance calculations.

We made some client-requested manifest and report changes.

We fixed some grammatical issues (“1 trips” – how embarrassing).

We are also pushing out updates to other products today:

ParaPlan Mobile is getting signature capture.

ParaPlan Server allows trips to be changed when in progress on Mentor Rangers and smarter Zonar connections.

ParaPlan REST had a bunch of code rewritten that is going to allow for huge speed improvements in the future.