[]
        
(Showing Draft Content)

스타일 & UI 메타데이터

스타일 및 UI 메타데이터는 열이 View 구현에서 사용될 때 어떻게 표시되는지를 정의합니다.

이 설정들은:

  • 저장된 데이터를 수정하지 않습니다.

  • 레코드 구조에 영향을 주지 않습니다.

  • 구문 분석 또는 인덱싱에 참여하지 않습니다.

이들은 테이블 View에서 열 데이터가 어떻게 렌더링되거나 상호 작용해야 하는지를 설명합니다.

비록 테이블 스키마에 정의되지만, 이러한 속성은 View(예: 테이블 시트 View)가 열 정의를 사용할 때만 적용됩니다.

caption

열의 머리글 텍스트를 정의합니다.

columns: {
    name: {
        caption: "Employee Name"
    }
}

지정하지 않으면 열 이름이 기본 캡션으로 사용됩니다.

caption은 표시 방식에만 영향을 줍니다.

width

View에서 렌더링될 때 열의 기본 너비를 정의합니다.

columns: {
    name: {
        width: 150
    }
}

너비는 다음 중 하나가 될 수 있습니다.

  • 숫자 픽셀 값

  • 별표 크기 조정 문자열(View 지원 여부에 따라 다름)

너비는 저장된 데이터에 영향을 주지 않습니다.

레이아웃 동작에 대한 자세한 내용은 View 열 구성을 참고하세요.

style

열의 기본 셀 스타일을 정의합니다.

columns: {
    price: {
        style: { formatter: "$#,##0.00" }
    }
}

스타일 옵션에는 다음이 포함될 수 있습니다.

  • 서식 지정자

  • 맞춤

  • 글꼴

  • 배경색

  • 셀 형식(View 지원 여부에 따라 다름)

스타일 구성은 View 계층에서 사용됩니다.

headerStyle

머리글 셀 스타일을 정의합니다.

columns: {
    orderId: {
        headerStyle: {
            backColor: "#3390FF",
            font: "bold 14px Calibri"
        }
    }
}

머리글 스타일은 열 머리글에만 적용되며 View 구현에 따라 달라집니다.

conditionalFormats

열에 적용할 조건부 서식 규칙을 정의합니다.

columns: {
    price: {
        conditionalFormats: [rule]
    }
}

조건부 서식은:

  • 셀 값을 기준으로 스타일을 적용합니다.

  • View 계층에서 계산됩니다.

  • 기본 데이터를 변경하지 않습니다.

validator

열에 적용할 유효성 검사 규칙을 정의합니다.

columns: {
    quantity: {
        validator: {
            type: "number",
            comparisonOperator: "greaterThan",
            value1: 0
        }
    }
}

유효성 검사기는:

  • 입력 제약 조건을 적용합니다.

  • 오류 메시지를 제공할 수 있습니다.

  • 편집 작업 중 계산됩니다.

유효성 검사 로직은 입력이 거부되지 않는 한 저장된 값을 변경하지 않습니다.

고급 유효성 검사 동작에 대한 자세한 내용은 데이터 유효성 검사를 참고하세요.

allowSort, allowFilterByValue, allowFilterByList

View에서 정렬 및 필터링 기능의 표시 여부와 사용 가능 여부를 제어합니다.

columns: {
    orderId: {
        allowSort: false,
        allowFilterByValue: false,
        allowFilterByList: false
    }
}

이 설정들은:

  • View 상호 작용 동작에 영향을 줍니다.

  • 데이터 매니저의 실제 쿼리 로직에는 영향을 주지 않습니다.

headerFit

특정 View 구현에서 열 머리글의 레이아웃 방식을 정의합니다.

columns: {
    orderId: {
        headerFit: "stack"
    }
}

지원되는 모드는 View 구현에 따라 다릅니다.

headerFit은 레이아웃에만 영향을 줍니다.

outlineColumn

계층 구조 표시를 지원하는 View에서 해당 열을 개요 열로 지정합니다.

columns: {
    name: {
        outlineColumn: true
    }
}

이 속성은 스키마 수준에서 계층 구조 데이터가 구성된 경우에 의미가 있습니다.

계층 구조 모델링은 계층 구조 데이터에서 별도로 설명합니다.

스키마 수준 구성과 View 수준 구성

스타일 및 UI 메타데이터는 다음 두 위치에서 정의할 수 있습니다.

  • 테이블 스키마 수준

  • View 열 수준

둘 다 존재하는 경우:

  • View 수준 구성이 스키마 수준 기본값을 재정의합니다.

  • 스키마 수준 설정은 기본 메타데이터 역할을 합니다.

이러한 분리는 다음을 보장합니다.

  • 데이터 모델링이 View와 독립적으로 유지됨

  • View마다 서로 다른 표시 로직 사용 가능

  • 스키마 정의의 재사용성 유지

책임 범위

스타일 및 UI 메타데이터는:

  • 기본 표시 동작을 설명합니다.

  • View에서 사용됩니다.

  • 데이터를 변경하지 않습니다.

  • 구문 분석 또는 관계에 영향을 주지 않습니다.

렌더링 세부 정보 및 UI 관련 동작에 대해서는 다음을 참고하세요.

이를 통해 문서 체계 내에서 데이터 모델링과 표시 로직을 명확하게 분리할 수 있습니다.