본문으로 건너뛰기

생산/외주

이 기능은 무엇인가요?​

생산 지시, 자재 투입, 생산 실적, 외주가공 관리 등 제조 실행과 외주 관리 업무를 처리합니다.

생산 계획부터 실적 관리까지 전 과정을 추적하고, 외주 가공 포함 정확한 원가를 파악합니다.

업무 프로세스 개요​

포함된 화면​

화면용도주 사용자
생산오더 관리목록생산관리팀, 외주관리팀, 자재팀
외주발주 관리전표/문서생산관리팀, 외주관리팀, 자재팀
외주입고 관리전표/문서생산관리팀, 외주관리팀, 자재팀
공정별 실적확인 목록목록생산관리팀, 외주관리팀, 자재팀
MRP 전개결과목록생산관리팀, 외주관리팀, 자재팀
외주정산 관리전표/문서생산관리팀, 외주관리팀, 자재팀
계획오더 관리목록생산관리팀, 외주관리팀, 자재팀
자재투입 관리목록생산관리팀, 외주관리팀, 자재팀
외주사급자재 출고항목목록생산관리팀, 외주관리팀, 자재팀
생산오더공정 관리목록생산관리팀, 외주관리팀, 자재팀

관련 솔루션 연계​

솔루션연계 내용데이터 흐름
MES실시간 생산실행생산오더 → MES 작업지시
구매관리외주 발주외주오더 → 구매발주
품질관리검사 연계생산실적 → 품질검사
원가관리제조원가자재투입+노무 → 원가계산

시작하기​

  1. 처음 사용하시면 → 생산오더 관리에서 시작하세요
  2. 각 화면의 상세 사용법은 개별 화면 문서를 참고하세요
  3. 궁금한 점은 FAQ를 확인하거나 시스템 관리자에게 문의하세요

중요: 외주발주 상태 플로우​

외주발주는 아래 상태 전이 규칙에 따라 관리됩니다. 허용되지 않은 전이는 시스템에서 차단됩니다.

상태별 설명​

상태설명다음 가능 상태
작성외주발주 초기 작성 (기본값)승인, 취소
승인승인 완료발주
발주발주 확정사급출고, 외주입고(직접입고)
사급출고사급 자재 출고 완료외주입고
외주입고외주 가공품 입고 완료완료
완료처리 완료 (최종 상태)-
취소발주 취소 (최종 상태)-
직접입고 (사급출고 생략)

사급 자재가 없는 가공 외주 (단순 가공만 의뢰하는 경우)는 발주 후 바로 외주입고로 전환할 수 있습니다. 사급 자재를 지급하는 외주는 반드시 사급출고 단계를 거쳐야 합니다.


업무 자동화​

이 메뉴에서 데이터를 입력하거나 상태를 변경하면, 시스템이 관련 데이터를 자동으로 처리합니다. 별도의 수작업 없이 아래 규칙에 따라 데이터가 자동으로 계산·생성·검증됩니다.

안내

화면에서 데이터를 저장하면 시스템이 관련된 다른 화면의 데이터를 자동으로 갱신합니다. 예를 들어 생산실적을 등록하면 작업지시의 양품/불량 수량이 자동으로 집계되고, 자재 출고 시 재고가 자동으로 차감됩니다. 이 규칙은 데이터 정합성을 보장하며, 수작업 오류를 방지합니다.

이 메뉴의 업무 자동화 흐름

수주 생산의뢰 → 생산오더 자동 생성 → 자재투입 시 재고 차감 → 생산실적 등록 → 작업지시 수량 집계 → 작업지시 완료 → 생산오더 실적 갱신 / 외주: 사급자재 출고 → 외주입고 → 재고 증가 + 발주 상태 갱신 → 외주정산 → 매입채무 생성

🔢 자동 계산​

항목을 추가/수정/삭제하면 합계가 자동 계산됩니다.

생산실적 등록 → 작업지시 양품·불량 수량 자동 집계​

생산실적을 등록·수정·삭제하면 작업지시의 양품수량과 불량수량이 자동으로 재계산됩니다.

  • 언제: 생산실적을 등록하거나 수정할 때
  • 결과: 작업지시 화면의 양품수량·불량수량이 실적 합계로 즉시 갱신됩니다

공정별 실적확인 → 생산오더 진행률 자동 갱신​

공정별 실적확인을 입력하면 생산오더의 실적수량, 스크랩수량, 확인상태가 자동으로 업데이트됩니다.

  • 언제: 공정별 실적확인 화면에서 실적을 등록하거나 수정할 때
  • 결과: 생산오더 화면의 실적수량·스크랩수량이 갱신되고, 확인상태가 '미확인/부분확인/전체확인'으로 자동 변경됩니다

➡️ 자동 처리​

상태를 변경하면 관련 데이터가 자동으로 생성/갱신됩니다.

작업지시 완료 → 생산오더 실적수량 자동 갱신​

작업지시를 '완료' 처리하면 생산오더의 실적수량이 자동으로 업데이트됩니다.

  • 언제: 작업지시 상태를 '완료'로 변경할 때
  • 결과: 생산오더 화면의 실적수량이 완료된 작업지시의 양품수량 합계로 갱신되고, 생산오더 상태가 자동 변경됩니다

재작업 완료 → 작업지시 양품수량 자동 갱신​

재작업지시를 '완료' 처리하면 원래 작업지시의 양품수량에 재작업 결과가 자동 반영됩니다.

  • 언제: 재작업지시 상태를 '완료'로 변경할 때
  • 결과: 작업지시 화면의 양품수량이 재작업 결과를 반영하여 자동 변경됩니다

자재투입 출고완료 → 재고 자동 차감​

자재투입 화면에서 출고를 완료하면 해당 자재의 재고가 자동으로 감소합니다.

  • 언제: 자재투입 화면에서 상태를 '출고완료'로 변경할 때
  • 결과: [재고관리 > 재고 현황] 화면에서 해당 자재의 재고수량이 실투입수량만큼 줄어듭니다

외주입고 → 재고 자동 증가​

외주입고를 등록하면 해당 품목의 재고가 자동으로 증가합니다.

  • 언제: 외주입고 화면에서 입고를 등록할 때
  • 결과: [재고관리 > 재고 현황] 화면에서 해당 품목의 재고수량이 입고수량만큼 증가합니다

외주입고 → 외주발주 상태 자동 갱신​

외주입고를 등록하면 외주발주의 상태가 자동으로 업데이트됩니다.

  • 언제: 외주입고 화면에서 입고를 등록할 때
  • 결과: 외주발주 화면의 상태가 입고 상황에 맞게 자동 변경됩니다

외주입고 검수 합격 → 외주발주항목 입고수량 자동 갱신​

외주입고 검수를 합격 처리하면 외주발주항목의 입고수량이 자동으로 업데이트됩니다.

  • 언제: 외주입고 화면에서 상태를 '합격' 또는 '부분합격'으로 변경할 때
  • 결과: 외주발주항목의 입고수량이 합격수량 합계로 자동 갱신됩니다

외주발주 전체 입고완료 → 외주발주 상태 자동 변경​

외주발주의 모든 항목이 입고완료되면 외주발주 상태가 자동으로 변경됩니다.

  • 언제: 외주발주항목이 전체 입고완료되었을 때
  • 결과: 외주발주 화면의 상태가 입고 진행 상황에 따라 '부분입고' 또는 '입고완료'로 자동 변경됩니다

사급자재 출고 → 재고 자동 차감​

사급자재 출고항목을 등록하면 해당 자재의 재고가 자동으로 감소합니다.

  • 언제: 사급자재 출고항목 화면에서 출고를 등록할 때
  • 결과: [재고관리 > 재고 현황] 화면에서 해당 자재의 재고수량이 출고수량만큼 줄어듭니다

사급자재 출고 → 외주발주 상태 자동 변경​

사급자재를 출고하면 외주발주 상태가 '사급출고'로 자동 변경됩니다.

  • 언제: 사급자재 출고항목 화면에서 출고를 등록할 때
  • 결과: 외주발주 화면의 상태가 '사급출고'로 자동 업데이트됩니다

외주정산 확정 → 생산오더 외주원가 자동 반영​

외주정산을 확정하면 생산오더에 외주원가가 자동으로 반영됩니다.

  • 언제: 외주정산 화면에서 상태를 '확정'으로 변경할 때
  • 결과: 생산오더 화면에서 외주원가가 자동으로 갱신됩니다

외주정산 확정 → 제조원가 재계산 예약​

외주정산을 확정하면 해당 제품의 원가재계산이 자동으로 예약됩니다.

  • 언제: 외주정산 화면에서 상태를 '확정'으로 변경할 때
  • 결과: 다음 원가 산출 시 외주비가 반영되도록 원가재계산 플래그가 자동 활성화됩니다

외주정산 전표발행 → 매입채무 자동 생성​

외주정산에서 전표를 발행하면 매입채무가 자동으로 생성됩니다.

  • 언제: 외주정산 화면에서 상태를 '전표발행'으로 변경할 때
  • 결과: [재무/회계 > 매입채무 관리] 화면에 새로운 채무가 자동으로 생성됩니다

외주정산 전표발행 → 정산 상태 자동 완료​

외주정산에서 **전표를 발행하면 해당 정산건의 상태가 자동으로 '완료'**로 변경됩니다.

  • 언제: 외주정산 화면에서 상태를 '전표발행'으로 변경할 때
  • 결과: 해당 정산건의 상태가 즉시 '완료'로 변경됩니다

수주 생산의뢰 → 생산오더 자동 생성​

영업관리에서 수주를 '생산의뢰'하면 생산오더가 자동으로 생성됩니다.

  • 수주 항목의 품목·수량·납기일이 생산오더에 자동 복사됩니다
  • 생성된 생산오더는 [생산오더 관리] 화면에서 확인할 수 있습니다
  • 생산오더 상태는 '계획'으로 시작됩니다

참고: 데이터 구조​

📋 기술 참고 정보 (개발자/관리자용)

관련 워크플로우​

  • 생산 프로세스 시작 (startEvent): -
  • 생산계획 수립 (humanTask): 생산관리자가 생산계획을 수립합니다
  • 작업지시 발행 (humanTask): 생산관리자가 작업지시를 발행합니다
  • 실적 보고 (humanTask): 작업자가 생산 실적을 보고합니다
  • 시정조치 (humanTask): 불량 원인 분석 및 시정조치를 수행합니다
  • MRP 전개결과 저장 (autoTask): MRP 전개 결과를 mrp_results 테이블에 자동 저장
  • 계획오더 자동생성 (autoTask): MRP 전개 결과 기반 계획오더를 자동 생성
  • 자재투입 기록 (autoTask): 자재 출고 시 production_material_issues에 투입 내역을 자동 기록
  • 공정별 실적확인 입력 (humanTask): 작업자가 공정별 실적(수량/시간/불량)을 확인 입력합니다
  • MRP 전환 프로세스 시작 (startEvent): -

데이터 관계도​

테이블 요약​

생산오더 (production_orders)​

컬럼명한글명타입설명
wo_number생산오더번호VARCHAR *필수 *고유-
item_id품목IDUUID (FK) *필수-
order_qty지시수량DECIMAL *필수-
start_date시작예정일DATE *필수-
due_date완료예정일DATE *필수-
status상태ENUM(계획, 확정, 작업중, 완료, 취소) *필수-
priority우선순위ENUM(긴급, 높음, 보통, 낮음) *필수-
responsible_id생산책임자UUID (시스템참조)-
operator_id작업자UUID (시스템참조)-
bom_idBOM_IDUUID (FK)-
routing_id공정경로IDUUID (FK)-
lot_numberLOT번호VARCHAR-
remark비고TEXT-
outsourcing_order_id외주발주IDUUID (FK)outsourcing_orders 참조
sales_order_id수주IDUUID (FK)수주→생산오더 직접 연결
sales_order_item_id수주항목IDUUID (FK)수주항목 단위로 생산오더 연결
actual_qty실적수량DECIMAL (계산)MES work_orders 양품수량 합계 (양방향 연계)
scrap_qty스크랩수량DECIMAL-
actual_start_date실제시작일DATE-
actual_end_date실제완료일DATE-
remaining_qty잔량DECIMAL (계산)order_qty - actual_qty
completion_rate완성률(%)DECIMAL (계산)CASE WHEN order_qty=0 THEN 0 ELSE actual_qty / order_qty * 100 END
mes_wo_countMES작업지시수INT (계산)MES work_orders 건수 (양방향 연계)
oee_avg평균OEE(%)DECIMALMES oee_records 평균 (양방향 연계)
actual_labor_hours실제공수(시간)DECIMALMES labor_time_tracking 합계
actual_material_cost실제자재비DECIMALMES material_consumption 원가 합계
confirmation_status확인상태ENUM(unconfirmed, partially_confirmed, fully_confirmed)MES 생산확인 상태 — 실적→ERP 전기 여부
confirmed_at확인일시TIMESTAMP마지막 MES 확인(posting) 일시
confirmed_by확인자UUID (시스템참조)최종 확인 실행자

외주발주 (outsourcing_orders)​

컬럼명한글명타입설명
oso_number외주발주번호VARCHAR *필수 *고유-
partner_id거래처IDUUID (FK) *필수-
item_id품목IDUUID (FK) *필수완제품/반제품
order_date발주일DATE *필수-
due_date납기일DATE *필수-
order_qty발주수량DECIMAL *필수-
unit_price단가DECIMAL-
amount금액DECIMAL (계산)-
status상태ENUM(작성, 승인, 발주, 사급출고, 외주입고, 완료, 취소) *필수-
bom_idBOM_IDUUID (FK)-
routing_id공정경로IDUUID (FK)-
supply_type사급유형ENUM(사급, 무상사급, 유상사급)-
orderer_id발주담당자UUID (시스템참조)-
approved_by승인자UUID (시스템참조)-
remark비고TEXT-
oso_attachment외주발주서 첨부FILE-

외주입고 (outsourcing_receipts)​

컬럼명한글명타입설명
osr_number외주입고번호VARCHAR *필수 *고유-
oso_id외주발주IDUUID (FK) *필수outsourcing_orders 참조
receipt_date입고일DATE *필수-
received_qty입고수량DECIMAL *필수-
accepted_qty합격수량DECIMAL-
rejected_qty불합격수량DECIMAL-
warehouse_id입고창고IDUUID (FK)warehouses 참조
inspector_id검수자IDUUID (시스템참조)-
status상태ENUM(검수중, 합격, 부분합격, 불합격) *필수-
remark비고TEXT-

외주정산 (outsourcing_settlements)​

컬럼명한글명타입설명
settlement_code정산번호VARCHAR *필수 *고유-
oso_id외주발주UUID (FK) *필수-
partner_id거래처UUID (FK) *필수-
settlement_date정산일DATE *필수-
settlement_type정산유형ENUM(일반정산, 부분정산, 최종정산, 추가정산) *필수-
total_processing_cost총가공비DECIMAL (계산)-
total_supply_material_cost총사급자재비DECIMAL (계산)-
supply_deduction사급공제액DECIMAL (계산)-
settlement_amount정산금액DECIMAL (계산)-
vat_amount부가세DECIMAL (계산)-
grand_total최종지급액DECIMAL (계산)-
payment_due_date지급예정일DATE-
payment_terms지급조건ENUM(현금, 30일, 60일, 90일, 어음)-
currency통화VARCHAR *필수-
cost_center_id원가센터UUID (FK)-
journal_entry_id분개전표UUID (FK)-
tax_invoice_id세금계산서UUID (FK)-
status상태ENUM(작성, 검토, 승인, 확정, 전표발행, 완료, 취소) *필수-
reviewer_id검토자UUID (시스템참조)-
approved_by승인자UUID (시스템참조)-
approved_date승인일DATE-
remark비고TEXT-

계획오더 (planned_orders)​

컬럼명한글명타입설명
planned_order_number계획오더번호VARCHAR *필수 *고유-
order_type오더유형ENUM(계획생산오더, 계획구매오더, 계획외주오더) *필수-
item_id품목IDUUID (FK) *필수-
required_quantity소요수량DECIMAL *필수-
unit단위VARCHAR *필수-
required_date소요일DATE *필수-
planned_start_date계획시작일DATE-
planned_end_date계획종료일DATE-
source_type발생원ENUM(MRP자동, 수동생성) *필수-
mrp_run_idMRP실행IDUUID (FK)mrp_runs 참조
parent_planned_order_id상위계획오더IDUUID (FK)planned_orders 참조 (상위 소요)
conversion_status전환상태ENUM(미전환, 생산오더전환, 구매요청전환, 외주발주전환) *필수-
converted_document_id전환문서IDUUID전환된 생산오더/구매요청/외주발주 ID
priority우선순위ENUM(긴급, 높음, 보통, 낮음) *필수-
status상태ENUM(계획, 확정, 전환완료, 취소) *필수-
created_by등록자IDUUID (시스템참조)-
planner_id계획담당자IDUUID (시스템참조)-
remark비고TEXT-

생산자재투입 (production_material_issues)​

컬럼명한글명타입설명
issue_number투입번호VARCHAR *필수 *고유-
production_order_id생산오더IDUUID (FK) *필수-
item_id투입자재IDUUID (FK) *필수-
warehouse_id출고창고IDUUID (FK) *필수-
bom_idBOM_IDUUID (FK)bom 참조 (BOM 소요 근거)
planned_quantityBOM소요량DECIMAL *필수BOM 기준 소요수량
actual_quantity실투입수량DECIMAL *필수-
unit단위VARCHAR *필수-
issue_date투입일DATE *필수-
issue_type투입유형ENUM(정규투입, 추가투입, 반납) *필수-
lot_numberLOT번호VARCHAR-
cost_center_id원가센터IDUUID (FK)cost_centers 참조
unit_cost단위원가DECIMAL-
total_cost투입원가DECIMAL (계산)-
status상태ENUM(계획, 출고완료, 부분출고, 반납) *필수-
issued_by출고자IDUUID (시스템참조)-
remarks비고TEXT-

공정별 실적확인 (production_confirmations)​

컬럼명한글명타입설명
confirmation_number확인번호VARCHAR *필수 *고유-
production_order_id생산오더IDUUID (FK) *필수-
routing_id공정경로IDUUID (FK)routings 참조 (공정경로)
operation_sequence공정순서INT *필수해당 공정의 순서번호
work_center_id작업장IDUUID (FK)work_centers 참조 (작업장)
item_id생산품목IDUUID (FK)items 참조 (생산 품목)
planned_quantity계획수량DECIMAL *필수-
confirmed_quantity확인수량DECIMAL *필수-
scrap_quantity스크랩수량DECIMAL-
rework_quantity재작업수량DECIMAL-
defect_quantity불량수량DECIMAL-
defect_type불량유형ENUM(치수불량, 외관불량, 기능불량, 재질불량, 기타)-
unit단위VARCHAR *필수-
planned_start_date계획시작일DATE-
planned_end_date계획종료일DATE-
actual_start_date실제시작일DATE-
actual_end_date실제종료일DATE-
setup_time_minutes셋업시간(분)DECIMAL-
machine_time_minutes기계시간(분)DECIMAL-
labor_time_minutes노무시간(분)DECIMAL-
shift근무교대ENUM(주간, 야간, 교대) *필수-
confirmation_type확인유형ENUM(정상확인, 부분확인, 역확인, 최종확인) *필수-
status상태ENUM(입력대기, 확인완료, 취소) *필수-
lot_numberLOT번호VARCHAR-
operator_id작업자IDUUID (시스템참조)-
confirmed_by확인자IDUUID (시스템참조)-
remarks비고TEXT-

사급자재 (outsourcing_supply_items)​

컬럼명한글명타입설명
oso_id외주발주IDUUID (FK) *필수outsourcing_orders 참조
item_id품목IDUUID (FK) *필수원자재/부자재
required_qty소요수량DECIMAL *필수-
issued_qty출고수량DECIMAL-
unit단위VARCHAR *필수-
warehouse_id출고창고IDUUID (FK)warehouses 참조
lot_numberLOT번호VARCHAR-
issue_date출고일DATE-

생산오더공정 (production_order_operations)​

컬럼명한글명타입설명
production_order_id생산오더UUID (FK) *필수-
operation_seq공정순번DECIMAL *필수-
operation_name공정명VARCHAR *필수-
work_center_id작업장UUID (FK) *필수-
routing_id공정경로UUID (FK)-
setup_time_min셋업시간(분)DECIMAL-
run_time_min가공시간(분)DECIMAL-
planned_qty계획수량DECIMAL *필수-
confirmed_qty확인수량DECIMAL-
scrap_qty불량수량DECIMAL-
status상태ENUM(미릴리즈, 릴리즈, 진행, 확인, 완료) *필수-
planned_start계획시작일DATE-
planned_end계획종료일DATE-
actual_start실제시작일DATE-
actual_end실제종료일DATE-
operator_id작업자UUID (시스템참조)-
notes비고TEXT-