Zarządzanie żądaniami: Żądanie pakunku
Proces Żądanie pakunku zapewnia obsługę żądań pakunków, czyli kolekcji usług, w jednym żądaniu. Proces ten obsługuje autoryzację na potrzeby pakunku, a następnie automatycznie tworzy żądania podrzędne dla każdej usługi zawartej w pakunku. Żądanie pakunku można zakończyć po zakończeniu wszystkich żądań podrzędnych.
Sekwencja autoryzacji na początku tego procesu jest taka sama, jak sekwencja w procesie Ogólny wniosek o usługę opisana w sekcji Zarządzanie żądaniami: Ogólny wniosek o usługę.
Po zakończeniu autoryzacji osoba zgłaszająca jest powiadamiana, że jej żądanie zostało autoryzowane. Dalej występują dwa działania automatyczne, które powodują utworzenie żądań podrzędnych dotyczących usług zawartych w pakunku.
- Pierwsze wypełnia pole Pakunek w żądaniu nadrzędnym pakunkiem wybranym jako Element usługi w żądaniu nadrzędnym. Pole Pakunek nie jest dodawane do okna Żądanie.
Używane jest następujące obliczenie:
import System
static def GetAttributeValue(Request):
Value = null
if Request._ConfigItemRequested != null:
if Request._ConfigItemRequested.Class.Name == "Pakunek":
Value = Request._ConfigItemRequested
return Value
W wierszach trzecim i czwartym tego obliczenia występuje pojedyncze wcięcie, w wierszu piątym — podwójne, w wierszu szóstym — potrójne, a w wierszu ostatnim nie ma wcięcia.
To obliczenie powoduje ustawienie pola Pakunek na wartość wybraną w polu Element usługi w oknie Żądanie, jeśli wybrany Element usługi jest pakunkiem.
Obliczenie działa w ten sposób, że pole Pakunek jest ustawiane na wartość null (puste). Następnie jeśli wartość w polu ConfigItemRequested żądania jest różna od null, następuje sprawdzenie, czy nazwa klasy związana z polem ConfigItemRequested jest ustawiona na wartość Pakunek. Jeśli tak jest, oznacza to, że element ConfigItemRequested jest pakunkiem (wartość ConfigItemRequested jest zapisana w polu Element usługi w oknie Żądanie).
Jeśli w obliczeniu zostanie stwierdzone, że wybrany element ConfigItemRequested jest pakunkiem, pole Pakunek ustawione zostaje na wartość wybraną w polu Element usługi w oknie Żądanie.
- Drugie działanie automatyczne wypełnia pola Element usługi, Typ żądania i Proces w żądaniu podrzędnym wymaganymi wartościami dla każdego elementu konfiguracji w pakunku.
Jest to wykonywane przy użyciu typu wartości, który odwołuje się do pakunku skopiowanego w pierwszym działaniu automatycznym.
Elementy konfiguracji znajdujące się w pakunku są zapisane w kolekcji o nazwie Elementy katalogu, która jest relacją do obiektu łączącego o nazwie Pakunek elementu konfiguracji. Oznacza to, że należy wybrać następujące typy wartości:
Element usługi — _Pakunek/CatalogueItems*/ConfigItem.
Typ żądania — {_Pakunek/CatalogueItems*/ConfigItem/CatalogueHierarchy}
Proces — {_Pakunek/CatalogueItems*/ConfigItem/Lifecycle}
Drugie działanie automatyczne ustawia również atrybut logiczny Czy proces nadrzędny jest pakunkiem na wartość Tak w przypadku żądań podrzędnych. Ten atrybut jest następnie używany w żądaniach podrzędnych w celu pominięcia kroków autoryzacji w żądaniach podrzędnych.
Jeśli pakunek obejmuje element konfiguracji, dla którego nie ustawiono cyklu życia, pojawia się błąd wskazujący, że nie ustawiono odwołania do instancji obiektu. Należy upewnić się, że ze wszystkimi usługami, które są dostępne za pośrednictwem katalogu usług, powiązany jest cykl życia.
Po utworzeniu żądań podrzędnych Żądanie pakunku zostaje zakończone, pozostawiając alokację usługi żądaniom podrzędnym.
W każdym ze stanów Oczekiwanie na autoryzację dostępne są działania opcjonalne Dodaj notatkę i Dodaj przypisanie.