Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Slate의 Ontology SDK

Slate의 OSDK는 Functions editor에서 온톨로지 객체, 링크, 액션과 함수를 사용하는 생성 라이브러리입니다. Slate 코드는 JavaScript이며 IntelliSense가 자동완성과 자료형 정보를 제공합니다.

Slate의 이 연동은 OSDK version 1의 API를 사용합니다. TypeScript 코드의 자료형 주석은 넣지 않으며 실제 앱에 생성된 OSDK 패널의 import와 메서드 이름을 사용합니다.

온톨로지 선택

  1. Slate 앱의 편집 모드에서 왼쪽 OSDK 아이콘을 선택합니다.
  2. Select Ontology에서 사용할 온톨로지를 고릅니다.
  3. Confirm selection으로 저장합니다.

보이는 온톨로지는 플랫폼 구성과 권한에 따라 다릅니다. 나중에 다른 온톨로지로 바꾸려면 OSDK를 삭제하고 다시 구성해야 합니다.

엔터티 추가

엔터티설정과 조건
Object types / Link typesObject Types의 +로 유형을 검색하여 추가합니다. 연결된 링크 유형은 객체 유형 아래에 표시됩니다. 링크를 추가할 때 필요한 객체 유형도 자동으로 포함합니다.
Action typesAction Types의 +로 필요한 액션을 고릅니다. 액션이 요구하는 객체 유형 의존성도 자동으로 추가합니다. 액션은 온톨로지 데이터를 변경할 수 있습니다.
FunctionsFunctions의 +에서 필요한 함수를 선택합니다. API 이름이 없거나 온톨로지를 편집하는 함수는 선택할 수 없습니다.

생성과 코드 사용

주황색 표시는 아직 반영하지 않은 변경입니다. 선택한 엔터티를 검토하고 Generate OSDK를 누른 뒤 생성 완료를 기다립니다. 생성 태그에는 앱의 OSDK 버전이 표시됩니다.

엔터티를 선택하면 오른쪽에 객체 속성의 API 이름과 자료형, 액션 및 함수의 매개변수와 코드 조각이 나타납니다. 단일 객체 조회, 페이지 조회와 필터 등 실제 구성에 맞게 생성한 코드를 Functions editor에 사용할 수 있습니다. 생성 뒤 앱을 저장하여 구성을 보관합니다.

객체 집합의 링크 탐색

예제 구성에 Dealer 객체 유형, Order 객체 유형과 Dealer의 orders 링크가 있다면 집합의 모든 Dealer에서 연결된 Order로 이동할 수 있습니다. 링크를 먼저 OSDK 구성에 포함하고 Generate OSDK를 실행합니다.

import { client } from "@slate/osdk";

const linkedOrders = await client.ontology.objects.Dealer
  .pivotTo("orders")
  .fetchPage({ pageSize: 30 });
return linkedOrders;

이 코드는 페이지 하나를 요청합니다. 큰 결과는 페이지 조회 계약에 맞춰 이어서 처리합니다.

단일 OSDK 객체의 링크는 객체에서 직접 접근합니다. 다음은 실제 Dealer OSDK 객체를 source 인자로 받는 재사용 함수입니다.

function getLinkedOrders(source) {
  return source.orders.fetchPageWithErrors({ pageSize: 30 });
}

링크 이름과 메서드는 OSDK 패널에서 해당 링크를 선택하여 확인합니다. Object Types에서 관련 링크를 고르는 위치는 패널 오른쪽 아래이며, 다시 생성한 SDK에는 구성된 링크 이름에 맞는 pivotTo가 제공됩니다. 응답은 생성된 메서드의 결과 유형에 맞춰 성공과 오류를 처리합니다.

변경 관리

추가한 엔터티는 생성 전까지 주황색으로 표시합니다. 제거한 엔터티는 취소선과 undo 옵션이 보입니다. Discard changes를 선택하면 마지막으로 생성한 구성으로 돌아갑니다.

온톨로지가 바뀌어 기존 구성을 다시 생성해야 한다면 Generate OSDK 옆 드롭다운의 Regenerate last OSDK를 선택합니다. 같은 메뉴의 View latest generation logs에서 생성 로그를 확인할 수 있습니다.

로딩 오류

OSDK를 읽지 못하면 health check 대화상자에 오류를 표시합니다. Action bar의 문제 아이콘으로 대화상자를 열고 OSDK 탭에서 상세 오류와 안내를 확인합니다. 제공되는 링크로 구성 패널을 열어 수정할 수 있습니다.

가져오기와 복제

앱 전송 방식에 따라 번들 처리가 다릅니다.

  • JSON 가져오기는 OSDK 번들을 자동으로 포함하지 않습니다. 필요하면 Regenerate last OSDK로 다시 생성합니다.
  • File > Save as 복제는 기존 번들을 복사합니다. 복사본을 저장한 뒤 로딩이 실패하면 SDK 재생성 또는 페이지 새로고침 안내가 표시됩니다.

삭제

패널 머리글의 More 메뉴에서 Delete OSDK를 선택하고 확인하면 모든 구성과 생성 코드가 삭제됩니다. 이 동작은 되돌릴 수 없으며 다시 사용하려면 재구성해야 합니다.

처음에는 필요한 객체 유형과 액션만 추가하고 응답의 오류 유형을 처리합니다. 큰 데이터에는 적절한 pageSize의 fetchPage를 사용하며, 생성 패널에서 제공하는 현재 구성의 코드 조각을 기준으로 호출합니다.