Plik: yard_view_details.js - Szczegóły Transportu na Terenie Zakładu
Plik yard_view_details.js obsługuje wyświetlanie szczegółowych informacji o transportach znajdujących się na terenie zakładu. Pozwala użytkownikowi na przeglądanie statusu transportu, identyfikację przewoźnika oraz kierowcy, a także na wysyłanie powiadomień SMS.
Funkcja MojaOnLoad()
Główna funkcja odpowiedzialna za inicjalizację formularza szczegółów transportu:
- Ładuje arkusz stylów maw_events.css.
- Pobiera numer referencyjny transportu (gcRefno).
- Jeśli numer referencyjny jest pusty, domyślnie ustawia wartość 0.
- Pobiera dane transportu z bazy SQL.
- Jeśli brak danych, wyświetla komunikat Brak danych i kończy działanie.
- Tworzy dynamiczny interfejs użytkownika zawierający szczegóły transportu.
Prezentacja statusu transportu
Skrypt dynamicznie przypisuje status transportu w zależności od wartości pola ACH:
- 1 - Potwierdzenie przybycia transportu.
- 2 - Wjazd na teren zakładu.
- 3 - Magazyn zwolnienie rampy.
- 4 - Wyjazd z zakładu.
Struktura formularza
Formularz zawiera następujące sekcje:
- Numer Load Plan - identyfikator transportu.
- Kontrahent - firma odpowiedzialna za transport.
- Przewoźnik - nazwa firmy przewoźniczej.
- Kierowca - imię i nazwisko.
- Kierowca dokument - numer dokumentu tożsamości.
- Numer ciągnika - numer rejestracyjny pojazdu.
- Numer naczepy - numer rejestracyjny naczepy.
- Numer kontenera - identyfikacja transportu intermodalnego.
- Asortyment - opis przewożonego ładunku (jeśli dostępny).
- Termin - zakres czasowy operacji transportowej.
Funkcja ZmienStatus()
Odpowiada za wysłanie powiadomienia SMS do kierowcy:
- Generuje treść wiadomości zawierającą:
- Status transportu.
- Termin awizacji.
- Numer referencyjny.
- Numer Load Plan.
- Po wysłaniu wiadomości wyświetla komunikat o jej dostarczeniu.
Funkcja ZmienStatusEnd()
Po wysłaniu wiadomości SMS:
- Przycisk wysyłki znika i pojawia się komunikat Wiadomość została wysłana.
- Po 2 sekundach okno szczegółów transportu zostaje automatycznie zamknięte.
Podsumowanie
Plik yard_view_details.js to narzędzie do monitorowania transportów na terenie zakładu. Umożliwia użytkownikom przeglądanie szczegółowych danych o pojazdach, przewoźnikach i kierowcach oraz wysyłanie powiadomień SMS. Dzięki dynamicznemu interfejsowi ułatwia zarządzanie ruchem transportowym w obrębie magazynów i parkingów.
Skrypt yard_view_details.js
Skrypt yard_view_details.js stanowi istotny moduł systemu Studio VSS.net, służący do prezentacji szczegółowych informacji dotyczących transportów oczekujących na parkingu oraz umożliwiający zmianę ich statusu wraz z wysyłką powiadomień SMS. Jego działanie można podzielić na kilka istotnych etapów:
1. Inicjalizacja modułu i konfiguracja interfejsu
W momencie załadowania strony wykonywana jest funkcja MojaOnLoad(), która:
- Dołącza arkusz stylów: Do sekcji
<head>dokumentu dynamicznie wstawiany jest plik CSS (maw_events.css), co gwarantuje jednolity i profesjonalny wygląd interfejsu. - Pobiera numer referencyjny: Zmienna
gcRefnojest inicjalizowana na podstawie danych globalnych (tablicassVar). Jeśli numer referencyjny jest pusty, przypisywana jest wartość 0, co zabezpiecza przed błędami przy dalszym przetwarzaniu. - Ustawia właściwości kontenera: Element
#Containerjest przygotowywany poprzez ustawienie marginesów, co zapewnia właściwą prezentację zawartości.
2. Pobieranie danych z bazy
Skrypt wykorzystuje funkcję ssDataSQL() do pobrania danych dotyczących wybranego transportu. Zapytanie SQL (identyfikator „8E80EFB4-8109-4CF5-A1E4-99E11422EF06”) przekazuje numer referencyjny gcRefno jako parametr, a wynik (przechowywany w zmiennej cZrodlo) zawiera informacje, takie jak:
- Status awizacji (pole ACH),
- Numer dokumentu Load Plan,
- Dane kontrahenta, przewoźnika oraz kierowcy,
- Numery pojazdów (ciągnik, naczepa, kontener),
- Informacje o asortymencie (jeśli są dostępne),
- Przedział czasowy awizacji (daty rozpoczęcia i zakończenia).
W przypadku braku danych skrypt wyświetla komunikat „Brak danych” i kończy dalsze przetwarzanie.
3. Ustalanie statusu transportu
Na podstawie wartości pola ACH pierwszego rekordu z pobranych danych, skrypt przypisuje odpowiedni tytuł statusu transportu:
- „1” - „Potwierdzenie przybycia transportu”,
- „2” - „Wjazd na teren zakładu”,
- „3” - „Magazyn zwolnienie rampy”,
- „4” - „Wyjazd z zakładu”,
- Inne wartości - domyślnie „Zmiana statusu awizacji”.
Wynikowy tytuł jest wykorzystywany zarówno do prezentacji statusu, jak i do wstępnego wypełnienia treści wiadomości SMS.
4. Generowanie interfejsu użytkownika
Na podstawie pobranych danych skrypt dynamicznie tworzy strukturę HTML formularza, który prezentowany jest użytkownikowi:
- Struktura Fieldset: Całość informacji opakowana jest w element
<fieldset>z legendą „Szczegóły transportu na parkingu”, co logicznie grupuje dane związane z transportem. - Tabela z danymi: Formularz zawiera tabelę, w której poszczególne wiersze prezentują:
- Status transportu (prezentowany na podstawie ustalonego wcześniej tytułu),
- Numer Load Plan,
- Dane kontrahenta wraz z miejscowością,
- Informacje o przewoźniku, kierowcy oraz dokument kierowcy,
- Numery pojazdów (ciągnik, naczepa, kontener),
- (Opcjonalnie) Asortyment,
- Przedział czasowy (daty rozpoczęcia i zakończenia awizacji).
- Obszar na uwagi: Użytkownik ma możliwość wprowadzenia dodatkowych komentarzy w dedykowanym polu tekstowym.
- Wstępnie sformułowana treść SMS: W osobnym polu tekstowym wyświetlana jest domyślna treść powiadomienia SMS, zawierająca najważniejsze informacje o transporcie, takie jak status, awizowany termin, numer referencyjny oraz numer dokumentu.
- Przycisk wysyłki: Formularz zawiera interaktywny przycisk, który po kliknięciu wywołuje procedurę zmiany statusu i wysłania wiadomości.
5. Inicjalizacja komponentów interaktywnych
Po wygenerowaniu formularza skrypt przeprowadza konfigurację interaktywnych elementów interfejsu, wykorzystując funkcje takie jak:
- KonfigurujjqxCombo i KonfigurujjqxComboFly - do inicjalizacji rozwijanych list,
- KonfigurujWebInput - do konfiguracji pól tekstowych,
- KonfigurujjqxMask, KonfigurujjqxNumber, KonfigurujjqxCalendar - do odpowiedniego formatowania i walidacji danych,
- KonfigurujjqxWebCheck - do obsługi pól wyboru.
Dzięki temu uzyskiwany jest spójny i intuicyjny interfejs, który wspiera efektywną pracę operatora.
6. Proces wysyłki wiadomości i aktualizacja statusu
Obsługa wysyłki wiadomości realizowana jest za pomocą funkcji:
- ZmienStatus(): Po kliknięciu przycisku „Wyślij wiadomość” wywoływana jest ta funkcja, która z kolei przekierowuje działanie do ZmienStatusEnd().
- ZmienStatusEnd(): Funkcja ta modyfikuje zawartość elementu odpowiedzialnego za przycisk (kontener
#rowsButton), wyświetlając komunikat „Wiadomość została wysłana”. Następnie, po krótkim opóźnieniu (2000 ms), wywoływana jest funkcja JqxAnuluj(’ZamknijOkno’), która finalizuje proces poprzez zamknięcie okna dialogowego.
Podsumowanie
Skrypt yard_view_details.js w rozwiązaniu Studio VSS.net umożliwia kompleksową obsługę szczegółowych informacji dotyczących transportów na parkingu. Jego główne funkcjonalności obejmują:
- Dynamiczne pobieranie danych z bazy na podstawie przekazanego numeru referencyjnego,
- Intuicyjne prezentowanie informacji o statusie transportu, numerach dokumentów, danych kontrahenta, przewoźnika, kierowcy oraz pojazdów,
- Możliwość wprowadzenia dodatkowych uwag oraz edycji treści powiadomienia SMS,
- Interaktywne zmienianie statusu transportu z automatycznym zamknięciem okna po wysłaniu wiadomości.
Dzięki tak przemyślanej konstrukcji, rozwiązanie Studio VSS.net znacząco usprawnia proces monitorowania oraz zarządzania logistyką transportów, zapewniając użytkownikom przejrzysty interfejs i szybki dostęp do niezbędnych informacji.