Przypisywanie ról globalnych do interesariuszy
Podsumowanie:Ta akcja służy do:
- dodawania ról globalnych do grupy interesariuszy,
- usuwania ról globalnych z grupy interesariuszy,
- usuwania wszystkich ról globalnych z grupy interesariuszy.
Akcja zmienia skład grupy interesariuszy dla:
- bieżącego dokumentu (tego, w kontekście którego jest wykonywana)
- zbioru dokumentów w ramach wskazanej definicji
☛ AdminSPA >
NARZĘDZIA
>Akcje
>Przypisz do interesariusza
>Role w jednostkach

W celu zdefiniowania akcji przypisywania ról globalnych do interesariuszy należy określić następujące właściwości:
SQL
: zapytanie SQL zwracające jeden lub więcej rekordów; zapytanie musi zwrócić pięć kolumn o podanych nazwach i w podanej kolejności (aby zmienić interesariuszy dla określonych dokumentów we wskazanej definicji dokumentu, należy określić w zapytaniu dwie kolumny opcjonalne):
- BusinessDocId (int): kolumna opcjonalna, identyfikator definicji dokumentu.
- RecordId (int): kolumna opcjonalna, identyfikator dokumentu we wskazanej definicji dokumentu.
-
StakeholderId (int): identyfikator grupy interesariuszy z tabeli [core].[Stakeholders]; o ile wartość nie jest pobierana zapytaniem, najlepiej użyć mechanizmu smart numbers, aby umożliwić prawidłową migrację.
Wskazana kategoria interesariuszy musi należeć do definicji dokumentu odpowiadającego bieżącemu dokumentowi lub do definicji wskazanej w kolumnie BusinessDocId, w przeciwnym razie wykonanie akcji nie powiedzie się.
-
Operation (int): typ operacji wykonywanej na grupie interesariuszy; możliwe wartości:
- 0: dodanie roli globalnej do grupy interesariuszy.
- 1: usunięcie roli globlanej z grupy interesariuszy;
-
GlobalRoleId: (int): identyfikator roli biznesowej; wymagane, oprócz sytuacji opisanej poniżej.
Ustawienie parametrów GlobalRoleId = null oraz Operation = 1 spowoduje usunięcie wszystkich ról globalnych z grupy interesariuszy dla wskazanego dokumentu lub bieżącego dokumentu.
- W zapytaniu można użyć operatora UNION.
- Kolumny BusinessDocId i RecordId umożliwiają określenie definicji dokumentu oraz zestawu dokumentów należących do tej definicji w celu zbiorczego przypisania ról globalnych do grupy interesariuszy dla tej definicji. Jeśli te kolumny nie zostaną określone lub w obu zostanie zwrócona wartość null, przypisanie ról globalnych do grupy interesariuszy nastąpi w odniesieniu do bieżącego dokumentu.
Przykłady:
Akcja usunie wszystkie role globalne dla interesariusza Laborant dla bieżącego dokumentu.
SELECT
NULL AS BusinessDocId,
NULL AS RecordId,
{&Uprawnienia.Stakeholders.uprUpr.Laborant} AS StakeholderId,
1 as Operation,
NULL AS GlobalRoleId
Akcja dodaje role globalną KierownikU do grupy interesariuszy Laborant dla bieżącego dokumentu:
SELECT
NULL AS BusinessDocId,
NULL AS RecordId,
{&Uprawnienia.Stakeholders.uprUpr.Laborant} AS StakeholderId,
0 AS Operation,
{&Uprawnienia.BusinessRoles.Uprawnienia.KierownikU} AS GlobalRoleId
Akcja usuwa wszystkie role globalne z grupy interesariuszy Akceptant dla bieżącego dokumentu, następnie dla dokumentów o id > 4000 (zbiór dokumentów w ramach wskazanej definicji dokumentu za pomocą warunku WHERE) dodaje rolę globalną PracownikU do grupy interesariuszy Akceptant.
SELECT
NULL AS BusinessDocId,
NULL AS RecordId,
{&Uprawnienia.Stakeholders.uprUpr.Akceptant} AS StakeholderId,
1 AS Operation,
NULL AS GlobalRoleId
UNION ALL
SELECT
{@BusinessDocId} AS BusinessDocId,
{@Id} AS RecordId,
{&Uprawnienia.Stakeholders.uprUpr.Akceptant} AS StakeholderId,
0 AS Operation, {&Uprawnienia.BusinessRoles.Uprawnienia.PracownikU} AS GlobalRoleId
FROM [dbo].[AR_Uprawnienia]
WHERE id >4000