Skip to end of metadata
Go to start of metadata

Wstęp

Gałąź filtrowana służy do wyświetlania dokumentów w drzewie, gdzie każdy dokument jest reprezentowany przez osobną gałąź. Tekst w gałęzi może zawierać wartości indeksów danego dokumentu, aby uprościć wyszukanie konkretnego dokumentu przez użytkownika. Gałąź ta daje również możliwość bezpośredniego podglądu dokumentu przez kliknięcie w tekst Otwórz dokument. Gałąź ta nie daje możliwości usuwania, dodawania, edytowania dokumentów. Lista gałęzi dla danej konfiguracji jest zawsze równa liczbie znalezionych dokumentów. Aby stworzyć gałąź filtrowaną, należy użyć parametru filteredChildren, którego wartością jest obiekt zawierający poniższe parametry konfiguracyjne.

Parametry konfiguracyjne

  • documentClassId (number) - id klasy dokumentów, której dokumenty mają zostać wyświetlone
  • textFormatter (string) - tekst zawierający znaczniki, w które zostaną podstawione wartości indeksów dokumentu. Aby podstawić wartość indeksu, należy umieścić jego identyfikator w nawiasach klamrowych np. "Stały tekst {id_indeksu1}, stały tekst 2 {id_indeksu2}"

  • filter (object) - obiekt filtru indeksów. Możliwe jest podanie operatora porównania wartości indeksu. Możliwe jest też grupowanie filtrów (analogicznie do nawiasów w zapytaniu SQL). Możliwe operatory to: OR, AND, LIKE, NOTLIKE, EQ, NOTEQ, ISNULL, NOTNULL, GT, LT, GE, LE, ILIKE, NOTILIKE. Dokładniejszy opis poniżej.

Poza filtrami w parametrze filter uwzględnione są również wszystkie filtry gałęzi na wyższych poziomach drzewa poprzez funkcję logiczną AND (muszą być spełnione wszystkie filtry gałęzi "rodziców"). Dotyczy gałęzi filtrowanych oraz unikalnych.

Przykłady

Prosta konfiguracja

{
    "staticChildren": [
        {
            "text": "Umowy",
            "filteredChildren": {
                "documentClassId": 1,
                "textFormatter": "Wartość indeksu o id równym 1 = {1}"
            }
        }
    ]
}

Wynik

Filtrowanie

Możliwe jest dodanie filtrowania w parametrze filter, który umożliwia tworzenie trudniejszych zapytań podobnych do języka SQL. Obsługiwane operatory zostały przedstawione powyżej. Przykładowa konfiguracja pokazująca strukturę obiektu:

{
    "staticChildren": [
        {
            "text": "Umowy",
            "filteredChildren": {
                "documentClassId": 1,
                "textFormatter": "Wartość indeksu o id równym 1 = {1}",
                "filter": {
                    "operator": "OR",
                    "group": [
                        {
                            "indexId": 1,
                            "value": "tekst 1",
                            "operator": "ILIKE"
                        },
                        {
                            "indexId": 1,
                            "value": "tekst 2",
                            "operator": "ILIKE"
                        }
                    ]
                }
            }
        }
    ]
}

Dla operatorów logicznych OR AND należy używać parametru group jak wyżej. Dla parametrów porównujących wartości należy używać parametrów indexIdvalueoperator.

Wynik

  • No labels
Write a comment…