Skip to main content

Trip Management

The Trips page is the core of FleetTAB's day-to-day workflow. It presents a chronological table of every vehicle trip recorded by the Wialon platform, enriched with geocoded locations, driver assignments, classification status, and environmental data — all in a single, searchable view.

What the Table Shows

Each row in the trips table represents one recorded trip. The following columns are available by default:

ColumnDescription
Start TimeDate and time the trip began
End TimeDate and time the trip ended
DurationTotal elapsed time for the trip
DistanceOdometer distance covered, in the configured unit (km or mi)
FromGeocoded departure address
ToGeocoded arrival address
DriverAssigned driver name, if any
StatusClassification: Business, Personal, or Unclassified
NotesFree-text notes attached to the trip
CO2Estimated carbon dioxide output for the trip
Max SpeedTop speed recorded during the trip
Avg SpeedAverage speed over the trip duration

Column visibility is configurable. Use the View button in the toolbar to show or hide individual columns without losing your other filter settings.

info

Geocoding is performed once per unique coordinate pair and cached. Addresses update automatically if the underlying geocoding data changes, but this is rare in practice.

How Trips Are Loaded

FleetTAB fetches trip data directly from the Wialon Remote API. When you open the Trips page or change your date range, the application queries Wialon for all trips recorded by the selected units within the chosen interval.

Trip loading follows this sequence:

  1. The active session token is validated against the Wialon host.
  2. A batch request is dispatched for each selected unit, covering the full date range.
  3. Raw trip records are transformed once in the service layer — timestamps are converted from Unix seconds to local time, distances are converted to the display unit.
  4. Results are stored in the query cache for five minutes, so navigating away and back does not re-trigger a fetch unless the data has expired.
tip

If you notice trips are missing, confirm that the relevant vehicles have the Trips data type enabled in Wialon and that your account has at least read access to those units.

Virtual Scrolling for Large Datasets

The trips table is built to handle datasets of 10,000 trips or more without degrading browser performance. It uses virtual (windowed) rendering via TanStack Virtual: only the rows currently visible in the viewport are mounted in the DOM, regardless of how many trips are loaded.

In practice this means:

  • Memory stays flat as you scroll through thousands of rows.
  • Initial render is fast — the browser does not have to paint all rows at once.
  • Sorting and filtering remain responsive because they operate on the in-memory dataset, not the DOM.

The row height is fixed, which allows the virtual scroller to calculate offsets without measuring each row. If you resize your browser window, the visible row count adjusts automatically.

info

The virtual scroller renders approximately 15–25 rows at a time depending on your viewport height. Rows outside that window are unmounted but the scroll position and selection state are preserved.

Sorting

Click any column header to sort the table by that column. Click again to reverse the sort direction. Sorting is applied to the full in-memory dataset, so it works correctly even across thousands of trips without a round-trip to the server.

Trip Status Colors

Row backgrounds carry a subtle status tint to help you scan the table quickly:

  • Business trips have a green tint.
  • Personal trips have a purple tint.
  • Unclassified trips have no background tint, making them easy to spot as items requiring attention.