Gestion des demandes : Demande de lot

Le processus Demande de lot fournit un processus qui gère les demandes portant sur des lots (collections de services dans une même demande). Ce processus gère l'autorisation pour le lot concerné, puis crée automatiquement une demande enfant pour chaque service contenu dans le lot. Une fois toutes les demandes enfant terminées, la demande de lot peut être terminée.

La séquence d'autorisation, au début de ce processus, est identique à celle qui figure dans le processus Demande de service générique, décrit à la page « Gestion des demandes : Demande de service générique ».

Une fois les autorisations traitées, le créateur est averti que sa demande a été autorisée. Deux actions automatiques créent ensuite les demandes enfant pour les services inclus dans le lot :

  1. La première remplit le champ Lot de la demande parent avec le nom du lot sélectionné comme valeur Élément de service de cette demande parent. Le champ Lot n'est pas ajouté à la fenêtre Demande.
    Cette action utilise le calcul suivant :

import System
static def GetAttributeValue(Request):

 Value = null
 if Request._ConfigItemRequested != null:
  if Request._ConfigItemRequested.Class.Name == "Bundle":
   Value = Request._ConfigItemRequested
return Value

Les lignes 3 et 4 de ce calcul sont indentées d'un espace ; la ligne 5 est indentée de deux espaces ; la ligne 6 est indentée de trois espaces et la ligne finale n'est pas indentée.

Ce calcul définit la valeur du champ Lot sur celle sélectionnée dans le champ Élément de service de la fenêtre Demande, si l'élément de service sélectionné est un lot.

Ce calcul fonctionne en configurant la valeur du champ Lot sur NULL (vide). Ensuite, si la valeur du champ ConfigItemRequested de la demande n'est pas NULL, le système vérifie si la valeur Nom de la classe du champ ConfigItemRequested est configurée sur Lot. Si tel est le cas, cela signifie que le CI demandé (ConfigItemRequested) est un lot (ConfigItemRequested est stocké dans le champ Élément de service de la fenêtre Demande).
Si le calcul détermine que le CI demandé (ConfigItemRequested) est un lot, alors il configure la valeur du champ Lot sur la valeur sélectionnée dans le champ Élément de service de la fenêtre Demande.

  1. La deuxième action automatique remplit les champs Élément de service, Type de demande et Processus des demandes enfant avec les valeurs requises pour chaque CI du lot.

Pour ce faire, elle utilise un type de valeur qui fait référence au lot copié dans la première action automatique.

Les CI d'un lot sont stockés dans une collection nommée Éléments de catalogue, qui est une relation avec l'objet de liaison nommé Lot de CI. Cela signifie que les types de valeur dont vous avez besoin sont :

Élément de service_Bundle/CatalogueItems*/ConfigItem.
Type de demande{_Bundle/CatalogueItems*/ConfigItem/CatalogueHierarchy}
Processus{_Bundle/CatalogueItems*/ConfigItem/Lifecycle}

La deuxième action automatique configure également l'attribut booléen Le parent est-il un lot ? sur True (Vrai) pour les demandes enfant. Cet attribut est ensuite utilisé dans les demandes enfant pour ignorer les étapes d'autorisation de ces demandes.

Si un lot inclut un CI qui n'a pas de cycle de vie défini, le système génère une erreur de type « référence d'objet non défini sur une instance d'un objet ». Vérifiez que tous les services disponibles dans le catalogue de services sont associés à un cycle de vie.

Après création des demandes enfant, la demande de lot est terminée, laissant les demandes enfant achever la fourniture de services.

Diagramme de processus

Il existe des actions facultatives Ajouter une note et Ajouter une affectation pour chacun des états En attente d'autorisation.