ERP-node/db/migrations/RUN_078_MIGRATION.md

2.6 KiB

078 마이그레이션 실행 가이드

실행할 파일 (순서대로)

  1. 078_create_production_plan_tables.sql - 테이블 생성
  2. 078b_insert_production_plan_sample_data.sql - 샘플 데이터
  3. 078c_insert_production_plan_screen.sql - 화면 정의 및 레이아웃

실행 방법

방법 1: psql 명령어 (터미널)

# 테이블 생성
psql -h localhost -U postgres -d wace -f db/migrations/078_create_production_plan_tables.sql

# 샘플 데이터 입력
psql -h localhost -U postgres -d wace -f db/migrations/078b_insert_production_plan_sample_data.sql

방법 2: DBeaver / pgAdmin에서 실행

  1. DB 연결 후 SQL 에디터 열기
  2. 078_create_production_plan_tables.sql 내용 복사 & 실행
  3. 078b_insert_production_plan_sample_data.sql 내용 복사 & 실행

방법 3: Docker 환경

# Docker 컨테이너 내부에서 실행
docker exec -i <container_name> psql -U postgres -d wace < db/migrations/078_create_production_plan_tables.sql
docker exec -i <container_name> psql -U postgres -d wace < db/migrations/078b_insert_production_plan_sample_data.sql

생성되는 테이블

테이블명 설명
equipment_info 설비 정보 마스터
production_plan_mng 생산계획 관리
production_plan_order_rel 생산계획-수주 연결

생성되는 화면

화면 설명
생산계획관리 (메인) 생산계획 목록 조회/등록/수정/삭제
생산계획 등록/수정 (모달) 생산계획 상세 입력 폼

확인 쿼리

-- 테이블 생성 확인
SELECT table_name FROM information_schema.tables 
WHERE table_schema = 'public' 
AND table_name IN ('equipment_info', 'production_plan_mng', 'production_plan_order_rel');

-- 샘플 데이터 확인
SELECT * FROM equipment_info;
SELECT * FROM production_plan_mng;

-- 화면 생성 확인
SELECT id, screen_name, screen_code, table_name 
FROM screen_definitions 
WHERE screen_code LIKE '%PP%';

-- 레이아웃 확인
SELECT sl.id, sd.screen_name, sl.layout_name
FROM screen_layouts_v2 sl
JOIN screen_definitions sd ON sl.screen_id = sd.id
WHERE sd.screen_code LIKE '%PP%';

메뉴 연결 (수동 작업 필요)

화면 생성 후, 메뉴에 연결하려면 menu_info 테이블에서 해당 메뉴의 screen_id를 업데이트하세요:

-- 예시: 생산관리 > 생산계획관리 메뉴에 연결
UPDATE menu_info 
SET screen_id = (SELECT id FROM screen_definitions WHERE screen_code = 'TOPSEAL_PP_MAIN')
WHERE menu_name = '생산계획관리' AND company_code = 'TOPSEAL';