Beispiel-Ressourcenpool, der die Auswahlmöglichkeiten auf die Kostenstelle beschränkt
Sie können verwenden RessourcenpoolsMit Blueprints, um die Auswahlmöglichkeiten im Cloud-Katalog-Anforderungsformular einzuschränken.
Anwendungsfall: Kostenstellenauswahl einschränken
In diesem Beispiel werden die Kosten des Cloud-Assets mit dem Budget der Kostenstelle des Anwenders in Rechnung gestellt. Die Basissystem AnwenderCostCenter RessourcenpoolStellt sicher, dass ein Anwender nur Ressourcen in seiner Kostenstelle auswählen kann.
Annahmen
- Das Plugin „Kostenmanagement“ [con.snc.Cost_Management] ist aktiv.
- Kostenstellen sind definiert, und Anwender sind den Kostenstellen zugeordnet.
- Mindestens ein Blueprint ist definiert. In diesem Beispiel wird ein Blueprint mit dem Namen verwendet Virtueller AWS-Server .
- Ihnen ist die Rolle „sn_cmp_cloud_admin“ zugewiesen und Sie kennen JavaScript- und JSON-Skripting.
Komponenten
- Überprüfen Sie den Ressourcenpoolfilter
- Navigieren Sie im Cloud-Administratorportal zu an.
- Öffnen Sie Kostenstellenpool Und überprüfen Sie die zugehörigen Ressourcenpoolfilter.
- Alle Ist ein Abfragefilter, der alle Kostenstellen in der Tabelle zurückgibt.
- AnwenderCostCenter Ist ein Skriptfilter, der nach der Kostenstelle sucht, die dem Anwender zugeordnet ist, der den Artikel bestellt.
Hier ist das Skript für AnwenderCostCenter Filter:getFilteredRecords(); //Do not remove function declaration /** * @returns filtered records in the format [{"value"="lookupValue",label="displayValue"}] */ function getFilteredRecords() { var filteredRecords = []; var userId = gs.getUserID(); var userGr = new GlideRecord('sys_user'); if (userGr.get(userId)){ var costCenterId = userGr.getValue('cost_center'); if (costCenterId){ var costCenterGr = new GlideRecord('cmn_cost_center'); if (costCenterGr.get(costCenterId)){ var costCenter = {}; costCenter.value = costCenterGr.getUniqueValue(); costCenter.label = costCenterGr.getValue('name'); filteredRecords.push(costCenter); } } } //force to string return new global.JSON().encode(filteredRecords); }
- Blueprint-Katalogformularparameter
- Navigieren zu , Und klicken Sie dann auf die Kachel für den Blueprint, den Sie öffnen möchten.
- Mit dem Blueprint in Entwurf status, klicken Sie auf Bereitstellung Vorgangskachel auf Registerkarte
- Klicken Sie in der zugehörigen Liste Variablensätze auf Allgemeine Informationen Variablensatz. Standardmäßig befindet sich die Variable „CostCenter“ in diesem Variablensatz.
- Klicken Sie in der zugehörigen Liste Cloud-Variablen im Formular Variablensatz auf Kostenstelle Variable.
- Klicken Sie im Formular Cloudvariable auf Typspezifikationen Registerkarte.
- Sehen Sie sich an Pool Und Poolfilter Felder, die auf verweisen RessourcenpoolUnd filtern.
- CostCenterPoolIst der Name von Ressourcenpool.
- UserCostCenter Ist das Filterskript, das die Kostenstellenoptionen abruft, aus denen der Anwender auswählen kann.
- Legen Sie den Blueprint auf fest Veröffentlicht .
- Kostenstellenanwender
- Identifizieren Sie einen Anwender, der Mitglied einer Kostenstelle ist und Zugriff auf hat Cloud-Anwenderportal.
Ressourcenpoolfilter wird getestet
Nachdem Sie die Komponenten dieses Anwendungsfalls überprüft haben, testen Sie das Cloud-Katalogelement, um sicherzustellen, dass Anwender nur ihre Kostenstelle auswählen können.
- Identität des Anwenders annehmen, Alene Rabeck In diesem Beispiel.
- Auf Cloud-Anwenderportal, Klicken Sie auf Starten Sie einen Stapel , Und wählen Sie dann das Cloud-Katalogelement aus ( Virtueller AWS-Server In diesem Beispiel).
- Überprüfen Sie die Auswahl in Kostenstelle Liste.
Mit CostCenterPool::UserCostCenterDatenquellenwert für dieses Katalogelement, die einzige Option für Kostenstelle Ist die Kostenstelle, in der der Anwender Mitglied ist.
Ressourcenpoolfilter wird geändert
Testen Sie, dass RessourcenpoolFilter steuert das Verhalten von Kostenstelle Feld, indem Sie es ändern und die Ergebnisse anzeigen.
- Navigieren Sie im Cloud-Administratorportal zu Und klicken Sie dann auf Virtueller AWS-Server .
- Klicken Sie auf Bereitstellung Vorgangskachel.
- Klicken Sie in der zugehörigen Liste Variablensätze auf Allgemeine Informationen Variablensatz. Standardmäßig befindet sich die Variable „CostCenter“ in diesem Variablensatz.
- Klicken Sie in der zugehörigen Liste Cloud-Variablen im Formular Variablensatz auf Kostenstelle Variable.
- Klicken Sie im Formular Cloudvariable auf Typspezifikationen Registerkarte.
- Bearbeiten Sie Poolfilter Feld, aus dem der Filter geändert werden soll UserCostCenterBis All.
- Klicken Sie Auf Aktualisieren , Und klicken Sie dann auf Veröffentlichen. .
- Identität des Anwenders annehmen, Alene Rabeck In diesem Beispiel.
- Auf Cloud-Anwenderportal, Starten Sie einen Stapel, und wählen Sie dann aus Virtueller AWS-Server .
- Stellen Sie sicher, dass alle Kostenstellen aufgeführt sind.