[]
        
(Showing Draft Content)

열 정의

테이블 스키마는 원시 데이터가 데이터 매니저 내부에서 어떻게 해석되고 관리되는지를 정의합니다.

스키마 내에서 열은 핵심 모델링 단위입니다.

각 열은 레코드의 필드가 테이블 내부에서 어떻게 동작하는지를 설명합니다.

열은 UI 요소가 아닙니다.

열은 식별자, 형식, 동작 및 표시 메타데이터를 결정하는 데이터 모델링 정의입니다.

레코드에서 열로

데이터가 테이블에 로드되면 데이터 원본의 각 객체는 레코드(행)가 됩니다.

const table = dataManager.addTable("orders", {
    data: [
        { id: 1, price: 10, quantity: 2 }
    ],
    schema: {
        columns: {
            id: { dataType: "number", isPrimaryKey: true },
            price: { dataType: "number" },
            quantity: { dataType: "number" },
            total: {
                dataType: "formula",
                value: "=[@price] * [@quantity]"
            }
        }
    }
});

이 예제에서:

  • id는 레코드 식별자를 정의합니다.

  • pricequantity는 형식이 지정된 필드를 정의합니다.

  • total은 다른 필드에서 파생된 계산 열입니다.

열 정의가 없으면 필드는 기본 동작을 사용하여 해석됩니다.

열을 명시적으로 정의하면 데이터가 구조화되고 관리되는 방식을 제어할 수 있습니다.

열 정의로 제어할 수 있는 항목

열 정의는 다음을 지정할 수 있습니다.

  • 필드가 원시 데이터에 매핑되는 방식

  • 값이 구문 분석되고 형식화되는 방식

  • 레코드를 고유하게 식별하는지 여부

  • 계산 열인지 또는 이벤트 기반 열인지 여부

  • 유효성 검사 및 인덱싱 동작

  • 기본 표시 메타데이터

책임을 명확하게 유지하기 위해 열 구성은 다음 범주로 구성됩니다.

핵심 구조 설정

식별자 및 구조 매핑을 정의합니다.

예:

  • 열 이름 및 데이터 매핑

  • dataType

  • isPrimaryKey

  • 수식 기반 값 정의

이러한 설정은 레코드가 구조적으로 어떻게 해석되는지를 결정합니다.

데이터 동작 설정

구문 분석 이후 열 값이 어떻게 동작하는지를 제어합니다.

예:

  • 필수 및 읽기 전용 규칙

  • 기본값

  • 구문 분석 패턴

  • 인덱싱

  • Null 및 빈 값에 대한 표시 대체값

이러한 설정은 유효성 검사, 정규화 및 성능에 영향을 줍니다.

고급 데이터 설정

동적 및 관계형 동작을 활성화합니다.

예:

  • 수식 열

  • 트리거 수식

  • 조회 정의

  • 관계 인식 기능

이러한 설정은 계산 기능과 제어된 값 도메인을 제공합니다.

스타일 및 UI 메타데이터

View에서 렌더링될 때의 기본 표시 동작을 정의합니다.

예:

  • 캡션 및 너비

  • 셀 스타일 및 머리글 스타일

  • 조건부 서식

  • 유효성 검사 규칙

  • 상호 작용 컨트롤

이러한 설정은 저장된 데이터를 수정하지 않습니다.

대신 View가 사용할 수 있는 기본 메타데이터를 제공합니다.

책임 범위

열 정의는 테이블 스키마에 속합니다.

열 정의는:

  • 데이터 매니저 내부에서 데이터가 동작하는 방식을 모델링합니다.

  • 특정 UI 구현과 독립적으로 유지됩니다.

View는 열 메타데이터를 사용하여 데이터를 렌더링합니다.

View 수준 구성은 스키마를 변경하지 않고도 표시 관련 설정을 재정의할 수 있습니다.

이러한 분리를 통해 문서 체계와 제품 아키텍처 내에서 데이터 모델링과 표시가 서로 분리된 상태로 유지됩니다.