모든 ERP와 연결

SkyPlanner의 개방형 REST API는 사내 ERP를 포함한 ERP, MES 및 운영 시스템과 연결됩니다. 직접 구축하거나 저희 팀의 도움을 받을 수 있습니다.

독립 실행도 가능 — ERP 연동은 선택사항이며 필수가 아닙니다.

연동 프로젝트 논의

다음과 같은 ERP 및 MES 시스템과 연결

연동 / ERP / Odoo

SkyPlanner APS 생산 스케줄링을 위한 Odoo 연동 가이드

이 가이드는 Odoo 파트너, 개발자, IT 책임자를 대상으로 Odoo Manufacturing을 SkyPlanner APS에 연결하는 방법을 설명합니다. 도입 효과와 Odoo의 Plan 버튼이 이미 제공하는 기능은 Odoo 생산 스케줄링 페이지와 Odoo는 실제 설비와 인력의 생산능력을 반영한 생산 스케줄링을 지원하나요?를 참고하세요.

작업 자원별로 작업 일정이 배정된 SkyPlanner APS 간트 타임라인과 그 아래의 주문 목록.

제품, 자재 명세서, 공정, 제조 오더, 재고, 원가 계산의 기준 시스템은 계속 Odoo입니다. SkyPlanner는 이 데이터를 바탕으로 Arcturus 엔진을 통해 일정을 수립합니다. Odoo와의 데이터 연동은 양방향으로 이루어집니다.

  • 제조 오더, 작업지시, BoM 공정, 작업 센터, 구매 오더를 가져옵니다.
  • 계획 시작·종료 일시와 작업 센터를 mrp.workorder에 다시 기록합니다.
  • 진행 상황과 기록된 작업 시간을 Odoo의 Time Logs로 돌려보냅니다.
  • SkyPlanner 웹훅이 일정 변경 사항을 발생 즉시 전송합니다.

SkyPlanner 팀은 온보딩 과정에서 Odoo의 표준 외부 API를 사용해 버전, 호스팅 환경, 맞춤 설정에 맞게 연동을 구성하고, 운영 개시 후에도 지원합니다. 이 가이드는 연동에 참여하거나 문서화된 SkyPlanner REST API(API 레퍼런스)를 활용해 직접 개발하려는 파트너와 개발자를 위한 문서입니다. 제품, 자재, 구매 오더 처리 방법은 공개된 SkyPlanner 문서에서 확인할 수 있습니다.

시작 전: Odoo 요금제와 호스팅 확인

먼저 고객이 어떤 Odoo 환경을 사용하는지 확인하세요. 이에 따라 연동 방식이 결정됩니다.

사용 환경외부 API맞춤 모듈가능한 연동 방식
Odoo Online, One App Free 또는 Standard지원 안 함지원 안 함CSV/XLSX 사용 또는 Custom 요금제로 전환
Odoo Online, Custom 요금제지원지원 안 함외부 API
Odoo.sh (Custom 요금제)지원지원외부 API, 필요 시 모듈 추가
온프레미스, Community 또는 Enterprise지원지원외부 API, 필요 시 모듈 추가

Odoo API 문서는 외부 API 접근이 “only available on Custom Odoo pricing plans”(Odoo Custom 요금제에서만 제공)이라고 명시하며, One App Free나 Standard에서는 제공하지 않습니다. 요금제 페이지에서도 Standard는 Odoo Online에서 “without custom modules”(맞춤 모듈 없이) 호스팅된다고 설명합니다. 구축 도중이 아니라 초기 요구사항 파악 단계에서 이를 확인하세요.

Odoo 연동 옵션

연동 방식버전인증스케줄링 연동 시 용도
외부 JSON-2 API: POST /json/2/<model>/<method>19.0에서 신규 도입Authorization: bearer <key>에 API 키 지정, X-Odoo-Database 헤더는 선택 사항신규 구축 시 기본 방식: 조회에는 search_read, 일정 기록에는 write 사용
외부 XML-RPC / JSON-RPC: /xmlrpc/2, /jsonrpc, 서비스 common, object19.0까지 사용 가능, 제거 예정로그인 정보와 비밀번호 또는 API 키로 common.authenticate 인증 후 execute_kw 호출16.0~18.0 사용 고객에게 필요
모듈 내 사용자 정의 컨트롤러모든 버전경로별 설정, 예: auth='bearer'통합 페이로드: 한 번의 호출로 제조 오더(MO)와 해당 작업지시를 함께 전송
자동화 규칙: “Send Webhook Notification”(웹훅 알림 보내기)17.0부터 문서에 명시URL로 아웃바운드 POST 전송제조 오더와 작업지시 생성·수정 시 푸시 전송
레코드 가져오기(CSV, XLSX) 및 내보내기모든 버전사용자 세션체험용 데이터 및 일회성 기준정보 적재

지금부터 제거에 대비하십시오. Odoo는 Odoo 22(2028년 가을)와 Odoo Online 21.1(2027년 겨울)에서 XML-RPC와 JSON-RPC를 제거할 예정입니다. 19.0에서는 JSON-2를 기반으로 구축하고, 이전 버전 데이터베이스용 RPC 경로는 단일 어댑터로 분리하십시오. 그러면 업그레이드 시 한 곳만 변경하면 됩니다. @route(type='jsonrpc')를 사용하는 사용자 정의 컨트롤러는 이번 제거의 영향을 받지 않습니다.

인증

Manufacturing과 Inventory에 대한 읽기 권한, 작업지시에 대한 쓰기 권한을 가진 연동 전용 사용자를 생성하세요. Preferences > Account Security > New API Key에서 해당 사용자의 키를 발급합니다. 19.0에서는 키의 유효기간이 최대 석 달이므로 미들웨어에 키 교체 기능과 인증 실패 알림이 필요합니다. 이 기능이 없으면 키가 만료되어 동기화가 중단돼도 알아차리지 못합니다. SkyPlanner의 REST API는 JWT를 사용하므로 미들웨어가 양쪽 인증 정보를 모두 보관합니다.

JSON-2 호출은 각각 별도의 SQL 트랜잭션에서 실행됩니다. 따라서 여러 호출에 걸친 쓰기 작업에는 원자성이 보장되지 않습니다. 작업지시 단위로 쓰기를 수행하고 각 결과를 기록하세요.

이벤트

Odoo는 자동화 규칙으로 변경 사항을 푸시 전송합니다. mrp.production 또는 mrp.workorder에 규칙을 만들고 트리거를 On create and edit(생성 및 수정 시), 동작을 “Send Webhook Notification”(웹훅 알림 보내기)으로 설정하면 선택한 필드가 POST 요청으로 지정 URL에 전송됩니다. Studio에서 규칙을 만들거나 개발자 모드의 Automation Rules 양식에서 설정하십시오. 이와 함께 search_read를 주기적으로 호출해 write_date를 기준으로 폴링하면 가져오기로 반영된 데이터와 규칙에서 놓친 변경 사항도 확인할 수 있습니다. 반대 방향에서는 SkyPlanner 웹훅이 일정과 상태의 변경 사항을 발생 즉시 푸시 전송합니다.

필드명은 버전마다 다릅니다. 19.0에서는 각 데이터베이스의 /doc에서 모델, 필드, 메서드 목록을 확인할 수 있습니다. 이전 버전에서는 fields_get을 호출하십시오. 기억에 의존하지 말고 이 정보를 기준으로 매핑하십시오.

데이터 매핑: Odoo에서 SkyPlanner로

Odoo 모델SkyPlanner 객체전송 방향전송 주기
product.product / product.template (default_code, uom_id, qty_available)제품 또는 자재Odoo → SkyPlanner초기 적재 후 매일 또는 변경 시
mrp.bom (product_tmpl_id, product_qty, produce_delay), mrp.bom.line (product_id, product_qty, operation_id), mrp.bom.byproduct다단계 제품 구조, 공정별 자재 소요량Odoo → SkyPlanner변경 시
mrp.routing.workcenter (Operations 탭: workcenter_id, sequence, time_mode, time_cycle_manual, blocked_by_operation_ids)순서와 가공 시간을 포함한 공정Odoo → SkyPlanner변경 시
mrp.workcenter (resource_calendar_id, time_efficiency, time_start, time_stop, alternative_workcenter_ids)작업장, 효율, 셋업 및 정리, 대체 작업장Odoo → SkyPlanner, 이후 SkyPlanner에서 관리초기 적재
mrp.workcenter.capacity (capacity)사이클당 생산 수량, 제품별 셋업 및 정리 시간Odoo → SkyPlanner초기 적재
resource.calendar, resource.calendar.attendance, resource.calendar.leaves교대 근무 및 휴가Odoo → SkyPlanner초기 적재, 휴가는 변경 시
mrp.production (product_id, product_qty, date_deadline, priority, state, workorder_ids)납기와 우선순위를 포함한 오더Odoo → SkyPlanner확정 시 웹훅 전송 및 폴링 병행
mrp.workorder (operation_id, workcenter_id, duration_expected, state)작업장에 배정된 작업Odoo → SkyPlanner웹훅 전송 및 폴링 병행
stock.quant, stock.move (구성품 재고 이동)자재 기준 스케줄링에 사용하는 현재고와 자재 소요량Odoo → SkyPlanner정기 실행, 예: 15~60분 간격
purchase.order (partner_id, state), purchase.order.line (product_id, product_qty, date_planned, qty_received)구매 오더 및 입고 예정 자재, 납품 예정일에 사용 가능한 것으로 반영Odoo → SkyPlanner구매 오더 확정·수정 시 웹훅 전송 및 동일한 주기의 폴링 병행
계획 시작·종료 일시 및 작업장mrp.workorder.date_start, date_finished, workcenter_idSkyPlanner → Odoo일정 변경 시 SkyPlanner 웹훅으로 전송
Mobile Confirmations, 작업 시간 기록mrp.workcenter.productivity (Time Logs: workcenter_id, workorder_id, date_start, date_end, loss_id)SkyPlanner → Odoo실적 등록 시마다
완료 수량, 공정 완료작업지시의 qty_producing 설정 후 button_finish 호출, 제조 오더의 button_mark_done 호출SkyPlanner → Odoo, 또는 Odoo Shop Floor에서 처리실적 등록 시마다

연동 패턴

기준정보부터 가져오기.

작업 센터와 캘린더를 먼저 가져온 다음, 제품, BoM, 작업 센터를 참조하는 공정을 가져오세요. 30일 체험에서는 같은 목록을 CSV로 내보내 가져옵니다. Odoo의 가져오기 및 내보내기 도구는 모든 목록 보기에서 사용할 수 있습니다.

오더 동기화.

confirmed 및 progress 상태의 제조 오더를 해당 작업지시와 함께 가져오십시오. 초안 상태의 제조 오더는 제외하거나 잠정 수요로 처리하십시오. 자체 BoM이 있는 하위 조립품은 별도의 하위 제조 오더로 들어올 수 있으며, Odoo는 각 제조 오더의 일정을 개별적으로 계획합니다. 이를 SkyPlanner의 하위 제품에 매핑하면 상위 제품 작업을 시작하기 전에 하위 조립품이 완성되도록 일정을 잡을 수 있습니다.

일정을 Odoo에 다시 반영하기.

일정이 변경되면 SkyPlanner 웹훅이 연동 처리를 실행합니다. 연동 로직이 호출하는 메서드는 ORM write이며, 호출 대상은 변경 대상인 각 mrp.workorder입니다. Odoo 19.0에서는 작업지시마다 다음과 같이 JSON-2 요청을 한 번씩 보냅니다.

“ POST /json/2/mrp.workorder/write Authorization: bearer <api-key> {"ids": [4711], "vals": {"date_start": "2026-11-03 06:00:00", "date_finished": "2026-11-03 09:30:00", "workcenter_id": 7}} “

JSON-2는 ids, context와 함께 모든 메서드 인수를 이름으로 받으므로, write(vals)의 인수는 vals 키로 전달합니다. 16.0~18.0에서는 XML-RPC 또는 JSON-RPC를 통해 execute_kw(db, uid, key, 'mrp.workorder', 'write', [[4711], vals])로 동일한 호출을 실행합니다. 16.0의 키는 date_planned_start와 date_planned_finished입니다. 날짜와 시간은 UTC로 전달합니다. 오류 없이 기록하려면 다음 규칙을 지키십시오.

  • 두 날짜를 동일한 호출로 전송하세요.
  • 엔진이 대체 설비를 선택한 경우에만 workcenter_id를 추가하십시오.
  • 스케줄링 필드만 수정하고, 수량이나 BoM은 절대 수정하지 마세요.

날짜를 기록하면 Odoo의 작업 센터 예약 시간도 이동하므로 Odoo 계획 화면에 SkyPlanner의 계획이 표시됩니다.

생산 현장의 실적을 Odoo로 전송. 작업자는 SkyPlanner Mobile Confirmations에서 작업 실적을 기록합니다. 실적을 등록할 때마다 연동 로직이 호출하는 메서드는 create이며, 대상 모델은 mrp.workcenter.productivity입니다(JSON-2: POST /json/2/mrp.workcenter.productivity/create 요청에 vals_list 포함). 이때 workorder_id, workcenter_id, date_start, date_end와 Productive 유형의 loss_id를 채웁니다. 그러면 Odoo에 노무 시간과 원가가 반영됩니다.

공정이 완료되면 연동 로직이 생산 수량을 설정하고 작업지시에 button_finish를 호출합니다. 마지막 작업지시가 완료되면 제조 오더는 button_mark_done을 실행할 수 있는 상태가 됩니다. 각 실적은 한 번만 전송하며, 해당 Odoo 레코드 ID를 SkyPlanner의 작업 시간 기록과 함께 보관합니다. 따라서 웹훅을 재시도해도 Time Log가 중복 생성되지 않습니다.

Enterprise Shop Floor 앱을 사용하는 공장에서는 흐름이 반대입니다. SkyPlanner가 작업지시 상태와 qty_produced를 읽고, 생산에 변화가 생기면 Autopilot이 자동으로 일정을 다시 수립합니다.

데이터 관리 주체. 운영 개시 전에 다음 규칙을 문서화하세요.

데이터관리 주체
제품, BoM, 공정, 수량, MO 상태Odoo
작업지시 순서, 시작 및 종료 시각, 작업 센터 선택SkyPlanner
작업 전환 시간 매트릭스, 공구 및 작업자 요건, 대체 자원SkyPlanner
작업 센터 캘린더 및 Time Off범위 산정 시 정한 단일 시스템
Time Logs, 재고, 원가 계산Odoo — SkyPlanner의 실적 보고를 받아 반영

SkyPlanner가 일정을 수립하는 MO에 대해서는 계획 담당자가 Odoo의 Plan과 Unplan 버튼을 더 이상 누르지 않아야 합니다. 그렇지 않으면 Odoo가 자체 시간대를 예약해 SkyPlanner의 일정을 덮어씁니다.

일반적인 프로젝트 단계

구축은 일반적으로 온보딩 시작 후 몇 주 안에 완료됩니다. 그에 앞서 30일 무료 체험에서는 고객의 Odoo 데이터를 CSV로 내보내 사용합니다. 프로젝트는 다음 단계로 진행됩니다.

  1. 기준정보 매핑: 버전별 Odoo 모델 및 필드(/doc 또는 fields_get으로 확인), 측정 단위, 캘린더와 Time Off 정보를 관리할 시스템을 정합니다.
  2. 데이터 정비: 작업 센터 캘린더, Setup Time, Cleanup Time을 정비하고 BoM 공정의 소요 시간을 Computed 대신 Fixed로 설정합니다.
  3. 초기 데이터 적재: 제품, 캘린더를 포함한 작업 센터, BoM과 해당 공정을 가져옵니다.
  4. 제조·구매 오더 동기화: 확정 및 진행 중인 제조 오더와 해당 작업지시, 입고 예정일을 포함한 purchase.order 항목을 동기화합니다.
  5. 일정을 Odoo에 반영: mrp.workorder에 일시와 작업 센터를 기록하고, Odoo 측 API 키 교체를 적용합니다.
  6. 생산 현장 실적 보고: Time Logs와 작업지시 완료 정보를 Odoo에 돌려보냅니다.
  7. 현재 계획과 병행해 테스트한 후 운영을 개시합니다.

Odoo 연동 시 주의점

  • 이름이 바뀐 일시 필드. 16.0까지는 date_planned_start와 date_planned_finished에 계획 일시를, date_start/date_finished에 실제 일시를 저장했습니다. 17.0부터는 date_start와 date_finished가 계획 일시입니다. 16.0 프로젝트의 매핑을 그대로 복사하면 17+에서 실제 일시를 계획 일시로 읽는 오류가 드러나지 않은 채 발생합니다.
  • 작업지시의 일시는 자원 예약과 연결됩니다. 19.0에서 date_start와 date_finished는 mrp.workorder의 필드이며, 작업 센터 캘린더의 resource.calendar.leaves 레코드(leave_id)를 기준으로 계산됩니다. 작업지시에 일시를 기록하면 해당 예약이 갱신됩니다. 예약 레코드가 저장된 테이블에 직접 기록하지 마십시오.
  • 이미 시작한 작업지시가 있으면 일정 취소가 차단됩니다. Odoo는 “Some work orders have already started”(일부 작업지시가 이미 시작됨) 상태에서는 제조 오더의 일정 취소를 허용하지 않습니다. 일정을 다시 기록할 때는 progress 또는 done 상태의 작업지시를 제외하고, 아직 시작하지 않은 작업만 옮기십시오.
  • 소요 시간이 계속 바뀝니다. Computed로 설정된 공정은 최근 작업지시(기본값 10개)의 소요 시간에 Time Efficiency를 적용해 시간을 산출합니다. 체험 기간에는 Fixed로 설정하거나, 입력값이 계속 바뀐다는 점을 감안해야 합니다. 공정은 각 BoM에 속하며 공통 공정 순서 기준정보가 없으므로 BoM마다 개별적으로 정비해야 합니다.
  • 캘린더 오류. 모든 작업 센터에는 근무 시간 캘린더가 필요합니다. Odoo의 자체 계획 기능은 최대 700일 후까지 검색한 뒤 “Impossible to plan the workorder”(작업지시 일정을 수립할 수 없음) 메시지를 표시하고 중단됩니다. 초기 데이터 적재 전에 캘린더를 바로잡으세요.
  • 측정 단위. mrp.bom.line에는 자체 product_uom_id가 있으며, 제품의 재고 단위와 다를 수 있습니다. 자재 가용성을 확인하기 전에 단위를 환산하십시오.

Odoo 연동은 누가 구성하나요?

공장마다 Odoo 운영 방식이 다릅니다. BoM 공정, 작업 센터 캘린더, 대체 작업 센터, 맞춤 모듈도 제각각입니다. 이런 환경에 맞게 데이터를 정확히 매핑하는 것이 SkyPlanner 팀의 전문 분야입니다.

  1. SkyPlanner 팀이 연동을 구성합니다. 온보딩 과정에서 고객의 Odoo 환경에 맞게 구성하고 운영 개시 후에도 지원합니다. 연동에는 SkyPlanner REST API와 웹훅, Odoo의 JSON-2 또는 RPC API를 사용합니다. 이것이 기본 진행 방식입니다.
  2. 고객의 Odoo 파트너도 참여할 수 있습니다. 파트너는 고객의 환경과 맞춤 모듈을 잘 알고 있으며, 동일한 REST API 문서를 바탕으로 개발할 수 있습니다. 이 API로 오더, 제품, 자재, 공정 단계, 시간 기록을 읽고 쓸 수 있습니다. JWT 인증을 사용하며 Swagger/OpenAPI 문서가 제공됩니다.
  3. 사내 개발자도 같은 방식으로 구현할 수 있습니다. 보통 Odoo와 함께 실행되는 소규모 미들웨어로 개발하거나, Odoo.sh 또는 온프레미스 환경의 모듈로 구현합니다. API 키만 있으면 시작할 수 있으며(연동 튜토리얼), 필요할 때 SkyPlanner 팀이 지원합니다.

같은 방식이 다른 ERP와의 연동에서도 실제 운영되고 있습니다. Laboratory & Allied에서는 사내 IT 팀이 SkyPlanner의 도움을 받아 SAP Business One 연동을 대부분 직접 구축했습니다. NetSuite를 사용하는 UTU는 ERP와 SkyPlanner를 함께 운영합니다.

연동이 실질적인 가치를 만드는 이유

계산한 일정을 Odoo에 다시 반영하면 연동이 일상 업무에서 실질적인 효과를 냅니다. 이 기능이 가동되면 다음과 같은 효과를 얻습니다.

  • Odoo 작업지시에 실행 가능한 일시가 반영됩니다. Arcturus AI 엔진은 진행 대상인 모든 제조 오더의 작업 순서를 수초 안에 정합니다. 계산된 일시와 선택한 작업장은 mrp.workorder에 기록되며, Odoo의 계획 화면에서 확인할 수 있습니다.
  • 수작업으로 계획을 다시 짤 필요가 없습니다. 생산 상황이 바뀌면 Autopilot이 자동으로 일정을 재수립하고, 웹훅이 새 날짜를 Odoo에 전송합니다.
  • 생산 현장 실적까지 연결됩니다. 작업자는 휴대폰이나 태블릿에서 Mobile Confirmations, Production Timer, Quick Log Mode로 작업을 기록합니다. Time Logs는 재고와 원가 계산을 위해 Odoo로 전송됩니다. Enterprise뿐 아니라 Community에서도 하나의 도구로 스케줄링과 작업 실행을 관리할 수 있습니다.
  • Odoo가 반영하지 못하는 제약까지 일정에 반영합니다. 준비 시간 매트릭스로 제품 조합별 작업 순서에 따른 전환 시간을 설정합니다. 공구는 설비 간에 공유하는 유한 자원이며, 한 작업에 여러 작업자가 동시에 투입될 수 있습니다. 기본 설비나 인력을 사용할 수 없으면 엔진이 대체 설비나 인력을 선택합니다. mrp.workorder에 다시 기록되는 일시는 이러한 제약을 모두 충족합니다.
  • 자재 입고에 맞춰 계획합니다. 현재고와 Odoo의 미입고 구매 오더를 바탕으로 자재 기반 스케줄링을 수행합니다. 발주한 부품은 PO 납품일에 사용 가능한 것으로 간주하며, PO가 Delivered로 표시되면 재고가 갱신됩니다. 각 작업에 대해 창고에 있는 자재와 입고 예정 자재를 확인합니다.

연동 작업을 시작하기 전에도 일정이 적합한지 평가할 수 있습니다. CSV로 내보낸 데이터로 30일 무료 체험을 시작하고, 고객의 Odoo 작업지시를 Gantt에서 확인하세요. 신용카드 없이 최대 20개 작업 자원을 사용할 수 있습니다. 요금은 작업 자원 5개를 포함해 월 199 €부터이며, 매월 청구되고 언제든 해지할 수 있습니다. 고객의 프로세스와 요구사항에 맞춘 연동 견적을 요금제와 함께 사전에 제공하므로 시작 전에 전체 비용을 확인할 수 있습니다. 기능과 고객 사례를 확인하거나 데모를 예약하세요.

제조업 고객의 SkyPlanner 사용 후기

Ulvila의 배전반 생산 현장에 있는 UTU 공급망 전문가 Kalle Kalliomäki

2 h매주 절약하는 시간

“SkyPlanner 덕분에 Excel 스프레드시트로 하던 생산 계획이 실시간 생산 최적화로 바뀌었습니다.”

Kalle Kalliomäki, 공급망 전문가
UTU · 배전반 및 개폐 장치

생산 계획에 드는 업무 시간을 매주 2시간 절약하고, 새로운 작업 대기 목록이 몇 초 만에 생산 라인에 전달됩니다.

UTU 후기 읽기

나이로비에 있는 Laboratory & Allied 제약 공장의 병 충전 라인에서 방진복을 입고 일하는 작업자들

+90%생산 효율 향상

“생산 효율이 90% 높아졌습니다.”

Abdul Rucyinga, IT 책임자
Laboratory & Allied · 의약품 제조

생산 효율이 90% 높아졌으며, 모든 작업 자원의 석 달 치 계획을 최적화하는 데 30분도 걸리지 않습니다.

Laboratory & Allied 사용 후기 읽기

로흐야에 있는 Mamec 생산 공장의 Hannu Ryynänen 대표

1,000s작업지시 일정 자동 편성

“생산을 관리하는 방식이 달라졌고, 생산 능력을 파악하는 수준도 완전히 달라졌습니다.”

Hannu Ryynänen, 대표
Mamec · 산업용 믹서, 펌프 및 첨단 제품 위탁 제조

수천 건의 작업지시 일정이 자동으로 편성되며, 조직 전체가 생산 현황을 실시간으로 확인할 수 있습니다.

Mamec 사용 후기 읽기

카우하바에 있는 Piristeel 지붕 안전 설비 공장의 항공 전경

99.2%납기 준수율

“SkyPlanner 덕분에 병목 구간이 눈에 보이고 생산 관리도 명확해졌습니다.”

Toni Tuori, 생산 관리자
Piristeel · 지붕 안전 설비 및 빗물 배수 시스템

올해 납기 준수율은 99.2%에 도달했으며, 스케줄링으로 하루 최대 네 시간의 업무 시간을 절약하고 있습니다.

Piristeel 사용 후기 읽기

자주 묻는 질문

Odoo Online에서도 연동할 수 있나요?

Custom 요금제에서는 외부 API를 통해 연동할 수 있습니다. One App Free와 Standard는 외부 API에 접근할 수 없고, Standard에서는 사용자 지정 모듈도 실행할 수 없습니다. 따라서 이 두 요금제에서는 CSV/XLSX 가져오기와 내보내기만 가능합니다.

JSON-2와 XML-RPC 중 무엇을 사용해야 하나요?

Odoo 19.0 이상에서는 JSON-2를 사용하세요. 16.0부터 18.0까지는 여전히 XML-RPC와 JSON-RPC가 필요하지만, 두 방식 모두 Odoo 22에서 제거될 예정입니다.

생산 일정은 Odoo에 어떻게 반영되나요?

ORM write 메서드를 사용해 각 mrp.workorder에 기록합니다. 19.0에서는 POST /json/2/mrp.workorder/write 요청에 ids와 vals를 포함합니다. 16.0~18.0에서는 XML-RPC 또는 JSON-RPC를 통해 execute_kw로 write를 호출합니다. 전달하는 값은 date_start, date_finished(16.0에서는 date_planned_start와 date_planned_finished), 그리고 변경된 경우 workcenter_id입니다. Odoo는 이에 맞춰 작업 센터 예약도 옮기므로, Odoo 계획 화면에 SkyPlanner의 일시가 표시됩니다.

작업자가 보고한 실적은 Odoo에 어떻게 전달되나요?

Time Logs로 전달합니다. 연동 로직은 작업지시에 연결된 mrp.workcenter.productivity 레코드를 생성하고, 시작·종료 일시와 Productive 손실 사유를 기록합니다. 공정이 완료되면 button_finish를 호출합니다. 각 실적은 한 번만 전송하므로 재시도해도 작업 시간이 중복 기록되지 않습니다.

가동 후에는 누가 연동을 유지보수하나요?

SkyPlanner 팀이 온보딩 과정에서 연동을 설정하고, 가동 후에도 지원합니다. Odoo 구성이 바뀔 때 필요한 연동 변경도 지원에 포함됩니다. 파트너나 사내 개발자가 연동을 구축하는 경우에는 문서화된 REST API와 SkyPlanner 문서를 활용하며, 필요할 때 SkyPlanner 팀이 지원합니다.

이미 시작된 작업지시는 어떻게 처리하나요?

Odoo에 일정을 다시 반영할 때는 해당 작업지시를 변경하지 마세요. 작업지시가 진행 중이거나 완료된 상태이면 Odoo는 해당 MO의 계획 해제를 차단합니다. SkyPlanner는 해당 작업지시의 상태와 진행 상황을 읽고, 이를 기준으로 나머지 작업의 일정을 편성합니다.

Odoo 연동에는 얼마나 걸리나요?

구축은 보통 온보딩 시작 후 몇 주 안에 완료됩니다. 먼저 CSV로 내보낸 데이터로 30일 체험을 진행하세요. API 작업을 시작하기 전에 실제 Odoo 데이터로 생산 일정을 검증할 수 있습니다.