---
sourceDocument: Xanadu 애플리케이션과의 통합 생성
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ko-KR/xanadu/integrate-applications

 Release :

    - xanadu

ft:locale :

    - ko-KR

ft:publication_title :

    - Xanadu 애플리케이션과의 통합 생성

ft:clusterId :

    - crint

bundleId :

    - crint

workflow :

    - Creator


---

# 다른 소프트웨어 제공자와 통합 CSD 2.0

# 다른 소프트웨어 제공자와 통합 CSD 2.0 {#ariaid-title1}

* 릴리스 버전: Xanadu
* 
* 업데이트 날짜 2024년 08월 01일
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 소요 시간: 10분

Casper, Altiris 또는 LANDesk와 같은 클라이언트 소프트웨어 배포 공급자와 통합 CSD 2.0 합니다.  
주:  
확장 CSD 2.0 은 숙련된 Now Platform 개발자만 사용할 수 있는 고급 절차입니다.

## 제공자 테이블 생성 {#ariaid-title2}

제공자 서버에서 검색된 데이터를 저장할 테이블을 식별하고 만듭니다.
예를 들어 애플리케이션, 컬렉션 및 배포 테이블이 스포크와 Microsoft 배포는 Endpoint Configuration Manager 함께 제공됩니다. 마찬가지로 검색된 데이터를 저장할 테이블을 생성합니다. 클라이언트 소프트웨어 배포 애플리케이션(sn_csd_application) 테이블을 확장하는 애플리케이션 테이블을 생성해야 합니다.

* 구성 항목 \[cmdb_ci\] 테이블을 확장하는 제공자 서버 테이블을 만듭니다.
* 클라이언트 소프트웨어 배포 소프트웨어 구성 \[sn_csd_software_config\] 테이블을 확장하는 소프트웨어 구성 테이블을 만듭니다.
{#csd2-int-prov-tables__ul_xcm_lj4_hsb}

## 하위 플로우 생성 {#ariaid-title3}

에서 하위 플로우 워크플로우 스튜디오 를 생성하여 데이터를 검색 및 저장하고 애플리케이션을 배포합니다.
요구 사항에 따라 이러한 하위 플로우를 워크플로우 스튜디오 작성합니다.

* 데이터 검색 및 저장 하위 플로우:제공자 서버를 검색하고, 제공자 서버에서 데이터를 검색하고, 인스턴스에 해당 데이터를 ServiceNow 저장하는 하위 플로우입니다. 이 데이터는 서버 데이터를 저장하기 위해 이전에 만든 테이블에 저장해야 합니다.

* 애플리케이션 하위 플로우 배포:제공자 서버에서 소프트웨어를 배포하는 하위 플로우입니다. 이 하위 플로우는 서비스 카탈로그에서 요청한 애플리케이션 배포에 관한 정보를 제공자에게 제공합니다.

* 신청 하위 플로우 취소:제공자 서버에서 설치를 취소하는 하위 플로우입니다. 애플리케이션을 제거해야 하는 사용자 또는 장치에 관한 정보를 제공자에게 제공하는 이 하위 플로우입니다.

* 구성 데이터 하위 플로우 조회:지정된 요청 항목 또는 소프트웨어 구성 기록에 대한 구성 데이터를 검색하는 하위 플로우입니다.

{#csd2-int-subflows__ul_qbd_dk4_hsb}

애플리케이션 템플릿 배포, 구성 데이터 템플릿 조회 및 애플리케이션 템플릿 해지 하위 플로우는 CSD 2.0. 이러한 하위 플로우를 참조로 사용하고 요구 사항에 따라 하위 플로우를 생성할 수 있습니다.

## 제공자 기록 생성 {#ariaid-title4}

제공자 기록을 만들어 플로우를 구성합니다.

### 시작하기 전에

필요한 역할: admin

### 프로시저

1. 다음으로 이동 클라이언트 소프트웨어 배포 2.0제공자.
2. 새로 만들기를 클릭합니다.
3. 양식에서 다음 값을 입력합니다.  
   {#csd2-prov-cust__table_kjg_nk1_3sb__entry__2}

   | 필드 | 설명 |
   |-|-|
   | 이름 | 제공자 기록을 식별하는 이름입니다. |
   | 소프트웨어 구성 테이블 | 생성한 소프트웨어 구성 테이블입니다. 이 테이블은 클라이언트 소프트웨어 배포 소프트웨어 구성 \[sn_csd_software_config\] 테이블을 확장합니다. |
   | 제공자 서버 테이블 | 생성한 제공자 서버 테이블입니다. 이 테이블은 구성 항목 \[cmdb_ci\] 테이블을 확장합니다 |
   | 디스커버리 플로우 | 제공자 서버를 검색하고, 제공자 서버에서 데이터를 검색하고, 인스턴스에 해당 데이터를 ServiceNow 저장하기 위해 생성한 하위 플로우입니다. |
   | 배포 플로우 | 제공자 서버에서 소프트웨어를 배포하기 위해 생성한 하위 플로우입니다. |
   | 해지 플로우 | 제공자 서버에서 설치를 취소하기 위해 만든 하위 플로우입니다. |
   | 구성 플로우 | 지정된 요청 항목 또는 소프트웨어 구성 기록에 대한 구성 데이터를 검색하기 위해 만든 하위 플로우입니다. |
   | 소스 목록 | 쉼표로 구분된 검색 소스 목록입니다. |
   [ ]

   {#csd2-prov-cust__table_kjg_nk1_3sb}  
   그림 1. 제공자 기록 예
4. 저장을 클릭합니다.

## UI 작업 생성 {#ariaid-title5}

데이터를 검색하고, 소프트웨어 모델을 만들고, 소프트웨어 구성을 만들고, 카탈로그 항목을 만드는 UI 작업을 만듭니다.

### 시작하기 전에

필요한 역할: admin

### 이 태스크 정보

UI 작업 만들기에 대한 자세한 내용은 [UI 작업을](https://www.servicenow.com/docs/access?context=c_UIActions&version=xanadu&pubname=xanadu-platform-administration&ft:locale=en-US) 참조하십시오.

### 프로시저

1. 데이터를 검색하는 UI 작업을 만듭니다.
   1. 다음으로 이동 시스템 정의UI 작업.
   2. 새로 만들기를 클릭합니다.
   3. 양식에서 다음 값을 입력합니다.  
      {#csd2-create-uiacts__table_u5l_5q1_3sb__entry__2}

      | 필드 | 설명 |
      |-|-|
      | 이름 | UI 작업 기록을 식별하는 이름입니다. (예: <kbd class="ph userinput">지금 검색</kbd>) |
      | 테이블 | 생성한 제공자 서버 테이블입니다. 이 테이블은 구성 항목 \[cmdb_ci\] 테이블을 확장합니다. |
      | 스크립트 | UI 작업이 실행될 때 실행할 스크립트입니다. 예를 들어 sn_csd.CSDUtil.startDiscovery(current); |
      [ ]

      {#csd2-create-uiacts__table_u5l_5q1_3sb}
   4. 요구 사항에 따라 다른 필드를 지정합니다.
   5. 저장을 클릭합니다.
   {#csd2-create-uiacts__substeps_p3r_f41_3sb}
2. 소프트웨어 모델을 만들고 제공자 애플리케이션 또는 소프트웨어에 연결하는 UI 작업을 만듭니다.
   1. 다음으로 이동 시스템 정의UI 작업.
   2. 새로 만들기를 클릭합니다.
   3. 양식에서 다음 값을 입력합니다.  
      {#csd2-create-uiacts__table_y54_dv1_3sb__entry__2}

      | 필드 | 설명 |
      |-|-|
      | 이름 | UI 작업 기록을 식별하는 이름입니다. (예: <kbd class="ph userinput">소프트웨어 모델 생성</kbd>) |
      | 테이블 | 생성한 애플리케이션 테이블입니다. 이 테이블은 클라이언트 sn_csd_application(소프트웨어 배포 애플리케이션) 테이블을 확장합니다. 주: SAM 또는 CSD 2.0 소프트웨어 모델 및 라이센스 테이블을 사용할 수 있습니다. <kbd class="ph userinput">소프트웨어 모델 및 라이선싱 정보 시스템 속성을 관리하기 위해 SAM 플러그인(SAM Foundation 또는 SAM Professional) 테이블을 사용할지 결정</kbd>()이 구성되는 방식에 따라 해당 소프트웨어 모델 테이블을 사용합니다.sn_csd.useSAMPlugin |
      | 조건 | UI 작업이 나타나는 시기를 제한하는 조건을 정의합니다. 예를 들어 소프트웨어 모델이 애플리케이션 또는 소프트웨어와 연결된 경우 이 UI 작업을 숨길 수 있습니다. `따라서 (gs.getProperty("sn_csd.useSAMPlugin") == 'true' && current.model=="" && (GlidePluginManager().isActive("com.snc.sams") || GlidePluginManager().isActive("com.snc.samp.core"))) || (gs.getProperty("sn_csd.useSAMPlugin") == 'false'& current.csd_model=="").` |
      | 스크립트 | UI 작업이 실행될 때 실행할 스크립트입니다. 예를 들어 var newModel = ''; var tableName = ''; if (gs.getProperty("sn_csd.useSAMPlugin") == 'true' && current.model == "" && (GlidePluginManager().isActive("com.snc.sams") || GlidePluginManager().isActive("com.snc.samp.core"))) { tableName = 'cmdb_software_product_model'; } else { tableName = 'sn_csd_software_product_model'; } newModel = new sn_csd.CSDModelUtil().generateModel(current, tableName); if (newModel != '') gs.setRedirect(tableName + ".do?sys_id=" + newModel); |
      [ ]

      {#csd2-create-uiacts__table_y54_dv1_3sb}
   4. 요구 사항에 따라 다른 필드를 지정합니다.
   5. 저장을 클릭합니다.
   {#csd2-create-uiacts__substeps_yjb_2r1_3sb}
3. 소프트웨어 구성을 만드는 UI 작업을 만듭니다.
   1. 다음으로 이동 시스템 정의UI 작업.
   2. 새로 만들기를 클릭합니다.
   3. 양식에서 다음 값을 입력합니다.  
      {#csd2-create-uiacts__table_fdz_rx1_3sb__entry__2}

      | 필드 | 설명 |
      |-|-|
      | 이름 | UI 작업 기록을 식별하는 이름입니다. 예를 들어 <kbd class="ph userinput">소프트웨어 구성을 만듭니다</kbd>. |
      | 테이블 | 생성한 애플리케이션 테이블입니다. 이 테이블은 클라이언트 sn_csd_application(소프트웨어 배포 애플리케이션) 테이블을 확장합니다. 주: SAM 또는 CSD 2.0 소프트웨어 모델 및 라이센스 테이블을 사용할 수 있습니다. <kbd class="ph userinput">소프트웨어 모델 및 라이선싱 정보 시스템 속성을 관리하기 위해 SAM 플러그인(SAM Foundation 또는 SAM Professional) 테이블을 사용할지 결정</kbd>()이 구성되는 방식에 따라 해당 소프트웨어 모델 테이블을 사용합니다.sn_csd.useSAMPlugin |
      | 조건 | UI 작업이 나타나는 시기를 제한하는 조건을 정의합니다. 예를 들어, 소프트웨어 모델이 구성된 경우에만 UI 작업을 표시할 수 있습니다. `따라서 (gs.getProperty("sn_csd.useSAMPlugin") == 'true' && current.model!="" && (GlidePluginManager().isActive("com.snc.sams") || GlidePluginManager().isActive("com.snc.samp.core"))) || (gs.getProperty("sn_csd.useSAMPlugin") == 'false' && current.csd_model!="").` |
      | 스크립트 | UI 작업이 실행될 때 실행할 스크립트입니다. 예를 들어 var softwareConfig = createConfig(current); action.setRedirectURL(softwareConfig); function createConfig(appGr) { var gr = new GlideRecord("<Provider-software-configuration-table>"); gr.initialize(); gr.application = appGr.sys_id; gr.name = appGr.display_name; gr.insert(); return gr; } 이 예에서 <kbd class="ph userinput">&lt;Provider-software-configuration-table&gt;</kbd> 을 생성한 제공자 서버 테이블로 바꿉니다. 이 테이블은 구성 항목 \[cmdb_ci\] 테이블을 확장합니다. |
      [ ]

      {#csd2-create-uiacts__table_fdz_rx1_3sb}
   4. 요구 사항에 따라 다른 필드를 지정합니다.
   5. 저장을 클릭합니다.
   {#csd2-create-uiacts__substeps_tbn_cx1_3sb}
4. 카탈로그 항목을 만드는 UI 작업을 만듭니다.
   1. 다음으로 이동 시스템 정의UI 작업.
   2. 새로 만들기를 클릭합니다.
   3. 양식에서 다음 값을 입력합니다.  
      {#csd2-create-uiacts__table_kwx_w1b_3sb__entry__2}

      | 필드 | 설명 |
      |-|-|
      | 이름 | UI 작업 기록을 식별하는 이름입니다. (예: <kbd class="ph userinput">카탈로그 항목 생성</kbd>) |
      | 테이블 | 생성한 애플리케이션 테이블입니다. 이 테이블은 클라이언트 sn_csd_application(소프트웨어 배포 애플리케이션) 테이블을 확장합니다. 주: SAM 또는 CSD 2.0 소프트웨어 모델 및 라이센스 테이블을 사용할 수 있습니다. <kbd class="ph userinput">소프트웨어 모델 및 라이선싱 정보 시스템 속성을 관리하기 위해 SAM 플러그인(SAM Foundation 또는 SAM Professional) 테이블을 사용할지 결정</kbd>()이 구성되는 방식에 따라 해당 소프트웨어 모델 테이블을 사용합니다.sn_csd.useSAMPlugin |
      | 조건 | UI 작업이 나타나는 시기를 제한하는 조건을 정의합니다. 예를 들어, 소프트웨어 모델이 구성되어 있고 하나 이상의 소프트웨어 구성이 있는 경우에만 이 UI 작업을 표시할 수 있습니다. 따라서 sn_csd 입력합니다 `. CSDUtil.isCSDSoftwareModelAndConfigurationSet(current, "<provider software configuration table>", "<제공자의 애플리케이션 테이블을 참조하는 소프트웨어 구성 테이블 열의 내부 이름>")`. |
      | 스크립트 | UI 작업이 실행될 때 실행할 스크립트입니다. 예를 들어 var catItemHandler = new sn_csd.CSDCatItemHandler(current); var catItem = catItemHandler.createCatalogItem(current); //first parameter - provider's software configuration table //second paramter - internal name of software configuration table's column that refers to the provider's application table var sfConfig = catItemHandler.getSoftwareConfig('<provider software configuration table>', '<internal name of software configuration table's column that refers to provider's application table>); var gr = new GlideRecord('sn_csd_cat_item_fulfilment_config'); gr.initialize(); gr.cat_item = catItem.sys_id; gr.provider = '<provider's Sys ID from sn_csd_provider table record>'; //provider's Sys ID from sn_csd_provider table record gr.software_config = sfConfig; //populating software configuration gr.insert(); action.setRedirectURL(catItem); |
      [ ]

      {#csd2-create-uiacts__table_kwx_w1b_3sb}
   4. 요구 사항에 따라 다른 필드를 지정합니다.
   5. 저장을 클릭합니다.
   {#csd2-create-uiacts__substeps_cgs_w1b_3sb}

