Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

Wstęp

Konfiguracja wtyczki jest plikiem JSON o odpowiedniej strukturze, którą można stworzyć na podstawie poniższego opisu. Pisanie JSONa powinno zacząć się od stworzenia obiektu z polem menus będącym listą obiektów menu.

config.json
{
	"menus": [] // lista obiektów menu
}


Obiekt menu

Opcje konfiguracyjne:

  • id (string) - identyfikator menu (unikalny globalnie)
  • name (string) - nazwa menu wyświetlana w głównym menu systemu PlusWorkflow
  • permissions (object) - obiekt uprawnień dla danego menu
  • views (list) - lista obiektów widoków dla danego menu. Widoki zostaną wyświetlone jako podzakładki po wejściu w menu.

Obiekt uprawnień

  • users (list) - lista stringów zawierająca loginy użytkowników, którzy mają uprawnienia do danego menu
  • groups (list) - lista stringów zawierająca nazwy grup posiadających uprawnienia do danego menu

Uprawnienia działają na logicznym operatorze OR (wystarczy, że istnieje login użytkownika w users lub należy on do przynajmniej jednej z grup wymienionej w groups).

Obiekt widoku

  • id (string) - identyfikator widoku (unikalny globalnie)
  • name (string) - nazwa widoku wyświetlana jako nazwa podzakładki
  • default (boolean) - flaga określająca, czy widok ten jest domyślnym widokiem w obrębie wszystkich widoków dla danego menu. Jeżeli tak, zostanie on wyświetlony po wejściu w menu. Tylko jeden widok może być widokiem domyślnym.
  • source (object) - obiekt źródła do pobrania danych dla danego widoku
  • action (object) - obiekt akcji, która zostanie uruchomiona po kliknięciu w wiersz
  • inputs (list) - lista obiektów filtrów dla danego widoku. Jeżeli jest pusta, nie zostanie w ogóle wyświetlony formularz Filtruj wyniki wyszukiwania. Wartości filtrów tak, jak ich pola są wartościami tekstowymi, które są przekazywane źródłu przy każdym jego wywołaniu.
  • outputs (list) - lista obiektów kolumn dla danego widoku
  • comments (boolean) - flaga określająca, czy do tabeli danych ma być dodana kolumna Komentarze prezentująca listę komentarzy dla każdego wiersza.
  • links (lista) - lista obiektów linków tj. dodatkowych "przycisków" wyświetlanych w dodatkowej kolumnie Akcja. Jeżeli lista jest pusta, kolumna nie zostanie wyświetlona.
  • summary (object) - obiekt podsumowania dla danego widoku
  • pageSize (number) - liczba wyników na stronie. Domyślnie brane z ustawień użytkownika.

Obiekt źródła

  • type (string) - typ źródła. Obecnie jedynym obsługiwanym typem jest komponent źródła danych (wartość DATASOURCE)
  • id (string) - identyfikator źródła (np. dla źródła typu DATASOURCE jest to identyfikator komponentu). Nie musi być unikalny w konfiguracji DataViewera, gdyż wiele widoków może używać tych samych źródeł.

Obiekt filtra

  • id (string) - identyfikator filtra (unikalny w obrębie widoku)
  • name (string) - nazwa filtra wyświetlana jako etykieta pola
  • alias (string) - identyfikator parametru wejściowego źródła, z którym ma być powiązany filtr. Przy wywołaniu źródła wartość filtra zostanie wstawiona jako wartość parametru wejściowego o tym podanym identyfikatorze.
  • type (string) - typ filtra. Dostępne typy: string, integer, double, boolean, date, list. Po wybraniu odpowiedniego typu, pole nie pozwoli na wprowadzenie błędnej wartości "z ręki" np. nie będzie można wpisać dowolnego ciągu znaków do pola typu integer.
  • source (object) - obiekt źródła do pobrania danych, jeżeli typem jest list (opis poniżej).

Jeżeli nie określono typu filtra, będzie on taki, jak typ odpowiadającego parametru wejściowego w źródle danych dla widoku.

UWAGA. Nie wszystkie typy filtrów są obsługiwane przez wszystkie typy źródeł np. w Źródłach danych na podstawie zapytań do bazy nie jest obsługiwany typ date. Przeglądarka wyśle wartość ustawionego filtru w formacie unix time (należy ją samemu skonwertować w zapytaniu SQL).

Typ list jest typem specjalnym działającym podobnie do datachooserów na formularzu. Jest to filtrowana lista rozwijana, która pobiera dane na podstawie pola source. Źródło musi posiadać parametr wyjściowy o nazwie value (wartość ta zostanie wyświetlona w liście i wysłana do serwera przy wyszukiwaniu). Jeżeli wartość wysyłana do serwera ma być różna od wartości wyświetlanej na liście (np. pokazywany jest jakiś tekst, ale wysłany ma być identyfikator), można dodatkowo w źródle stworzyć parametr wyjściowy text. Aby filtrować wyniki na żywo, należy stworzyć w źródle parametr wejściowy query.


Obiekt kolumny

  • id (string) - identyfikator kolumny (unikalny w obrębie widoku)
  • name (string) - nazwa kolumny
  • hidden (boolean) - flaga określająca, czy kolumna ma być ukryta
  • alias (string) - analogicznie do aliasu w filtrze - identyfikator parametru wyjściowego źródła. Wartość wiersza danej kolumny zostanie ustawiona taka, jak wartość parametru wyjściowego źródła o podanym identyfikatorze.
  • primaryKey (boolean) - flaga określająca, czy kolumna ma być traktowana jako klucz główny wiersza. Przynajmniej jedna kolumna w widoku musi być kluczem głównym.
  • action (object) - obiekt akcji, która zostanie uruchomiona po kliknięciu w komórkę
  • format (object) - obiekt do formatowania wyników dla użytkownika
    • type - typ kolumny (dostępne typy - double, integer, timestamp)
    • thousandSeparator - znak rozdzielający części tysięczne liczby (dostępny dla typów: double, integer)
    • decimalPrecision - liczba miejsc po przecinku (dostępny dla typów: double, integer)
    • dateFormat - format daty (dostępny dla typu timestamp). Domyślnie "yyyy-MM-dd hh:mm:ss"

      Uwaga: Aby kolumna została sformatowana za pomocą typu timestamp, SQL musi rzutować zwracaną kolumnę na typ timestamp

      Przykład rzutowania w postgreSQL dla kolumny typu BIGINT przechowującej daty
      TO_TIMESTAMP(nazwa_kolumny/ 1000) AS nazwa_kolumny
 Nie można jednocześnie określić akcji na widoku oraz na kolumnach.

Obiekt linku

  • id (string) - identyfikator linku (unikalny w obrębie widoku)
  • name (string) - nazwa linku
  • action (object) - obiekt akcji, która zostanie uruchomiona po kliknięciu w link

Obiekt podsumowania

  • source (object) - obiekt źródła, z którego będą pobierane dane dla ostatniego dodatkowego wiersza
  • loadOnce (boolean) - flaga określająca, czy podsumowanie ma być załadowane tylko raz przy wejściu w widok, czy za każdym razem przy zmianie sortowania, filtrów itd.
  • inputMappings (list) - lista obiektów mapowania identyfikatorów kolumn z identyfikatorami wejściowymi źródła
    • inputId (string) - identyfikator filtra
    • alias (string) - identyfikator parametru wejściowego źródła
  • outputMappings (list) - lista obiektów mapowania identyfikatorów kolumn z identyfikatorami wyjściowymi źródła
    • outputId (string) - identyfikator kolumny, w której mają zostać wyświetlone dane
    • alias (string) - identyfikator parametru wyjściowego źródła

Podsumowanie może służyć do wyświetlenia jednego wiersza, w którym np. zsumowane są dane dla danej kolumny na danej stronie. Podsumowanie wyświetla tyle wierszy ile zostało zwróconych przez źródło, dlatego możliwe jest wyświetlenie dowolnej liczby dodatkowych wierszy.

  • No labels