사용자 지정 작업 작성
사용자 지정 작업을 만들려면 ThingWorx Navigate 사용자 지정 항목에서 언급한 사전 지식이 필요합니다.
작업의 구성 요소
ThingWorx Navigate 작업은 여러 가지 기본적인 부분으로 구성되어 있습니다.
매쉬업 - 작업의 사용자 인터페이스.
ThingWorx Navigate 서비스 - 작업을 수행하는 Java 또는 JavaScript입니다. ptc-windchill-OData-connector 통합 커넥터에서 사용할 수 있는 여러 가지 서비스가 있습니다.
Windchill - 데이터의 소스입니다.
Windchill REST 서비스(WRS)입니다.
* 
이 예에서는 Windchill REST Services(WRS)를 사용하여 Windchill의 데이터에 액세스합니다. WRS는 OData를 기반으로 하며 ThingWorx Navigate 사용자 지정에 권장되는 방법입니다. RestEasy 서비스는 향후 릴리즈에서 더 이상 사용되지 않습니다. WRS를 사용하고 확장하는 방법에 대한 자세한 내용은 Windchill 설치의 사용자 지정 섹션을 참조하십시오.
ThingWorx Navigate 9.0에는 재사용 가능 구성 요소가 도입되었습니다. 이러한 구성 요소는 매쉬업 빌드 및 사용자 지정 작업에 사용할 수 있지만 이 항목에서는 다루지 않습니다.
이러한 구성 요소에 대한 자세한 내용은 사용자 지정 작업에서 ThingWorx Navigate 구성 요소 사용을 참조하십시오.
이러한 구성 요소를 사용한 매쉬업 빌드 방법을 보여주는 자습서는 구성 자습서를 참조하십시오.
개요 
작업의 구성 요소를 작업 매쉬업에 결합하는 방법을 보여주는 예를 사용합니다. 이 예에서는 Windchill 부품 및 해당 속성의 목록을 표시합니다. 아래는 모든 과정이 완료될 때 볼 수 있는 화면입니다.
시작하기 전에 작업의 기능과 레이아웃을 계획하는 것이 도움이 됩니다. 그러면 데이터를 사용자 인터페이스에 표시하는 방법, 이 데이터를 표시하는 데 필요한 패널 및 패널과 함께 사용할 서비스를 알 수 있습니다.
getPart (/ProdMgmt/Parts GET)createPartinParts (/ProdMgmt/Parts POST)와 같은 많은 끝점이 이미 WRS 도메인에서 사용 가능합니다. 아래 예에서 이러한 서비스를 사용해 보겠습니다. 고유한 서비스 작성 방법에 대한 자세한 내용은 도움말 센터의 사물 서비스 항목을 참조하십시오. 또한 Windchill REST Services 도움말 센터에서 일반적으로 사용하는 서비스 일부에 대한 단계를 참조할 수 있습니다.
이 사용자 지정 작업을 작성하려면 ThingWorx Composer에서 다음 단계를 수행합니다.
1. 프로젝트 작성 
사용자 지정 작업에 포함될 모든 엔티티를 구성하는 프로젝트를 작성합니다.
1. 새 프로젝트를 작성하고 프로젝트의 이름을 입력합니다.
2. 프로젝트를 저장합니다.
2. 데이터 셰이프 작성 
데이터를 나타내는 데이터 셰이프를 작성합니다.
데이터 셰이프에 대한 자세한 내용은 도움말 센터의 데이터 셰이프 항목을 참조하십시오.
1. 새 데이터 셰이프를 작성합니다. 이름을 입력하고 프로젝트 아래에 이전 단계에서 작성한 프로젝트의 이름을 추가합니다.
2. 필드 정의 탭으로 이동합니다.
3. 기본 유형STRING인 다음 필드 정의를 추가합니다.
PartNumber
PartName
PartVersion
PartID
이러한 필드 정의는 사용자 지정 작업에 표시되는 데이터에 해당합니다.
4. 데이터 셰이프를 저장합니다.
3. OData 커넥터 구성 
작업에 표시할 데이터의 소스를 제공하기 위해 OData 커넥터의 인스턴스를 설정합니다.
이 단계에서는 OData 커넥터를 구성하고 다음 단계에서 데이터에 대한 API 맵과 라우팅 서비스를 작성하겠습니다. ThingWorx Composer에서 끝점을 선택하기 전에 엔티티 데이터 모델의 서비스에 의해 노출되는 관계를 이해하는 것이 좋습니다. 다음은 제품 관리 도메인의 서비스에 의해 노출되는 유형, 속성 및 관계에 대한 설명 샘플입니다. 그림과 같이 엔티티 유형이 Part인 엔티티 집합 Parts가 있습니다. OData 서비스에 정의된 경로를 통해 이 엔티티 집합에 액세스하여 Parts의 모든 속성에 액세스할 수 있습니다. 자세한 내용은 Windchill REST Services 도움말 센터를 참조하십시오.
1. ThingWorx Composer에서 새 통합 커넥터를 생성합니다. 템플릿 선택 창에서 ODataConnector를 선택하고 확인을 클릭합니다. 이름을 입력하고 프로젝트 아래에 이전에 작성한 프로젝트의 이름을 추가합니다.
2. 구성 탭을 클릭하고 커넥터를 구성합니다. 인증 유형에 따라 다른 필드가 필요합니다. OData 커넥터 구성 항목의 인증 유형에 대한 구성 단계를 따릅니다. 자세한 내용은 도움말 센터의 통합 커넥터 생성 항목을 참조하십시오.
3. OData 커넥터 연결 설정에서 양식 /<도메인 버전>/<도메인 식별자>서비스 루트 상대 URL을 추가합니다. 여기서 /<도메인 버전>은 선택 사항입니다. 이 경우에는 도메인 식별자가 ProdMgmt입니다. 상황에 따라 도메인에 대해 올바른 도메인 식별자를 사용하십시오. 자세한 내용은 Windchill REST Services 도움말 센터의 OData Services as Domains 항목을 참조하십시오.
4. 통합 커넥터를 저장합니다.
5. 원하는 경우 연결의 유효성을 검사하여 연결 성공 여부를 확인할 수 있습니다. 서비스 탭을 클릭하고 ValidateConnection 서비스를 실행합니다. 출력에는 연결 상태를 나타내는 상태메시지가 표시됩니다.
4. API 맵과 라우팅 서비스 작성 
백엔드 시스템의 속성을 데이터 셰이프의 속성에 연결하는 API 맵을 작성합니다. 그런 다음, 매쉬업이 데이터를 사용할 수 있도록 라우팅 서비스를 작성합니다.
1. 이전 단계에서 생성한 통합 커넥터에서 API 맵 탭으로 이동합니다. 추가를 클릭합니다.
2. 매핑 ID 아래에 API 맵 이름을 입력합니다. 이 필드에 임의의 값을 사용할 수 있습니다.
3. 데이터 셰이프 선택에서 이전에 생성한 데이터 셰이프를 선택합니다. 데이터 셰이프 테이블에 이전에 작성된 필드 정의가 채워집니다.
4. 끝점에서 끝점을 선택합니다. 여기서 getParts (/ProdMgmt/Parts GET)를 선택하겠습니다. 끝점을 선택하면 API 테이블에 속성이 채워집니다.
5. API 테이블에서 속성을 해당 필드 정의로 끌어서 놓습니다. 여기에서는 최상위 속성인 번호, 이름, 버전ID를 사용하겠습니다.
* 
찾고 있는 속성을 더 손쉽게 찾을 수 있도록 API 테이블의 요소를 축소합니다.
6. 이 매핑에서 서비스 만들기 확인란을 선택하여 라우팅 서비스를 작성합니다. 여기서 서비스의 기본 이름은 getParts입니다. 원하는 경우 서비스의 이름을 변경할 수 있습니다.
7. 완료를 클릭한 다음 통합 커넥터를 저장합니다.
5. 매쉬업 작성 
작업에 대한 사용자 인터페이스 역할을 하는 매쉬업을 작성합니다.
위에서 언급한 것처럼, 매쉬업을 빌드하려면 위젯 또는 ThingWorx Navigate 구성 요소를 사용하거나 이 둘을 조합해서 사용하는 방법이 있습니다.
매쉬업을 빌드하는 방법에 대한 자세한 내용은 도움말 센터의 Mashup Builder 단원을 참조하십시오.
위젯을 사용하는 방법에 대한 자세한 내용은 도움말 센터의 위젯 단원을 참조하십시오.
ThingWorx Navigate 구성 요소에 대한 자세한 내용은 사용자 지정 작업에서 ThingWorx Navigate 구성 요소 사용 단원을 참조하십시오.
1. 새 매쉬업을 만듭니다. 이름을 입력하고 프로젝트 아래에 이전에 작성한 프로젝트의 이름을 추가합니다.
2. 매쉬업에 태그 TWXNavigate:AppMashup을 추가합니다.
3. 설계 탭을 클릭하고 매쉬업의 레이아웃을 구성합니다. 여기에서는 5개의 컨테이너를 사용하고 있습니다. 4개의 컨테이너를 사용하여 30픽셀 크기의 테두리를 생성했으며 나머지 하나는 중심에 있습니다.
4. 필요한 위젯을 추가합니다. 여기서는 중심 컨테이너에 고급 그리드 위젯을 추가하겠습니다.
5. 데이터 패널에서 을 클릭하여 새 데이터 소스를 추가합니다.
6. 엔티티 유형 아래에서 통합 커넥터를 선택합니다. 엔티티 아래에서 이전에 생성한 통합 커넥터를 선택합니다.
7. 이전에 생성된 라우팅 서비스를 선택합니다. 여기서 서비스 이름은 getParts입니다. 선택한 서비스 테이블에 서비스를 추가하려면 을 클릭하거나 서비스를 끌어서 놓습니다.
8. 로드 시 실행 확인란을 선택하고 완료를 클릭합니다.
9. 데이터 탭에서 getParts를 확장하고 반환된 데이터를 확장합니다. 모든 데이터를 선택하고 이를 고급 그리드 위젯의 Data 속성에 바인딩합니다.
10. 매쉬업을 저장합니다.
11. 매쉬업 보기를 클릭합니다. 사용자 지정 작업이 새 창에서 열립니다.
이제 ThingWorx Navigate 랜딩 페이지에 사용자의 작업을 추가하고 수정을 추가할 수 있습니다. 홈 페이지에 사용자 지정 작업 추가 항목을 참조하십시오.
도움이 되셨나요?