Gestione della richiesta: Richiesta bundle
Il processo Richiesta bundle fornisce un processo che gestisce le richieste di Bundle, ovvero raccolte di servizi in un'unica richiesta. Il processo gestisce l'autorizzazione per il Bundle, dopodiché crea automaticamente una Richiesta figlio per ciascun servizio contenuto nel Bundle. Una volta completate tutte le Richieste figlio, è possibile completare anche la Richiesta bundle.
La Sequenza di autorizzazione all'inizio di questo processo corrisponde alla sequenza relativa al processo di Richiesta di servizio generica, descritta alla pagina Gestione della richiesta: Richiesta di servizio generica.
Una volta completate le autorizzazioni, l'iniziatore viene notificato dell'autorizzazione della propria richiesta. Vi sono quindi due azioni automatiche che creano le Richieste figlio per i Servizi compresi nel Bundle:
- La prima popola il Bundle sulla Richiesta padre con il bundle selezionato come Elemento dei servizi sulla Richiesta padre. Il campo Bundle non viene aggiunto alla finestra Richiesta.
Viene utilizzato il seguente calcolo:
import System
static def GetAttributeValue(Request):
Value = null
if Request._ConfigItemRequested != null:
if Request._ConfigItemRequested.Class.Name == "Bundle":
Value = Request._ConfigItemRequested
return Value
Le linee 3 e 4 di questo calcolo rientrano di uno spazio; la linea 5 rientra di due spazi; la linea 6 rientra di tre spazi, mentre la linea finale non presenta alcun rientro.
Questo calcolo imposta il valore del campo Bundle al valore selezionato nel campo Elemento dei servizi sulla finestra Richiesta, se l'Elemento del servizi selezionato rappresenta un bundle.
Questo calcolo funziona impostando il valore del campo Bundle su null (vuoto). Quindi, se il valore del campo ConfigItemRequested sulla Richiesta non è null, verifica che il Nome della Classe per il campo ConfigItemRequested sia impostato su Bundle. Se è così, ciò significa che ConfigItemRequested è un bundle (ConfigItemRequested viene archiviato nel campo Elemento dei servizi sulla finestra Richiesta).
Se il calcolo determina che il ConfigItemRequested selezionato è un bundle, allora il calcolo imposta il valore del campo Bundle in modo che corrisponda al valore selezionato nel campo Elemento dei servizi sulla finestra Richiesta.
- La seconda azione automatica popola i campi Elemento dei servizi, Tipo richiesta e Processo sulle Richieste figlio con i valori richiesti per ciascuno dei CI nel bundle.
Ciò avviene utilizzando un tipo valore che fa riferimento al Bundle copiato nella prima azione automatica.
I CI in un bundle vengono archiviati in una raccolta definita Elementi catalogo, che rappresenta una relazione all'oggetto di collegamento definito Bundle elemento config. Ciò significa che i tipi di valore da selezionare sono i seguenti:
Elemento dei servizi – _Bundle/CatalogueItems*/ConfigItem.
Tipo richiesta – {_Bundle/CatalogueItems*/ConfigItem/CatalogueHierarchy}
Processo – {_Bundle/CatalogueItems*/ConfigItem/Lifecycle}
La seconda azione automatica imposta anche l'attributo booleano Il padre è un bundle? su Vero per le Richieste figlio. Questo attributo viene quindi utilizzato nelle Richieste figlio per bypassare i passaggi di autorizzazione nelle Richieste figlio.
Se un bundle include un CI che non presenta un ciclo di vita impostato per esso, si riceverà un errore Riferimento oggetto non impostato per un'istanza di un Oggetto. Assicurarsi che tutti i servizi disponibili mediante Catalogo dei servizi presentino un ciclo di vita associato.
Una volta create le Richieste figlio, la Richiesta bundle viene completata, lasciando alle Richieste figlio il completamento della fornitura del servizio.
È presente un'azione opzionale Aggiungi nota e Aggiungi assegnazione su ciascuno degli stati In attesa di autorizzazione.