---
sourceDocument: Xanadu-API-Referenz
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/de-DE/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - de-DE

ft:publication_title :

    - Xanadu-API-Referenz

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# BusinessServiceManager -- Global

# BusinessServiceManager -- Global {#ariaid-title1}

* Freigeben Version: Xanadu
* 
* Aktualisiert 1. August 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 6 Minuten Lesedauer

Die BusinessServiceManager -API bietet Methoden, die das Servicemanagement vereinheitlichen, indem manuell erstellte Services in Anwendungsservices konvertiert, Anwendungsservices gefüllt und Konfigurationselemente und Verbindungen hinzugefügt/entfernt werden.

Verwenden Sie BusinessServiceManager -Methoden in globalen Serverskripts. Sie müssen über die Rolle „Anwendungsservice-Administrator" \[app_service_admin\] verfügen, um diese API aufzurufen.

## BusinessServiceManager -- BusinessServiceManager() {#ariaid-title2}

Instantiiert ein BusinessServiceManager-Objekt.
{#BSM-BusinessServiceManager__table_djw_xl5_ndb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| Keine |   |   |
[Tabelle : 1. Parameter]

{#BSM-BusinessServiceManager__table_djw_xl5_ndb}  

    var bsManager = new SNC.BusinessServiceManager();

## BusinessServiceManager -- addCI(String service_id, String source_id, String target_id) {#ariaid-title3}

Fügt einem manuell erstellten Anwendungsservice ein CI hinzu.
{#BSM-addCI_S_S_S__table_ihq_zl5_ndb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| service_id | Zeichenfolge | Sys_id des Anwendungsservice, dem ein CI hinzugefügt werden soll. Muss vom Typ cmdb_ci_service_discovered sein. |
| source_id | Zeichenfolge | Sys_id des CI, dessen ausgehende Verbindung das Ziel-CI verknüpft. |
| target_id | Zeichenfolge | Sys_id des CI, das dem Service hinzugefügt werden soll. darf kein ausgeschlossenes Element sein. Ausgeschlossene Elemente sind CIs, die in der Tabelle Manuelle CI-Einschlüsse/Ausschlüsse \[svc_manual_ci_exclusions_inclusions.list\] konfiguriert sind. |
[Tabelle : 2. Parameter]

{#BSM-addCI_S_S_S__table_ihq_zl5_ndb} {#BSM-addCI_S_S_S__table_jhq_zl5_ndb__entry__2}

| Typ | Beschreibung |
|-|-|
| void |   |
[Tabelle : 3. Ergebnisse]

{#BSM-addCI_S_S_S__table_jhq_zl5_ndb}  

    //Application service is 'PeopleSoft Portals'
    //Source CI is windows server 'PS Apache01'
    //Target CI is 'SAP WEB01'

    var bsManager = new SNC.BusinessServiceManager();
    var appService = bsManager.addCI('2fce42d80a0a0bb4004af34d7e3984c8','3a27d4370a0a0bb4006316812bf45439', '3a6cadc1c0a8ce01001f1e5d0d7d68fa');

### Fügen Sie einen neuen Einstiegspunkt hinzu {#BSM-addCI_S_S_S__section_ckd_wqg_cvb}

Verwenden Sie die Methode addCI(), um einem Service einen neuen Einstiegspunkt hinzuzufügen, indem Sie die folgenden Parameterwerte in Ihrer Anforderung angeben:

* Geben Sie die service_ID wie gewohnt an.
* Lassen Sie den Wert für „source_ID" leer. Verwenden Sie beispielsweise `„"`.
* Geben Sie für target_ID die Sys-ID des CI ein, unter dem der neue Einstiegspunkt hinzugefügt werden soll.
{#BSM-addCI_S_S_S__ul_s3g_cqm_cvb}  
Daher erstellt die Methode addCI() einen neuen Einstiegspunkt mit einer Verbindung zum angegebenen Ziel-CI. Im Folgenden finden Sie ein Beispiel für das Hinzufügen eines neuen Einstiegspunkts:

    //Application service sys_id is '49de2b3187cd9d50d5c8a6880cbb35ea' 
    //Source CI is passed as an empty string as '' 
    //Target CI sys id is '15ca5fb187129910d5c8a6880cbb3537'   

    var bsManager = new SNC.BusinessServiceManager(); 
    var appService = bsManager.addCI('49de2b3187cd9d50d5c8a6880cbb35ea','', '15ca5fb187129910d5c8a6880cbb3537');

## BusinessServiceManager -- addEntryPoint(serviceId, endpointGr) {#ariaid-title4}

Fügt dem Anwendungsservice einen Einstiegspunkt hinzu und startet die Discovery auf dem Einstiegspunkt.
{#BSM-addEntryPoint_S_O__table_clj_sw2_zwb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| serviceId | Sting | Sys_id des Anwendungsservice, dem die Verbindung hinzugefügt werden soll. |
| endpointGr | Zeichenfolge | Glide-Datensatz-Objekt in der CI-Endpunkttabelle \[cmdb_ci_endpoint\] oder ihrer untergeordneten Tabelle, das dem Anwendungsservice hinzugefügt werden soll. |
[Tabelle : 4. Parameter]

{#BSM-addEntryPoint_S_O__table_clj_sw2_zwb} {#BSM-addEntryPoint_S_O__table_dlj_sw2_zwb__entry__2}

| Typ | Beschreibung |
|-|-|
| Boolean | Kennzeichnung, die angibt, dass der Einstiegspunkt dem Anwendungsservice erfolgreich hinzugefügt wurde. Mögliche Werte: * wahr: Das Hinzufügen war erfolgreich. * „falsch": Das Hinzufügen war nicht erfolgreich. {#BSM-addEntryPoint_S_O__ul_f52_dg2_zwb} |
[Tabelle : 5. Ergebnisse]

{#BSM-addEntryPoint_S_O__table_dlj_sw2_zwb}  
Die folgende Methode addEntryPoint() zeigt, wie dem Anwendungsservice ein neuer Einstiegspunkt hinzugefügt wird.

    var now_GR = new GlideRecord("cmdb_ci_endpoint_tcp");
    now_GR.initialize(); 
    now_GR.setValue("host", "10.196.39.251");
    now_GR.setValue("port", "8080");
    now_GR.insert();
    var bsManager = new SNC.BusinessServiceManager();
    var serviceId = "5bf65ebeedb91300964f6fa662989533";
    bsManager.addEntryPoint(serviceId,now_GR);

Ausgabe:

    true

## BusinessServiceManager -- addEntryPointWithoutStartDiscovery(serviceId, endpointGr) {#ariaid-title5}

Fügt einen neuen Einstiegspunkt hinzu, ohne Discovery zu starten.
{#BSM-addEntryPtWoStartDiscovery_S_O__table_at2_252_zwb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| serviceId | Zeichenfolge | Sys_id des Anwendungsservice, dem die Verbindung hinzugefügt werden soll. |
| endpointGr | Zeichenfolge | Glide-Datensatz-Objekt in der CI-Endpunkttabelle \[cmdb_ci_endpoint\] oder ihrer untergeordneten Tabelle, das dem Anwendungsservice hinzugefügt werden soll. |
[Tabelle : 6. Parameter]

{#BSM-addEntryPtWoStartDiscovery_S_O__table_at2_252_zwb} {#BSM-addEntryPtWoStartDiscovery_S_O__table_bt2_252_zwb__entry__2}

| Typ | Beschreibung |
|-|-|
| Boolean | Kennzeichnung, die angibt, dass der Einstiegspunkt dem Anwendungsservice erfolgreich hinzugefügt wurde. Mögliche Werte: * wahr: Das Hinzufügen war erfolgreich. * „falsch": Das Hinzufügen war nicht erfolgreich. {#BSM-addEntryPtWoStartDiscovery_S_O__ul_f52_dg2_zwb} |
[Tabelle : 7. Ergebnisse]

{#BSM-addEntryPtWoStartDiscovery_S_O__table_bt2_252_zwb}  
Das folgende Beispiel zeigt, wie die Methode addEntryPointWithoutStartDiscovery() verwendet wird, um dem Anwendungsservice einen neuen Einstiegspunkt hinzuzufügen, ohne Discovery zu initiieren.

    var now_GR = new GlideRecord("cmdb_ci_endpoint_tcp");
    now_GR.initialize(); 
    now_GR.setValue("host", "10.196.39.251");
    now_GR.setValue("port", "8080");
    now_GR.insert();
    var bsManager = new SNC.BusinessServiceManager();
    var serviceId = "5bf65ebeedb91300964f6fa662989533";
    bsManager.addEntryPointWithoutStartDiscovery(serviceId,now_GR);

Ausgabe:

    true

## BusinessServiceManager -- addManualConnection(String source_id, Object manual_endpoint, String service_id) {#ariaid-title6}

Fügt eine manuell erstellte Verbindung zu einem Anwendungsservice hinzu.
{#BSM-addManualConnection_S_O_S__table_fkl_1bb_sdb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| source_id | Zeichenfolge | Sys-ID des CI, das der Verbindung hinzugefügt werden soll. |
| manual_endpoint | Objekt | GlideRecord-Objekt in der Tabelle „cmdb_ci_endpoint_manual", das dem Anwendungsservice hinzugefügt werden soll. |
| service_id | Zeichenfolge | Sys-ID des Anwendungsservice, dem die Verbindung hinzugefügt werden soll. |
[Tabelle : 8. Parameter]

{#BSM-addManualConnection_S_O_S__table_fkl_1bb_sdb} {#BSM-addManualConnection_S_O_S__table_gkl_1bb_sdb__entry__2}

| Typ | Beschreibung |
|-|-|
| void |   |
[Tabelle : 9. Ergebnisse]

{#BSM-addManualConnection_S_O_S__table_gkl_1bb_sdb}  

    var now_GR = new GlideRecord("cmdb_ci_endpoint_manual");
    now_GR.initialize(); 
    now_GR.name='myEndpoint'; 
    now_GR.insert();

    var bsManager = new SNC.BusinessServiceManager();
    var appService = bsManager.addManualConnection("3a307c930a0a0bb400353965d0b8861f", now_GR, "2fce42d80a0a0bb4004af34d7e3984c8");

## BusinessServiceManager -- isReadingPermitted(Object GR, Zeichenfolge userSysID) {#ariaid-title7}

Überprüft die Rollen eines angegebenen Anwenders und die Berechtigungsdaten, die für einen bestimmten Service/eine bestimmte Servicegruppe konfiguriert sind, und gibt einen booleschen Wert zurück, der angibt, ob der Anwender den Service/die Servicegruppe anzeigen kann.
Im Folgenden wird der Prozess-Flow definiert, den die Methode verwendet, um zu bestimmen, ob der Benutzer den Service/die Servicegruppe anzeigen kann:  
1. Wenn der angegebene Datensatz eine Servicegruppe ist, werden die Anwenderrollen und die Gruppenrichtlinie überprüft. Weitere Informationen zu zugewiesenen Rollen für Servicegruppen finden Sie unter [Assign a role to a service group](https://www.servicenow.com/docs/access?context=t_EMAssignRoleSvcGroup&version=xanadu&pubname=xanadu-it-operations-management&ft:locale=en-US).
2. Wenn die Rollenliste „itil" enthält, aber nicht „app_service_admin" und „sam_core_user", wird „wahr" zurückgegeben.
3. Wenn die Rollenliste „maint" enthält, wird „true" zurückgegeben.
4. Wenn die Rollenliste „app_serivce_user", aber nicht „app_service_admin" und „sm_app_owner" enthält und der Service nicht betriebsbereit ist, geben Sie „falsch" zurück.
5. Überprüfen Sie die Gruppe des Services.
   1. Wenn der Service zu einer einzelnen Gruppe gehört und die Gruppe „alle" ist, wird „wahr" zurückgegeben.
   2. Bei jeder Gruppe, die nicht „alle" ist, prüft die Richtlinie auf Anwenderrollen und Gruppen basierend auf den in [Assign a role to a service group](https://www.servicenow.com/docs/access?context=t_EMAssignRoleSvcGroup&version=xanadu&pubname=xanadu-it-operations-management&ft:locale=en-US)angegebenen Regeln. Wenn einer von ihnen „wahr" zurückgibt, geben Sie „wahr" zurück.
   {#BSM-isReadingPermitted_O_S__ol_wrc_tjy_dzb}
{#BSM-isReadingPermitted_O_S__table_snj_253_kyb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| gr | GlideRecord | GlideRecord des Services/der Servicegruppe. Dieser GlideRecord kann aus einer der folgenden Tabellen stammen: * Anwendungsservice \[cmdb_ci_service_auto\] * Anwendungsservicegruppe \[cmdb_ci_service_group\] * Dynamische CI-Gruppe \[cmdb_ci_query_based_service\] * Manuelle Services \[cmdb_ci_service_manual\] * Zugeordneter Anwendungsservice \[cmdb_ci_service_discovered\] * Service \[cmdb_ci_service\] |
| userSysId | Zeichenfolge | Sys_id des Benutzerdatensatzes Befindet sich in der Tabelle „Benutzer" \[sys_user\]. |
[Tabelle : 10. Parameter]

{#BSM-isReadingPermitted_O_S__table_snj_253_kyb} {#BSM-isReadingPermitted_O_S__table_tnj_253_kyb__entry__2}

| Typ | Beschreibung |
|-|-|
| Boolean | Kennzeichnung, die angibt, ob der Anwender berechtigt ist, den angegebenen Service/die angegebene Servicegruppe anzuzeigen. Mögliche Werte: * „wahr": Der Anwender kann den angegebenen Service/die angegebene Servicegruppe anzeigen. * „falsch": Der Anwender kann den angegebenen Service/die angegebene Servicegruppe nicht anzeigen. |
[Tabelle : 11. Ergebnisse]

{#BSM-isReadingPermitted_O_S__table_tnj_253_kyb}  
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird, um die Fähigkeit des angegebenen Benutzers zu überprüfen, auf die angegebene Servicegruppe zuzugreifen.

    var cmdbServGr = new GlideRecord('cmdb_ci_service_discovered');
    cmdbServGr.addQuery('sys_id', "123123123123123123123123");
    cmdbServGr.query();
    var userId = gs.getUserID();

    var bsManager = new SNC.BusinessServiceManager();
    while (cmdbServGr.next()) {
      var answer = bsManager.isReadingPermitted(cmdbServGr, userId);

      //do something with / according to the answer

    }

## BusinessServiceManager -- migrateManualToApplicationService(String service_id) {#ariaid-title8}

Konvertiert einen manuellen Service in einen Anwendungsservice.
{#BSM-migrateManualToITService_S__table_xjk_w41_sdb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| service_id | Zeichenfolge | Sys-ID des zu konvertierenden manuellen Service. |
[Tabelle : 12. Parameter]

{#BSM-migrateManualToITService_S__table_xjk_w41_sdb} {#BSM-migrateManualToITService_S__table_yjk_w41_sdb__entry__2}

| Typ | Beschreibung |
|-|-|
| Boolean | True, wenn die Migration in einen Anwendungsservice erfolgreich ist. |
[Tabelle : 13. Ergebnisse]

{#BSM-migrateManualToITService_S__table_yjk_w41_sdb}  

    var bsManager = new SNC.BusinessServiceManager();
    var appService = bsManager.migrateManualToApplicationService("451047c6c0a8016400de0ae6df9b9d76");

## BusinessServiceManager -- populateApplicationService(String service_id, Number levels, String black_listed_relation_types) {#ariaid-title9}

Füllt einen Anwendungsservice mit Beziehungen und CIs vom angegebenen Einstiegspunkt aus.
{#BSM-populateDiscoveredService_S_N_S__table_crl_yx1_sdb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| service_id | Zeichenfolge | Sys-ID des Anwendungsservice zum Auffüllen. |
| levels | Zahl | Anzahl der Ebenen von CIs, die aus der CMDB hinzugefügt werden sollen. |
| black_listed_relation_types | Zeichenfolge | Beziehungstypen, die beim Auffüllen des Anwendungsservice ausgeschlossen werden sollen. |
[Tabelle : 14. Parameter]

{#BSM-populateDiscoveredService_S_N_S__table_crl_yx1_sdb} {#BSM-populateDiscoveredService_S_N_S__table_drl_yx1_sdb__entry__2}

| Typ | Beschreibung |
|-|-|
| Boolean | True, wenn die Operation erfolgreich ist. |
[Tabelle : 15. Ergebnisse]

{#BSM-populateDiscoveredService_S_N_S__table_drl_yx1_sdb}  

    var bsManager = new SNC.BusinessServiceManager();
    var appService = bsManager.populateApplicationService("5bf65ebeedb91300964f6fa662989533", 10, "Depends on::Used by");

## BusinessServiceManager -- removeCI(String service_id, String target_id) {#ariaid-title10}

Entfernt ein manuell erstelltes CI aus einem Anwendungsservice.
{#BSM-removeManualCi_O_O__table_bcz_py1_sdb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| service_id | Zeichenfolge | Sys-ID des Anwendungsservice, aus dem ein CI entfernt werden soll. Hinweis: Die Übergabe eines GlideRecord-Objekts wird ebenfalls unterstützt. |
| target_id | Zeichenfolge | Sys-ID des CI, das aus dem Anwendungsservice entfernt werden soll. Hinweis: Die Übergabe eines GlideRecord-Objekts wird ebenfalls unterstützt. |
[Tabelle : 16. Parameter]

{#BSM-removeManualCi_O_O__table_bcz_py1_sdb} {#BSM-removeManualCi_O_O__table_ccz_py1_sdb__entry__2}

| Typ | Beschreibung |
|-|-|
| void |   |
[Tabelle : 17. Ergebnisse]

{#BSM-removeManualCi_O_O__table_ccz_py1_sdb}  

    var bsManager = new SNC.BusinessServiceManager();
    var appService = bsManager.removeCI("2fce42d80a0a0bb4004af34d7e3984c8", "3a290cc60a0a0bb400000bdb386af1cf");

## BusinessServiceManager -- entfernenEntryPoint(serviceId, endpointSysId) {#ariaid-title11}

Entfernt einen vorhandenen Einstiegspunkt aus dem Anwendungsservice.
{#BSM-removeEntryPoint_S_S__table_xj2_n32_zwb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| serviceId | Zeichenfolge | Sys_id des Anwendungsservice, dem die Verbindung hinzugefügt werden soll. |
| endpointSysId | Zeichenfolge | Sys_id des zu entfernenden Einstiegspunkt-Endpunkts. |
[Tabelle : 18. Parameter]

{#BSM-removeEntryPoint_S_S__table_xj2_n32_zwb} {#BSM-removeEntryPoint_S_S__table_yj2_n32_zwb__entry__2}

| Typ | Beschreibung |
|-|-|
| Boolean | Kennzeichnung, die angibt, dass der Einstiegspunkt erfolgreich aus dem Anwendungsservice entfernt wurde. Mögliche Werte: * „wahr": Das Update war erfolgreich. * „falsch": Das Update war nicht erfolgreich. |
[Tabelle : 19. Ergebnisse]

{#BSM-removeEntryPoint_S_S__table_yj2_n32_zwb}  
Im folgenden Beispiel wird der Einstiegspunkt, der der Sys_id „aa65ebeedb91300964f6fa6629895ss" zugeordnet ist, aus dem angegebenen Anwendungsservice entfernt.

    var bsManager = new SNC.BusinessServiceManager();
    var serviceId = "5bf65ebeedb91300964f6fa662989533";
    var entrypointId = "aa65ebeedb91300964f6fa6629895ss";
    bsManager.removeEntryPoint(serviceId, entrypointId);

Ausgabe:

    true

## BusinessServiceManager -- removeManualConnection(String source_id, String endpoint_id, String service_id) {#ariaid-title12}

Entfernt eine manuell erstellte Verbindung und das verbundene CI aus einem Anwendungsservice.
{#BSM-removeManualConnection_S_S_S__table_spm_sbb_sdb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| source_id | Zeichenfolge | Sys-ID des mit dem Endpunkt verbundenen CI. |
| endpoint_id | Zeichenfolge | Sys-ID der manuell erstellten Verbindung, die aus dem Anwendungsservice entfernt werden soll |
| service_id | Zeichenfolge | Sys-ID des Anwendungsservice, aus dem die Verbindung entfernt werden soll. |
[Tabelle : 20. Parameter]

{#BSM-removeManualConnection_S_S_S__table_spm_sbb_sdb} {#BSM-removeManualConnection_S_S_S__table_tpm_sbb_sdb__entry__2}

| Typ | Beschreibung |
|-|-|
| void |   |
[Tabelle : 21. Ergebnisse]

{#BSM-removeManualConnection_S_S_S__table_tpm_sbb_sdb}  

    var bsManager = new SNC.BusinessServiceManager();
    var appService = bsManager.removeManualConnection("3a307c930a0a0bb400353965d0b8861f", "60ce3176edb91300964f6fa6629895d1", "2fce42d80a0a0bb4004af34d7e3984c8");

## BusinessServiceManager -- updateEntryPoint(serviceId, endpointGr) {#ariaid-title13}

Aktualisiert einen vorhandenen Einstiegspunkt im Anwendungsservice.
{#BSM-updateEntryPoint_S_O__table_oht_422_zwb__entry__3}

| Name | Typ | Beschreibung |
|-|-|-|
| serviceId | Zeichenfolge | Sys_id des Anwendungsservice, dem die Verbindung hinzugefügt werden soll. |
| endpointGr | Objekt | Glide-Datensatz-Objekt in der CI-Endpunkttabelle \[cmdb_ci_endpoint\] oder ihrer untergeordneten Tabelle, das dem Anwendungsservice hinzugefügt werden soll. |
[Tabelle : 22. Parameter]

{#BSM-updateEntryPoint_S_O__table_oht_422_zwb} {#BSM-updateEntryPoint_S_O__table_pht_422_zwb__entry__2}

| Typ | Beschreibung |
|-|-|
| Boolean | Kennzeichnung, die angibt, dass das Update erfolgreich auf den Einstiegspunkt angewendet wurde. Mögliche Werte: * „wahr": Das Update war erfolgreich. * „falsch": Das Update war nicht erfolgreich. {#BSM-updateEntryPoint_S_O__ul_f52_dg2_zwb} |
[Tabelle : 23. Ergebnisse]

{#BSM-updateEntryPoint_S_O__table_pht_422_zwb}  
Das folgende updateEntryPoint()-Beispiel zeigt, wie die Verbindung mit einem neuen Einstiegspunkt aktualisiert wird.

    var now_GR = new GlideRecord("cmdb_ci_endpoint_http");
    now_GR.get("11f65ebeedb91300964f6fa66298951");
    now_GR.setValue("protocol", "https");
    var bsManager = new SNC.BusinessServiceManager();
    var serviceId = "5bf65ebeedb91300964f6fa662989533";
    bsManager.updateEntryPoint(serviceId,now_GR);

Ausgabe:

    true


