SkyPlanner 已在客户项目中完成与 MRPeasy 的集成。在实施阶段,SkyPlanner 团队会根据您的 MRPeasy 配置设置集成,并在上线后提供支持。本指南面向希望参与集成,或参照 SkyPlanner 的 REST API 文档(API 参考文档)自行开发的顾问和开发人员。
MRPeasy REST API:v1 和 v2
MRPeasy 是一款纯云端产品,没有本地部署版本,因此所有客户使用的 API 都相同。目前有两个版本:
- REST API v1(OpenAPI 1.0,服务器地址为
https://api.mrpeasy.com/rest/v1)是用于生产环境的 API。它涵盖/items、/boms、/routings、/manufacturing-orders、/work-centers、/work-center-types、/customer-orders、/purchase-orders、/stock/inventory、/lots、/units,以及/report/production/operations等生产报表端点。 - REST API v2(OpenAPI 2.0.0,服务器地址为
https://api.mrpeasy.com/rest/v2)仍处于开发初期。它新增了带有work_hours和holidays的/workstation-groups、带有productivity和idle的/workstations,以及/inventory、/stock-movement和 PATCH。生产订单仍使用 v1。
请注意界面与 API 的命名差异。MRPeasy 界面中的 Workstation group(工作中心组)对应 v1 的 work-center-types(type_id),Workstation(工作中心)对应 work-centers(center_id)。工艺路线中的工序通过 type_id 关联到组,而非某台机器。
MRPeasy 的 Unlimited 套餐为付费账户提供 API。MRPeasy 同时声明:”Our Support Department cannot help you using the API.”(我们的支持部门无法协助您使用 API。)因此,集成必须有明确的负责人:SkyPlanner、您的 MRPeasy 顾问或开发人员。SkyPlanner 团队在实施阶段承担的正是这项工作。
身份认证与限制
MRPeasy 使用 HTTP Basic 身份认证:Authorization: Basic base64(api-key:api-secret)。API key 和 secret 在 Settings → Integration → API access 中创建。清除 key 即会禁用 API。
设计同步机制时需要考虑以下限制:
- 每个客户端同一时间只能处理一个请求:请求按顺序处理。
- 每 10 秒最多可发送 100 个请求。超过此限制,API 将返回 429。
- 列表默认返回 100 条记录,使用
Range请求头时最多可返回 1,000 条。响应中的Content-Range提供记录总数。
SkyPlanner 的 REST API 使用 API 令牌进行身份认证(SkyPlanner Settings > API),并提供 Swagger/OpenAPI 文档。集成教程会逐步指导您完成初次调用。
事件与轮询
MRPeasy 的定价页面列有 “API, webhooks (for paid accounts)”(API、webhook,仅供付费账户使用),但 v1 和 v2 规范均未记录生产订单的 webhook 事件。因此,集成通过增量轮询从 MRPeasy 获取数据:
- 筛选状态为 Not scheduled(15)、Scheduled(20)、In progress(30)和 Paused(35)的生产订单。
- 按设定周期或在每次运行排程前获取采购订单和库存。
- 在主数据变更时或每晚同步主数据。
按顺序执行并带筛选条件的轮询,请求量远低于每 10 秒 100 次的上限。在反向同步中,SkyPlanner 自身的 webhook 会即时推送排程变更,因此回写采用事件驱动机制。
数据映射
| MRPeasy 对象(端点) | SkyPlanner 对象 | 方向 | 频率 |
|---|---|---|---|
物料、计量单位(/items、/units) | 产品和材料 | MRPeasy → SkyPlanner | 首次导入,此后每晚同步 |
包含组件的 BOM(/boms) | 产品结构、子产品、各产品所需材料 | MRPeasy → SkyPlanner | 首次导入,此后在变更时同步 |
工艺路线中的工序(/routings):type_id、fixed_time、variable_time、variable_quantity | 工序及其时长、准备时间和批量 | MRPeasy → SkyPlanner | 首次导入,此后在变更时同步 |
工作中心组(/work-center-types;v2 为 /workstation-groups) | 工作中心组、班次 | MRPeasy → SkyPlanner | 首次导入,此后很少同步 |
工作中心(/work-centers;v2 为 /workstations:productivity、idle) | 工作中心、效率、不可用时段 | MRPeasy → SkyPlanner | 首次导入,停工时段每日同步 |
生产订单及其工序、due_date(/manufacturing-orders) | 订单和生产任务 | MRPeasy → SkyPlanner | 每隔几分钟轮询 |
库存、库存批次(/stock/inventory、/lots) | 库存余额 | MRPeasy → SkyPlanner | 每小时或每次运行排程时同步 |
采购订单(/purchase-orders) | 待到货材料及预计交付日期 | MRPeasy → SkyPlanner | 每小时或每次运行排程时同步 |
生产订单的 due_date 和 custom_<id> 字段(PUT /manufacturing-orders/{id}) | 计划开始时间、计划完成时间、进度 | SkyPlanner → MRPeasy | 排程变更时通过 SkyPlanner webhook 同步 |
| MRPeasy 中无对应数据 | 换型时间矩阵、作为有限资源的工具、操作员人数、替代工作中心 | 在 SkyPlanner 中维护 | 实施阶段配置 |
集成方式
1. 首次导入主数据。从 v1 获取物料、单位、BOM 和工艺路线,从 v1 或 v2 获取工作中心组和工作中心。日历可从 v2 的 /workstation-groups(work_hours、holidays)获取,也可直接在 SkyPlanner 中设置班次。将每个处于 Active 状态的加工组映射到 SkyPlanner 工作中心组,并将其工作中心设为组内成员。
2. 订单同步。读取未结生产订单及其工序,以及未结采购订单和库存。SkyPlanner 将已订购材料视为在采购订单交付日期可用,并在采购订单标记为 Delivered 时更新库存。每次重新排程时,都会检查现有库存和待到货采购物料。
3. 排程回写。PUT /manufacturing-orders/{id} 支持 code、quantity、due_date 和 assigned_id,以及采用 custom_<id> 格式的自定义字段。经双方约定后,SkyPlanner 会将计划完成时间写入 due_date,并将计划开始时间、计划完成时间和进度写入 MRPeasy 自定义字段。这样,在 MRPeasy 中工作的销售和采购人员就能看到实际排程。详细的工序顺序及各工序分配的工作中心保留在 SkyPlanner 中,车间以 SkyPlanner 作为派工视图。
4. 在 MRPeasy 之外创建订单。如果需要通过 API 创建订单,POST /manufacturing-orders 支持 no_scheduling 和 no_bookings。使用这两个参数,可避免 MRPeasy 占用已由 SkyPlanner 排程的工作中心。
5. 车间报工。操作员通过 SkyPlanner Mobile Confirmations、Production Timer 或 Quick Log Mode 记录作业,工时记录会让排程保持最新。报工渠道只选一个。同一批工序若同时使用 MRPeasy 的 Internet-kiosk 和 SkyPlanner 报工,就会产生两套不一致的记录。
6. 数据归属与冲突处理规则。上线前应书面明确以下规则:
| 数据 | 负责系统 |
|---|---|
| 物料、BOM、工艺路线、数量、库存、采购 | MRPeasy |
| 工序顺序、开始和结束时间、工作中心分配 | SkyPlanner |
| 换型时间矩阵、工具、操作员人数、替代资源 | SkyPlanner |
| 班次与缺勤 | 由一个系统负责,在范围评估时确定 |
| 订单进度和作业记录 | 由 SkyPlanner 管理,汇总到生产订单 |
按订单设计流程。在一个已交付的 MRPeasy 项目中,每个客户项目都对应一个主产品和一至三个半成品。每项产品在 MRPeasy 中都有各自的 BOM 和工艺路线,生产订单则同时存在于两个系统中。每张订单都应保留稳定的共用标识符,确保更新时不会创建重复订单。
典型项目步骤
实施工作通常可在实施服务启动后的几周内完成。在此之前,无论使用哪种 MRPeasy 套餐,您都可以用自己的数据免费试用 30 天。从 MRPeasy 的列表视图中将物料、BOM、工艺路线、工作中心和未结生产订单导出为 CSV,再导入 SkyPlanner,验证排程结果。
项目本身包括以下步骤:
- 检查套餐。确认 MRPeasy 套餐包含 API,并创建 API key 和 secret。
- 确定映射。确定映射表、数据归属规则、用于回写的自定义字段以及报工渠道。
- 首次加载。加载物料、单位、BOM、工艺路线、工作中心组、工作中心和日历。
- 同步订单和采购订单。按状态进行增量轮询,并处理 429 响应。
- 在 SkyPlanner 中设置约束。配置换型时间矩阵、工装、操作员人数和备选工作中心。
- 回写。回写每个 Manufacturing Order 的交期和自定义字段。
- 并行测试。让 SkyPlanner 与现有生产排程并行运行,对比日期,修正主数据。
- 上线。数据核对一致后,启用回写。
MRPeasy 集成需要提前考虑哪些问题
- 界面与 API 的时间字段不同。界面中的 Setup time、Cycle time 和 Capacity 在 API 中分别对应
fixed_time、variable_time和variable_quantity。Capacity 大于 1 表示批量处理,例如烘箱作业。应将其映射为批量生产任务,而不是更长的加工周期。 - 被动加工组。干燥和冷却组 24/7 持续运行,没有产能限制。应将其映射为等待时间,而不是产能有限的工作中心。
- v1 不提供日历。
work-centers仅返回center_id、type_id、code和title。请使用 v2,或在 SkyPlanner 中维护班次。 - 停工时段。工作中心的停工时段记录了维护和停机安排。务必同步这些数据,否则 SkyPlanner 会向已停机的设备安排生产任务。
- 工艺路线关联到工作中心组。MRPeasy 会选择可用性最佳的设备。在 SkyPlanner 中,组内的各个工作中心都是实际可选的资源,由排程引擎从中选择。
MRPeasy 集成由谁配置和支持
集成工作包括映射您的工艺路线、工作中心组和订单流程,以及配置 MRPeasy 未记录的约束:换型时间矩阵、工装、操作员人数和备选资源。
- SkyPlanner 团队在实施阶段完成配置,并在上线后提供支持。每家工厂使用 MRPeasy 的方式都不同,这些实际经验正是配置的依据。MRPeasy 的支持服务不涵盖 API 相关工作,因此由一个团队统一负责集成尤为重要。
- 您的 MRPeasy 顾问或集成合作伙伴也可以开发集成。在一个已交付的 MRPeasy 项目中,集成合作伙伴通过双方的 REST API 连接了两个系统。SkyPlanner 提供 REST API、Swagger/OpenAPI 文档和 webhooks。
- 您的开发人员也可以使用 API 令牌自行开发集成。只需一个 API 令牌即可开始,SkyPlanner 团队会在需要时提供协助。包含采购订单、产品与物料 API 在内的产品文档,请参阅 SkyPlanner 文档。
SkyPlanner 每月 199 € 起,包含 5 个工作中心,按月计费。集成费用会根据您的流程和需求,与套餐费用一并提前报价,让您在开始前了解全部成本。请查看价格和功能,并通过 MRPeasy 生产排程了解它与 MRPeasy 自带排程工具的对比。集成概况见 MRPeasy 页面,其他 ERP 则见 ERP 集成中心。
制造企业对 SkyPlanner 的评价
2 小时每周节省的时间
“SkyPlanner 让我们的生产计划告别了 Excel 表格,实现了实时生产优化。”
Kalle Kalliomäki,供应链专员
UTU · 配电盘与开关设备
生产计划工作每周节省 2 小时,新的任务队列只需几秒即可下达到产线。
+90%生产效率提升
“生产效率提高了 90%。”
Abdul Rucyinga,IT 负责人
Laboratory & Allied · 制药
生产效率提高了 90%,制定覆盖所有工作中心的三个月优化计划只需不到 30 分钟。
6 个月销售可提前查看的空闲产能
“SkyPlanner 为所有生产计划工作奠定了基础,提供了可靠保障。”
Anu Järvinen,生产经理
Fredman Operations · 食品级包装纸
销售人员可以提前六个月查看空闲产能,过去需要一个小时或更久才能回复的排程变更请求,现在几秒内就能得到答复。
常见问题
MRPeasy 提供 API 吗?需要哪种套餐?
提供。MRPeasy 为使用 Unlimited 套餐的付费账户提供 REST API,其中 v1 已投入生产使用,v2 正在开发中。身份验证采用 HTTP Basic,所需的 API key 和 secret 可在 Settings → Integration → API access 中获取。
SkyPlanner 能将排程回写到 MRPeasy 吗?
可以。SkyPlanner 通过 PUT /manufacturing-orders/{id} 更新每个 Manufacturing Order,写入交期,以及用于记录计划开始时间、计划完成时间和进度的自定义字段。详细的工序顺序保留在 SkyPlanner 中,操作员根据各自的任务队列开展工作。
MRPeasy 会实时推送变更吗?
API 规范未列出生产订单的 webhook 事件,因此 SkyPlanner 每隔几分钟就会按状态轮询未结订单。SkyPlanner 自身的 webhooks 则会在排程发生变更时立即推送。
谁来开发 MRPeasy 集成?
SkyPlanner 团队在初始实施阶段配置双向集成,并在上线后提供支持。您的 MRPeasy 顾问、集成合作伙伴或开发人员也可以依据 SkyPlanner 的 REST API 文档自行开发。