Przejdź do głównej zawartości

SourceGet – odczyt danych ze źródła statycznego

SourceGet odczytuje dane ze źródła typu Static. Funkcja może zwrócić cały wiersz, pojedynczą wartość, wybrane kolumny albo listę wierszy spełniających warunek.

Źródło musi mieć dokładnie jedną kolumnę klucza głównego.

Najczęstszy wariant to odczyt rekordu po wartości klucza głównego.

query = CreateObject();
query.srcName = "BudzetMPK";
query.keyValue = "2026|MPK-100|01";
rekord = SourceGet(query);

Wynikiem jest obiekt z wartościami kolumn z danego wiersza.

Jeżeli podasz jedną kolumnę w columns, funkcja zwróci pojedynczą wartość.

query = CreateObject();
query.srcName = "BudzetMPK";
query.keyValue = "2026|MPK-100|01";
query.columns = "Budzet";
budzet = SourceGet(query);

Ten wariant jest wygodny przy prostych kontrolach, na przykład przy porównaniu kosztu z limitem.

Kilka nazw kolumn rozdziel przecinkami.

query = CreateObject();
query.srcName = "BudzetMPK";
query.keyValue = "2026|MPK-100|01";
query.columns = "Budzet,Wykonanie,Rezerwacje";
dane = SourceGet(query);

Wynikiem jest obiekt zawierający tylko wskazane kolumny.

whereQuery pozwala pobrać wiele wierszy spełniających warunek.

query = CreateObject();
query.srcName = "BudzetMPK";
query.whereQuery = "'Rok' = '2026' AND 'MPK' = 'MPK-100'";
wiersze = SourceGet(query);

W tym wariancie funkcja zwraca listę obiektów. Lista jest zwracana także wtedy, gdy warunek pasuje tylko do jednego wiersza.

Jeżeli w obiekcie zapytania podasz jednocześnie keyValue i whereQuery, użyty zostanie keyValue.

Zapytanie Wynik
keyValue bez columns Obiekt z całym wierszem.
keyValue z jedną kolumną w columns Pojedyncza wartość.
keyValue z wieloma kolumnami w columns Obiekt z wybranymi kolumnami.
whereQuery Lista obiektów.
Wariant Wynik przy braku danych
Jedna kolumna przez columns NULL
Odczyt wiersza po keyValue Pusty obiekt
Odczyt przez whereQuery Pusta lista
  • Nazwa źródła w srcName nie istnieje.
  • Źródło ma typ inny niż Static.
  • Źródło nie ma dokładnie jednego klucza głównego.
  • W columns podano kolumnę, która nie jest dostępna w źródle.
  • Warunek whereQuery ma niepoprawną składnię.