Parametry > Użytkownicy > Uprawnienia na poziomie wiersza 

Zarządzanie rolami służy do definiowania w zarządzaniu obiektem filtrów danych w bardzo wybiórczy sposób jako rozpatrywana funkcja lub użytkownik. Jest to szczególnie przydatne w zakresie filtrowania danych, które mają być prezentowane użytkownikowi, gdy jest on podłączony poprzez interfejs internetowy lub inne połączenie zewnętrzne. Przykładowo, jest to używane podczas wprowadzania zamówień, aby wyświetlać tylko te zamówienia, które zostały przekazane przez określonego klienta lub tylko przez niego zamówione (w tym przypadku jest nim użytkownik).

Zasady działania

To zarządzanie opiera się na:

  • definiowaniu kodów roli (klient, płatnika, przedstawiciel, dostawca, itp.), które mogą być dowolnie wykonywane w tabeli dodatkowej (numer 60)
  • powiązaniu danego pola w tabeli głównej z kodem roli, w przypadku obiektów, dla których ustalony ma być filtr. Jest to takie powiązanie, które będzie używane do ustalenia kryterium filtra danych. Zarządzanie rolami udokumentowane w tym miejscu jest używane do definiowania tych powiązań.
  • W zakresie operacyjnym, przydział w rekordzie użytkownikaco najmniej jednej roli przy użyciu odpowiednich kodów (30 maksymalnie). Jest to taki przydział, który określi automatyczne filtry w rozpatrywanym zarządzaniu obiektem.

Po zdefiniowaniu tych ustawień oraz ról (a także odpowiednich kodów) w rekordzie użytkownika:

  • W obiekcie tworzony jest filtr (szybka lista wyboru, okna wyboru) dla kodu(-ów) zdefiniowanych w rekordzie użytkownika.
  • Kontrola wykonywana jest podczas tworzenia filtrowanych pól.
  • Filtr może być wykonywany w kreatorze zapytań

Uwagi i ograniczenia

Uwaga! W przypadku filtrów występują następujące ograniczenia:

  • Filtrowanie lewej listy szybkiego wyboru jest wykonywane w polach tabeli głównej w obiekcie (także brak filtrowania podczas pobierania)
  • Gdy wprowadzanie klucza jest zabronione bez używania wyboru, jest ono wstępnie akceptowane, a kontrola wykonywana jest na sam koniec. Aby tego uniknąć, możliwe jest wykonywanie kontroli w zakresie ról w czasie rzeczywistym dla określonych specjalnych/ niestandardowych pól. Jest to wykonywane w łatwy sposób za pomocą działania CROLE jako działanie kontrolne. Nie jest to wykonywane standardowo, ponieważ zastosowanie tego działania w przypadku wszystkich pól mogłoby wywołać wiele wymian pomiędzy klientem a serwerem, gdzie w zasadzie ten typ kontroli wykonywany jest dla znikomej liczby pól.
  • Filtr wprowadzany przez role nie jest obsługiwany przez standardowe raporty (byłoby to niemożliwe ze względu na możliwe ekstrema ustawienia), ani standardowe zapytania. Dlatego możliwe jest tworzenie specjalnych raportów, jeżeli powinny być dostępne dla użytkowników zewnętrznych (jednak jest to możliwe poprzez współgranie z kodami dostępu, aby dedykować raporty filtrowane w sposób szczególny tym użytkownikom).
  • Masowy filtr danych w tabeli, w której lewa lista nie jest wyłącznie sortowana zgodnie z kryterium filtrowania, może być bardzo ograniczony pod względem czasu reakcji. Zaleca się zatem, aby używać indeksów optymalizacji i deklarować je na lewej liście.

W przypadku, w którym definiowanych jest wiele ról w rekordzie użytkownika, obowiązuje następująca zasada:

  • Jeżeli role są podobne, a powiązany klucz jest inny, pomiędzy warunkami wykonywane jest działanie logiczne „or”.
  • Jeżeli role różnią się, pomiędzy warunkami wykonywane jest działanie logiczne „and”.

Przykłady

Te działania logiczne zobrazowane są w poniższych przykładach. Filtr, który ma być zastosowany:

  • artykuły według kodu nabywcy (BUY pole powiązane z obiektem ITM dla roli nabywcy)
  • zamówienie zakupu według dostawcy (BPSNUM pole powiązane z obiektem POH dla roli dostawcy)
  • zamówienia zakupu również według kodu nabywcy (BUY pole powiązane z obiektem POH dla roli nabywcy)

Jeśli użytkownik JOHNDOE pełni rolę nabywcy dla kodów MARTIN oraz DURANDi rolę dostawcy dla kodów DUPONT, DUPUISoraz DUMONT, filtry będą następujące:

  • Przy wprowadzaniu zamówienia dostawy, dostępne będą tylko zamówienia wykonywane dla dostawców DUPONT,DUPUISlub DUMONT i będą one obejmować nabywców MARTIN lub DURAND .
  • Jeżeli tworzone jest zamówione, okno wyboru dla nabywców i dostawców będzie prawidłowo filtrować uprawnionych nabywców oraz zamówienia. Z drugiej strony, jeśli wprowadzony zostanie zabroniony kod, będzie on kontrolowany tylko w przypadku, gdy podjęta zostanie próba potwierdzenia zamówienia.
  • Zamówione artykuły będą również filtrowane bezpośrednio podczas ich wyboru opierając się na nabywcach. Nawet tutaj, jeśli wprowadzony jest artykuł, który nie został zakupiony przez jednego z nabywców, kontrola będzie wykonana jedynie w momencie potwierdzania zamówienia.
  • Z drugiej strony, żaden filtr nie ma zastosowania w odniesieniu do wyświetlania zamówienia (jeśli zamówienia dostawcy zostały dokonane dla artykułów zazwyczaj filtrowanych dla danego użytkownika, możliwe będzie ich wybranie, jednak ostatecznie odmawiane będzie ich modyfikowane).

Wdrażanie techniczne jest wykonywane poprzez automatyczne dodawanie filtrów do tabeli, która obsługiwana jest przez zarządzanie obiektem. Filtry te są aktywne zarówno podczas standardowego wyboru jak i na lewej liście. Rozważmy bardziej techniczny przykład: Jeżeli są zdefiniowane poniższe powiązania dla roli klienta (określonej np. z kodem BPCi roli handlowej (określanej np. z kodem REP):

  • w obiekcie SIH (faktura klienta), rola BPC wprowadza filtr dla pola BPR (kod zafakturowanego BP).
  • w obiekcie SOH (zamówienie klienta) rola BPC wprowadza filtr dla pola BPCORD (klient odbiorca).
  • w obiekcie BPC (klient), rola BPC wprowadza filtr dla pola BPCNUM (kod klienta).
  • w obiekcie SOH (zamówienie klienta), rola REP wprowadza filtr dla pola REP (przedstawiciel handlowy).

Jeżeli użytkownik posiada rolę BPC w jego rekordzie powiązanym z kodem MARTIN , filtr dla obiektu SIH będzie automatycznie wykonywany: (BPR='MARTIN'), dla obiektu SOH (BPCORD='MARTIN'), dla obiektu BPC (BPCNUM='MARTIN').

Oczywiście, aktywne są jedynie filtry powiązane z rolą, odnoszącą się od danego użytkownika. A zatem, jeżeli użytkownik nie posiada roli BPC w swoim rekordzie, filtry określone powyżej nie będą wykonywane: użytkownik uzyska wszystkie zamówienia, wszystkie faktury oraz wszystkich klientów (z zastrzeżeniem, że żadne inne filtry, według grupy lokalizacji, według innych ról, nie są zdefiniowane dla użytkownika).

Poniższe ilustruje zestawienie kilku filtrów:

  • jeżeli użytkownik posiada trzykrotną rolę BPC z trzema klientami MARTIN,DURAND oraz DUPUIS, filtrem dla rekordu klienta będzie:
    (BPCNUM='MARTIN' or BPCNUM='DURAND' lub BPCNUM='DUPUIS')
  • jeżeli użytkownik posiada rolę BPC powiązaną z kodem MARTIN oraz kodem REP powiązanym z kodem DUPUIS filtrem wykonywanym dla zarządzania zamówieniem będzie:
    (BPCORD='MARTIN') i (REP='DUPUIS')

Warunek

SEEREFERTTO Odniesienie do dokumentacji Implementacja

Zarządzanie ekranem

Karta Ekran wpisów

Prezentacja

Role są definiowane przy okazji globalnego wprowadzania. To dokonuje się w tabelach, gdzie pole, do którego filtr powinien mieć zastosowanie, jest definiowane dla każdego uwzględnianego kodu roli oraz obiektu.

Zamknij

 

Pola

Na tej karcie występują następujące pola :

Tabela

Rola umożliwiająca kontrolowanie dostępu do kilku różnych funkcji (obiektów).

Z jedną rolą można powiązać kilka obiektów. Na przykład: można utworzyć rolę pozwalającą na modyfikowanie artykułu klienta, po czym określić, że umożliwi ona modyfikowanie obiektów BIC wprowadzanych dla faktur i obiektów SOH wprowadzanych dla zleceń tylko w odniesieniu do niektórych klientów.

Dla każdego obiektu należy zdefiniować pole, według którego będzie wykonywana ta kontrola. W wymienionych przykładach są to pola BPR (kontrahent) i BPCORD (zlecenie klienta).

Uprawnienia dostępu konfiguruje się w oknie ustawień zarządzania użytkownikami.

Role są wymienione w tabeli dodatkowej 60.

 

  • Pole (pole FLD)

 

Zamknij

 

Przyciski określone

Przycisk ten służy do kopiowania roli do innego folderu dostępnego z serwera, na którym jest umieszczony obecny folder.

Komunikaty o błędzie

Jedynymi komunikatami o błędach są komunikaty ogólne.

Użyte tabele

SEEREFERTTO Odniesienie do dokumentacji Implementacja