💻 Skrypty integracyjne
Zakładka Skrypty integracyjne to jedna z kluczowych sekcji systemu Logito z punktu widzenia programisty. Umożliwia pełne zarządzanie skryptami wykorzystywanymi w różnych modułach systemu od walidacji formularzy, przez logikę eskalacji, aż po rozbudowę procesów.

➕Dodawanie skryptu
Dodanie nowego skryptu możliwe jest poprzez kliknięcie przycisku Dodaj na liście skryptów. 
Wyświetli się formularz zawierający następujące pola:
- Nazwa - unikalna nazwa skryptu w systemie,
- Opis - krótki opis celu lub funkcjonalności skryptu,
- Rola skryptu - do wyboru jedna z trzech ról:
- Skrypt współdzielony - zawiera funkcje/metody wykorzystywane w wielu innych skryptach,
- Skrypt wykonywalny - pełnoprawny skrypt odpowiadający za określoną logikę (np.: walidator, skrypt procesowy, skrypt źródła danych),
- Szablon - wzorcowy skrypt możliwy do ponownego użycia jako baza dla nowych skryptów.
- Typ skryptu (wymagane tylko dla skryptów wykonywalnych) - określa kontekst działania skryptu, np.: Proces, Eskalacja, Walidator, itp.
- Typ dokumentu - wybór modułu, w którym skrypt ma działać. Skrypt nie będzie dostępny w innych modułach.
- Szablon - pole pojawia się tylko dla skryptów wykonywalnych. Pozwala wybrać wcześniej utworzony szablon jako bazę (kod będzie można edytować).
- Skrypty współdzielone - możliwość podpięcia jednego lub wielu skryptów współdzielonych, z których funkcji skrypt wykonywalny może korzystać.
- Skrypt archiwalny - zaznaczenie oznacza, że dany skrypt jest nieaktywny i zarchiwizowany (nie będzie wykonywany).
🧩Tworzenie i edycja skryptów
Po utworzeniu nowego skryptu (lub edycji istniejącego) użytkownik trafia do rozszerzonego edytora, w którym dostępne są następujące sekcje:

🔹Silnik skryptowy
Na etapie tworzenia lub edycji można wybrać silnik skryptowy:
- C# - aktywnie rozwijany i rekomendowany,
- ClearScript (JS) - silnik JavaScript, nie jest już wspierany, nowe funkcje nie są do niego dodawane. Działa ze względu na wsteczną kompatybilność.
Ponieważ silnik JS nie jest wspierany ze względu na wolne działanie skryptów, zaleca się w nowych instancjach nie korzystanie z tego silnika i przepisanie skryptów na C#.
🔹Konfiguracja
Pozwala zdefiniować schemat konfiguracji, który później może być uzupełniany przez użytkownika końcowego w zależności od miejsca użycia skryptu. Umożliwia dynamiczne dostosowywanie działania skryptu.
Wartość wpisane w tym polu są szyfrowane na poziomie bazy danych.
🔹Skrypt współdzielony
Zawiera kod z wybranych wcześniej skryptów współdzielonych jako tylko do odczytu - nie można edytować kodu pochodzącego z tych skryptów. Użytkownik może dodać własne funkcje pomocnicze, które będą działać tylko w ramach skryptu.
🔹Skrypt
Główna część, gdzie tworzony jest właściwy kod skryptu. W tej sekcji wykorzystuje się metody i funkcje ze skryptów współdzielonych oraz zdefiniowane konfiguracje.
Każdy typ skryptu oczekuje zwrotu określonego obiektu. Zgodnego z dokumentacją systemu (dostępna w prawej części widoku).
🔹Dokumentacja pomocnicza
Po prawej stronie edytora znajduje się helper, sekcja zawierająca skróconą dokumentację, które mogą być używane w kodzie.
🛠️Akcje dostępne podczas edycji
Po przejściu do skryptu (np.: poprzez kliknięcie w wiersz lub wybór opcji Edytuj z menu kontekstowego), dostępne są dodatkowe funkcje:
- Zapisz - zapisuje zmiany do aktualnej wersji skryptu,
- Zapisz jako nową wersję - tworzy nową wersję skryptu, zachowując poprzednią jako archiwalną,
- Import skryptu / Eksport skryptu - umożliwia pracę z kodem w zewnętrznym edytorze, np.: z podpiętym SDK. Dostępne również z poziomu menu kontekstowego.
⚙️ Ustawienia konfiguracji
Dla skryptów w języku C#, z poziomu menu kontekstowego dostępna jest opcja Konfiguracja.
Pozwala ona ustawić domyślną konfigurację globalną, która automatycznie uzupełnia dane konfiguracyjne w nowo dodanych skryptach. Użytkownik może później jedynie dostosować wartości, bez konieczności ręcznego wprowadzania całej struktury.

Przykład kodu z konfiguracją:
[ConfigSection("Testowa konfiguracja")]
public TestConfiguration TestConfig { get; set; }
public sealed class TestConfiguration
{
[Required]
[Control("Test1 Text", ControlType.Text)]
public string Test1{ get; set; }
[Required]
[Control("Test2 Bool", ControlType.Boolean)]
public bool Test2 { get; set; }
[Required]
[Control("Test3 Number", ControlType.Number)]
public decimal Test3 { get; set; }
}
📋Logi błędów
Dla każdego skryptu dostępna jest zakładka Logi błędów, w której można przeglądać błędy występujące podczas wykonywania kodu.

Pozwala to szybciej diagnozować problemy i poprawiać błędne działanie skryptów.
Po kliknięciu w dany błąd na liście, użytkownik ma możliwość podejrzenia miejsca występowania błędu oraz przyczyny wystąpienia danego zdarzenia.

❓FAQ - Skrypty integracyjne
🔹 Czy można edytować skrypty współdzielone?
Tak, ale zmiany wprowadzone w skrypcie współdzielonym będą miały globalny wpływ w wszystkich skryptach, które go używają.
🔹 Czy można usunąć skrypt?
Nie, w systemie nie ma możliwości usuwania skryptów. Można natomiast oznaczyć je jako archiwalne, co sprawia, że nie będą aktywne ani wykorzystywane.