连接任何 ERP

SkyPlanner 的开放 REST API 可连接 ERP、MES 和运营系统,包括内部 ERP。您可以自行构建集成,也可以让我们的团队协助。

也可独立运行 — ERP 集成是可选的,非必需的。

讨论集成项目

连接 ERP 和 MES 系统,如

集成 / ERP / Sage 200

Sage 200 集成指南:使用 SkyPlanner APS 进行生产排程

本 Sage 200 集成指南面向业务合作伙伴和 IT 团队,介绍如何将 Sage 200 Professional 及其制造扩展模块接入 SkyPlanner APS。SkyPlanner 与 Sage 200 之间可双向传输数据:

  • 通过 Sage 200 REST API 导入产品、仓库库存、采购订单和销售订单。
  • 从制造扩展模块导入生产工单、工序以及人力和设备资源。
  • 将工序的计划日期回写到生产工单。
  • 回传操作员的工时日志,用于登记各道工序的工时。
SkyPlanner APS 甘特图时间轴,显示各工作中心的生产任务安排,下方为订单列表。

在上线准备阶段,SkyPlanner 团队会根据您的 Sage 200 配置设置集成,并在上线后提供支持。本指南面向希望参与集成,或自行基于 SkyPlanner 的 REST API 进行开发的合作伙伴和开发人员。该 API 提供完整的文档说明(API 参考文档)。

同一个 Sage 200 系统中的两个数据源

用于制造业务的 Sage 200 实例包含两个层面,集成会读取两者的数据。

1. 通过 Sage 200 REST API 获取业务和库存数据。Sage 表示,该 API “lets your application read and modify data in a Sage 200 site”(让您的应用程序能够读取和修改该实例中的数据)。这些数据涵盖客户、供应商、产品、销售与采购订单以及总账科目。Sage 200 Professional 参考文档(2025.02)将资源划分为 Cash Book、Commercials、Financials、General、Nominal、POP、Price Book、Purchases、Sales、SOP 和 Stock。与排程相关的资源如下:

资源包含的数据
products编码、名称、库存单位、BOM 物料类型、标准成本
warehouse_holdingsquantity_in_stock、quantity_on_order、quantity_allocated_bom、free_stock_available、is_default_manufacturing_warehouse
pop_orders、pop_order_lines未结采购订单、line_quantity、requested_delivery_dates
sop_orders、sop_order_lines客户需求、requested_delivery_date、promised_delivery_date
warehouses、units站点和计量单位

2. 从制造扩展模块获取生产工单。Sage 200 API 不提供生产工单、工序或资源端点。生产工单存储在 Sicon Works Order Processing、Cim200 或旧版 Sage 200 Manufacturing 模块中。集成通过扩展模块支持的方式读取生产工单、工序和资源,具体方式在范围评估阶段与您及您的 Sage 200 合作伙伴商定。

身份验证与访问

Sage 200 API “uses OAuth 2.0 with OpenID Connect”(使用上述 OAuth 版本并结合 OpenID Connect),采用授权码授权流程。登录通过 Sage ID 完成。

  • 加入 Sage 200 API Developer Programme 并申请凭据。
  • 将 Sage ID 映射到 Sage 200 用户,该用户须具备所用端点对应的公司及功能访问权限。
  • 请求 offline_access 权限范围,否则不会签发刷新令牌。
  • 每次数据库请求都须发送 Authorization: Bearer <access_token>、X-Site 和 X-Company。两个 ID 均从 /sites 获取。

Sage 200 Professional 的基础 URL 为:https://api.columbus.sage.com/uk/sage200extra/accounts/v1。请求使用 GET、POST、PUT 和 DELETE 方法,以及 OData 查询选项 $filter、$select、$top、$skip、$orderby 和 $expand。

对于 Sage 200 Professional,API 由客户的支持服务商启用。根据 Sage 的检查清单,服务商需确认 “the API is enabled”(API 已启用),以及 “each required user has a Sage ID assigned.”(每位需要访问的用户均已分配 Sage ID)。Sage 200 Standard 默认启用 API。

集成设计需要考虑令牌的有效期。访问令牌的有效期为 8 小时,刷新令牌的有效期为 1 至 90 天,并且 “The refresh window is measured from the user’s initial sign-in, not from the most recent refresh.”(刷新窗口从用户首次登录时起算,而不是从最近一次刷新时起算)。Sage 明确指出,重新验证身份 “is unavoidable”(不可避免)。请安排在窗口结束前发出重新授权提醒。

SkyPlanner 端的 REST API 使用 API 令牌进行身份验证(SkyPlanner Settings > API),文档以 Swagger/OpenAPI 格式提供。集成教程将逐步介绍如何完成初次调用。

变更检测

Sage 200 API 参考文档中没有 webhook 或订阅资源,因此通过轮询获取变更。记录包含 date_time_created 和 date_time_updated 字段,每次轮询使用 $filter 按 date_time_updated 筛选,并通过 $top 和 $skip 分页。

每隔几分钟轮询一次生产工单,每小时轮询一次库存和采购订单行。排程发生变更时,SkyPlanner 会发送 webhook,因此回写由事件驱动。

数据映射

Sage 200 对象(来源)SkyPlanner 对象方向频率
products、units(API)产品和物料Sage 200 → SkyPlanner先加载,随后轮询
BOM 组件(扩展模块或 BOM 模块)产品结构、子产品、各产品所需的物料Sage 200 → SkyPlanner发生变更时
人力和设备资源、资源组(扩展模块)工作中心、工作中心组、人员Sage 200 → SkyPlanner初始加载
资源可用性:停机、维护、休假(扩展模块)班次、缺勤Sage 200 → SkyPlanner每天
生产工单及其工序、各道工序的工时(扩展模块)订单和生产任务,含步骤、时长及交期Sage 200 → SkyPlanner每隔几分钟
sop_order_lines:requested_delivery_date、promised_delivery_date(API)客户交期Sage 200 → SkyPlanner轮询
warehouse_holdings:quantity_in_stock、free_stock_available(API)库存结存Sage 200 → SkyPlanner每小时
pop_order_lines:line_quantity、requested_delivery_dates(API)采购订单及预计交货日期Sage 200 → SkyPlanner每小时
生产工单中工序的计划开始时间、结束时间及资源各道工序的计划开始时间、结束时间及工作中心SkyPlanner → Sage 200发生变更时,通过 webhook
工序工时登记(扩展模块)工时日志和操作员报工SkyPlanner → Sage 200每次报工或每个班次
SkyPlanner 约束数据换型时间矩阵、作为有限资源的工具、备选设备和人员在 SkyPlanner 中维护上线准备阶段

集成模式

1. 初始加载主数据。先通过 API 获取产品和单位,再从扩展模块获取资源、资源组和 BOM 工序。由三台相同设备组成的资源组,可以建模为一个工作中心组,也可以建模为三个工作中心。

2. 订单同步。从扩展模块读取未结生产工单及其工序,并通过 API 读取未结的 pop_order_lines 和 warehouse_holdings。排程时会同时检查现有库存和待到货的采购物料。MRP 继续在 Sage 200 中提出生产工单建议,SkyPlanner 则对您创建的工单进行排程。

3. 排程回写。对于引擎安排或调整的每道工序,SkyPlanner 会将计划开始时间、结束时间和资源回写到生产工单。数量、分配和成本核算仍由扩展模块自行管理。

4. 车间报工。操作员使用 SkyPlanner Mobile Confirmations 或 Production Timer 记录作业,工时日志会使排程保持最新。记录的工时会回写并登记到生产工单的相应工序上,让 Sage 200 能够按实际工时核算成本。

如果您的工厂已经使用 Sicon Shop Floor Data Capture 或 Cim200 Shop Floor Data Capture 登记工时,请选定一个登记渠道。

5. 数据归属和冲突处理规则。请在上线前以书面形式明确:

数据主管系统
产品、BOM、生产工单数量、物料分配、成本Sage 200 及其扩展模块
工序顺序、开始和结束时间、工作中心分配SkyPlanner
换型准备时间矩阵、工具和操作人员要求、替代资源SkyPlanner
工时登记Sage 200,工时记录由 SkyPlanner 提供

冲突主要来自产能图。如果计划员继续在 Sicon Rough Cut Capacity Planning 或 Cim200 Graphical Scheduler 中拖动生产工单或工序,就会出现两个系统同时管理日期的情况。应由 SkyPlanner 统一管理工序日期。启用 Autopilot 后,生产发生变化时,SkyPlanner 会自动重新排程。

典型项目步骤

实施通常在上线准备启动后的几周内完成。在此之前,可在 30 天免费试用期间,使用导出为 CSV 或 Excel 文件的未结生产工单验证排程。随后按以下步骤推进项目:

  1. 范围评估。确认扩展模块及版本、生产工单读取方式、回写方式、同步频率和工时登记渠道。
  2. API 访问。由支持服务商启用 Sage 200 API,将 Sage ID 映射到 Sage 200 用户,并设置公司和功能访问权限。
  3. 初始数据加载。加载产品、单位、资源、资源组、BOM 工序和可用性数据。
  4. 订单同步。通过轮询同步生产工单、采购订单行和库存,并设置重新授权提醒。
  5. 在 SkyPlanner 中设置约束。设置换型准备时间矩阵、工具、每项生产任务所需的操作人员数量,以及可替代的机器或人员。
  6. 排程回写。将工序计划日期回写至生产工单,并在此阶段加入工时登记。
  7. 并行测试与上线。将日期与当前计划进行对比,修正主数据,然后启用回写。

Sage 200 集成需要提前考虑哪些问题

  • 新版不再支持旧模块。从 Sage 200 Professional 2025 R2 起,旧版 Sage 200 Manufacturing 模块已无法使用。在进行任何映射之前,应先确认上线时将使用哪套制造模块。
  • 根据成本数据估算工序时间。Sicon MRP 根据 Sage 200 BOM 成本项估算人工和机器工时。应先与实际运行时间核对。
  • 成本类别不匹配。Sage 提醒,BOM 工序与成本类别中的 Nominal、Overhead Nominal 和 Overhead Recovery % 必须一致,否则 “there will be cost discrepancies.”(将出现成本差异。)
  • 刷新期限。最长 90 天的期限从首次登录开始计算。如果集成始终不重新授权,就会在每个季度的同一天停止运行。
  • 多公司站点。一个站点可以包含多家公司,因此每次请求都必须发送正确的 X-Company。

Sage 200 集成由谁配置和支持

  1. SkyPlanner 团队在上线准备阶段完成配置,并在上线后提供支持。
  2. 您的 Sage 200 业务合作伙伴也可以参与。合作伙伴了解您使用的扩展模块,并负责在 Sage 200 Professional 中启用 API。
  3. 您自己的开发人员也可以在此基础上开发,使用同一套有文档说明的 REST API,并通过 API 令牌访问。只需 API 令牌即可开始,SkyPlanner 团队会在需要时提供协助。

连接完成后,Arcturus 引擎会根据 Sage 200 中的实时生产工单进行排程,并将计划日期写入生产工单的工序。SkyPlanner 每月 199 € 起,包含 5 个工作中心,按月计费。集成费用会根据您的流程和需求,与所选套餐一并提前报价,让您在开始前了解全部费用。请查看价格和功能,也可阅读 Sage 200 生产排程,了解它与 Sage 200 自带计划功能的对比。集成概览见 Sage 200 页面,其他 ERP 则收录在 ERP 集成中心。

制造企业对 SkyPlanner 的评价

UTU 供应链专员 Kalle Kalliomäki 在 Ulvila 的配电盘生产车间

2 小时每周节省的时间

“SkyPlanner 让我们的生产计划从依赖 Excel 表格,转向了实时生产优化。”

Kalle Kalliomäki,供应链专员
UTU · 配电盘和开关设备

每周用于生产计划的工作时间减少了 2 小时,新的任务队列只需几秒就能下达到产线。

阅读 UTU 的评价

Mamec 首席执行官 Hannu Ryynänen 在公司位于 Lohja 的生产车间

数以 1,000 计自动完成排程的工单

“我们对生产的掌控今非昔比,对产能的认识也达到了全新的水平。”

Hannu Ryynänen,首席执行官
Mamec · 工业搅拌机、泵及高科技产品代工

数千张工单自动完成排程,全公司都能实时了解生产情况。

阅读 Mamec 的评价

常见问题

Sage 200 API 是否包含生产工单?

不包含。Sage 200 Professional API 涵盖产品、库存、销售和采购订单、财务等数据,但不提供生产工单或工序资源。生产工单需从 Sicon Works Order Processing 或 Cim200 等制造扩展模块中,通过范围评估时约定的方式读取。

Sage 200 集成由谁实施?

SkyPlanner 团队会在初始接入期间,根据您的 Sage 200 配置完成双向集成,并在上线后提供支持。您的 Sage 200 业务合作伙伴负责启用 API,也可以参与项目。您自己的开发人员也可以参考 SkyPlanner 的 REST API 文档进行开发,只需 API 令牌即可开始。

Sage 200 能否实时推送变更?

Sage 200 API 不支持 Webhook。库存和采购订单通过 date_time_updated 字段进行轮询,生产工单则每隔几分钟从扩展模块中读取一次。在反向传输中,SkyPlanner 自身的 Webhook 会在排程发生变化时立即推送变更。

能否在实施集成之前试用 SkyPlanner?

可以。30 天免费试用最多支持 20 个工作中心,可通过 CSV 或 Excel 导入生产工单,无需信用卡。您可以开始试用,或联系销售团队进行集成范围评估。