Dealer 테이블 명세 및 데이터 카탈로그
미확정 문서 — David 인터뷰 전 상태
TA-Service Log 테이블 명세 및 데이터 카탈로그와 같은 수준의 주의가 필요하다 — 아직 David와 확인 인터뷰를 거치지 않았다. 아래 컬럼 의미는 헤더명·샘플값에서 추론한 것이고, 특히
Confirmed가 무엇을 확인하는 플래그인지(262행 중 261행이false, 단 1건만true— 거의 안 쓰이는 것인지 최근에야 쓰기 시작한 것인지 불명),Terms/Amount(각 262행 중 13·14건만 채워짐 — 드물지만 실사용은 확인됨,Credit만 전 행 공란),DC(할인율)가 Sales Data 테이블 명세 및 KPI 정의의 리베이트 스킴(35%/41%/45%)과 직접 대응하는지는 전부 후보(candidate)일 뿐 확정이 아니다.
1. 배경 — 시트 위치와 구조
Dealer는 Google Sheets “Turbo Air”(Sales Data와 같은 스프레드시트, ID 1VOpjK9aDUuVmwkAouzGu-X_mZvGRlyhKbTDP1D6FU3Q)의 별도 탭이다. 탭 상단에 빈 행 9개가 있고, 실제 헤더는 10번째 행(A10:N10)부터 시작한다 — 그 위 9행에는 아무 값도 없다(용도 불명, 과거 삭제된 안내문 흔적일 가능성). 데이터는 11번째 행부터 총 262행(2026-09-10 기준), 회사명 공란인 완전 빈 행은 없다.
Update (2026-09-10) — 딜러 정보 탭 신설을 위한 최초 카탈로그 작성
scripts/pull-dealer-data.mjs가 매시간 이 탭을 재조회한다. 행 번호를 하드코딩하지 않고 “ID”와 “Company”를 모두 포함한 첫 행을 헤더로 탐지하도록 만들어, 시트에 행이 추가/삭제돼도 깨지지 않는다(Sales Data 테이블 명세 및 KPI 정의의 헤더명 기반 조회와 같은 안전장치).
2. 컬럼 명세 (A10:N10, 14열)
| # | 컬럼 | 추정 타입 | 샘플 | 설명(추정) | 확신도 |
|---|---|---|---|---|---|
| 1 | ID | 텍스트/숫자 혼재 | "1", "41f66f15" | 딜러 고유 ID. 형식이 두 가지 혼재 — 초기 등록분은 순번 숫자(1, 2, 3…), 최근 등록분(2026년 이후로 추정)은 8자리 16진수 문자열. 일부 행은 완전 공란(§3 데이터 품질 참고) | 중 |
| 2 | Confirmed | boolean | 262행 중 261행 false, 1행만 true(Chef’s Depot Pty Ltd — Closed 상태) | 무엇을 “확인”하는 플래그인지 불명. 유일한 true 사례가 Closed 딜러라 “활성 확인”류 의미는 아닌 듯하고, 우연한 단발성 체크일 가능성도 있음 | 낮음(미확인) |
| 3 | Status | enum | Active, Closed | 딜러 활성 상태. Closed는 거래 종료(예: “Now CaterLink”처럼 Notes에 인수·개명 이력이 남기도 함) | 높음 |
| 4 | Branch | enum | NSW, VIC, (공란) | 담당 지점 — Sales Data 테이블 명세 및 KPI 정의의 Branch(NSW/VIC/QLD)와 같은 축이나, QLD 값이 관찰되지 않음(TA QLD는 별도 관계사라 이 마스터에 없을 가능성) | 중 |
| 5 | State | enum | NSW,VIC,ACT,AU,WA,SA,QLD,TAS,(공란) | 딜러의 실제 소재 주(state) — Branch(담당 지점)와는 다른 축, Sales Data의 State 컬럼과 같은 개념으로 추정 | 중 |
| 6 | Company | 텍스트 | Genuine Hospitality Solutions GHS | 딜러명 — Sales Data/Service Log와의 조인 키. 표기 불일치가 있어 대소문자 무시 매칭이 필요(§3) | 높음(단, 표기 정규화 필요) |
| 7 | ShortName | 텍스트 | 거의 전부 공란 | 축약명 용도로 추정되나 실사용 거의 없음 | 낮음 |
| 8 | Type | enum | (공란), Dealer, Technician, Online, Franchise | 거래처 유형. Technician은 설치기사 개인 계정으로 보이며 일반 딜러와 성격이 다름 — 딜러 정보 탭에서 이 값을 필터링 힌트로 노출할 가치 있음 | 중 |
| 9 | Registered | 날짜(시리얼) | 44927 → 2023-01-01 | 등록일. 시리얼 넘버를 Sales Data 테이블 명세 및 KPI 정의와 동일한 변환식(1899-12-30 기준일)으로 ISO 변환 | 중(등록의 정확한 정의 — 최초 계정 생성일인지 최초 거래일인지 — 미확인) |
| 10 | DC | 숫자(비율) | 0, 0.3, 0.35 | 할인율(Discount) — 0.3=30%, 0.35=35% 형태로 관찰됨. Sales Data 테이블 명세 및 KPI 정의의 리베이트 스킴(35%/41%/45%)과 값이 겹치지만, 이 필드가 그 스킴 배정과 직접 연동되는지는 미확인 — 리베이트 탭은 현재 스킴을 세션마다 사람이 수동 선택하는 구조라, 이 컬럼이 “권장 스킴”인지 단순 “판매가 할인율”인지 David 확인 필요 | 낮음(미확인 — 최우선 인터뷰 대상) |
| 11 | Credit | 숫자 | 262행 전부 공란(실측, 유일하게 완전 미사용 필드) | 신용 한도로 추정되나 전혀 쓰인 적 없음 | 낮음 |
| 12 | Terms | 텍스트 | 262행 중 13건만 채움 — "EOM +14 Days", "EOM +30 Days", "EOM +7 Days" | 결제 조건(End Of Month + N일). 채워진 13건이 대부분 매출 상위 딜러(CATERLINK·HWD·GHS·QCC·CaterBuild·Alpha Catering 등, 2026-09-08-Q-딜러별-매출-수주건수-하락-통합분석의 주요 딜러와 겹침)라 “주요 계정만 결제조건을 별도 협의해 기록”하는 용도로 추정 | 중(값 형식은 명확하나 왜 13건만 채워졌는지는 미확인) |
| 13 | Amount | 숫자 | 262행 중 14건만 채움 — 10,20,30,50,80,220 | Terms가 채워진 딜러와 거의 겹침(같은 상위 딜러군) — 신용/여신 한도 금액(단위 미상, $1,000 단위 추정)일 가능성. Turbo Air Queensland TA QLD가 최고값 220인 것도 이 해석과 부합(관계사라 한도가 큼) | 낮음~중(추정 근거는 있으나 단위·정확한 정의 미확인) |
| 14 | Notes | 텍스트(자유서식) | admin@tempservices.com.au, "Now CaterLink", "New Dealer" | 자유 메모 — 이메일 연락처, 상호명 변경/인수 이력, 신규등록 표시 등이 섞여 있음. 구조화되지 않은 자유 텍스트라 자동 파싱 불가, 딜러 정보 탭에서는 그대로 노출만 함 | 높음(단, 파싱 불가) |
3. 데이터 품질 — Company 조인 검증 (2026-09-10 실측)
딜러 정보 탭이 Sales Data/Service Log와 Company 이름으로 조인하므로, 세 테이블 간 실제 일치율을 직접 대조했다(스크립트 비교, 추정 아님).
| 대조 | 결과 |
|---|---|
| Sales Data 고유 Company 수 | 333개 |
| Dealer 마스터 고유 Company 수 | 262개 |
| 정확히 일치(대소문자까지 동일) | 245개 |
| 대소문자 무시 일치 | 255개 (+10개 추가 회수) |
| Sales Data에는 있으나 Dealer 마스터에 전혀 없음 | 68개(예: W&D Refrigeration, CIRRUS DINING PTY LTD, Sweets N More) |
| Service Log 고유 company 수 | 209개 |
| Service Log ↔ Dealer 마스터 대소문자무시 일치 | 133개 / 209개 (64%) |
Contradiction — Dealer 마스터가 전체 딜러 목록이 아님
Dealer 마스터(262개)는 실제 Sales Data에서 거래 이력이 있는 딜러(333개)보다 적다 — 68개 딜러는 실거래가 있는데도 마스터에 등록되지 않았다. 즉 이 시트는 “전체 딜러 디렉토리”가 아니라 “그동안 등록 작업이 된 딜러만” 담은 부분집합으로 보인다. 딜러 정보 탭의 딜러 선택기는 이 문제를 반영해 Dealer 마스터 ∪ Sales Data Company의 합집합을 후보로 쓰고, 마스터에 없는 딜러는 “마스터 데이터 미등록” 안내만 표시한다.
표기 불일치 예시 (대소문자·띄어쓰기 차이, 10건 중 일부):
- Dealer
"IMF FITOUTS"vs Sales Data"IMF Fitouts" - Dealer
"Industry Kitchens"vs Sales Data"industry kitchens" - Dealer
"Aonemaster"vs Sales Data"AONEMASTER"
4. 딜러 정보 탭에서의 활용
Google Sheets 연동 실시간 대시보드 구축 가이드 (TAB Dashboard 사례)에 정리된 “딜러 정보” 탭이 이 테이블을 기본 정보 카드의 유일한 소스로 쓴다:
- 딜러 선택기: Dealer 마스터 + Sales Data Company 합집합(대소문자 무시 정규화, 표기는 마스터 쪽을 우선 채택)
- 기본 정보 카드: Status·Type·Branch/State·Registered·DC·Notes 그대로 노출
- 매출/수주/서비스 이력은 Sales Data 테이블 명세 및 KPI 정의·TA-Service Log 테이블 명세 및 데이터 카탈로그 규칙을 그대로 따르고(별도 재정의 없음), 캐시백/리베이트 상세 계산은 기존 “캐시백”/“리베이트” 탭으로 딥링크해 로직 중복을 피한다.
5. 아직 확인 안 된 것 (David 인터뷰 대기)
Confirmed필드가 실제로 쓰이는 플래그인지, 쓰인다면 무엇을 확인하는지 (262건 중 1건만true)DC(할인율)가 리베이트 스킴(35/41/45%) 배정과 연동되는지, 아니면 별개의 단순 판매 할인율인지Amount(14건만 채움, 상위 딜러 위주)의 정확한 단위·정의 — 여신 한도 추정이 맞는지, 왜 소수 딜러만 기록됐는지Terms가 채워진 딜러(13곳)가 왜 그 딜러들만인지 — 신규 대형 계약 시에만 기록하는 관행인지Registered의 정확한 의미(계정 등록일 vs 최초 거래일)- Dealer 마스터에 없는 68개 실거래 딜러를 마스터에 추가할 계획이 있는지(데이터 완전성 개선 여지)