컬럼 정의 — 고급
기본 컬럼 문법은 컬럼 정의 (기본)을 참조하세요.
FK 참조 (fkRef)
{
"name": "item_id",
"displayName": "품목",
"type": "UUID",
"constraints": ["FK", "NOT_NULL"],
"fkRef": {
"targetTableRef": "hcm_items",
"displayColumn": "item_name"
}
}
| 필드 | 타입 | 설명 |
|---|---|---|
targetTableRef | string | 참조 대상 테이블의 refId |
displayColumn | string | 대상 테이블에서 실제 존재하는 표시 컬럼명 |
FK 규칙 (중요!)
targetTableRef는 같은 JSON 파일 내 테이블의refId만 참조 가능displayColumn은 대상 테이블의columns중 실제 존재하는name이어야 함- 기존 솔루션 테이블(541개) 참조 금지 — 고객 접두사 내에서만 참조
type은 반드시"UUID"- 자기 참조(self-reference)도 가능 (예:
hcm_item_categories→hcm_item_categories)
SYSTEM_REF (시스템 테이블 참조)
{
"name": "manager_id",
"displayName": "담당자",
"type": "UUID",
"constraints": ["SYSTEM_REF"],
"systemRef": "users"
}
| systemRef 값 | 대상 | 설명 |
|---|---|---|
"users" | 시스템 사용자 테이블 | 담당자, 작성자, 승인자 등 |
"departments" | 시스템 부서 테이블 | 소속부서, 관리부서 등 |
- 이 두 테이블만 SYSTEM_REF로 참조 가능
- FK와 달리
fkRef불필요 —systemRef만 지정
FILE 타입
{
"name": "drawing_file",
"displayName": "도면",
"type": "FILE",
"constraints": [],
"fileMeta": {
"uploadEnabled": true,
"allowedCategories": ["image", "document"],
"maxFileSize": 10,
"maxFiles": 5,
"previewEnabled": true,
"versioningEnabled": false
}
}
| fileMeta 필드 | 타입 | 설명 |
|---|---|---|
uploadEnabled | boolean | 업로드 허용 여부 |
allowedCategories | string[] | 허용 파일 유형: image, document, excel, archive, general |
maxFileSize | number | 최대 파일 크기 (MB) |
maxFiles | number | 최대 파일 수 |
previewEnabled | boolean | 미리보기 허용 |
versioningEnabled | boolean | 파일 버전 관리 |