Program do zarządzania transportem i dzień zespołu dyspozytorskiego
Dzień w dyspozycji transportowej ma stały rytm, niezależnie od liczby pojazdów. Rano trzeba przyjąć i uporządkować zlecenia, w ciągu dnia utrzymać plan mimo zmian, a po dostawach zamknąć sprawy dokumentami. Program do zarządzania transportem ma sens wtedy, gdy każda z tych faz zostawia w systemie ślad, z którego korzysta następna.
Opis producenta Linkway zakłada jedną bazę zleceń. Dyspozytor przyjmuje w niej zlecenia, przypisuje je do pojazdów i kierowców oraz śledzi ich status w czasie rzeczywistym. Ten artykuł pokazuje, jak wygląda dzień całego zespołu, a nie pojedynczego spedytora, i co zmienia się względem pracy na papierze.
| Faza | Pora dnia (przykład) | Co prowadzi program | Wynik |
|---|---|---|---|
| Zlecenie | początek zmiany | rejestr nowych zleceń ze statusem | lista zleceń do przydziału |
| Przydział | przed południem | rezerwacja pojazdu i kierowcy | zlecenie w statusie przydzielonym |
| Monitorowanie | w ciągu dnia | pozycje GPS i potwierdzenia etapów | aktualny status oraz ETA |
| Dokumenty | po dostawie | dokumenty od kierowcy i rozliczenie | zlecenie gotowe do faktury |
Reguła: każda faza kończy się zmianą statusu w systemie, a nie ustaleniem przez telefon, które istnieje tylko w pamięci rozmówców.
Początek zmiany - przyjęcie zleceń i plan dnia
Przy pracy na papierze i w arkuszach zlecenia przychodzą różnymi kanałami. Część ma postać maila, część jest przyjmowana telefonicznie, a część wraca z poprzedniej zmiany jako notatka. Pierwszą godzinę pochłania zebranie tego w jedną listę, zanim ktokolwiek zacznie planować.
Program zastępuje ten krok wspólnym rejestrem. Nowe zlecenie ma status początkowy i widoczne braki w danych, więc dyspozytor uzupełnia je od razu, zamiast odkrywać przy załadunku. Zlecenie bez wymaganych pól nie przechodzi do przydziału.
- Punkty trasy - adres załadunku i rozładunku z oknem czasowym każdego z nich.
- Ładunek - masa i liczba jednostek, od których zależy dobór pojazdu.
- Wymagania - typ zabudowy lub uprawnienia kierowcy przy ładunkach szczególnych.
- Zleceniodawca - identyfikator klienta i numer zamówienia z jego systemu.

Po uzupełnieniu danych zespół ustala kolejność. Pilne zlecenia i te z wąskim oknem rozładunku idą pierwsze, bo ich opóźnienie kosztuje najwięcej. Rezerwacje pojazdu i kierowcy w osi czasu opisuje artykuł o kalendarzu dla firmy transportowej.
Przydział pojazdów i kierowców przez kilka osób jednocześnie
Przy większej flocie planowanie prowadzi kilka osób jednocześnie. Zgromadzenie ich w jednym programie rozwiązuje problem rozproszonych notatek, ale tworzy nowy: dwie osoby mogą w tej samej minucie przydzielić ten sam pojazd do różnych ładunków.
Podział zakresów bez utraty widoku planu
Przypisanie dyspozytorom regionów albo grup pojazdów porządkuje pracę, ale nie może odbierać wglądu w całość. Pojazd wracający z jednego regionu bywa najlepszym rozwiązaniem dla zlecenia z innego. Zakres ustala więc, kto edytuje rekord, a nie kto go widzi.
Blokada przydziału w bazie
Zapobieganie podwójnemu przydziałowi należy do bazy, a nie do uważności użytkowników. Transakcja blokuje wiersz pojazdu. Następnie sprawdza kolizje, a dopiero potem zapisuje przydział. Druga osoba, która próbuje w tym samym czasie, czeka na zwolnienie blokady i widzi już gotowy wynik. Nazwy tabel w przykładzie są poglądowe.
BEGIN TRANSACTION;
SELECT PojazdId
FROM dbo.Pojazd WITH (UPDLOCK, ROWLOCK)
WHERE PojazdId = @PojazdId;
IF EXISTS (SELECT 1 FROM dbo.PrzydzialPojazdu
WHERE PojazdId = @PojazdId
AND Poczatek < @Do AND Koniec > @Od)
BEGIN
ROLLBACK TRANSACTION;
THROW 50002, N'Pojazd jest już przydzielony w tym oknie.', 1;
END;
INSERT dbo.PrzydzialPojazdu (PojazdId, ZlecenieId, Poczatek, Koniec)
VALUES (@PojazdId, @ZlecenieId, @Od, @Do);
COMMIT TRANSACTION;
Blokada obejmuje jeden wiersz i trwa kilka milisekund, więc nie spowalnia pracy pozostałych osób. Zasady poziomów izolacji i blokad opisuje dokumentacja SET TRANSACTION ISOLATION LEVEL w Microsoft Learn. Interfejs powinien pokazać przegranej osobie czytelny komunikat z nazwiskiem tej, która przydzieliła pojazd pierwsza.
Reguła: zlecenie zajęte przez innego użytkownika jest w trybie odczytu, a każda zmiana przydziału zostawia w historii starą i nową wartość.
Pojazd bez kierowcy pozostaje bezużyteczny, więc ta sama procedura obejmuje zwykle dwa zasoby w jednej transakcji. Kolejność ich blokowania musi być zawsze taka sama, żeby dwie osoby nie zablokowały się nawzajem. SQL Server rozstrzyga takie zakleszczenie przez wycofanie jednej z transakcji, dlatego aplikacja powinna umieć ją bezpiecznie powtórzyć.
W ciągu dnia - monitorowanie trasy i komunikacja z kierowcą
Po wyjeździe pojazdu praca zespołu przenosi się na mapę i listę zdarzeń. Program zintegrowany z systemami GPS pokazuje na jednej mapie pozycje pojazdów własnych oraz zewnętrznych przewoźników. Zbieranie danych z wielu urządzeń w jednym miejscu opisuje artykuł o integratorze dla flot i kontroli transportu w czasie rzeczywistym. Opis integracji z GBOX na stronie Linkway wymienia lokalizację pojazdów oraz czas pracy kierowców.
Kierowca komunikuje się z zespołem przez aplikację mobilną. Zamiast telefonu wysyła w niej potwierdzenia załadunku i rozładunku oraz informacje o postojach, a dyspozytor odpowiada w czacie. Wiadomość zostaje przy zleceniu, więc ustalenie można odnaleźć po tygodniu. Codzienną pracę z aplikacją przedstawia tekst o aplikacji linkway.TRACKER, a koszt opóźnień w komunikacji wylicza materiał o aplikacji dla kierowcy.

| Zdarzenie | Sygnał w systemie | Reakcja zespołu |
|---|---|---|
| Zjazd z wyznaczonej trasy | alert z pozycją pojazdu | kontakt z kierowcą i zapis przyczyny |
| Postój w nieautoryzowanym miejscu | alert o zatrzymaniu poza punktami zlecenia | ocena ryzyka dla ładunku |
| Opóźnienie względem planu | zmiana ETA na zleceniu | informacja dla klienta i korekta okna rozładunku |
| Parametry ładunku poza normą | alert z telematyki, na przykład temperatury | decyzja o zmianie trasy lub przeładunku |
Czas dotarcia liczony z pozycji GPS wraca do klienta jako ETA, co ogranicza telefony z pytaniem o dostawę. Zasady jego użycia opisuje artykuł o ETA od Linkway, a wpływ monitoringu na koszty floty tekst o monitoringu transportu a kosztach floty.
Wspólny widok zespołu
Ekran monitoringu sprawdza się w dwóch trybach pracy. Dyspozytor filtruje listę do swoich pojazdów i widzi tylko to, co wymaga jego reakcji, a kierownik zmiany ogląda całość z podziałem na statusy. Oba widoki korzystają z tych samych danych, więc nikt nie utrzymuje własnej kopii listy w arkuszu.
Odświeżanie mapy i listy odbywa się w tle. Zwykle jest to zapytanie asynchroniczne AJAX wysyłane co kilkanaście sekund, które pobiera tylko zmienione zlecenia. Rozwiązanie jest tańsze od przeładowania całej strony i nie przerywa dyspozytorowi wpisywania notatki.
Po dostawie - dokumenty i zamknięcie zlecenia
Dostawa nie kończy zlecenia, dopóki w systemie brakuje dokumentu. Kierowca przesyła potwierdzenie odbioru przez aplikację, a plik trafia do rekordu zlecenia, gotowy do dalszej obróbki. W transporcie międzynarodowym dochodzi CMR, który potwierdza zawarcie umowy przewozu.
Papierowy oryginał wraca do firmy późno, a skan przypięty do zlecenia pozwala fakturować wcześniej. Program zamyka zlecenie dopiero po przyjęciu dokumentu, więc lista otwartych zleceń pokazuje również te, którym brakuje dowodu dostawy. Szczegółowy opis obiegu przedstawia artykuł o zarządzaniu dokumentami w Linkway.TMS.
SELECT z.Numer, z.DataRozladunku
FROM dbo.ZlecenieTransportowe AS z
WHERE z.Status = 4 -- dostarczone
AND z.DataRozladunku < DATEADD(day, -2, SYSDATETIME())
AND NOT EXISTS (SELECT 1
FROM dbo.DokumentZlecenia AS d
WHERE d.ZlecenieId = z.ZlecenieId
AND d.Typ = N'POTWIERDZENIE');
Zapytanie wskazuje zlecenia dostarczone przed więcej niż dwoma dniami, dla których nie ma potwierdzenia odbioru. Zespół przegląda tę listę pod koniec zmiany, a nie pod koniec miesiąca, gdy dowód dostawy trzeba już odtwarzać. Okres dwóch dni jest przykładowy i zależy od umów z klientami.
Kontrola przejść statusów
Zamknięcie zlecenia po przyjęciu dokumentu wymaga, by program pilnował kolejności statusów. Zlecenie nie może przejść z nowego od razu do dostarczonego, a rozliczone nie wraca do realizacji. Reguły przejść zapisuje się w kodzie jako dozwolone pary statusów, a nie jako uwagi w instrukcji dla użytkowników.
using System.Collections.Generic;
using System.Linq;
public enum StatusZlecenia { Nowe = 1, Przydzielone = 2, WRealizacji = 3, Dostarczone = 4, Rozliczone = 5 }
static readonly Dictionary<StatusZlecenia, StatusZlecenia[]> Dozwolone = new()
{
[StatusZlecenia.Nowe] = new[] { StatusZlecenia.Przydzielone },
[StatusZlecenia.Przydzielone] = new[] { StatusZlecenia.WRealizacji, StatusZlecenia.Nowe },
[StatusZlecenia.WRealizacji] = new[] { StatusZlecenia.Dostarczone },
[StatusZlecenia.Dostarczone] = new[] { StatusZlecenia.Rozliczone },
};
static bool CzyMoznaZmienic(StatusZlecenia z, StatusZlecenia na) =>
Dozwolone.TryGetValue(z, out var cele) && cele.Contains(na);
Przykład jest poglądowy i nie odzwierciedla schematu konkretnego produktu. Ten sam słownik można wykorzystać w interfejsie do wyszarzenia niedostępnych przycisków oraz w procedurze składowanej do odrzucenia zapisu, który ominął formularz. Reguła w jednym miejscu jest tańsza w utrzymaniu niż kilka kopii.
Przekazanie zmiany w dyspozycji ciągłej
Dyspozycja pracująca w trybie ciągłym wymaga przekazania spraw otwartych. Relacja ustna przy zmianie dyżuru gubi szczegóły, zwłaszcza dotyczące uzgodnień z klientem. Notatki przy zleceniach widoczne dla całego zespołu działają lepiej, bo zostają tam, gdzie będą potrzebne.
- Notatka przy zleceniu - krótka informacja o uzgodnieniu z klientem lub kierowcą, widoczna dla każdego, kto otworzy rekord.
- Historia zmian statusu - lista decyzji z czasem i autorem, z której odczytuje się przebieg sprawy bez dzwonienia do poprzedniej osoby.
Przy przekazaniu zmiany zespół przegląda filtrowaną listę: zlecenia w drodze z opóźnieniem oraz zlecenia bez potwierdzonego dokumentu. Dwie listy wystarczają, by nowa zmiana wiedziała, gdzie zacząć. Reszta wynika ze statusów.
Uprawnienia w zespole i podział widoczności
W zespole dyspozytorskim pracują osoby o różnych rolach. Dyspozytor edytuje zlecenia i przydziały, kierownik zmiany zatwierdza wyjątki, a księgowość widzi koszty i dokumenty rozliczeniowe. Kierowca dostaje tylko własne zadania, bez stawek dla klientów i danych innych pojazdów.
Uprawnienia należy przypisywać rolom, a nie osobom, bo zmiana obsady nie wymaga wtedy przebudowy dostępów. Filtr uprawnień działa po stronie serwera, a nie w interfejsie, ponieważ ukryty przycisk nie chroni danych, które nadal wracają z zapytania. Dziennik zmian pokazuje, kto edytował zlecenie, co ułatwia wyjaśnianie spornych przydziałów.
Przejście z papieru i arkuszy do systemu
Dawniej planowanie przewozów opierało się na papierowych dokumentach i telefonach, a każda zmiana trasy wymagała ręcznej ewidencji. Zamiana tego na program nie polega na przepisaniu arkusza do bazy. Zmienia się źródło prawdy: rekord w systemie wygrywa z notatką na kartce.
| Obszar pracy | Papier i arkusz | Program do zarządzania transportem |
|---|---|---|
| Przyjmowanie zleceń | maile i telefony, wpisy do arkusza | jedna baza zleceń ze statusem |
| Lokalizacja pojazdu | telefon do kierowcy | mapa GPS i alerty o zjeździe z trasy |
| Dokumentacja przewozu | papierowe CMR i listy przewozowe | dokumenty archiwizowane cyfrowo |
| Komunikacja z kierowcą | rozmowy bez zapisu ustaleń | czat w aplikacji z historią wiadomości |
| Rozliczenie zlecenia | ręczne zestawienie kosztów | raporty i kalkulacja kosztów |
Wdrożenie najlepiej zacząć od jednego oddziału albo jednej grupy pojazdów. Zespół stabilizuje wtedy dane podstawowe i przyzwyczaja się do nowego narzędzia, a błąd w kartotece dotyczy niewielkiej części floty. Dopiero po ustabilizowaniu procesu system rozszerza się na całą firmę. Przebieg projektu przedstawia artykuł o wdrożeniu linkway.TMS w czterech etapach.
Okres równoległej pracy
Praca na dwóch źródłach jednocześnie ma sens tylko przez ograniczony czas. Po tygodniu lub dwóch dublowanie zmienia się w koszt, a zespół zaczyna ufać dwóm wersjom tej samej informacji. Datę wyłączenia arkusza wyznacza się z góry i zapisuje w planie wdrożenia.
Porównanie arkusza z systemem rozwija artykuł Excel w transporcie a system TMS, a straty finansowe przy pracy na arkuszach opisuje tekst z działu reklamacji o arkuszach kalkulacyjnych w firmie transportowej.
Miary pracy zespołu dyspozytorskiego
Program zbiera dane, z których zespół może policzyć własną pracę. Wskaźniki są użyteczne, gdy dotyczą procesu, a nie osób, bo ocena pojedynczego dyspozytora po liczbie zleceń zachęca do wybierania łatwych. Poniższe cztery miary opisują cykl dnia.
- Czas do przydziału - odstęp między zapisaniem zlecenia a przypisaniem pojazdu.
- Zmiany po wydaniu zlecenia - liczba korekt przydziału po potwierdzeniu go kierowcy.
- Zlecenia z kompletem dokumentów - odsetek dostaw, dla których dokument dotarł w ustalonym terminie.
- Zlecenia na dyspozytora - obciążenie zespołu na zmianę, do porównań w czasie, a nie między osobami.
Wartości początkowe należy zapisać przed wdrożeniem. Bez nich trudno ocenić, czy program skrócił przydział albo zmniejszył liczbę korekt. Szerszy przegląd funkcji i kryteriów wyboru programu przedstawia artykuł o oprogramowaniu dla transportu, a opis rozwiązania producenta znajduje się na stronie Linkway.TMS.
Miary zbiera się z rekordów, a nie z ręcznych zestawień. Zapytanie liczące czas do przydziału wymaga jedynie dwóch znaczników czasu na zleceniu: zapisania i przypisania pojazdu. Dane te program odkłada i tak przy każdej zmianie statusu, więc pomiar nie wymaga od zespołu dodatkowej pracy.
Uzupełnieniem jest dyskusja z zespołem po pierwszym miesiącu. Dyspozytorzy wiedzą, które ekrany spowalniają pracę i które pola w formularzu okazują się zbędne. Uwagi te wracają do konfiguracji programu, zanim przyzwyczajenia się utrwalą.



