InsERT S.A.
e-pomoc techniczna

e-pomoc techniczna

Subiekt nexo - W jaki sposób poprzez profilowanie ukryć dane jednostki organizacyjnej dla użytkownika?

Program: InsERT nexo, Subiekt nexo

Kategoria: Rozwiązania sferyczne

UWAGA!!Poniższy artykuł przedstawia przykład jednego z zaawansowanych rozwiązań przygotowanych dla programu Subiekt nexo. W razie problemów prosimy o kontakt z naszymi lokalnymi serwisantami w celu konfiguracji.

Program Subiekt nexo PRO umożliwia ukrycie danych jednostki organizacyjnej dla danego użytkownika. Mechanizm profilowania danych nie jest dostępny w programie i jego wykorzystanie wymaga wiedzy z zakresu administrowania nexo oraz bazami danych.

Profilowanie umożliwia ukrycie przed określonym użytkownikiem danych związanych ze wskazanym magazynem, jednostką organizacyjną (oddziałem), stanowiskiem kasowym lub rachunkiem bankowym.

Lista miejsc, na które wpływa profilowanie:

  • filtry w serwisach - przy profilowaniu ukrywana jest opcja (dowolny) oraz ukryte magazyny/oddziały znikają z listy magazynów/oddziałów
  • dokumenty wystawione na ukryte magazyny/oddziały (w serwisach, raportach itp.)
  • listy wyboru magazynu/oddziału na formatkach dokumentów
  • formatka asortymentu - zakładka Stany, znikają ukryte magazyny
  • informator asortymentu - zakładka Stany w magazynach, znikają ukryte magazyny
  • kontekst programu - znikają ukryte magazyny/oddziały z list wyboru

Ukrycie danych można zrobić na dwa sp​osoby:

  • ​​posługując się identyfikatorami jednostek organizacyjnych oraz użytkowników
  • bardziej rozbudowanym zapytaniem, w którym deklarowane są zmienne odpowiadające danym w tabelach​

W przypadku skorzystania z pierwszego sposobu należy:​

1. W pierwszej kolejności należy odczytać identyfikatory magazynu (tabela JednostkiOrganizacyjne) oraz użytkownika (tabela Użytkownicy).

 

 

2. W kolejnym kroku korzystając z wcześniej uzyskanych identyfikatorów należy dodać odpowiedni wiersz do tabeli Magazyny, przykładowe zapytanie:

INSERT INTO ModelDanychContainer.JednostkaOrganizacyjnaProfile (JednostkaOrganizacyjna_Id, Uzytkownik_Id)

VALUES (100000, '9660B71A-5398-47C1-807C-C2B0C59BE60E');

 

Drugim sposobem (alternatywnym) jest skorzystanie z bardziej rozbudowanego zapytania (uzupełniając go wcześniej własnymi danymi).​

DECLARE @nazwaUzytkownika AS VARCHAR(32);

DECLARE @symbolOddzialu AS VARCHAR(32);

SET @nazwaUzytkownika = 'Jan Kowalski';

SET @symbolOddzialu = 'CENTRALA'

INSERT INTO ModelDanychContainer.JednostkaOrganizacyjnaProfile

(JednostkaOrganizacyjna_Id, Uzytkownik_Id)

VALUES(

(SELECT TOP 1 Id FROM ModelDanychContainer.JednostkiOrganizacyjne

WHERE Symbol = @symbolOddzialu),

(SELECT TOP 1 Id FROM ModelDanychContainer.Uzytkownicy

WHERE Nazwa = @nazwaUzytkownika));

 

W celu sprawdzenia poprawności profilowania danych dla wybranego użytkownika należy zastosować poniższe polecenie. Uprzednio należy ustawić poprawną nazwę użytkownika. W wyniku działania polecenia zostanie wyświetlona lista zakresów danych, które nie zostały ukryte przed użytkownikiem.

DECLARE @nazwaUzytkownika AS VARCHAR(32);

SET @nazwaUzytkownika = 'Jan Kowalski';

SELECT Id, Symbol, Opis

FROM ModelDanychContainer.JednostkiOrganizacyjne

WHERE Id NOT IN

( SELECT JednostkaOrganizacyjna_Id

FROM ModelDanychContainer.JednostkaOrganizacyjnaProfile

WHERE Uzytkownik_Id = (SELECT TOP 1 Id FROM ModelDanychContainer.Uzytkownicy

WHERE Nazwa = @nazwaUzytkownika)

)

 

W programie również bedzie widoczny tylko Oddział.


Artykuł należy do zbioru tematów e-Pomocy technicznej dotyczących profilowania danych​.

drukuj
Czy artykuł był pomocny?TAKNIE

Dlaczego artykuł oceniasz jako nieprzydatny?

Dziękujemy za opinię