# Pakiet: grej - Struktura organizacyjna, rejestry

Pakiet opisujący strukturę organizacyjną (komórki, stanowiska), jej skład osobowy oraz parametry.

## Spis typów predefiniowanych

Lp | Nazwa typu | Typ SQL | Wymagane | Domyślnie | Warunek | Tytuł
--- | --- | --- | --- | --- | --- | ---
1 | pole_tryb | int2 | true | 1 |  | Tryb pola Na tym polu należy wybrać odpowiednią wartość ze słownika, otwieranego za pomocą strzałki znajdującej się z prawej strony tego pola.
Id. | Tytuł, opis
--- | ---
0 | Ukryte pole posiadające tryb Ukryte nie jest widoczne w oknie edycji.
1 | Opcjonalne pole posiadające tryb Wymagane jest dostępne w oknie edycji. Pole to może pozostać niewypełnione.
2 | Wymagane pole posiadające tryb Wymagane jest dostępne w oknie edycji. Pole to musi zostać wypełnione - w przypadku niewypełnienia pola wymaganego nie można wykonać zapisu pozycji.

## Spis tabel

Lp | Nazwa tabeli | Tytuł | Kolumny | Klucze obce | Indeksy unikalne | Indeksy zwykłe | Wyzwalacze
--- | --- | --- | --- | --- | --- | --- | ---
1 | gkom2 | Komórki organizacyjne / Wyciąg z JRWA | 15 | 1 | 1 | 1 | 0
2 | grej1 | Struktura organizacyjna, rejestry | 94 | 8 | 1 | 1 | 1
3 | grej1_p | Pola dodatkowe | 16 | 1 | 0 | 1 | 0
4 | grej3 | Struktura organizacyjna, rejestry / Personel | 9 | 3 | 0 | 1 | 0
5 | grej6 | Uprawnienia podstawowe do struktury i rejestrów | 6 | 2 | 1 | 0 | 0
6 | grep1 | Repozytoria plików | 12 | 0 | 0 | 2 | 0
7 | grep2 | Pliki | 9 | 1 | 1 | 1 | 1
8 | grep3 | Wersje pliku | 10 | 2 | 0 | 0 | 1
9 | grwa1 | Jednolity rzeczowy wykaz akt | 8 | 0 | 1 | 1 | 0
10 | grwa2 | Repozytoria JRWA | 10 | 0 | 1 | 0 | 0
11 | gtemplate1 | Wzory (szablony) dokumentów | 17 | 1 | 0 | 0 | 0
12 | graport1 | Raporty BIRT | 11 | 0 | 1 | 0 | 0
13 | mtyp1 | Typy dokumentów | 10 | 0 | 1 | 0 | 0
14 | sdadr1 | Adresy jednostek podmiotu | 29 | 0 | 0 | 0 | 0
15 | sdadr3 | Adresy jednostek podmiotu Przydział do klasyfikacji internetowej | 4 | 2 | 1 | 0 | 0
16 | sdadr_klas3 | Adresy jednostek podmiotu / Klasyfikacja internetowa | 8 | 0 | 1 | 2 | 0

## Spis funkcji

Lp | Nazwa / Argumenty | Typ SQL | Język | Cache | Strict | Tytuł / Opis
--- | --- | --- | --- | --- | --- | ---
1 | grej1_get_grep1_id arg_grej1_id int4 | int4 | sql | stable | true | Pobiera informacje o przypisanym repozytorium do podanego grej1_id Jeżeli repozytorium nie zostało określone (NULL) to funkcja pobiera repozytorium ze struktury nadrzędnej.
2 | grej1_get_sdadr1_id arg_grej1_id int4 | int4 | sql | stable | true | Pobiera informacje o przypisanym adresie do podanego grej1_id Jeżeli adres nie został określony (NULL) to funkcja pobiera adres ze struktury nadrzędnej.
3 | sdadr1_get_adres arg_sdadr1_id int4 arg_tryb varchar arg_czy_tel int4 arg_czy_email int4 arg_czy_opis1 int4 | varchar | sql | stable | true | Pobiera dane adresowe wg id adresu
4 | grej1_czy_rodzic arg_rodzic_id int4 arg_dziecko_id int4 | bool | plpgsql | stable | true | Sprawdzenie czy czy $2 jest rodzicem $1 Funkcja zwraca true gdy $1 jest dzieckiem $2, czyli ma rodzica $2.
5 | grej1_get_rodzina_b arg_grej1_id int4 | SETOF int4 | sql | stable | true | Techniczna funkcja dla grej1_get_rodzina(int4) Fukcja ma zastosowanie wewnętrzne i nie powinna być używana.
6 | grej1_get_rodzina arg_grej1_id int4 | SETOF int4 | sql | stable | true | Zwraca skład struktury arg_grej1_id Skład struktury - jeżeli stanowisko to tylko ono, jeżeli komórka to ona i wchodzące w jej skład stanowiska. Wykorzystuje technicznie grej1_get_rodzina_b(int4).
7 | grej1_get_cel1_b arg_grej1_id int4 | int4 | plpgsql | stable | true | Techniczna funkcja dla grej1_get_cel1(int4) Fukcja ma zastosowanie wewnętrzne i nie powinna być używana.
8 | grej1_get_cel1 arg_grej1_id int4 | SETOF int4 | sql | stable | true | Zwraca trw. cele uprawnień bez dzieci (używaj tylko do generowania ról) Cel uprawnień bez dzieci - zwraca siebie i jeżli jestem stanowiskiem to nadrzędną komórkę. Wykorzystuje technicznie grej1_get_cel1_b(int4).
9 | grej1_get_cel2_b arg_grej1_id int4 | SETOF int4 | plpgsql | stable | true | Techniczna funkcja dla grej1_get_cel2(int4) Fukcja ma zastosowanie wewnętrzne i nie powinna być używana.
10 | grej1_get_cel2 arg_grej1_id int4 | SETOF int4 | sql | stable | true | Zwraca trw. cele uprawnień z dziećmi (używaj tylko do generowania ról) Cel uprawnień z dziećmi - zwraca siebie oraz komórki i stanowiska nadrzędne. Wykorzystuje technicznie grej1_get_cel2_b(int4).
11 | grej1_get_kom arg_grej1_id int4 | int4 | sql | stable | true | Zwraca komórkę Komórka nadrzędna - dla komórek zwraca samego siebie.
12 | grej1_get_kom_pod arg_grej1_id int4 | SETOF int4 | sql | stable | true | Zwraca komórki bezpośrednio podrzednę Komórki bezpośrednio podrzednę - pomija wszystkie pośrednie stanowiska.
13 | grej1_get_kom_nad arg_grej1_id int4 | int4 | plpgsql | stable | true | Zwraca nadrzędną komórkę Nadrzędna komórka - pomija wszystkie pośrednie stanowiska.
14 | grej1_get_wakaty_b arg_grej1_id int4 | SETOF int4 | sql | stable | true | Techniczna funkcja dla grej1_get_wakaty(int4) Fukcja ma zastosowanie wewnętrzne i nie powinna być używana.
15 | grej1_get_wakaty arg_grej1_id int4 | SETOF int4 | sql | stable | true | Zwraca struktury-wakaty Zwracane są struktury podrzędne, które są nieobecne (wszystkie osoby są na urlopach) lub nie mają pzydzielonych osób (wakaty). Wykorzystuje technicznie grej1_get_wakaty_b(int4).
16 | grej1_get_rodzina arg_grej1_id int4 arg_wariant int4 | SETOF int4 | plpgsql | stable | true | Zwraca określony wariant podzbioru grej1_id dla podanego arg_grej1_id Funkcja do wycofania - NIE UŻYWAĆ! W zależności od wariantu $2 funkcja zwraca: 1 - uprawnienia dla struktury (używaj tylko do generowania ról), (zwraca siebie i jeżli jestem stanowiskiem to nadrzędną komórkę), 2 - uprawnienia dla struktury i podległych (używaj tylko do generowania ról), (zwraca siebie i komórki i stanowiska nadrzędne), 3 - skład tej struktury (jeżeli stanowisko to tylko ono, jeżeli komórka to ona i wchodzące w jej skład stanowiska), 4 - komórki bezpośrednio podrzednę (pomija wszystkie pośrednie stanowiska), 5 - nadrzędna komórka (pomija wszystkie pośrednie stanowiska), 6 - struktury podrzędne, które są nieobecne (lub brak osób - wakaty),
17 | mprac1_get_grej1 arg_pesel varchar arg_wariant int4 | SETOF int4 | sql | stable | true | Zwraca stanowiska objęte przez osobę Fukcja zwraca listę stanowisk obejmowanych przez osobę o podanym PESEL w wariancie od 1 do 7. Wariant obliczany jest jako suma: 1 - skład nominalny, 2 - aktualne zastępstwa, 4 - nieaktualne zastępstwa (tzn. potencjalne; staną się aktualne jak osoba zastępowana będzie na urlopie).
18 | mprac1_get_grej1 arg_pesel varchar | SETOF int4 | sql | stable | true | Zwraca aktualne stanowiska objęte przez osobę Fukcja zwraca listę stanowisk aktualnie obejmowanych przez osobę o podanym PESEL (tzw. stanowiska nominalne i aktualne zastępstwa).
19 | mprac1_get_cel_grej1 arg_pesel varchar | SETOF int4 | sql | stable | true | Zwraca listę "celów stanowiskowych" dla osoby Fukcja listę "celów stanowiskowych", tzn. stanowisk/komórek które powinny "interesować" osobę o podanym PESEL.
20 | mprac1_get_cel_mprac1 arg_pesel varchar | SETOF varchar | sql | stable | true | Zwraca listę "celów osobowych" dla osoby Fukcja listę "celów osobowych", tzn. PESEL'i które powinny "interesować" osobę o podanym PESEL.
21 | finn_user_get_grej1 arg_user_name varchar arg_wariant int4 | SETOF int4 | sql | stable | true | Zwraca stanowiska objęte przez użytkownika Fukcja zwraca listę stanowisk obejmowanych przez użytkownika (a dokładnie reprezentowane przez niego osoby) w wariancie od 1 do 7. Wariant obliczany jest jako suma (analogia do funkcji mprac1_get_grej1): 1 - skład nominalny, 2 - aktualne zastępstwa, 4 - nieaktualne zastępstwa (tzn. potencjalne; staną się aktualne jak osoba zastępowana będzie na urlopie).
22 | finn_user_get_grej1 arg_user_name varchar | SETOF int4 | sql | stable | true | Zwraca aktualne stanowiska objęte przez użytkownika Fukcja zwraca listę stanowisk (analogia do funkcji mprac1_get_grej1) aktualnie obejmowanych przez użytkownika (tzw. stanowiska nominalne i aktualne zastępstwa).
23 | grej1_get_rodzice arg_grej1_id int4 arg_check_inherit bool | SETOF int4 | sql | stable | true | Zwraca listę przodków arg_grej1_id i samego siebie Jeżeli arg_check_inherit jest równy true, to uwzględniane jest dziedziczenie (tzn. nie bierzemy rodziców od momentu gdy dziecko nie dziedziczy). Jeżeli arg_check_inherit jest równe false, to zwracani są wszyscy rodzice.
24 | grej1_get_rodzice arg_grej1_id int4 | SETOF int4 | sql | stable | true | Zwraca listę przodków arg_grej1_id i samego siebie Dziedziczenie nie jest uwzględniane i zwracani są wszyscy rodzice.
25 | grej1_get_dzieci arg_grej1_id int4 arg_check_inherit bool | SETOF int4 | sql | stable | true | Zwraca listę dzieci arg_grej1_id i samego siebie Jeżeli arg_check_inherit jest równy true, to uwzględniane jest dziedziczenie (tzn. nie bierzemy dzieci, które „wyrzekły” się rodziców - czy_dziedziczy=0). Jeżeli arg_check_inherit jest równe false, to zwracani są wszystkie dzieci.
26 | grej1_get_dzieci arg_grej1_id int4 | SETOF int4 | sql | stable | true | Zwraca listę dzieci arg_grej1_id i samego siebie Dziedziczenie nie jest uwzględniane i zwracane są wszystkie dzieci.
27 | grej1_get_sklad arg_grej1_id _int4 arg_wariant int4 | SETOF int4 | sql | stable |  | Zwraca skład podanej struktury Lista jest zwracana w wariancie arg_wariant: 1-z zastępstwami, 2-bez zastępstw. Jeżeli arg_grej1_id jest NULL to przetwarzane są wszystkie struktury. Argument arg_grej1_id może być pojedynczą wartością lub tablicą z kilkoma strukturami.
28 | grej1_get_podlegli_b grej1_id integer zast integer | SETOF character varying | plpgsql | stable |  | Zwraca skład podanej struktury Funkcja techniczna dla grej1_get_podlegli
29 | grej1_get_podlegli grej1_id integer zast integer | SETOF record | sql | stable |  | Zwraca skład podanej struktury Zwraca wszystkie osoby w hierarchi podległe pod daną stukturę.
30 | grej1_get_sklad arg_grej1_id int4 arg_wariant int4 | SETOF int4 | sql | stable |  | Zwraca skład podanej struktury Szczegóły użycia w funkcji grej1_get_sklad(_int4, int4).
31 | grej1_get_sklad_sym arg_dok_sym varchar arg_wariant int4 | SETOF int4 | sql | stable |  | Zwraca skład podanej struktury Szczegóły użycia w funkcji grej1_get_sklad(_int4, int4).
32 | finn_user_roles_grej1 arg_user_name varchar | SETOF finn_user_grej1_upr | sql | stable | true | Zwraca zagregowaną listę uprawnień dla użytkownika
33 | grej1_user_upr arg_grej1_id int4 arg_user_name varchar | SETOF finn_user_grej1_upr | sql | stable |  | Wyświetla uprawnienia efektywne dla wybranego zasobu (grej1_id) i użytkownika (user_name) Jeżeli struktura $1 IS NULL to generowana jest lista dla wszystkich struktur. Jeżeli użytkownik $2 IS NULL to generowana jest lista dla wszystkich uprawnionych użytkowników.
34 | finn_user_chkupr symbol1 text symbol2 text | int4 | plpgsql | immutable |  | Sprawdzenie uprawnień do symboli
35 | finn_user_roles arg_user_name varchar | SETOF text | sql | stable | true | Uprawnienia (role) użytkownika
36 | finn_user_roles_all arg_user_name varchar | SETOF text | plpgsql | stable | true | Uprawnienia (role) użytkownika i jego grup
37 | grej1_upr_p arg_user_name varchar | SETOF int4 | sql | stable | true | Identyfikatory rejestrów do których użytkownik posiada uprawnienie p
38 | grej1_upr_p_all arg_user_name varchar | SETOF int4 | plpgsql | stable | true | Identyfikatory rejestrów do których użytkownik posiada uprawnienie p (wraz z grupami)
39 | grej1_sym_upr_p_all arg_user_name varchar | SETOF text | sql | stable | true | Symbole rejestrów do których użytkownik posiada uprawnienie p (wraz z grupami)
40 | grej1_trigger_after_ins | trigger | plpgsql | volatile |  | Automatyczne przydzielanie uprawnień dla nowych struktur
41 | grej1tree arg_grej1_id int4 | record | plpgsql | stable |  | Zwraca drzewiastą strkturę organizacyjną
42 | grej1tree2 arg_grej1_id int4 | record | plpgsql | stable |  | Zwraca drzewiastą strkturę organizacyjną (wszystkie typy rekordów)
43 | grep2_trigger_before | trigger | plpgsql | volatile |  | Aktualizacja aktualnej nazwy w grep3 wg wybranej aktualnej wersji aktwer_id
44 | grep3_trigger_before | trigger | plpgsql | volatile |  | Aktualizacja aktualnej nazwy w grep3 oraz zreperowanie aktualnej wersji grep2.aktwer_id przy usuwaniu w grep3
45 | grep2_get_bypath arg_path varchar arg_poziom integer arg_rodzic_id integer arg_zbior integer arg_obiekt_id integer | integer | plpgsql | stable |  | Szuka zasobu dla określonej ścieżki
46 | grep_remove arg_grep2_id bigint arg_user varchar | integer | plpgsql | volatile |  | Usuwa strukture plików i katalogów
47 | grep2_copy ob_type integer arg_id integer destination integer user_name varchar arg_zbior integer arg_obiekt_id int8 | integer | plpgsql | volatile |  | Kopiuje wybrany zasób
48 | grep2_add arg_folder_id integer arg_zbior integer arg_obiekt_id bigint arg_nazwa varchar arg_user varchar arg_dataczas_m timestamp arg_zawartosc bytea arg_fulltext text ob_type integer | bigint | plpgsql | volatile |  | Dodaje zasób
49 | grep2_update arg_kat int8 arg_grep2_id int8 arg_nazwa varchar arg_user varchar arg_dataczas_m timestamp(0) arg_zawartosc bytea arg_fulltext text arg_mime varchar | int4 | plpgsql | volatile |  | Aktualizuje zawartość pliku w repozytorium Automatycznie tworzy nową wersje pliku (nowy wpis w grep3) i ustawia ją jako aktualną aktwer_id.
50 | grep3_tree arg_rodzic_id integer arg_grep2_id integer | record | plpgsql | stable |  | Pobiera historię pliku
51 | grep2_delete arg_grep2_id int8 arg_user varchar | int4 | plpgsql | volatile |  | Kasuje pliku z repozytorium Funkcja oznacza tylko fakt usunięcia w grep2. Historia w grep3 zostaje niezmieniona.
52 | grep2_get_plikinfo arg_grep2_id int8 | finn_grep3_plikinfo | sql | stable | true | Pobiera informacje o pliku z repozytorium
53 | grep2_get_zawartosc arg_grep2_id int8 | bytea | sql | stable | true | Pobiera zawartość pliku z repozytorium
54 | grep3_get_plikinfo arg_grep3_id int8 | finn_grep3_plikinfo | sql | stable | true | Pobiera informacje o pliku z repozytorium
55 | grep3_get_zawartosc arg_grep3_id int8 | bytea | sql | stable | true | Pobiera zawartość pliku z repozytorium
56 | gkom1_set_upr upraw text upraw2 text gkom1_id int4 upraw3 varchar | int4 | plpgsql | stable | true | Ustawienie uprawnień dla komórek
57 | grej1_set_upr upraw text upraw2 text dok_sym int4 upraw3 varchar | int4 | plpgsql | stable | true | Ustawienie uprawnień dla rejestrów.
58 | finn_licznik_upg as_licznik varchar ai_dlug1 int4 ai_dlug2 int4 | varchar | plpgsql | immutable | true | Funkcja zwraca poprawny format numeratora
59 | finn_status_check as_dok_sym varchar ad_data date ai_uprC integer ai_uprX integer | integer | plpgsql | stable | true | Sprawdzenie możliwosci zmiany statusu dla symbolu rejestru.
60 | finn_licznik_chk as_licznik varchar ai_dlug1 int4 ai_dlug2 int4 | integer | plpgsql | immutable | true | Funkcja sprawdza poprawność formatu numeratora
61 | finn_numerator_update as_dok_sym varchar ad_data1 date ad_data2 date ai_param integer | varchar | plpgsql | volatile | false | Funkcja poprawia liczniki dla zadanego symbolu i okresu
62 | finn_numer_update as_dok_sym varchar ad_data1 date ad_data2 date ai_param integer | varchar | plpgsql | volatile | false | Funkcja poprawia numery dla zadanego symbolu i okresu

## Wymagane pakiety

1. common z powodu:data_uri (2), kor_stan, nrb, stan01 (5), stan012, taknie (25), tekst (26), wyjasnij (5), webdav, gwiazdka, a_kraj, a_gus, a_kod, a_poczta, a_miejsc, a_ulica, a_dom, a_lokal, tel (2), fax (2), email (2), www (2), klas_kod, klas_lp, klas_stan, klas_nazwa, klas_opis, klas_poziom, klas_typ, pobierz (14), show (16), dodaj (16), kopiuj (16), edytuj (16), usun (16), usunZ (2), printEksport (10), printImport (10), printUst (10), printListaE (10), shist2 (10),

2. slow1 z powodu:mcena1, mdfisk1,

3. mprac z powodu:mprac1 (3),

## Widok: gkom1 - Widok starych komórek organizacyjnych

SELECT dok_sym AS gkom1_id, nazwa, stan, mprac1_pesel, miejsc_urz, godz_urz, tel,fax,email,opis,uwagi,upr_p,upr_d,upr_e,upr_z,upr_a,upr_c,upr_x,upr_y, czy_kores,num_znak as kores_znak, sprawa_znak, czy_edydaty,wyjasnij,do_bip,num_dlug1 FROM grej1 WHERE dok_sym IS NOT NULL AND czy_kores=1 AND typ in ('o','oK','oS','spr')

## Widok: gkom3 - Widok starych osób w kom. org.

SELECT grej3_id AS gkom3_id, dok_sym AS gkom1_id, grej3.mprac1_pesel, grej3.funk_typ, funkcja, zastepca_pesel, opis_bip FROM grej3 JOIN grej1 USING(grej1_id) WHERE dok_sym IS NOT NULL AND czy_kores=1 AND typ in ('o','oK','oS','spr')

Dokument wygenerowany 2009-09-28 04:34:08