비즈니스 리포트 양식 구성 TODO
최초 작성: 2026-03-09
목적: ERP 업무 단계별 필요 리포트 양식 정의 및 구현 추적
연결 시스템: 리포트 디자이너 (/admin/screenMng/reportList/designer/:reportId) + report_menu_mapping 메뉴 연결
개요
리포트는 업무 플로우의 특정 단계가 아니라, 각 단계에서 생성된 데이터를 문서로 출력하는 횡단 기능이다.
리포트 디자이너에서 양식을 설계하고, report_menu_mapping으로 해당 업무 메뉴에 연결하면, 사용자가 업무 화면에서 v2-report-viewer를 통해 리포트를 조회/인쇄/PDF 다운로드할 수 있다.
업무 화면 (메뉴) → v2-report-viewer → report_menu_mapping → report_master → 리포트 렌더링 → PDF/인쇄
구현 전제 조건
| 조건 |
상태 |
비고 |
| 리포트 디자이너 (Phase 1~6) |
✅ 완료 |
양식 설계 가능 |
| v2-report-viewer 컴포넌트 |
✅ 완료 |
화면에 배치 가능 |
| report_menu_mapping 테이블 |
✅ 완료 |
메뉴 연결 가능 |
| PDF 렌더링/다운로드 |
✅ 완료 |
미리보기 + PDF 출력 |
| 비주얼 쿼리 빌더 (Phase 6) |
✅ 완료 |
데이터 소스 연결 가능 |
| 카드 컴포넌트 고도화 (Phase 7) |
🔄 진행 중 |
카드형 리포트 양식에 필요 |
단계별 리포트 양식 TODO
1. 견적관리
| 항목 |
내용 |
| 리포트명 |
견적서 |
| 용도 |
고객에게 견적서 발송 (PDF 출력/이메일 첨부) |
| 데이터 소스 |
quote_header + quote_items |
| 연결 메뉴 |
견적관리 |
| 양식 구성 |
회사 로고, 견적번호, 견적일, 유효기간, 거래처 정보, 품목 테이블 (품목코드/품명/규격/수량/단가/금액), 합계, 비고 |
| 선행 조건 |
❌ quote_header, quote_items 테이블 미생성 → 견적관리 화면 구현 후 작업 |
| 상태 |
⬜ 대기 |
2. 수주관리
| 항목 |
내용 |
| 리포트명 |
수주 확인서 |
| 용도 |
수주 내역 확인/인쇄 (고객 또는 내부 확인용) |
| 데이터 소스 |
sales_order_mng JOIN customer_mng JOIN item_info |
| 연결 메뉴 |
수주관리 (Screen 156) |
| 양식 구성 |
회사 로고, 수주번호, 수주일, 납기일, 거래처 정보, 품목 테이블 (품목코드/품명/규격/수량/단가/금액), 합계, 담당자 |
| 선행 조건 |
✅ sales_order_mng 테이블 존재 |
| 상태 |
⬜ 대기 |
| 항목 |
내용 |
| 리포트명 |
수주 현황표 |
| 용도 |
기간별/거래처별 수주 현황 집계 |
| 데이터 소스 |
sales_order_mng (GROUP BY 거래처/기간) |
| 연결 메뉴 |
수주관리 (Screen 156) |
| 양식 구성 |
조회 기간, 거래처별 수주 건수/금액 집계 테이블, 합계 |
| 선행 조건 |
✅ sales_order_mng 테이블 존재 |
| 상태 |
⬜ 대기 |
3. 생산계획
| 항목 |
내용 |
| 리포트명 |
생산계획 현황표 |
| 용도 |
계획 대비 실적 비교, 생산 일정 공유 |
| 데이터 소스 |
production_plan_mng JOIN item_info |
| 연결 메뉴 |
생산계획관리 |
| 양식 구성 |
조회 기간, 품목별 계획수량/실적수량/달성률 테이블, 설비별 가동 현황, 합계 |
| 선행 조건 |
✅ production_plan_mng 테이블 존재 (범용 API 사용) |
| 상태 |
⬜ 대기 |
4. 작업지시
| 항목 |
내용 |
| 리포트명 |
작업지시서 |
| 용도 |
현장에 작업지시서 인쇄/배포 |
| 데이터 소스 |
work_order_mng JOIN work_order_material JOIN item_info |
| 연결 메뉴 |
작업지시 |
| 양식 구성 |
작업지시번호, 작업일, 품목 정보, 지시수량, 공정명, 투입 자재 테이블 (자재코드/자재명/소요량/단위), 작업자, 비고 |
| 선행 조건 |
❌ work_order_mng, work_order_material 테이블 미생성 → 작업지시 화면 구현 후 작업 |
| 상태 |
⬜ 대기 |
5. 발주관리
| 항목 |
내용 |
| 리포트명 |
발주서 |
| 용도 |
공급업체에 발주서 발송 (PDF 출력/이메일 첨부) |
| 데이터 소스 |
purchase_order JOIN supplier_mng |
| 연결 메뉴 |
발주관리 (Screen 1244) |
| 양식 구성 |
회사 로고, 발주번호, 발주일, 납기일, 공급업체 정보, 품목 테이블 (품목코드/품명/규격/수량/단가/금액), 합계, 담당자 |
| 선행 조건 |
✅ purchase_order 테이블 존재 |
| 상태 |
⬜ 대기 |
6. 품질검사
| 항목 |
내용 |
| 리포트명 |
검사 성적서 |
| 용도 |
검사 결과 문서화 (고객 제출용/내부 보관용) |
| 데이터 소스 |
inspection JOIN item_info |
| 연결 메뉴 |
검사정보관리 (Screen 1616) |
| 양식 구성 |
검사번호, 검사일, 검사유형(수입/공정/출하), 품목 정보, LOT번호, 검사수량, 합격수량, 불량수량, 판정결과, 검사자, 비고 |
| 선행 조건 |
✅ inspection 테이블 존재 |
| 상태 |
⬜ 대기 |
7. 출고관리
| 항목 |
내용 |
| 리포트명 |
출하명세서 |
| 용도 |
고객에게 출하 내역 전달 |
| 데이터 소스 |
shipment_header JOIN shipment_detail JOIN customer_mng |
| 연결 메뉴 |
출고관리 (Screen 2296) |
| 양식 구성 |
회사 로고, 출하번호, 출하일, 거래처 정보, 품목 테이블 (품목코드/품명/규격/수량/단위), 합계, 비고 |
| 선행 조건 |
✅ shipment_header, shipment_detail 테이블 존재 |
| 상태 |
⬜ 대기 |
| 항목 |
내용 |
| 리포트명 |
거래명세서 |
| 용도 |
거래 내역 증빙 (세금계산서 보조) |
| 데이터 소스 |
shipment_header JOIN shipment_detail JOIN customer_mng |
| 연결 메뉴 |
출고관리 (Screen 2296) |
| 양식 구성 |
공급자/공급받는자 정보, 거래일, 품목 테이블 (품명/규격/수량/단가/공급가액/세액), 합계 |
| 선행 조건 |
✅ shipment_header, shipment_detail 테이블 존재 |
| 상태 |
⬜ 대기 |
8. 세금계산서
| 항목 |
내용 |
| 리포트명 |
세금계산서 출력 |
| 용도 |
법적 증빙 문서 출력 |
| 데이터 소스 |
tax_invoice JOIN tax_invoice_item |
| 연결 메뉴 |
세금계산서 관리 |
| 양식 구성 |
국세청 표준 양식 준수. 공급자/공급받는자 사업자정보, 작성일, 품목 테이블 (월일/품목/규격/수량/단가/공급가액/세액), 합계, 비고 |
| 선행 조건 |
✅ tax_invoice, tax_invoice_item 테이블 존재 + 전용 API 구현 완료 |
| 상태 |
⬜ 대기 |
우선순위 정리
즉시 착수 가능 (테이블 + API 준비 완료)
| 순위 |
리포트 |
연결 메뉴 |
사유 |
| 1 |
수주 확인서 |
수주관리 (Screen 156) |
가장 기본적인 영업 문서, 테이블 존재 |
| 2 |
발주서 |
발주관리 (Screen 1244) |
구매 업무 필수 문서, 테이블 존재 |
| 3 |
검사 성적서 |
검사정보관리 (Screen 1616) |
품질 증빙 문서, 테이블 존재 |
| 4 |
출하명세서 |
출고관리 (Screen 2296) |
출하 업무 필수 문서, 테이블 존재 |
| 5 |
거래명세서 |
출고관리 (Screen 2296) |
거래 증빙, 출하명세서와 데이터 소스 동일 |
| 6 |
수주 현황표 |
수주관리 (Screen 156) |
집계형 리포트, 수주 확인서와 데이터 소스 동일 |
| 7 |
세금계산서 출력 |
세금계산서 관리 |
전용 API 존재, 국세청 양식 준수 필요 |
| 8 |
생산계획 현황표 |
생산계획관리 |
테이블 존재, 집계형 리포트 |
선행 작업 필요 (테이블 미생성)
| 순위 |
리포트 |
선행 작업 |
| 9 |
견적서 |
quote_header, quote_items 테이블 생성 + 견적관리 화면 구현 |
| 10 |
작업지시서 |
work_order_mng, work_order_material 테이블 생성 + 작업지시 화면 구현 |
공통 양식 요소
모든 리포트에 공통으로 포함되는 요소:
| 요소 |
위치 |
내용 |
| 회사 로고 |
좌측 상단 |
company_mng.logo_url |
| 회사 정보 |
우측 상단 |
회사명, 사업자번호, 대표자, 주소, 연락처 |
| 문서 번호 |
헤더 |
각 문서별 자동채번 |
| 발행일 |
헤더 |
출력 시점 또는 문서 작성일 |
| 페이지 번호 |
푸터 |
"N / 전체" 형식 |
| 인쇄일시 |
푸터 |
출력 시점 타임스탬프 |
참고 문서
| 문서 |
경로 |
내용 |
| 리포트 디자이너 계획서 |
reportdocs/PLAN.md |
Phase 1~11 디자이너 기능 고도화 |
| 리포트 API |
backend-node/src/services/reportService.ts |
리포트 CRUD + 메뉴 매핑 |
| 리포트 뷰어 컴포넌트 |
frontend/lib/registry/components/v2-report-viewer/ |
화면 배치용 V2 컴포넌트 |
| 리포트 디자이너 화면 |
frontend/app/(main)/admin/screenMng/reportList/designer/[reportId]/page.tsx |
양식 설계 화면 |
| 리포트 타입 정의 |
frontend/types/report.ts |
리포트 관련 TypeScript 타입 |