与 ERP、OA 协作
数据源只读进来;同步来的属性与 Semantic 自己的属性;用关系把不同系统连起来。

本课目标
读完这一课,你将能够
- 说出 ERP、OA 的数据怎样只读地进入 Semantic
- 分清同步来的属性和只在 Semantic 维护的属性
- 用关系把不同系统里的对象连起来
只读进来
ERP、MES、OA 是公司原有的系统,在 Semantic 里叫数据源。每个数据源旁边装一个发布端,发现变化才把一批数据推上来;Semantic 按顺序落账,几秒内通知订阅它的应用。数据源永远只读,应用和智能体也从不直接连它们。
- 01数据源ERP 的订单、OA 的审批单
- 02发布端变了才推,只能往一条数据流发布
- 03对象绑定到对象类型:订单、审批单
- 04关系订单 ↔ 审批单
- 05应用与智能体读同一份
aidc data bind erp-orders purchaseOrder --map orderNo=ORDER_NO,amount=AMOUNT,dueDate=DUE_DATE
两种属性
一个对象的属性分两种。一种从数据源同步过来,例如订单的金额、交期,审批单的状态——它们只读,要改就去原系统改。另一种只在 Semantic 里维护,例如负责人、异常说明、跟进备注——它们由动作来改。
| 同步来的属性 | Semantic 自己的属性 | |
|---|---|---|
| 例子 | 订单金额、交期、审批状态 | 负责人、异常说明、跟进备注 |
| 谁来改 | 原系统 | 动作 |
| 数据源再同步时 | 更新为新值 | 不受影响 |
这样 ERP 仍然是订单的权威来源,而大家围绕订单做的事,有了一个共同的地方。
把不同系统连起来
OA 里的一张采购审批单和 ERP 里的一张采购订单,本来是两个系统里的两条记录,靠人记着它们是一回事。在 Semantic 里,它们是两个对象类型,中间一条关系:从订单能走到它的审批单,从审批单也能走回它的订单。
连起来之后,「本月已下单、但审批还没走完的采购」就是一个对象集:先筛本月的订单,沿关系走到审批单,再筛状态。不需要谁去两个系统里各导一张表来对。
要点
- 数据源永远只读;发布端只在变化时推送。
- 同步来的属性只读,Semantic 自己的属性由动作来改。
- 数据源再同步,不会冲掉人改过的值。
- 用关系把 ERP、OA 里的对象连起来,跨系统的问题一次就能回答。
练一练
把一张审批单和一张订单连起来
选一个要同时翻 ERP 和 OA 才能处理的业务。
列出订单的五个属性,标出哪些来自 ERP,哪些只在 Semantic 里维护。
找一种 OA 单据,写出它和 ERP 里哪类对象有关系,两端各叫什么。
写一个今天要翻两个系统才能回答的问题,改写成「从哪个对象出发、沿哪条关系走、筛什么」。
小测
选一个答案,马上看解析。
Q1订单的交期在 ERP 里改了,Semantic 里会怎样?
交期是同步来的属性,权威在 ERP;变化由发布端推进来,不需要人再改一次。
Q2业务员想在订单上记一句「客户要求加急」,应该?
跟进备注是 Semantic 自己的属性,由动作来改,有校验、有记录;数据源不被改动。
Q3为什么要把 OA 审批单和 ERP 订单连成关系?
关系只是把两个系统里的对象连起来;两个数据源都不会被改。