Monitor ERP 연동 가이드 SkyPlanner APS를 활용한 생산 스케줄링
이 Monitor ERP 연동 가이드는 파트너와 IT 팀을 대상으로 Monitor ERP(Monitor G5)를 SkyPlanner APS에 연결하는 방법을 안내합니다. SkyPlanner는 Monitor ERP API를 통해 Monitor ERP와 양방향으로 연동됩니다.
- 제조 오더, 공정, 작업 센터, 공정 순서, 자재 데이터를 가져옵니다.
- 공정별 계획 시작일, 계획 완료일, 작업 센터를 Monitor에 다시 기록합니다.
- 보고된 시간과 수량을 반영해 두 시스템의 데이터를 일치시킵니다.
- SkyPlanner 웹훅은 일정이 변경되는 즉시 변경 사항을 전송합니다.
SkyPlanner 팀은 온보딩 과정에서 고객의 Monitor G5 환경에 맞게 연동을 구성하고, 가동 후에도 지원합니다. 이 가이드는 연동 작업에 참여하거나, 문서화된 SkyPlanner REST API(API 참조 문서)를 활용해 직접 개발하려는 파트너와 개발자를 위한 자료입니다.
Monitor ERP API
Monitor G5에서 문서로 제공하는 연동 인터페이스는 Monitor ERP API v1입니다. CQRS와 REST를 결합한 방식으로, HTTPS를 통해 JSON을 주고받습니다. (Monitor ERP API)
- 쿼리는 GET으로 데이터를 읽습니다. OData 방식의 옵션인
$filter,$select,$expand,$orderby,$top,$skip을 사용할 수 있습니다. - 명령은 POST로 데이터를 씁니다.
Manufacturing/ManufacturingOrderOperations/Update가 그 예입니다. - Batch는
POST /api/v1/Batch를 통해 여러 명령을 하나의 트랜잭션으로 실행합니다. 전부 성공하거나 전부 취소됩니다. 경로 끝에/Simulate또는/Validate를 붙이면 배치를 테스트한 뒤 롤백할 수 있습니다. 전체 일정을 안전하게 기록하는 방법입니다. (Batch)
기본 URL은 https://{host}:8001/{languageCode}/{companyNumber}/api/v1/입니다. 회사 번호는 데이터베이스 번호와 회사 ID를 조합한 값으로, 예를 들면 004.1입니다.
라이선스에 대해 Monitor는 다음과 같이 안내합니다. “It is free to query and extract information from the API for all our customers. However, in order to use commands and write data to the ERP system, you need to purchase Monitor ERP API.”(모든 고객은 API로 정보를 무료로 조회하고 추출할 수 있습니다. 단, 명령을 사용해 ERP 시스템에 데이터를 쓰려면 Monitor ERP API를 구매해야 합니다.) 프로젝트 초기부터 쓰기 라이선스를 계획에 포함하세요. (api.monitor.se)
인증
- 세션 로그인. Monitor 사용자의 사용자 이름과 비밀번호로
POST /{languageCode}/{companyNumber}/login을 호출하면 이후 호출에 사용할X-Monitor-SessionId헤더가 반환됩니다. MFA 토큰 방식도 사용할 수 있습니다. - OIDC. Monitor 25.8부터는 Authorization Code와 PKCE를 사용하는 Microsoft Entra ID 로그인도 지원합니다. (인증)
- API 전용 사용자. 연동 전용 사용자 한 명을 생성하세요. 이 사용자에게도 Show manufacturing orders, Replan existing manufacturing order 등 Monitor의 자체 권한이 적용됩니다.
SkyPlanner의 REST API는 API 토큰(SkyPlanner Settings > API)으로 인증하며, Swagger/OpenAPI 문서가 제공됩니다. 연동 튜토리얼에서 첫 API 호출 방법을 단계별로 안내합니다.
변경 감지와 폴링
Monitor ERP API 참조 문서에는 웹훅이나 이벤트 구독이 명시되어 있지 않습니다. 변경 사항은 폴링으로 감지합니다.
Common/EntityChangeLogs(2.33부터 제공)는ChangeType(Update, Create, Delete),EntityTypeId,EntityId,ModifiedTimestamp를 반환합니다. 몇 분 간격으로 폴링하고 변경된 레코드만 가져오세요. (EntityChangeLog)- 제조 오더 조회 시 미완료 오더만 필터링하고,
$top과$skip으로 페이지를 나누어 가져오세요.
SkyPlanner는 상태나 일정이 변경되면 웹훅을 전송하므로, Monitor에 다시 기록하는 작업은 이벤트 기반으로 이루어집니다.
데이터 매핑
| Monitor ERP 객체(API) | SkyPlanner 객체 | 방향 | 주기 |
|---|---|---|---|
품목(Inventory/Parts) | 제품 및 자재 | Monitor → SkyPlanner | 최초 적재 후 변경 로그 기준 |
BOM 및 공정 순서: Manufacturing/MaterialRows, Manufacturing/OperationRows | 제품 구조, 준비 시간과 단위당 시간이 포함된 공정 단계 | Monitor → SkyPlanner | 최초 적재 후 변경 시 |
Manufacturing/AlternativeOperationRows | 공정 단계별 대체 작업장 | Monitor → SkyPlanner | 최초 적재 후 변경 시 |
작업 센터(Manufacturing/WorkCenters): Type, TimePrecision, BasicTime, NumberOfPlanningUnits, AvailabilityFactor | 작업장, 작업장 그룹, 효율 | Monitor → SkyPlanner | 최초 적재 후에는 드물게 |
Manufacturing/ProductionCalendarExceptions, TimeRecording/Schedules | 교대 근무 및 부재 | Monitor → SkyPlanner | 매일 또는 SkyPlanner에서 교대 근무 자체 관리 |
Manufacturing/ManufacturingOrders, ManufacturingOrderNodes | 납기일과 상태가 포함된 오더 | Monitor → SkyPlanner | 몇 분 간격으로 변경 로그 폴링 |
Manufacturing/ManufacturingOrderOperations: Priority, WorkCenterId, PlannedQuantity, RestQuantity, PlannedSetupTime, PlannedUnitTime | 소요 시간과 잔여 수량이 포함된 작업 | Monitor → SkyPlanner | 몇 분 간격으로 변경 로그 폴링 |
Manufacturing/ManufacturingOrderMaterials | 오더별 자재 소요량 | Monitor → SkyPlanner | 변경 로그 폴링 |
Inventory/PartLocations (Balance), Purchase/PurchaseOrderRows (DeliveryDate, RestQuantity) | 재고, 납품일에 입고될 자재 | Monitor → SkyPlanner | 매시간 또는 스케줄링 실행 시 폴링 |
ManufacturingOrderOperations/Update: PlannedStartDate, PlannedFinishDate (24.5+) | 공정별 계획 시작일 및 완료일 | SkyPlanner → Monitor | 일정 변경 시 SkyPlanner 웹훅으로 전송 |
ManufacturingOrderOperations/SetWorkCenter | 엔진이 선택한 작업장 | SkyPlanner → Monitor | 일정 변경 시 |
ReportManufacturingOrderOperation / ManufacturingOrderOperationReportings | 작업 시간 기록 및 수량 | 범위 산정 시 선택한 단일 채널 | 실적 확정 시마다 또는 교대 근무별 |
| Monitor에 없음 | 준비 시간 매트릭스, 수량이 제한된 자원으로 관리하는 공구, 여러 작업자가 투입되는 작업 | SkyPlanner에서 관리 | 온보딩 중 설정 |
연동 방식
1. 기준정보 최초 적재. 작업 센터, 공정 행, 대체 공정 행, 자재 행, 품목, 근무 일정을 읽어옵니다. 각 작업 센터를 어떤 SkyPlanner 작업장에 매핑할지 신중하게 정하세요. Pool 작업 센터는 작업장 그룹이 되고, 여기에 속한 작업 센터는 엔진이 선택할 수 있는 개별 작업장이 됩니다.
2. 오더 동기화. 미완료 제조 오더와 해당 노드, 공정, 자재를 읽어오고, 재고와 미완료 구매 오더도 가져옵니다. SkyPlanner는 발주한 자재를 구매 오더의 납품일에 사용 가능한 것으로 처리하며, 구매 오더가 Delivered로 표시되면 재고를 갱신합니다. 최초 적재 후에는 Common/EntityChangeLogs를 기준으로 변경분을 반영합니다.
3. 일정 쓰기. 엔진이 배치하거나 이동한 모든 공정에 대해 SkyPlanner는 PlannedStartDate와 PlannedFinishDate를 담아 ManufacturingOrderOperations/Update를 전송합니다. 엔진이 풀 내의 다른 설비로 공정을 옮겼다면 SetWorkCenter를 먼저 실행합니다. 한 오더의 명령은 하나의 Batch로 묶어 전송하므로 Monitor는 전체를 반영하거나 전혀 반영하지 않습니다. 테스트 중에는 /Validate로 배치를 실행하세요.
Monitor 24.5 이전 버전에서는 Update로 계획 날짜를 기록할 수 없습니다. 대신 ManufacturingOrders/ReplanOperation(2.40부터 제공)에 StartDate와 FinishDate를 지정하고, 운영 규칙에 맞게 RestrictToOrderBounds를 설정하세요.
4. 생산 현장 실적 확정. 실적 보고 채널은 하나만 사용하세요.
- Monitor에서 계속 보고. 작업자는 지금처럼 Recording terminal 또는 설비 연동을 통해 실적을 보고합니다. SkyPlanner는
ManufacturingOrderOperationReportings를 읽어 진행 상황을 반영하고 일정을 다시 수립합니다. - SkyPlanner로 보고 채널 전환. 작업자가 Mobile Confirmations 또는 Production Timer로 작업을 기록하면, SkyPlanner가 Monitor에
ReportManufacturingOrderOperation을 전송합니다.
양쪽에서 모두 보고하면 시간과 수량이 중복 집계됩니다.
5. 데이터 관리 주체와 충돌 처리 규칙. 가동 전에 다음 내용을 문서로 정리하세요.
| 데이터 | 관리 주체 |
|---|---|
| 품목, BOM 및 공정 순서, 수량, 오더 상태 | Monitor |
| 공정 순서, 계획 시작일 및 완료일, 풀 내 작업 센터 | SkyPlanner |
| 준비 시간 매트릭스, 공구, 작업자 수, 대체 자원 | SkyPlanner |
| 교대 근무와 부재 | 범위 산정 시 정한 하나의 시스템 |
| 공정 실적 보고 | 범위 산정 시 정한 하나의 채널 |
충돌은 주로 계획 담당자가 우선순위 계획을 계속 수정할 때 발생합니다. Rescheduling according to New finish를 실행하거나 Priority planning에서 행을 드래그하면 SkyPlanner가 기록한 날짜가 덮어써집니다. SkyPlanner가 작업 순서를 관리하기 시작하면 Priority planning은 조회용으로 사용합니다. Autopilot을 사용하면 생산 상황이 바뀔 때 SkyPlanner가 일정을 자동으로 재조정합니다.
일반적인 프로젝트 단계
구축은 보통 온보딩 시작 후 몇 주 안에 완료됩니다. 그 전에 30일 무료 체험에서 자체 데이터로 사용해 볼 수 있습니다. Monitor에서 미완료 제조 오더의 공정과 작업 센터를 Excel로 내보낸 다음 SkyPlanner로 가져와, 연동 작업에 착수하기 전에 일정을 검증하세요.
프로젝트는 다음 단계로 진행됩니다.
- 범위 산정. 매핑 표, 데이터 관리 주체별 규칙, 폴링 주기, 실적 보고 채널, Monitor 버전을 확정합니다.
- 접근 권한 준비. API 사용자를 생성하고 Monitor ERP API 쓰기 라이선스를 구매한 뒤 포트 8001의 네트워크 접근을 허용합니다.
- 초기 데이터 적재. 품목, 작업 센터, 공정 행, 대체 자원, 자재, 일정을 가져옵니다.
- 변경 로그를 기반으로 오더와 구매 오더를 동기화합니다.
- SkyPlanner에서 제약 조건 설정. 준비 시간 매트릭스, 공구, 작업자 수, 대체 설비 또는 인력을 설정합니다.
- 일정을 배치 단위로 다시 기록하고
/Validate로 테스트합니다. - 병행 테스트. SkyPlanner와 우선순위 계획을 나란히 운영하며 날짜를 비교하고 기준정보를 수정합니다.
- 정식 가동. 데이터가 일치하면 일정 쓰기 기능을 활성화합니다.
Monitor ERP 연동 시 고려할 사항
- 가용률. Monitor는 총생산능력에 가용률을 적용해 순생산능력을 계산합니다. 새 작업 센터의 기본 가용률은 80 %입니다. SkyPlanner의 효율 값에 반영하거나 교대 근무 시간을 줄이는 방식 중 하나만 적용하세요. 두 방식을 함께 적용하면 안 됩니다.
- 시간 정밀도. Day planning을 사용하는 작업 센터는 교대 근무 시간 없이 일별 기본 시간으로 생산능력을 관리합니다. 작업이 근무 시간 안에 배정되도록 생산 일정의 실제 교대 근무를 SkyPlanner에 매핑하세요.
- 대기 시간과 중첩률. 공정 행에는 대기 시간과 중첩률(%)이 포함됩니다. 범위 산정 단계에서 각각을 SkyPlanner에 어떻게 매핑할지 정해야 합니다. 그렇지 않으면 정식 가동 후 리드 타임이 달라집니다.
- 풀. Pool 유형 작업 센터의 계획은 Priority planning이 아닌 Pool planning에서 수립합니다. 풀 행뿐 아니라 풀에 포함된 작업 센터도 읽어 오세요.
- 버전 요건. Update로 계획 날짜를 기록하려면 24.5가 필요합니다. API의 작업 센터 생산능력 필드에는 24.3이, OIDC에는 25.8이 필요합니다. 범위 산정 전에 빌드를 확인하세요.
- 네트워크와 인증서. 온프레미스 Monitor는 자체 서명 인증서로 포트 8001에서 API를 제공합니다. SkyPlanner는 클라우드에서 실행되므로 방화벽 규칙이나 릴레이를 마련하고 해당 인증서를 명시적으로 신뢰하도록 설정하세요.
- 라이선스. 데이터를 쓰는 각 외부 애플리케이션에는 API 라이선스가 부여된 별도 사용자가 필요합니다. 모든 시스템에는 읽기 전용 API 사용자 한 명이 기본 제공됩니다.
Monitor ERP 연동 구성과 지원은 누가 담당하나요?
연동 작업에는 귀사의 작업 센터, 공정 행, 오더 흐름에 맞춘 매핑이 포함됩니다. 여기에 Monitor에서 관리하지 않는 준비 시간 매트릭스, 공구, 작업자 수, 대체 자원 등의 제약 조건도 설정합니다.
- SkyPlanner 팀이 온보딩 중에 연동을 구성하고 정식 가동 후에도 지원합니다. 지원 범위는 SkyPlanner 측 기능과 합의된 Monitor ERP API 호출입니다. 공장마다 Monitor G5를 운영하는 방식이 다르므로, 그에 대한 실무 지식을 이 과정에 반영합니다.
- 거래 중인 Monitor 파트너도 참여할 수 있습니다. 파트너는 귀사의 설정, 버전, 권한을 알고 있어 API 사용자, 라이선스, 네트워크 접근을 준비할 수 있습니다. SkyPlanner는 REST API, Swagger/OpenAPI 문서, 웹훅을 제공합니다.
- 사내 개발자도 연동을 개발할 수 있습니다. 문서화된 동일한 REST API에 API 토큰으로 접근하면 됩니다. API 토큰만 있으면 시작할 수 있으며, 필요할 때 SkyPlanner 팀이 지원합니다. 공개 문서는 SkyPlanner 문서에서 확인할 수 있습니다.
연결이 완료되면 Arcturus 엔진이 Monitor의 실시간 오더를 바탕으로 일정을 수립하고, 계획 날짜를 제조 오더의 각 공정에 기록합니다. SkyPlanner는 작업장 5개를 포함해 월 199 €부터 시작하며 매월 청구됩니다. 연동 비용은 귀사의 공정과 요구사항에 맞춰 요금제와 함께 사전에 견적을 드리므로, 시작 전에 전체 비용을 확인할 수 있습니다. 요금을 확인하고, Monitor ERP 생산 스케줄링에서 실제 설비와 인력의 생산능력을 반영하는 방식과 Monitor 자체 계획 기능을 비교해 보세요. 개요는 Monitor ERP 페이지에서, 다른 ERP는 ERP 연동 안내에서 확인할 수 있습니다.
제조업 고객의 SkyPlanner 사용 후기
2시간매주 절약
“SkyPlanner 덕분에 Excel 스프레드시트로 생산 계획을 세우던 방식에서 실시간 생산 최적화로 전환했습니다.”
Kalle Kalliomäki, 공급망 전문가
UTU · 배전반 및 개폐장치
생산 계획 업무에서 매주 2시간을 절약하고, 새 작업 대기열을 몇 초 만에 생산 라인에 전달합니다.
+90%생산 효율 향상
“생산 효율이 90% 높아졌습니다.”
Abdul Rucyinga, IT 책임자
Laboratory & Allied · 의약품 제조
생산 효율이 90% 높아졌으며, 모든 작업장에 걸쳐 석 달치 최적화 계획을 수립하는 데 30분도 걸리지 않습니다.
1,000s작업 오더 일정 자동 수립
“생산을 관리하는 방식이 달라졌고, 생산능력에 대한 이해도 완전히 다른 수준에 이르렀습니다.”
Hannu Ryynänen, CEO
Mamec · 산업용 믹서, 펌프 및 첨단 위탁 제조
수천 건의 작업 오더 일정을 자동으로 수립하고, 조직 전체가 생산 현황을 실시간으로 확인합니다.
6개월앞의 여유 생산능력을 영업팀에서 확인
“SkyPlanner는 모든 생산 계획의 기반을 마련하고 신뢰성을 확보해 줍니다.”
Anu Järvinen, 생산 관리자
Fredman Operations · 식품용 포장지
영업팀은 여섯 달 앞의 여유 생산능력을 확인하며, 한 시간 이상 걸리던 일정 변경 요청에도 몇 초 만에 답변합니다.
자주 묻는 질문
Monitor ERP에 제조 오더용 API가 있나요?
네. Monitor ERP API는 Manufacturing/ManufacturingOrders, ManufacturingOrderNodes, ManufacturingOrderOperations, ManufacturingOrderMaterials를 조회 쿼리로 제공합니다. ManufacturingOrderOperations/Update, ReplanOperation 등의 명령으로 계획 날짜를 다시 기록할 수 있습니다.
API로 Monitor에 데이터를 쓰려면 별도 라이선스가 필요한가요?
네. 모든 Monitor 고객은 API를 통한 데이터 읽기를 무료로 사용할 수 있습니다. 데이터를 쓰는 명령에는 Monitor에서 판매하는 Monitor ERP API가 필요합니다. 거래 중인 Monitor 파트너나 Monitor 영업팀에서 견적을 받을 수 있습니다.
Monitor ERP API는 웹훅을 지원하나요?
문서에 명시된 웹훅은 없습니다. 연동 시스템은 몇 분마다 Common/EntityChangeLogs를 폴링하여 변경된 레코드만 가져옵니다. 반대 방향으로는 SkyPlanner 자체 웹훅이 일정 변경을 발생 즉시 전송합니다.
Monitor는 어떤 버전이 필요한가요?
ManufacturingOrderOperations/Update로 계획 시작일과 완료일을 기록하려면 Monitor 24.5 이상이 필요합니다. 이전 G5 빌드는 2.40부터 ReplanOperation을 사용합니다. 범위 산정 단계에서 귀사의 빌드에 맞는 방식을 확인합니다.
Monitor ERP 연동은 누가 구축하나요?
SkyPlanner 팀이 온보딩 중에 귀사의 Monitor G5 환경에 맞춰 양방향 연동을 구성하고 정식 가동 후에도 지원합니다. 거래 중인 Monitor 파트너나 사내 개발자도 문서화된 SkyPlanner REST API를 활용해 개발할 수 있으며, API 토큰만 있으면 시작할 수 있습니다.