Obliczanie priorytetu na podstawie pilności i istotności

W specyfikacji ITIL priorytet incydentu jest zdefiniowany jako suma pilności i istotności minus jeden.
Priorytet = Pilność + Istotność - 1

Wcześniej przedstawiony już został sposób wykonywania prostych obliczeń arytmetycznych (patrz sekcja Dodawanie atrybutów do siebie), a teraz zaprojektowane zostanie obliczenie pozwalające określić liczbową wartość priorytetu na podstawie liczbowych wartości pilności i istotności. Należy utworzyć w incydencie atrybuty liczbowe o nazwach Pilność, Istotność i Priorytet, a następnie dodać następujące obliczenie do atrybutu Priorytet:

Copy
import System
static def GetAttributeValue(Incident):
    Value = Incident._Urgency + Incident._Severity – 1
    return Value

Następnie można dodać Pilność, Istotność i Priorytet do okna Incydent, a obliczenie będzie określać liczbową wartość priorytetu.

Można również zamiast tych atrybutów używać list uporządkowanych zawierających różne nazwane wartości. Pilności i istotności mogą być reprezentowane przez wartości Wysoka, Średnia i Niska (o rangach od 3 do 1), a priorytet może być reprezentowany przez pięć wartości o nazwach od Priorytet 1 (najwyższy priorytet o randze 5) do priorytet 5 (najniższy priorytet o randze 1).

Istotność

Nazwa

Ranga

 

Wysoka

3

 

Średnia

2

 

Niska

1

Pilność

Nazwa

Ranga

 

Wysoka

3

 

Średnia

2

 

Niska

1

Priorytet

Nazwa

Ranga

 

Priorytet 1

5

 

Priorytet 2

4

 

Priorytet 3

3

 

Priorytet 4

2

 

Priorytet 5

1

Priorytet jest określany na podstawie pilności i istotności zgodnie z następującą tabelą:

 

Istotność

Wysoka

Średnia

Niska

Pilność

Wysoka

Priorytet 1

Priorytet 2

Priorytet 3

Średnia

Priorytet 2

Priorytet 3

Priorytet 4

Niska

Priorytet 3

Priorytet 4

Priorytet 5

Na przykład:
Średnia istotność = ranga 2
Niska pilność = ranga 1
Dlatego ranga Priorytetu= 2 + 1 - 1 = 2
a stąd ranga 2 Priorytetu = Priorytet 4

W tym przykładzie używane są obiekty o określonej randze Pilność incydentu i Istotność (dostępne w module Zarządzanie incydentami). Służą one do obliczania rangi, na podstawie której określana będzie wartość nowego atrybutu o określonej randze o nazwie Priorytet obliczony. Atrybut ten zostanie utworzony w module Zarządzanie incydentami.

To obliczenie składa się z trzech etapów:

  1. Utworzenie nowego obiektu o określonej randze związanego z incydentem i wypełnienie go. Zaleca się nieużywanie w tym celu kreatora tworzenia atrybutów, aby zachować większą kontrolę nad konwencjami nazewnictwa.
  2. Dodanie obliczenia do nowego atrybutu o określonej randze.
  3. Dodanie formantów do okna Incydent.
Aby utworzyć nowy obiekt o określonej randze:
  1. W Projektancie obiektów kliknij moduł Zarządzanie incydentami w drzewie Obiekty biznesowe, a następnie kliknij opcję Nowy obiekt biznesowy na liście Działania.
    Zostanie wyświetlony komunikat Wybór zachowania zawierający pytanie, czy użytkownik chce określić zachowanie.
  2. Kliknij przycisk Tak.
    Zostanie wyświetlone okno dialogowe Wybór zachowania.
  3. Kliknij na liście Dostępne elementy pozycję Określone w rankingu (Tylko tworzenie), a następnie kliknij przycisk .
    Pozycja Określone w rankingu (Tylko tworzenie) zostanie przeniesiona na listę Wybrane elementy.
  4. Kliknij przycisk OK.
    Zostanie utworzony nowy obiekt biznesowy.
  5. W siatce Właściwości wpisz Tytuł atrybutu Priorytet obliczony, a następnie kliknij przycisk .
    Zostanie wyświetlone pytanie, czy użytkownik chce określić atrybut Nazwa.
  6. Kliknij przycisk Tak.
    Obiekt Priorytet obliczony zostanie zapisany. Należy zauważyć, że jego nazwą jest _PriorytetObliczony. Nazwa ta będzie później używana. Należy również zwrócić uwagę na dodanie atrybutu Ranga. Teraz należy określić powiązanie tego obiektu z obiektem Incydent.
  7. W drzewie Obiekty biznesowe przeciągnij obiekt Priorytet obliczony na obiekt Incydent.
    Zostanie wyświetlone pytanie, czy potrzebna jest możliwość dostępu z obiektu Priorytet obliczony do wszystkich instancji obiektów Incydent.
  8. Kliknij opcję Nie.
    Zostanie utworzona relacja. W drzewie Atrybuty związanym z obiektem Incydent widoczna jest relacja Priorytet obliczony.
  9. Kliknij przycisk .
    Obiekt zostanie zapisany. Teraz należy utworzyć okno dla obiektu i odpowiednie wartości za pomocą komponentu Administracja.
  10. W Menedżerze okien utwórz nowe okno dla obiektu Zarządzanie incydentami\Priorytet obliczony, dodając tylko pole Nazwa.
  11. W komponencie Administracja wyświetl drzewo Listy uporządkowane, a następnie utwórz pięć wartości atrybutu Priorytet obliczony.

Teraz można dodać wymagane obliczenie do atrybutu Priorytet obliczony obiektu Incydent. To obliczenie odczytuje wymaganą wartość z listy uporządkowanej Priorytet obliczony.

Aby dodać obliczenie:
  1. W Projektancie obiektów otwórz obiekt Zarządzanie incydentami\Incydent, a następnie kliknij pozycję Priorytet obliczony.
  2. W siatce Właściwości atrybutu Priorytet obliczony ustaw Typ obliczenia na Przed zapisaniem.
    Zostanie wyświetlone okno dialogowe Edytuj wzór związane z atrybutem Priorytet obliczony.
  3. W polu Edytor zmień obliczenie na:
Copy
import System
static def GetAttributeValue(Incident):
    if Incident._IncidentUrgency == null:
        return null
    if Incident.Severity == null:
        return null
    Value = Incident._IncidentUrgency.Rank + Incident.Severity.Rank - 1
    return Incident.GetRankedObject("IncidentManagement._CalculatedPriority", Value)
  1. Kliknij przycisk Testuj składnię, aby potwierdzić brak błędów w strukturze obliczenia, a następnie kliknij przycisk OK.
    Obliczenie zostanie dodane do atrybutu.
  2. Kliknij przycisk .
    Zmiany zostaną zapisane.

W wierszach if... oraz return null wartość atrybutu Priorytet obliczony jest ustawiana na null (pusta), jeśli lista Istotność lub Pilność jest pusta. W przeciwnym razie pozostaje poprzednio obliczona wartość atrybutu Priorytet obliczony.
W ostatnim wierszu return Incident.GetRankedObject("IncidentManagement._PriorytetObliczony", Value) zwracana jest nazwa priorytetu obliczonego odpowiadająca obliczonej wartości rangi.

Ostatnim etapem jest dodanie formantów do okna Incydent.

Aby dodać formanty do okna:
  1. W Menedżerze okien otwórz okno Incydent i dodaj do niego pola Pilność incydentu, Istotność i Priorytet obliczony.
  2. W siatce Właściwości atrybutów Pilność incydentu i Istotność ustaw właściwość Obliczane przy zmianie na wartość Tak, a następnie zapisz okno.
    Po zarejestrowaniu incydentu i wypełnieniu pól Pilność incydentu oraz Istotność pole Priorytet obliczony zostanie automatycznie wypełnione odpowiednią wartością.