# 라이선싱

## Content

[ActiveReportsJS](https://www.grapecity.co.kr/activereportsjs)는 디자이너 라이선싱와 배포 라이선싱 모델을 사용합니다.
해당 포스팅에서는 ActiveReportsJS의 디자이너 프로그램을 정식 버전으로 활성화하고, 올바르게 ActiveReportsJS를 여러분의 웹 어플리케이션에 배포하는 방법을 알아봅니다.

### **ActiveReportsJS 라이선스 종류**

#### **디자이너 라이선스**

기본적으로 ActiveReportJS의 <strong>JS 라이브러리</strong>와 <strong>리포트 디자이너</strong>를 통해, 보고서를 생성하고 이를 JS 뷰어를 통해 웹에 보여주는 리포트 솔루션을 개발하고자 하는 모든 개발자는 디자이너(개발자) 라이선스를 가지고 있어야 합니다.

#### **디자이너 라이선스는 아래 사항을 유의해주세요.**

* 리포트 디자이너 프로그램은 라이선스 구매일로 부터 1년간 사용이 가능합니다. (1년이 지나면 자동으로 사용이 불가합니다.)
* 디자이너 프로그램은 구매한 시점의 메인 버전과 해당 메인버전의 서브 버전에 대해서만 정당한 사용권한을 갖을 수 있습니다.

#### **배포 라이선스**

호스트/도메인 네임에 대해 응용 프로그램을 라이선싱하는 방식입니다.
즉, 배포하고자 하시는 호스트/도메인 네임(URL주소 또는 IP주소) 마다, 배포 라이선스를 구매하셔야 합니다.

#### **배포 라이선스는 아래 사항을 유의해주세요.**

* 배포 라이선스를 발급 받기 위해서는 배포하고자 하는 버전과 동일한 디자이너 라이선스가 반드시 필요합니다.
* 한번 등록된 호스트/도메인 네임은 변경이 불가합니다. 라이선스 요청 시에 반드시 확인부탁드립니다.
* 고객 실수 또는 부득이한 사정으로 호스트/도메인 네임 변경이 필요한 경우, 신규 배포 라이선스를 구매해야만 합니다.
<br>
    <br>

### **ActiveReportsJS 구성**

ActiveReportsJS 제품에서 라이선싱이 필요한 곳은 다음 두 부분입니다.

1. **ActiveReportsJS 디자이너**
2. **ActiveReportsJS 컴포넌트 파일**
<br>
    디자이너는 보고서를 만들기 위한 독립 실행형 데스크탑 응용 프로그램입니다.
    Windows, Linux 및 Mac 컴퓨터에 설치할 수 있습니다.
<br>
    디자이너에는 30일 평가 기간이 포함되어 있습니다. 디자이너를 설치한 후 열면 평가판 상태를 나타내는 배너가 우측 상단에 표시됩니다.

평가판이 만료되면 배너에 \*\*"Trial Expired"\*\*라는 문구가 나타나는 것을 볼 수 있습니다.
![ActiveReportsJS 라이선싱 방법](https://global-cdn.grapecity.com/blogs/activereports/20191017-how-to-license-activereportsjs/1.jpg)

ActiveReportsJS 컴포넌트(컨트롤)는 웹 응용 프로그램에서 사용할 수 있는 JS 및 CSS 파일입니다.
[GrapeCity 사이트의 ActiveReportsJS 페이지](https://www.grapecity.co.kr/activereportsjs) 또는 [NPM](https://www.npmjs.com/package/@grapecity/activereports)에서 이 파일을 다운로드하여 응용 프로그램에 포함할 수 있습니다.

### **라이선스 키**

키에는 다음 세 가지 유형이 있습니다.

1. 시리얼 키 → 구매시 포함
2. 디자이너 키 → 구매시 포함
3. 배포 키 → 별도 요청, "응용 프로그램 라이선싱" 섹션 참고.

시리얼 키는 디자이너 키와 배포 키를 발급 받기 위한 목적으로 사용되며, 디자이너 키는 디자이너 응용 프로그램을 라이선싱하는 데 사용됩니다.
**시리얼 키와 디자이너 키는 구매 확인 이메일에 포함됩니다.**

### **디자이너 라이선싱**

디자이너 키는 컴퓨터에 디자이너를 라이선싱하는 데 사용됩니다.
디자이너 키는 구매 이메일에 포함됩니다.

**우선, 구매 메일에 포함되어 있는 디자이너 라이선스 키의 문자열을 복사합니다.**

라이선싱되지 않은 디자이너에는 우측 상단에 배너가 평가판 상태와 함께 표시됩니다.
이 배너를 클릭하여 라이선스 창을 열 수 있습니다.
![ActiveReportsJS 라이선싱 방법](https://global-cdn.grapecity.com/blogs/activereports/20191017-how-to-license-activereportsjs/1.png)

복사해놓은 키를 라이선스 창에 붙여넣고 확인을 클릭합니다. 라이선싱이 완료되면 배너와 워터마크가 사라집니다.

### **배포 라이선싱**

ActiveReportsJS를 웹에 배포하기 위해서는 반드시 배포 키가 필요합니다. 배포 키는 평가 및 프로덕션에 사용할 수 있습니다.

이를 위해서는, 구매 메일을 통해 받은 시리얼 키가 반드시 필요합니다.
아래와 같은 방법으로, 올바른 배포 라이선스를 획득하고 ARJS를 배포할 수 있습니다:

1. 그레이프시티 코리아로부터, ["배포 라이선스"를 구매](https://www.grapecity.co.kr/activereportsjs#price) 해주세요.
2. 배포 라이선스를 발급 받기 위해서,
    "[배포키 신청 포탈](https://form.typeform.com/to/Dl9AygjS)"으로 아래 정보와 함께 신청해주세요.
    * **구매 시 받은 라이선스 인증 메일 (시리얼키)**
    * **배포하고자 하는 도메인 주소 (IP주소 사용 시, IP주소 기입)**
        . ex) 도메인1: [www.grapecity.co.kr](http://www.grapecity.co.kr/) \| 도메인2: [dev.grapecity.co.kr](https://dev.grapecity.co.kr/)
3. GrapeCity 코리아로부터 전달 받은 배포 라이선스 키를 여러분의 어플리케이션의 JavaScript 코드 섹션에 아래와 같은 방법을 통해 적용해주세요.
<br>
    `GC.ActiveReports.Core.setLicenseKey = "YOUR LICENSE KEY GOES HERE";`
<br>
    <br>

### **평가 키**

제품을 테스트하는 경우에는 디자이너를 설치할 때 이미 포함되어 있는 30일 평가판을 사용하면 되므로 아무것도 할 필요가 없습니다.  
만약 ActiveReportsJS 컴포넌트 배포 테스트를 위해, 임시로 호스트/도메인 네임이 있는 테스트 서버에 배하고자 하는 경우, GrapeCity 코리아에 연락주시기 바랍니다.

### **주의사항**

* 와일드 카드(\*)로 된 도메인은 신청 불가합니다.
* 한 번 등록된 도메인 주소는 변경할 수 없으며, 수정이 필요할 경우, 추가 도메인을 구매하셔야 합니다.

### **프레임워크별 라이선싱 방법**

#### 순수 JavaScript 코드를 사용하여 라이선싱

html 페이지에 다음과 같이 ar-js-core.js 스크립트에 대한 참조를 추가합니다.

```html
<script type="text/javascript" src="https://cdn.grapecity.com/activereportsjs/2.latest/dist/ar-js-core.js"></script>
```

다음 코드를 추가합니다. 그러면 ar-js-core.js 스크립트 로드 후 실행됩니다.

```javascript
GC.ActiveReports.Core.setLicenseKey("YOUR LICENSE KEY GOES HERE");
```

#### React 기반 응용 프로그램 라이선싱

* 응용 프로그램의 클라이언트 측 소스 코드의 루트 폴더에 새 "arjs-license.js"(또는 typescript를 사용 중인 경우 "arjs-license.ts")를 추가합니다. 일반적으로 루트 폴더는 "src" 폴더일 수 있습니다.
* 새로 추가된 파일에서 다음 코드를 추가합니다.

```javascript
import { Core } from "@grapecity/activereports";

Core.setLicenseKey("YOUR LICENSE KEY GOES HERE");
```

* 새로 추가된 파일에서 가져오기를 index.js(또는 index.ts) 코드에 추가합니다.

```javascript
import {} from "./arjs-license";
```

#### Angular 기반 응용 프로그램 라이선싱

ActiveReportsJs 컴포넌트 또는 API를 사용하는 Angular 컴포넌트의 \*.component.ts(또는 \*.component.js) 파일에 다음 코드를 삽입합니다.

```javascript
import { Core } from "@grapecity/activereports";

Core.setLicenseKey("YOUR LICENSE KEY GOES HERE");
```

#### Vue 기반 응용 프로그램 라이선싱

Vue 응용 프로그램에도 동일한 메서드를 사용할 수 있습니다. `Core.setLicenseKey` 메서드를 호출하는 코드는 호스팅 컴포넌트의 \*.vue 파일에 있을 수 있습니다.