ERP集成平台产品手册
| 版本 | 作者 | 日期 | 说明 |
|---|---|---|---|
| v1.0 | 刘登跃 | 20210218 | |
| v1.1 | 冯远华 | 20210414 | 修复目录跳转问题 |
| v1.2 | 郑素兰 | 20210420 | 增加了配置demo的步骤 |
目录
[toc]
一、概述
1.1 背景
针对部分购买纷享销客CRM产品的企业客户,其企业内部可能存在同时使用CRM、ERP、PLM、OA等多套管理系统情况。客户希望纷享CRM系统可以和其他异构系统能够进行业务数据对接,以实现对企业内部信息系统一体化管理。
CRM与异构系统对接部分可以有两种方案:一、客户方开发人员通过纷享销客开放平台自行对接。采用该方案对接,开发人员对对接业务进行分析并结合官网对OPEN API接口说明,完成与纷享销客CRM的对接。OPEN API官网地址:https://open.fxiaoke.com/ ;二、通过ERP集成平台对接。采用该方案对接步骤建2.2章节说明。另外,该方案对对接的内容,要求异构系统官方有提供标准接口或者客户方可以封装公网可以访问的接口。
本产品使用手册仅适用第二种对接方案,并针对ERP集成平台的功能、使用、运维等做具体说明,以及常见配置问题的FAQ,为实施同事在对接项目的实施过程中提供手册指引。
1.2 术语定义
针对ERP集成平台使用手册涉及到的术语,做如下约定:
| 名称 | 描述 |
|---|---|
| 金蝶云星空 | 如无特别说明,指金蝶云星空及早期的K3 Cloud版本; |
二、系统综述
2.1 系统功能简介
ERP集成平台目前支持与金蝶云星空(含早期K3 Cloud版本)、用友U8c、用友NC、K3 Wise、SAP、OA、PLM、客户自研软件或其他软件系统对接。根据软件厂商是否有开放标准化接口可以分为异构系统官方有标准接口和异构系统官方无标准接口两类:
2.1.1 异构系统官方有标准接口:
指异构系统有官方已提供该软件的标准化的接口,可以通过官方接口满足客户对接的需求。例如:
金蝶云星空(含早期K3 Cloud版本):云星空目前可以通过官方提供的标准化接口进行对接,若客户有自定义对象需要对接,则需确认该自定义对象接口可以访问;
用友U8c:可以通过用友官方的开放平台接口进行对接。特别说明:用友开放平台要求U8c为12.0及以上版本,若无特别说明,本手册提到的与用友U8c对接均指版本为12.0及以上版本且购买了官方的开放平台。若客户使用的版本小于12.0,则需要客户方封装接口;
OA系统:指泛微、蓝凌等软件厂商可以提供接口的OA系统,ERP集成平台可以通过对方提供的接口实现对接;
2.1.2 异构系统官方无标准化接口:
指异构系统官方无标准化接口,对接时,需要双方IT人员根据对接业务方案沟通制定接口规范,客户方按沟通的接口规范封装接口,完成后再通过ERP集成平台实现对接;
用友NC、K3 Wise、SAP、PLM、客户自研软件或其他软件系统等:该异构系统官方无统一封装的接口,对接时需要实施同事先梳理客户对接业务需求,输出对接业务流程图后,客户方IT和纷享集成平台技术做接口开发规范约定并按约定开发接口,完成后实施再做对接配置联调,实现对接业务诉求。详见2.2.2;
2.2 对接步骤
2.2.1 低代码对接项目实施步骤
针对云星空、U8c(12.0及以上版本且购买了用友官方开放平台)、OA等异构系统官方有标准化接口,实施配置可以参看如下图的实施配置roadmap,实施过程仅需要在ERP集成平台做字段配置以及一些简单业务逻辑的自定义函数处理:
2.2.2 高代码对接项目实施步骤
针对用友NC、K3 Wise、SAP、PLM、客户自研软件或其他软件等异构系统官方无标准化接口,实施配置可以参看如下图的实施配置roadmap。下方实施步骤图第4步,若客户方可以按平台接口规范封装接口,则剩余工作可以由业务顾问在平台配置完成;若客户方无法按平台接口规范封装接口,则需要技术顾问对接口项目化或者自定义函数等高代码实现做适配,完成后在平台配置对接(差异见黄色路线部分):
说明:step 4 技术顾问同客户方IT人员协商接口时,请注意一下方面的沟通:
1、接口提供完备性:例如,若是ERP集成平台主动查询对方接口,则需要客户方提供单个和批量查询接口;
2、接口可靠性:例如,若是ERP集成平台调异构系统接口创建,异构系统因为内部或其他原因导致超时未返回创建成功结果,ERP集成平台会超时返回失败,但异构系统却创建成功。这种场景需要考虑若再次同步创建时,异构系统能够识别该数据已经创建成功;
3、数据唯一性:每个对象有主键且要求主键对应的数据唯一;
2.3 选择对接的产品


根据客户要对接的系统,找到对应的产品,下订单进行购买,则配置入口自动开通。 配置入口在 管理->系统对接管理 下面。
一个销售订单对应客户的一个系统,如果客户有多个IT系统需要对接,则需要购买多个订单。
- 集成平台-SAP插件:对接客户的SAP系统。
- 集成平台-用友U8Cloud插件:对接用友U8系统。
- 集成平台-标准插件:对接客户的自研系统等。没有对外提供标准API接口的,都可以通过此产品来对接。
- 集成平台-OA插件:CRM的待办对接客户的OA系统。
- 集成平台-金蝶K3Cloud插件:对接金蝶k3cloud, 云星空系统。
- 精斗云插件:对接金蝶 云星辰,精斗云 系统。(此产品配置入口在 应用中心)
三、功能列表
该部分主要描述ERP集成平台产品功能说明,包含数据总览、同步策略、数据维护、数据同步设置四部分内容,以便实施同事熟悉产品功能;
3.1 数据总览
数据总览分为两个方向,即ERP同步到CRM方向、CRM同步到ERP方向,统计数据分别按两个方向汇总了当前同步数据及同步策略的情况。具体如下图:
3.1.1 ERP同步到CRM数据
ERP同步到CRM数据汇总了该同步方向下,截止到当前时间段的数据维护中所有对象的成功/失败/累计的数据;同步策略则统计了该同步方向下,目前启用的同步策略、设置了但未启用同步策略及所有的同步策略;
3.1.2 CRM同步到ERP数据
CRM同步到ERP数据汇总了该同步方向下,截止到当前时间段的数据维护中所有对象的成功/失败/累计的数据;同步策略则统计了该同步方向下,目前启用的同步策略、设置了但未启用同步策略及所有的同步策略;
3.2 同步策略
同步策略设置是按实际业务同步方向将CRM对象和中间对象进行对象和字段绑定,并设置同步数据范围、规则。该步骤在 数据同步设置>ERP对象管理 配置了ERP对象拆分成中间对象之后配置。如下图,进入后首先选择需要配置的同步方向(ERP同步到CRM/CRM同步到ERP)。
接着在左侧栏点击 添加对象 按钮,弹出 添加CRM同步对象 弹窗,实施同事可在此处将需要与中间对象建立映射关系的CRM对象添加进来。如下图,具体字段填写说明见下:
同步策略名称 即填写当前添加策略的名称,填写后展示在右侧策略上方;
CRM对象 即选择需要与中间对象映射的对象名,为下拉选项,支持选择在CRM 对象管理的所有预设和自定义对象选择;
CRM从对象 根据所选择的CRM对象带出对应的从对象,支持多选,非必填;
备注 该CRM同步对象的备注说明;
填写完成后,点击 保存 退出。将CRM对象添加后,左侧下方即展示刚添加的CRM对象。选择该CRM对象(例如选择客户对象),点击右侧上方的 添加策略 按钮,弹出 添加同步策略 界面(如下图),基本信息左侧为所选的CRM对象的信息,对应的右侧填写需要与之绑定的ERP中间对象,字段说明:
ERP中间对象:选择ERP对象拆分的ERP中间对象。若下拉菜单无法选到需要的ERP中间对象,请检查该中间对象是否添加字段;
ERP中间从对象:选择ERP对象拆分的ERP中间对象的从对象。若选择ERP中间对象后,无法选中对应的从对象,请检查ERP对象拆分的中间对象对应的从对象是否有添加与主对象的虚拟主从关联类型字段(添加方法详见3.4.3.1.2.1最后特别说明);
填写无误后,点击 保存 按钮保存退出,页面上即新增了一条同步策略,注,一个CRM对象可以支持添加和启用多条策略,请根据实际业务配置;
3.2.1 字段映射
CRM对象添加同步策略后,即可以对该策略添加字段,点击右侧 字段映射 按钮,如下图以客户配置为例,界面会将同步策略配置的主对象字段映射、主对象对应的从对象字段映射均展示出来,实施同事按实施工具表格将字段一一做对应保存即可,此处插入固定值是将固定的值内容和对应的字段做绑定,适用于一侧没有该字段但与之绑定的字段又必须填场景;
若需继续添加字段,则可以点击下方的 继续添加 按钮,继续绑定字段。
3.2.2 数据范围
在 同步策略 菜单下,选中CRM对象,右侧查看对应的策略查,点击 数据范围 按钮,如下图,数据范围 设置界面分主从对象分别设置,若该CRM对象有多个从对象,则在此处均会展示出来,并支持单独设置。
数据范围设置 支持按对象下字段维度设置条件,同时支持添加逻辑与的字段条件。若多个条件为逻辑或关系,则支持在下方继续添加过滤条件。填写完成后,保存退出,当且仅当数据符合设置条件后才会同步写入。
3.2.3 同步规则
在 同步策略 菜单下,选中CRM对象,右侧查看对应的策略查,点击 同步规则 按钮,如下图,即可进入同步规则设置界面:
3.2.3.1 同步逻辑参数
同步方式:单选,值包含轮询、推送。若在ERP同步到CRM方向:轮询指ERP集成平台在设置的时间段内按轮询频率查询异构系统接口的增量数据;推送则指异构系统通过对接接口主动的推送增量数据至ERP集成平台;若CRM同步到ERP方向默认主动推送,无此选项。
同步事件监听:多选,值包含新增、修改。若在ERP同步到CRM方向:新增事件代表异构系统首次通过ERP集成平台同步的数据,修改指已经通过ERP集成平台同步过的数据(即ERP集成平台已建立映射关系)。勾选新增/修改事件监听表示数据通过ERP集成平台查询回来后根据是否有映射关系判断是否需要同步;若CRM同步到ERP方向:新增代表该条CRM数据首次通过ERP集成平台同步,修改表示该条CRM数据已通过ERP集成平台同步,平台已有映射关系,再次做修改同步。
轮询频率:仅在ERP同步到CRM方向同步方式为轮询时支持设置,指ERP集成平台轮询的频率,最小设置6分钟/次。CRM同步到ERP方向为实时触发同步;
轮询时间:仅在ERP同步到CRM方向同步方式为轮询时支持设置,指ERP集成平台轮询的时间段,设置后代表每天仅在该时间段做轮询操作;
3.2.3.2 插入自定义函数:
同步前/中/后函数:指PaaS平台的自定义自定函数功能,此处不再赘述;
3.2.4 启用/停用
在 同步策略 菜单下,选中CRM对象,右侧查看对应的策略查,点击 启用/停用 按钮,即表示启用/停用该条同步策略,同一对象支持同时启用多条策略;
3.2.5 删除
在 同步策略 菜单下,选中CRM对象,右侧查看对应的策略查,点击 删除 按钮,即删除该条策略,当且仅当停用的策略才能删除;
3.3 数据维护
数据维护功能,是该CRM对象在启用该同步方向的同步策略后,记录的每条数据的一个成功/失败的记录。每一条同步策略有数据同步后,均会有对应的一条记录与之对应。在数据维护,选中CRM对象,点击右侧的数据同步,即可对该CRM对象的同步数据做进一步维护:
3.3.1 详情
详情即进入该条数据同步记录的详情界面,查看该条数据同步的一个成功/失败记录。基本信息 栏展示了对象的数据源系统和同步目标系统,映射关系 栏则展示了双方系统的字段绑定关系。若为失败记录,则右侧同步日志会记录是什么原因同步失败,实施同事可以根据失败提示做配置修改。
3.3.2 删除
删除即删除该条数据的同步记录,删除操作不会影响数据源和目标方原有的数据,仅仅删除数据源和目标方的数据对应关系,如果再次触发同步,数据范围内被删除了映射关系的数据还会同步,建议删除前先在双方系统删除已经同步的数据,或者请您修改同步策略的同步范围。请慎重操作,避免误删除后,重复同步相同数据,造成系统异常!
3.3.3 重新同步
针对已经同步失败的数据,可以点击该按钮触发一次重新同步。特别说明,该 重新同步 按钮触发的同步,会采用该对象最新的同步策略,而数据取的是上一次同步失败的数据快照。适用于失败原因非业务单据数据不正确而导致的同步失败。若因为业务单据数据错误而造成的同步失败,建议修改业务单据数据后,保存审核做一次数据同步触发。
3.3.4数据导入
启用同步策略后,在数据维护菜单,选中CRM对象进入对应同步方向的数据维护,右上角才有 导入 按钮,该导入按钮导入的是CRM数据与异构系统数据的中间表(映射关系)。该部分举例常见几个对象的导入步骤,以达到举一反三效果:
3.3.4.2 业务单据数据导入
业务单据初始化导入分两个步骤:
a、将ERP数据按CRM业务单据导入模板填写好,导入到CRM。导入成功后再将CRM单据导出(带id字段);
b、将CRM导出的数据表和ERP导出的数据表一一对应整理到中间表模板,填写对应好后,进入 管理>系统管理>系统对接管理>ERP数据同步>数据维护 ,选择同步方向下的对应对象,右侧即有导入按钮,按提示导入到ERP数据同步平台(注:若该处没有 导入 按钮,请检查是否启用了对应对象该方向的同步策略!):
3.3.4.3 库存数据导入
库存数据导入需要先同步仓库数据,将仓库数据同步完成后,再次导入库存数据,CRM库存单据对应ERP的即时库存,进入 管理>CRM平台管理>数据维护工具>数据批量导入 右侧上方选择数据导入,选择库存数据,将ERP的库存数据按库存导入的模板填写好后,导入即可。
导入完成后,进入 管理>系统管理>系统对接管理>ERP数据同步>数据维护 ERP同步到CRM方向下选择 库存 对象,右侧进入 数据维护 页面,点击 导入 按钮,下载导入模板后,将CRM导出的数据Excel和ERP导出的数据Excel按导入模板整理对应关系后,导入系统即可建议关联关系,注:库存 数据维护 列表中的 ERP中间对象主属性字段为ERP仓库编码||仓位#物料编码,该字段可以在 仓库 数据维护列表也可以查看到:
3.4 数据同步设置
数据同步设置支持ERP厂商设置、账户绑定、ERP对象管理、系统字段管理设置,具体详见如下每部分说明。
3.4.1 ERP厂商设置
下拉选择对应的ERP厂商,选择后,资料填写框会根据所选ERP厂商调整
3.4.1.1 金蝶云星空(包含早期K3Cloud版本)厂商设置
根据提示填写资料框保存即可。ERP厂商设置保存后不可自行更改,请谨慎填写;
3.4.1.2 U8厂商设置
提供方和调用方账号获取

应用编码、密钥获取

数据库需要客户提供,正常可以从客户的客户端可以查看到

3.4.2 账户绑定
账户绑定即CRM账户同ERP账号绑定建立映射关系。对接同步中,双方系统业务单据人员映射关系均取自账户绑定界面配置的映射关系。人员在ERP中绑定有三种方式,见下图:
操作 栏支持 编辑 和 删除,编辑 即修改该映射关系,修改后点击 确认 按钮保存退出。删除 即删除该条映射绑定关系。特别说明,CRM纷享账号和ERP账号为一一映射关系,不支持设置一对多或者多对一映射关系。
3.4.2.1 手工新建
手工新建即点击右上角 新建 按钮,在弹窗中填写ERP账号对应的职员姓名、职员代码、职员手机、用户账号登信息,并绑定纷享账号,填写无误后点击 确认 保存退出:
3.4.2.2模板导入
导入方式支持批量的将ERP导出的职员信息按模板导入到CRM,确认后会自动根据手机号匹配CRM账号,用户也可以做修改绑定关系:
导入模板:
3.4.2.3 自动同步
自动同步通过点击右上角 同步ERP职员账户 按钮,即会通过接口将ERP侧的账户信息同步过来。在同步界面,左侧勾选需要的绑定的职员,点击下方 同步 按钮,即可将所选择的职员回写到 账户绑定 界面。同时,系统默认会根据手机号做匹配并绑定。若需要修改绑定关系,则可以在 账户绑定 界面右侧操作栏,点击编辑即可对该条绑定关系做编辑操作。
特别提醒:自动同步会通过接口取ERP对应的职员列表信息,请实施同事同步前注意该对象是否维护数据。以金蝶云星空为例,自动同步会从 员工列表 对象同步数据,并不会取其他人员/用户列表数据,同步时请确认 员工列表 是否有维护需要同步的职员,以免误以为未同步过来的问题出现;
3.4.3 ERP对象管理
3.4.3.1 编辑对象
3.4.3.1.1 新增对象
配置工具梳理完需要对对接的对象和字段后,进入 管理>系统管理>系统对接管理>ERP数据同步>数据同步设置 ,配置完成ERP厂商设置、账户绑定之后,进入ERP对象管理 配置页签。右侧点击 新建 即进入ERP对象对应中间对象的配置界面;
基本信息栏:
ERP对象名称:填写ERP侧对象的名称;
ERP对象编码:即所填写的ERP侧对象对应的编码,以金蝶云星空(含早期K3 Cloud版本)销售订单为例,说明三种查看方法:
方法一:web api里面查看
登陆金蝶云星空(含早期K3 Cloud版本)之后搜索web api,进入api查看界面,左侧栏选择对应的单据,操作列表选择 保存 ,在下方第三条代码示例查找对应的ERP对象编码。见下图:
方法二:bos设计器查看
登陆bos设计器,,点击左上角的 查看 按钮,弹出对话框,查找值 中输入需要查找的ERP对象名称,点击查找按钮,在查找结果中,进入对应的领域、子系统查找配置的业务对象,对应右侧的 唯一标识 即为ERP对象编码;见下图:
方法三:设计文档查看
进入bos设计器界面,选择具体对象,打开对象视图,然后在菜单栏点击 编辑 下的 生成设计文档 选项,保存text文档后打开,首行webid即为对应的ERP对象编码。见下图:
拆分类型:目前支持四种类型,根据实际情况选择即可;
中间对象(中间对象1&中间对象2)
对象名称:根据实际填写中间对象的名称;
对象API-NAME:自动生成;
拆分类型:根据实际拆分场景填写,选项受基本信息>拆分类型选项影响。中间对象必须至少有一个拆分类型为主对象;
明细编码:输入ERP对象编码.明细ORM实体名称,ERP对象编码查看方法见基本信息说明,明细ORM实体名称查看方法:进入web api界面,左侧栏找到对应的单据对象,操作列表选择保存,第五点字段说明中,找到对接对象的ORM实体名称,即明细编码为:SAL_SaleOrder.FSaleOrderEntry,见下图:
添加完对象后,保存,退出即可;
3.4.3.1.2 编辑字段
3.4.3.1.2.1 新增字段
进入 管理>系统管理>系统对接管理>ERP数据同步>数据同步设置 的 ERP对象管理 页签,新建完对象后,保存退出,再对应的对象选择 编辑字段,进入字段新增界面:
字段名称:填写ERP侧该字段的名称;
字段编码:填写ERP侧该字段的编码,查看方法:
在金蝶云星空(含早期K3 Cloud版本)web api查询界面,左侧栏找到对应的业务单据,点击,右侧上方操作列表选择保存,第五点字段说明查看具体的字段名称及对应的apiname,点击上方的 在线测试WebAPI ,弹窗填写账户信息后点击 验证接口,操作列表选择 保存,在测试数据框即会展示对应的数据格式(为方便查看可以将数据格式复制出来放置网页版json校验工具或者notepad+工具中查看),对照字段说明通过字段名称查看的字段apiname查找。
以销售订单为例,将ERP销售订单拆分为主从中间对象,分别对主对象和从对象字段示例说明,左侧为ERP查看,右侧为在线测试WebAPI 保存 接口列表取出的数据在网页格式化后的展示效果:
示例:主对象字段编码/保存接口字段编码
注:此处需要加上FSaleOrderFinance,因为财务信息为子单据头;
示例:从对象字段编码/保存接口字段编码
特别说明:此处不需要加FSaleOrderEntry前缀,因为在ERP对象拆分中间对象时,明细编码已经填写了SAL_SaleOrder.FSaleOrderEntry,程序已有处理逻辑;
查看接口字段编码
在金蝶云星空(含早期K3 Cloud版本)web api查询界面,左侧栏找到对应的业务单据,点击,右侧上方操作列表选择保存,第五点字段说明查看具体的字段名称及对应的apiname,点击上方的 在线测试WebAPI ,弹窗填写账户信息后点击 验证接口,操作列表选择 查看,在测试数据框中 Number 字段添加单据编号,点击菜单栏的 接口验证 即可查看到该单据编号的订单查看接口返回的具体字段(为方便查看可以将数据格式复制出来放置网页版json校验工具或者notepad+工具中查看),对照字段说明通过字段名称查看的字段apiname查找。
以销售订单为例,将ERP销售订单拆分为主从中间对象,分别对主对象和从对象字段示例说明,左侧为ERP查看,右侧为在线测试WebAPI 查看 接口 详细结果框 取出的数据在网页格式化后的展示效果:
示例:主对象字段查看字段编码
特别说明:查看接口特别注意实际接口返回字段和字段说明的apiname不一样,例如单据编号字段(apiname:FBillNo)字段说明有F前缀,实际返回并没有,已接口实际返回为准!
对语言结构查看接口返回字段填写说明:
示例:从对象字段查看接口字段编码
特别说明:此处也不需要加SaleOrderEntry前缀;
保存接口字段编码:同上 字段编码 书写规则,不做赘述;
是否必填:根据实际选择;
字段类型:根据实际选择;
特别说明:从对象必须添加从对象的明细ID、虚拟主从字段,否则在后续添加同步策略时,无法选到对应的明细策略。填写见下图:

K3Cloud渠道还需要在主对象上面增加明细类型字段。字段编码为对象管理中的明细编码,保存接口编码和查看接口编码分别为webapi中保存接口和查看接口该明细的编码。下图是以订单明细为例,需要根据实际的明细来取值




3.4.3.1.3 删除
即删除该对象,删除后不可恢复,请谨慎操作;
3.4.3.1.4 生成api
该部分的目的是描述清楚ERP数据同步平台接口目前支持的几种接口说明(包括 主动调异构系统创建/修改接口推送信息、按时间段轮询异构系统增量数据、提供创建/修改接口被动接收异构系统推送信息 三种同步方式),供对接开发者使用,作为对接开发的依据,以避免双方沟通上的差异。
ERP数据同步平台接口查看/生成方式
接口查看方法:登陆CRM,进入 管理>系统管理>系统对接管理>ERP数据同步>数据同步设置 进入后在 ERP对象管理 页签下,新建 中间表对象后,配置完ERP侧对象的字段后返回,点击该对象右侧操作列的 生成api 按钮,即可查看到对应对象的接口格式;
ERP数据同步平台推送
指ERP数据同步平台监听CRM的 MQ消息,当客户在CRM创建/修改业务单据时,CRM会实时产生MQ消息通知到集成平台,平台接受消息后,实时将业务单据的数据主动推送至异构系统。接口查看方法参见ERP数据同步平台接口查看/生成方式部分;
创建接口
接口路径: http://MyDoman/path/create --请将http://MyDoman/path/ 以及curl中地址部分替换为ERP厂商设置页签实际填写的ERP访问路径
请求方式:POST
数据格式:支持xml.text.json等多种数据格式,推荐使用json格式;
请求格式:具体格式可以参考如下:
curl --location --request POST ' http://MyDoman/path/create' \
--header 'Content-Type: application/json' \
--header 'token: TOKEN' \
--data-raw'{
"objAPIName": "ERP侧对象的APIName",
"masterFieldVal": {
"Key1": "value1",
"Key2": "value2",
"Key3": "value3"
},
"detailFieldVals": {
"明细apiName1": [
{
"Key4": "value4",
"Key5": "value5",
"Key6": "value6"
}
]
"明细apiName2": [
{
"Key4": "value7",
"Key5": "value8",
"Key6": "value9"
}
]
}
}'
response示例:
{
"code": "错误返回码",
"message": "错误提示语",
"data": {
"masterDataId": "dataid",
"detailDataIds": {
"Key10": "value10",
"Key11": "value11",
"Key12": "value12"
}
}
}
修改接口
接口路径: http://MyDoman/path/update --请将http://MyDoman/path/ 以及curl中地址部分替换为ERP厂商设置页签实际填写的ERP访问路径
请求方式:POST
数据格式:支持xml.text.json等多种数据格式,推荐使用json格式;
请求格式:具体格式可以参考如下:
curl --location --request POST ' http://MyDoman/path/update' \
--header 'Content-Type: application/json' \
--header 'token: TOKEN' \
--data-raw'{
"objAPIName": "ERP侧对象的APIName",
"masterFieldVal": {
"Key1": "value1",
"Key2": "value2",
"Key3": "value3"
},
"detailFieldVals": {
"明细apiName1": [
{
"Key4": "value4",
"Key5": "value5",
"Key6": "value6"
}
]
"明细apiName2": [
{
"Key4": "value7",
"Key5": "value8",
"Key6": "value9"
}
]
}
}'
response示例:
{
"code": "错误返回码",
"message": "错误提示语",
"data": {
"masterDataId": "dataid",
"detailDataIds": {
"Key10": "value10",
"Key11": "value11",
"Key12": "value12"
}
}
}
ERP数据同步平台轮询
ERP数据同步平台主动查询需要异构系统提供批量和单个的查询接口。轮询 指指ERP数据同步平台以GET请求方式,定期的轮询异构系统批量的查询接口查询该时间段内增量的数据,默认6分钟一次(后续优化支持前台界面设置)。接口查看方法参见ERP数据同步平台接口查看/生成方式部分;
批量查询请求
接口路径: http://MyDoman/path/create --请将http://MyDoman/path/ 以及curl中地址部分替换为ERP厂商设置页签实际填写的ERP访问路径
请求方式:GET
返回数据格式:支持xml.text.json等多种数据格式,推荐使用json格式;
请求格式:
response示例:
{
"code": "错误返回码",
"message": "错误提示语",
"data": {
"totalNum": "总记录数",
"dataList": [
{
"masterFieldVal": {
"Key1": "value1",
"Key2": "value2",
"Key3": "value3"
},
"detailFieldVals": {
"明细apiName1": [
{
"Key4": "value4",
"Key5": "value5",
"Key6": "value6"
}
]
"明细apiName2": [
{
"Key4": "value7",
"Key5": "value8",
"Key6": "value9"
}
]
}
}
]
}
}
单个查询接口
接口路径: http://MyDoman/path/update --请将http://MyDoman/path/ 以及curl中地址部分替换为ERP厂商设置页签实际填写的ERP访问路径
请求方式:GET
返回数据格式:支持xml.text.json等多种数据格式,推荐使用json格式;
请求格式:
response示例:
{
"code": "错误返回码",
"message": "错误提示语",
"data": {
"masterFieldVal": {
"Key10": "value10",
"Key11": "value11",
"Key12": "value12"
},
"detailFieldVals": {
"明细apiName1": [
{
"Key13": "value13",
"Key14": "value14",
"Key15": "value15"
}
]
"明细apiName2": [
{
"Key13": "value16",
"Key14: "value17",
"Key15": "value18"
}
]
}
}
}
ERP数据同步平台接收
指异构系统创建/修改业务单据后,按两种不同的格式(标准格式/非标准格式)将数据推送到ERP数据同步平台。ERP数据同步平台被动接收方式下,要求异构系统推送的数据Header参数内容必须按照如下标准格式/非标格式两种方式的一种。若采用异构系统主动推送方式,推荐异构系统优先使用标准格式推送数据。接口查看方法参见ERP数据同步平台接口查看/生成方式部分;
注:标准格式和非标准格式是根据异构系统推送数据的格式区分。两种格式下,对推送信息的Header参数都有要求(标准格式要求header提供数据id),但非标准格式对推送信息的body部分无要求,而标准格式的body部分也必须按照平台要求格式提供,具体见下说明:
标准格式推送数据接口说明
接口路径: https://www.fxiaoke.com/erp/syncdata/open/objdata/push
请求方式:POST
数据格式:仅支持json数据格式;
请求Header参数:
字 段 说 明
token 请求认证字符串【请联系纷享研发侧提供】
tenantId 请联系纷享研发侧提供
objectApiName ERP侧真实的对象名称
数据同步设置->ERP对象设置->ERP对象编码可以找到
version v1
id【小写id】 数据id字段【必输字段,传输为标准数据格式时候必输。否则数据解析异常】
标准格式如下
请求格式:
{
"objAPIName": "ERP侧对象的APIName",
"masterFieldVal": {
"Key1": "value1",
"Key2": "value2",
"Key3": "value3"
},
"detailFieldVals": {
"明细apiName1": [
{
"Key4": "value4",
"Key5": "value5",
"Key6": "value6"
}
]
"明细apiName2": [
{
"Key4": "value7",
"Key5": "value8",
"Key6": "value9"
}
]
}
}
response示例(注:成功的errCode为s106240000,其他的为失败):
{
"errCode": "s106240000",
"errMsg": "成功"
}
非标准格式推送数据接口说明
接口路径: https://www.fxiaoke.com/erp/syncdata/open/objdata/push
请求方式:POST
数据格式:支持xml.text.json等多种数据格式,推荐使用json格式;
请求Header参数:
字 段 说 明
token 请求认证字符串【请联系纷享研发侧提供】
tenantId 请联系纷享研发侧提供
objectApiName ERP侧真实的对象名称
数据同步设置->ERP对象设置->ERP对象编码可以找到
version v1
请求格式:无限制
response示例(注:成功的errCode为s106240000,其他的为失败):
{
"errCode": "s106240000",
"errMsg": "成功"
}
3.4.4 系统字段管理
该部分支持国家、省、市、区、部门、产品分组等公共基础资料设置,支持单个和批量维护方法。
CRM部门编码导出(该链接需要浏览器登录CRM,且账号具有全部门查看权限。):CRM部门编码
3.4.4.1产品分类维护
产品分组支持批量维护、单个维护,同时,针对金蝶云星空标准化产品,还支持接口自动同步,具体说明见下:
3.4.4.1.1批量导入
进入 管理>系统管理>系统对接管理>ERP数据同步>数据同步设置 系统字段管理 下找到 产品分类 项,右侧操作栏点击 批量导入字段信息 进入导入界面,先下载模板,按模板填入数据再做导入;
导入完成后,再进入 管理>系统管理>系统对接管理>ERP数据同步>同步策略 在 ERP同步到CRM 方向选择产品,并进入 字段映射 界面,将 CRM产品分组 同ERP物料分类做绑定即可同步;
注:CRM产品分类ID列值参看b部分说明;
3.4.4.1.2 手动新建
进入 管理>系统管理>系统对接管理>ERP数据同步>数据同步设置 在 系统字段管理 页签界面,对应 产品分类 项操作列点击 编辑字段 进入编辑界面,点击 新建,按提示填写后即可。注:此处新建的是关联关系,两边ID和名称填写时要确保一致;
CRM侧产品分类数据查看方法:①如下图,进管理>CRM平台管理>对象管理>预设对象管理 选择产品进入产品分类页签,按F12,即可进入浏览器的开发者模式查看对应CRM产品分类ID、CRM基础数据名称、CRM基础数据ID;②进入 管理>数据维护工具>数据批量处理 选择 数据导出 进入导出界面,将CRM产品分类导出后即可查看对应的ID和名称;③登陆客户的CRM后,在旁边的浏览器打开:https://www.fxiaoke.com/FHH/EM1HNCRM/API/v1/object/product_category/service/list 即可看到当前企业的产品分类的list,用工具格式化之后即可查看对应的字段(字段参看如下截图);
ERP侧物料分类数据查看方法(金蝶云星空(含早期K3 Cloud版本)为例):在物料分组边界界面即可查看该分组的编码和名称,分别对应ERP基础数据ID和名称;
3.4.4.1.3 自动同步(目前只支持金蝶云星空):
进入 管理>系统管理>系统对接管理>ERP数据同步>数据同步设置 在 系统字段管理 页签界面,对应 产品分类 项操作列点击 编辑字段 进入编辑界面,点击ERP物料分组导入 按钮,即可从接口上获取到金蝶云星空(含早期K3 Cloud版本)物料分组信息并同步并创建至CRM的产品分组,自动导入无误后 确认 退出,保存 即可;
(注:该同步方法需确认CRM不存在ERP对应的分组数据,若之前有同步/导入过,需先删除CRM产品对应的产品分组,再删除此处对应关系,才能再次同步金蝶云星空(含早期K3 Cloud版本))
四. 功能点对接设置
4.1 K3 Cloud价目表和可售范围对接
K3 Cloud中对象是销售价目表(BD_SAL_PriceList,如果预置对象没有请找研发添加),需要对接到CRM中两个对象价目表(PriceBookObj)和可售范围(AvailableRangeObj)。
第一步:
先进入K3 Cloud价目表的对象配置。

第二步:
在对象里面里面添加一个自定义的从对象,对象名称随意,编码必须是:BD_SAL_PriceList.AvailablePriceBookObj,拆分类型为从对象(明细)。

第三步:
配置完对象后,进入字段配置。

字段内容如下图。其中价目表的引用字段名必须是:AvailablePriceBookObj。


第四步:
建立两个策略和分别建立策略明细。

第五步:
CRM价目表对象按照需求正常对接就可以。可售范围,当前不支持按照范围选取客户和产品,只支持按照具体明细对接。所以三个范围都要按照固定值对接。
客户:{"type":"FIXED","value":"FIXED"}、组织:{"type":"ALL","value":"ALL"}、产品:{"type":"FIXED","value":"FIXED"}。

第六步:剩余字段按照需求自行对接。
4.2 多规格对接
4.3 多单位对接
1.多单位对接涉及两个erp对象,如下图,如果这两个预设对象在对象管理里面没找到,联系研发初始化
2.如果物料单位换算没有该字段:CrmConvertNumber,请手动添加
3.单位对象的策略配置(crm单位对接erp计量单位)
4.多单位关联表的策略配置(crm多单位关联表对接erp物料单位换算)
5.如果crm已经存在了部分单位,请在数据单位的数据维护导入crm已经存在的的单位映射
6.如果新增的测试数据都没有问题了,联系研发同步历史所有单位和单位换算数据
注意:如果erp的单位有重名的情况,要联系客户修改,或者通过自定义函数把重名的单位拼接一些后缀同步到crm,
因为crm单位不允许重名
4.4 K3C的CPQ对接
1.CPQ对接涉及物料清单对象,下图中如果没有物料清单对象,请联系研发进行初始化

需自行在ERP物料清单对象增加5个字段:【是否必选】、【父BOMid】、【产品编码】、【数量】、【根BOMid】
a.【是否必选】-- 字段编码为isRequired,字段类型为布尔值

b. 【父BOMid】-- 字段编码为parent_bom_id,字段类型为查找关联,关联对象为物料清单

c.【产品编码】-- 字段编码为productId,字段类型为查找关联,关联对象为物料

d. 【数量】-- 字段编码为quantity,字段类型为数字

e. 【根BOMid】-- 字段编码为root_id,字段类型为查找关联,关联对象为物料清单

2.新建产品选配明细对象策略,并新建策略明细把ERP【物料清单】对象与之对接,如下图

字段映射如下:
CRM【产品选配明细】对象【启用状态】字段设置为固定值“是”
CRM【产品选配明细】对象【必选】字段与ERP【物料清单】中的【是否必选】字段映射
CRM【产品选配明细】对象【产品名称】字段与ERP【物料清单】中的【产品编码】字段映射
CRM【产品选配明细】对象【根BOMid】字段与ERP【物料清单】中的【根BOMid】字段映射
CRM【产品选配明细】对象【数量】字段与ERP【物料清单】中的【数量】字段映射
CRM【产品选配明细】对象【父BOMid】字段与ERP【物料清单】中的【父BOMid】字段映射
其余字段客户根据需求自行对接


3.在ERP数据同步 -> 数据同步设置 -> ERP对象管理,物料对象有预置【套件】字段,选项设置按下图配置

4.在产品策略明细中,增加CRM【产品】对象【产品组合】字段与ERP【物料】中的【套件】字段映射

增加如下字段映射

5.策略配置好后,在K3C新增物料清单,检查能否正确同步到CRM。在K3C新增物料清单步骤如下
(1)新增父物料,物料属性选择“自制”,套件选择“是”

(2)新建物料清单,选择父物料及子物料

6.CRM同步到ERP方向,销售订单支持CPQ,配置步骤如下
(1)在ERP数据同步 -> 数据同步设置 -> ERP对象管理,订单明细对象有预置【产品类型】字段,选项设置按下图配置,四个选项编码分别为Standard,Parent,Son,Service

(2)给CRM【订单产品】对象新增【产品类型】字段,类型为单选,API Name任意,选项设置如下,四个选项编码分别为Standard,Parent,Son,Service

(3)在销售订单策略明细中新增CRM【订单产品】对象【产品类型】字段与ERP【订单明细】中的【产品类型】字段映射

新增字段映射,如下图红色框出区域

(4)策略配置好后,在CRM新增销售订单,订单产品选择产品组合,订单产品对象的产品类型字段必须填写-参照下图,新建好后检查同步到ERP是否正确

(5)K3C销售订单套件自动展开,需启用套件管理,操作如下图

4.5 SAP的CPQ对接
4.6 K3C订单变更对接
第一步:在K3C启用订单新变更单

第二步:在CRM销售订单对象新增【变更原因】字段,字段类型为文本

第三步:在销售订单策略明细中,增加变更原因字段映射

增加如下字段映射

注:CRM修改订单时必须填写变更原因字段,才能同步K3C
4.7 多账套/多数据中心对接
4.8 K3C自定义对象对接
4.9 K3C自定义字段对接
4.10 K3C国家省市区对接
K3C国家省市区对接有两种对接方式,一种是在系统字段管理将纷享侧的国家省市区与K3C的国家省市区进行关联,另外一种方式是通过辅助资料对接
一、第一种方式,在系统字段管理进行关联
第一步:在K3C和CRM找到国家省市区数据
K3C的国家、省、市、区在辅助资料列表中可以找到,如下图所示

可在选项操作导出国家省市区数据,如下图所示,在选项点击引出

CRM的国家、省、市、区数据见附件【国家省市区】,或实时获取最新数据(浏览器需要登录CRM且账号具有CRM权限):国家省市区
第二步:在ERP数据同步 -> 数据同步设置 ->系统字段管理,将纷享侧的国家省市区与K3C的国家省市区进行关联

第三步:在同步策略将国家、省、市、区字段进行映射,注意字段类型需是国家、省、市、区,比如下图的国家字段映射。

二、第二种方式, 通过辅助资料对接
第一步 在ERP数据同步->数据同步设置->ERP对象管理检查预置对象是否有辅助资料,没有则找研发添加

第二步 在CRM新建自定义对象-辅助资料,字段设置如下,上级资料字段查找关联辅助资料


第三步 建立辅助资料同步策略,字段映射如下所示


第四步 将K3C国家省市区的辅助资料同步到CRM后,在CRM新建查找关联辅助资料字段,并进行映射

4.11 K3C附件字段对接
附件字段对接,需要先在ERP对象新建附件字段,然后与CRM附件字段进行映射即可;附件字段对接CRM往ERP、和ERP往CRM都支持,需注意的是金蝶K3C附件字段只能上传一个附件,所以如果CRM附件有多个,只会取第一个同步到金蝶K3C中
下面以客户对象的附件字段对接为例来进行讲解
1.在ERP客户对象新建附件字段,字段名称任意,字段类型选择附件。字段编码、查看接口字段编码、保存接口字段编码填写参考【3.4.3.1.2.1 新增字段】

2.在同步策略的字段映射中把附件字段进行映射即可

其余对象附件字段对接参考该步骤即可
4.12 K3C批次对接
K3 Cloud中对象是批号主档(BD_BatchMainFile,如果预置对象没有请找研发添加),需要对接到CRM的批次对象
第一步:建立批次对象同步策略

第二步:配置批次对象同步策略的字段映射,根据需求对接即可

第三步:在物料对象中增加三个字段,【启用批号管理】-- 字段编码为MaterialStock[0].IsBatchManage,查看接口字段编码为MaterialStock[0].IsBatchManage,字段类型为布尔值;【是否开启批次序列号管理(虚拟)】-- 字段编码为VirtualHasBatchAndSerial,字段类型为单选,选项设置:1对应不开启;2对应开启批次管理,3对应开启序列号管理;【启用序列号管理】--字段编码为 MaterialStock[0].IsSNManage,查看接口字段编码为MaterialStock[0].IsSNManage,字段类型为布尔值



第四步:
在产品对象同步策略中配置是否开启批次序列号管理字段映射。点击产品对象的字段映射

增加下图中的字段映射

4.13 K3C序列号对接
第一步:ERP对象管理中增加序列号主档、和物料对象、销售出库单对象中序列号相关字段(如果序列号主档预置对象没有请找研发添加)
1.序列号主档(没有请找研发添加)
2.物料对象中增加三个字段
a.【启用批号管理】:字段编码为MaterialStock[0].IsBatchManage,查看接口字段编码为MaterialStock[0].IsBatchManage,字段类型为布尔值;
b.【是否开启批次序列号管理(虚拟)】: 字段编码为VirtualHasBatchAndSerial,字段类型为单选,选项设置:1对应不开启;2对应开启批次管理,3对应开启序列号管理;
c.【启用序列号管理】--字段编码为 MaterialStock[0].IsSNManage,查看接口字段编码为MaterialStock[0].IsSNManage,字段类型为布尔值;
3.销售出库单中增加四个字段
a.【序列号(编码)】:字段编码为crmSerialNo,字段类型为文本
b.【序列号备注】:字段编码为crmSerialNote,字段类型为文本
c.【序列号(id)】:字段编码为serialId,字段类型为查找关联,引用对象为序列号主档
d.【出库序列号】:字段编码为SAL_OutStockSerial,字段类型为文本

第二步:建立序列号主档对象的同步策略和完成字段映射


第三步:产品对象同步策略增加“是否开启批次序列号管理”映射字段

增加下图中的字段映射

第四步:发货单同步策略明细字段映射增加【序列号(编号)】、【序列号备注】、【序列号(id)】三个映射字段 注:如果发货单为自定义对象,无需做【序列号(id)】字段映射。

发货单明细中增加下图中的字段映射

注:同步成功后会将K3C出库单每行产品明细拆分成的多条数量为1的发货单产品明细(条数与K3C出库单该产品的出库数量保持一致),也可以不进行拆分(找研发设置),会将多个序列号拼接再一起传至CRM序列号字段。
4.14 不能按照时间查询数据的对接
4.15 发货单自动关联库存
第一步:
在CRM发货单对象新增字段【无库存ID集成平台同步标识】,字段类型为布尔值,API Name设置为field_no_stock_id_integration_flag__c

第二步:在发货单同步策略增加【无库存ID集成平台同步标识】字段映射,设置为固定值“是”,如下图

4.16 ERP一个对象,要对接CRM的主从两个对象
ERP一个对象对接CRM主从两个对象,在新建ERP对象的时候需要把ERP对象的拆分类型选择为“ERP对象拆分为主从关系的中间对象”,然后再跟CRM主从对象对接
下面以ERP【销售订单】为例来进行讲解。
1.首先需要新建对象,进入ERP数据同步 -> 数据同步设置 -> ERP对象管理新增对象,拆分类型选择“ERP对象拆分为主从关系的中间对象”,ERP对象编码以及明细编码填写可参考【3.4.3.1.1 新增对象】

2.新建完对象后,根据需求新增ERP主从对象字段,操作可参考【3.4.3.1.2.1 新增字段】

3.之后新建同步策略,拆分后的ERP主对象与CRM主对象映射,拆分后的ERP从对象与CRM从对象映射,如下图

其余对接可参照以上示例配置
4.17 CRM一个对象,对接ERP的两个对象
CRM一个对象,对接ERP两个对象,先建立CRM对象的同步策略,后新增与两个ERP对象对接的策略明细即可
下面以CRM【开票申请】对象为例进行讲解。假设CRM【开票申请】对象,需要对接ERP【增值税销售发票】以及【销售普通发票】
则先新建CRM【开票申请】对象同步策略,然后再新增与ERP【增值税销售发票】以及【销售普通发票】对接的策略明细,如下图

其余此需求可参照该示例进行对接
4.18 ERP一个对象下的数据,按条件对接到CRM两个独立的对象
ERP一个对象按条件对接到CRM两个独立的对象,要先建好ERP对象与CRM两个独立对象的策略明细,在策略明细中设置数据范围条件则可根据该条件过滤数据
下面以ERP出库单为例来进行讲解。假设ERP出库单需要对接到CRM预设对象【发货单】以及自定义对象【销售出库单】,当ERP出库单【销售组织】字段值等于“纷享销客”时,同步到CRM预设对象【发货单】;当ERP出库单【销售组织】字段值不等于“纷享销客”时同步到CRM自定义对象【销售出库单】,则按照如下步骤操作可实现该功能:
1、首先建立CRM【发货单】跟ERP出库单对接的策略明细以及CRM【销售出库单】跟ERP出库单对接的策略明细


2、根据条件当ERP出库单【销售组织】字段值等于“纷享销客”时,同步到CRM预设对象【发货单】;当ERP出库单【销售组织】字段值不等于“纷享销客”时同步到CRM自定义对象【销售出库单】,分别设置策略的数据范围条件如下
CRM【发货单】跟ERP出库单对接的同步策略,数据范围按如下设置

CRM【销售出库单】跟ERP出库单对接的同步策略,数据范围按如下设置

其他条件参照示例配置即可
4.19 CRM的数据同步到ERP后,ERP更改完数据回写到CRM
要完成此对接,需两个同步方向都建立同个CRM对象与同个ERP对象对接的同步策略,并在CRM往ERP方向策略的同步规则中,同步事件监听、同步事件写入只勾选新增,在ERP往CRM方向策略的同步规则中,同步事件监听、同步事件写入只勾选修改
下面以销售订单为例,假设销售订单数据是由CRM同步到ERP,在ERP更改完数据后回写到CRM
1.在两个同步方向都建立销售订单同步策略如下


2.在CRM同步到ERP方向同步策略的同步规则中,同步事件监听、同步事件写入只勾选新增;

3.在ERP同步到CRM方向的同步策略的同步规则中,同步事件监听、同步事件写入只勾选修改;

其余对接可参照以上示例配置
4.20 ERP调价后,快速同步到CRM的产品
4.22 U8新增、查询如何增加属性?
可查阅文档Openapi Eai Api 常见问题 的2.18、2.21节内容
新增接口添加属性
开放平台安装目录config\META-INF\templates下,存放各对象接口的数据格式,新增接口添加属性可在\add目录下,找到对应对象的xml文件,在其中添加属性,添加的属性是EAI数据字典里能查到的。

查询接口添加属性
开放平台安装目录config\META-INF\datasource\query下是各对象查询的sql语句,可在sql语句中添加要查询的属性字段,config\META-INF\datasource\rules是各对象实际的openapi返回的字段,在field_list中配置过滤的字段和要添加的字段。

4.21 自定义函数
4.21.1ERP集成平台当前支持三种类型的自定义函数介绍
1.固定入参:Map syncArg

2.固定返回:return syncArg;
3.自定义函数校验:只要自定义函数代码中含有 Fx.object.create 、Fx.object.batchCreate 、Fx.object.update 、 Fx.object.batchUpdate 等其中一个字符串即表明函数body处于更新/新增/作废的调用。 场景:在自定义函数中加入上述字符串(字符串注释无效,同样会检测)并且含有与绑定字段apiName相同的字符串(注释也会检测),策略将无法开启,并报异常函数校验失败。
4.数据新增时:syncArg.objectData是对象主数据,syncArg.details是对象明细数据
5.数据更新时:syncArg.objectData有可能是主对象数据有可能是从对象数据,具体得通过objApiName来判断
4.21.2同步前自定义函数执行支持数据过滤:
即函中返回结果中包含"isExec":"false",即该次同步将不再往后执行,目标数据将不会做出相应的更改。
测试场景:在自定义函数返回的Map中加入"isExec":"false",或"isExec":false目标数据将不会发生更改。
函数代码: Map map = ["details":syncArg.details, "objectData":syncArg.objectData, "isExec":"false" ]; return map;
4.21.3同步中执行自定义函数:
函数执行后,在函数中编写的映射值修改,企业id和对象apiName不会更改。
测试场景:只有新增数据,才会携带从对象;更新时会更新对象映射值,因此如果没有对从对象做出特殊鉴别,更新的对象将不区分主从对象,一律更新,主从对象名称都会更新为自定义函数赋值
函数代码:
log.info("事件类型:" + syncArg.destEventType); log.info(syncArg.objectData); log.info(syncArg.details); Map objectData = syncArg.objectData as Map; objectData.name = "自定义函数修改" Map map = ["details":syncArg.details, "objectData":syncArg.objectData]; log.info(map); return map;
4.21.4同步后执行自定义函数:
函数执行后,在函数中编写的映射值修改,企业id和对象apiName不会更改。
测试场景:数据同步不会受到影响,只是将数据传给自定义函数即可,需要通过查看日志进行判断
函数代码: Map map = ["details":context.details, "objectData":context.data, "afterSync" : "yes001"]; return map;
具体入参字段(如果不清楚入参有什么字段就先把函数写好,然后打印入参看一下,注意新增和更新入参不一样)和函数例子如下
同步前:通过数据范围的校验之后
主要入参字段: { "destObjectApiName": "",//目标对象apiName "sourceData": {"字段apiName":"字段值"}//对象字段信息 }
简单例子:
log.info(syncArg); String destObjApiName=syncArg["destObjectApiName"] as String; log.info("destObjectApiName:"+destObjApiName); if("object_xo21i__c"==destObjApiName){ return syncArg; } Map objectData=syncArg["objectData"] as Map; String customerCode=objectData["customerCodeHead"] as String; syncArg["isExec"]=false;//把这个字段设置为false,会过滤掉这条数据不同步 return syncArg;
同步中:写入目标系统之前
主要入参字段: { "destDetailSyncDataIdAndDestDataMap": {"":{"字段apiName":"字段值"}},//目标对象明细 "destData": {"字段apiName":"字段值"}//目标对象字段信息 //如果新增主对象在destData,明细数据在destDetailSyncDataIdAndDestDataMap,如果是更新主从数据都在destData(更新是单独更新的) }
简单例子:
//修改customerShortName字段值 log.info(syncArg); syncArg["objectData"]["customerShortName"]="dddddd" log.info(syncArg); return syncArg;
同步后:写入目标系统之后
主要入参字段: { "sourceDataId": "5fead1146660700001170e3d",//源数据id,只有crm->erp方向有这个字段 "sourceObjectApiName": "AccountObj",//源对象apiName "completeDataWriteResult": {//写入目标数据的结果 "detailWriteResults": [],//明细数据结果 "errCode": 0, "success": true, "destEventType": 1, "errMsg": "success", "writeResult": {//主数据结果,errCode为s106240000成功,其他的失败接口返回的错误码 "errCode": 5001, "success": false, "syncDataId": "3ab1c2c2ffe04111b3e713632d5a4f76", "errMsg": "预处理服务调用错误:调用外部http接口失败,错误信息:100,SAP系统BP名称已创建,不允许重复创建。::errCode=s306240003", "destDetailSyncDataIdAndDestDataMap": {} } }, "destObjectApiName": "AccountObj_1el03su6s",//目标数据对象apiName "objectData": {//目标数据 "tenant_id": "706089",//企业ei "object_describe_api_name": "AccountObj_1el03su6s",//对象apiName "_id": "5fead2696532bf0001e524e4" }, "details": {},//明细数据 }
简单例子:
//crm->erp,把目标对象的id写到crm源对象
log.info(syncArg)
if(syncArg["objectData"]["_id"]!=null&&syncArg["objectData"]["_id"]!=""
&&syncArg["sourceDataId"]!=null&&syncArg["sourceDataId"]!=""){
String destDataId=syncArg["objectData"]["_id"] as String;//目标数据id
String sourceDataId=syncArg["sourceDataId"] as String;//源数据id
String errCode=syncArg["completeDataWriteResult"]["writeResult"]["errCode"]as String;
log.info("--"+errCode)
if (errCode =="0"){//&&destDataId.length()<11
def (Boolean error,Map data,String errorMessage) =
Fx.object.update("AccountObj",sourceDataId,
["field_b25i7__c":destDataId],true);
log.info(errorMessage)
}
}
return syncArg;
4.22 数据中间表开放接口能力
自定义函数可以插入/修改/查询数据映射表,函数例子如下:
Map header=[:] //创建数据映射 Map param1=["ployDetailId":"155bd981457343f291e0edc13776217f",//策略明细id,如果策略被删除重新建了,这里需要改动 "sourceObjectApiName":"AccountObj",//源对象apiName,如果对象apiName变了,这里要改动 "destObjectApiName":"BD_Customer.BillHead",//目标对象apiName(虚拟的),如果对象apiName变了,这里要改动 "sourceDataId":"sourceDataId123",//源对象数据id "destDataId":"destDataId123666",//目标对象数据id "sourceDataName":"sourceDataName3666",//源对象数据name属性 "destDataName":"destDataName66",//目标对象数据name属性 "remark":"remark1341"];//备注 def result1=Fx.proxy.callAPI("erp.syncData.createSyncDataMapping",header,param1); //[false, HttpResult(statusCode=200, content={"errCode":"s106240000","errMsg":"成功"}, bytes=null), ] s106240000成功,其他失败 log.info(result1)
//根据源对象数据id更新目标对象数据id Map param2=["sourceObjectApiName":"AccountObj",//源对象apiName,如果对象apiName变了,这里要改动 "destObjectApiName":"BD_Customer.BillHead",//目标对象apiName(虚拟的),如果对象apiName变了,这里要改动 "sourceDataId":"sourceDataId123",//源对象数据id "destDataId":"destDataId123666"]//目标对象数据id def result2=Fx.proxy.callAPI("erp.syncData.updateSyncDataMapping",header,param2); //[false, HttpResult(statusCode=200, content={"errCode":"s106240000","errMsg":"成功"}, bytes=null), ] s106240000成功,其他失败 log.info(result2)
//查询源对象数据id是否存在映射关系 Map param3=["sourceObjectApiName":"AccountObj",//源对象apiName,如果对象apiName变了,这里要改动 "destObjectApiName":"BD_Customer.BillHead",//目标对象apiName(虚拟的),如果对象apiName变了,这里要改动 "sourceDataId":["sourceDataId123"]]//源对象数据ids,List //如果需要查询目标对象数据id是否存在映射关系,把sourceDataId改成destDataId,如果两个都传只会根据源数据id查询 def result3=Fx.proxy.callAPI("erp.syncData.getSyncDataMappingBySourceDataId",header,param3); // [false, HttpResult(statusCode=200, content={"data":{"sourceDataId123": //{"sourceDataId":"sourceDataId123","isCreated":true,"destDataId":"destDataId123666","sourceDataName":"sourceDataName1233","updateTime":1611047455451,"lastSyncStatus":6, //"destDataName":"destDataName123","destTenantId":"81138","sourceObjectApiName":"AccountObj","destObjectApiName":"BD_Customer.BillHead","sourceTenantId":"81138", //"statusName":"新增成功","id":"aa46ed320312476485e932a1ca4b4263","lastSyncDataId":"92c86fb175254e54b990bd86b6ce1145","status":1}},"errCode":"s106240000","errMsg":"成功"}, bytes=null), ] //s106240000成功,其他失败 //data是一个Map,存储着存在映射关系的数据,key是源数据id,value是已存在的对应关系, log.info(result3)
4.23 ERP导入历史到CRM
分下面几种情况处理:
1.已经把数据手工导入到CRM了。 需要把ERP和CRM数据ID映射关系导入中间表。请参考3.7节的内容写入中间表。
2.ERP这边不能提供读接口。按照第1条处理,手工导入历史数据。
3.ERP这边可以提供读接口。配置ERP到CRM的数据同步策略,测试增量数据同步是否正确。然后找研发处理全量的历史数据同步。
4.24 自定义函数新建erp字段映射表
//channel合法值有 ERP_K3CLOUD,ERP_SAP,ERP_U8,OA,STANDARD_CHANNEL //"dataType":"employee" 表示新建的是人员 //dataCenterId是数据中心id //fsDataId是crm上的数据id.对于人员,这里是员工ID,不是crm人员对象的数据id. //erpDataId是erp上的数据id //fsDataName是crm的数据名称 //erpDataName是erp上的数据名称
Map data = ["dataCenterId":"数据中心id", "channel":"ERP_K3CLOUD","dataType":"employee", "fsDataId":"fsDataId","fsDataName":"fsDataName","erpDataId":"erpDataId","erpDataName":"erpDataName"];
def ret = Fx.proxy.callAPI("erp.syncData.createErpfieldmapping", [:], data); Fx.log.info("ret is : "+ret)
4.25 可售范围+价目表
4.27 K3c订单回溯
4.28 沙盒拷贝
4.29 单据从CRM同步到K3Cloud关联上游单据
创建K3Cloud单据时如果需要关联上游单据,接口需要特殊的格式和传值。WebAPI保存接口实现上下游关联 (kingdee.com)以下以预设【发货通知单】为例说明对接方案。
一些准备步骤
第一步,查询发货通知单的单据关联配置,确定关联数据包放在哪里
a.首先打开BOS设计器

b.选择单据对应的业务领域,比如发货通知单在供应链-销售管理下,选择后点击确定即可

c.找到单据关联配置,确定关联数据包放在哪里。下图示例的发货通知单的关联数据包是放置在明细里面

第二步,从webapi获取需要对接的字段

| 名称 | 字段编码 | 保存字段编码 | 对接说明 |
|---|---|---|---|
| 关联关系表 | FEntity_Link | FEntity_Link[0] | 拼接在其他字段前 |
| 转换规则 | FEntity_Link_FRuleId | FEntity_Link[0].FEntity_Link_FRuleId | 固定值:SaleOrder-DeliveryNotice |
| 源单表 | FEntity_Link_FSTableName | FEntity_Link[0].FEntity_Link_FSTableName | 固定值:T_SAL_ORDERENTRY |
| 源单内码 | FEntity_Link_FSBillId | FEntity_Link[0].FEntity_Link_FSBillId | ERP订单ID |
| 源单分录内码 | FEntity_Link_FSId | FEntity_Link[0].FEntity_Link_FSId | ERP订单明细ID |
| 原始携带量 | FEntity_Link_FBaseUnitQtyOld | FEntity_Link[0].FEntity_Link_FBaseUnitQtyOld | |
| 修改携带量 | FEntity_Link_FBaseUnitQty | FEntity_Link[0].FEntity_Link_FBaseUnitQty | |
| 原始携带量 | FEntity_Link_FStockBaseQtyOld | FEntity_Link[0].FEntity_Link_FStockBaseQtyOld | |
| 修改携带量 | FEntity_Link_FStockBaseQty | FEntity_Link[0].FEntity_Link_FStockBaseQty |
第三步,获取转换规则内码


第四步,获取源单相关信息
从第一步得知,需要关联销售订单的订单明细实体。通过bos查询销售订单-订单明细的实体表名。

配置步骤
第一步,在crm的订单对象上新增两个单行文本字段,用于储存ERP订单ID和ERP订单编码。在crm申请单明细对象增加一个引用字段,引用订单的ERP订单ID

第二步,订单是CRM往ERP方向,通过手段在同步后填ERP订单ID和ERP订单编码字段。订单是ERP往CRM方向可以直接配置这两个字段的映射。订单 是CRM往ERP方向可以配置一个同步后自定义函数。示例函数如下:订单同步后回填K3订单id和编码
第三步,在ERP中间对象增加字段:如上表(从准备步骤中的第二步可得)
第四步,字段映射参考
引用的ERP订单ID字段对接到源单内码,关联订单产品的查找关联字段对接到【源单分录内码】【销售订单EntryId】,【源单类型】使用固定值SAL_SaleOrder。【转换规则】使用固定值,由准备步骤中的第三步获取。【源单表】使用固定值,由准备步骤中的第四步获取

第五步,测试。需要注意测试订单同步回写id,以及申请单同步是否成功关联订单。注:未对接携带量,可能导致订单 上面的回填字段(累积发货通知数量)不准确。
U8扩展自定义字段如何对接?
CRM->ERP方向的数据,会调用openapi的新增和修改接口,新增和修改接口默认是对扩展自定义字段开放的,需要在EAI接口设置上去掉忽略自定义项扩展信息配置



ERP->CRM方向的数据,会调用openapi的批量查询和单条数据查询的接口,批量查询是用于轮询时根据条件批量获取到数据,再根据这些获取到的数据的id调用单条数据查询的接口获取到详细的字段值,因此查询条件加在批量查询的接口上(见此文档【九.36】),对接的字段加在单条数据查询的接口上。
扩展自定义字段一般存放在【表名_extradefine】表中,如存货的扩展自定义字段存放在【Inventory_extradefine】中,单条数据查询接口想要开放出相应的字段,需修改相应的xml中的sql语句,下面以存货为例:


上图的cidefine2即为扩展自定义项2,用户根据自己的需求添加字段,扩展自定义项N则为cidefineN
t.cinvcode=i.cinvcode 为数据存放表和扩展自定义字段存放表之间的关联关系,在存货中为存货编码,一般为数据编码关联,具体关联可以查看下数据库中的数据
扩展表别名.cidefineN as 扩展字段别名(也可以不起别名)
left join 表名_extradefine 扩展表别名 on 扩展表别名.关联字段=主表别名.关联字段
修改完sql后,需要在rule中添加刚刚新加的字段,并重启开放平台客户端


ERP->CRM单独对接U8客户地址如何实现?
预设的客户地址为客户的子对象,子对象不允许单独创建策略,因此需要单独创建自定义对象对接客户地址,该自定义对象查找关联客户
ERP对象的主键要设置为 customeraddressId
五. 金蝶K3Cloud按照CRM对象对接设置
1. K3c多组织
1.1 先导入K3C组织机构
1.首先在CRM菜单中配置ERP组织机构对象:
进入 管理>CRM平台管理>界面定制管理>CRM主页自定义>菜单模块管理 右侧选择应用菜单名称为CRM,点击编辑 进入 下一步 在设置菜单项页面,搜索 “ERP组织机构” 设置为可见(若无该选项,请通过添加自定义菜单添加进去),保存退出;
2.用Admin账号登录云星空,把组织机构导出来。


3.进入CRM>ERP组织机构,手工在CRM上新建组织数据,如下图:

4.CRM上的数据新增完成后,添加同步策略及映射关系:
进入 管理>系统管理>系统对接管理>ERP数据同步>同步策略 选择同步方向(ERP同步到CRM)下的ERP组织机构,右侧添加策略并进入字段映射(业务类型和负责人设置为插入固定值,其他字段配置见下图):
5.进入 管理>系统管理>系统对接管理>ERP数据同步>数据维护 ERP同步到CRM方向下选择ERP组织机构对象,右侧进入 数据维护 页面,点击 导入 按钮,下载导入模板后,填写对应关系后,导入系统即可建议关联关系;


1.2 指定需要同步 的客户,物料,仓库 的组织。

是否同步客户:CRM往K3C同步客户的时候,把该组织当做创建组织。
是否同步物料:K3C往CRM同步产品的时候,会把该组织编码作为K3C上的物料使用组织进行条件过滤。
是否同步仓库:K3C往CRM同步产品的时候,会把该组织编码作为K3C上的仓库使用组织进行条件过滤。
1.3 CRM客户往ERP同步,指定K3C创建组织。
CRM订单对象往ERP同步时,设置方法也是一样的。


2. K3C辅助资料和辅助属性
2.1 K3C辅助资料对接
判断要对接的内容是否是k3c的辅助资料,可以参考第八章,1.8节。
对接方案:K3C的辅助资料的数据,对接到CRM上的辅助资料对象,CRM上其它对象查找关联辅助资料。
第一步 在ERP数据同步->数据同步设置->ERP对象管理检查预置对象是否有辅助资料,没有则找研发添加

第二步 在CRM新建自定义对象-辅助资料,字段设置如下,上级资料字段查找关联辅助资料



第三步 建立辅助资料同步策略,字段映射按照下图配置

设置字段映射

配置好字段映射,开启同步策略即可。
以客户对象为例,配置 国家的映射,其它对象的配置方式是一样的。

把字段类型改为查找关联,如果预置的类型不是查找关联,直接改动就行。


设置客户对象的"国家"字段的字段映射关系

最后开启同步策略,还要联系研发刷历史数据。
2.2 K3C辅助属性对接
2.2.1 辅助属性的概念
判断要对接的内容是否是k3c的辅助属性,可以登录到客户的K3C系统后,搜索“辅助属性列表”,看看要对接的字段在不在里面。
对接方案:K3C的辅助属性,是几个字段。对接到CRM上分情况选择不同的方案:
值来源是基础资料:辅助属性字段配置为查找关联字段,查找关联基础资料对象。如果在ERP对象管理中,找不到该基础资料对象,联系研发预置。
值来源是辅助资料:辅助属性字段配置为查找关联字段,查找关联辅助资料对象。辅助资料对象的对接,请参考2.1章节。
值来源是手工输入:辅助属性字段配置为文本字段。
简单来说,辅助属性就是在现有物料基本属性的基础上动态的为物料添加的属性集合,物料的属性=基本属性+辅助属性,我们在k3cloud建立了辅助属性,需要在编辑物料的时候手动勾选需要启用的辅助属性,辅助属性启用后,如果有库存记录,就不能再修改物料的辅助属性,反之,则可以。注意:辅助属性库存对象的对接,目前只支持自定义库存对象的对接

辅助属性的类型和值来源
辅助属性字段配置说明

1.基础资料
辅助属性的值来源于基础资料对象,对接的时候,也需要对接对应的基础资料对象,比如:辅助属性的值来源于银行对象,那么就需要对接银行对象
基础资料对象查找方法

基础资料对象银行的id字段配置

基础对象的对接方法和普通对象的对接方法一致
2.辅助资料
辅助资料的值来源于辅助资料对象,对接的时候,也需要对接辅助资料对象,这里需要注意的是,辅助资料的对接,辅助资料的id字段必须按下图配置
辅助资料id字段配置

3.手工输入 (辅助资料的值来源于用户手工输入的数据)
辅助资料的值来源于用户手工输入的数据,对接的时候,把这种类型的辅助属性当作普通属性字段对接就行,不需要特殊处理
k3cloud辅助属性示例图:
辅助属性列表

开启辅助属性的物料

新建订单选择带辅助属性的物料

2.2.2 辅助属性和辅助资料的关系
辅助属性的值可以从辅助资料的分类里面选择,也就是说如果辅助资料的值来源于辅助资料
2.2.3 哪些对象支持辅助属性
只要是使用带辅助属性的物料,都支持辅助属性。比如订单,入库单,出库单,库存,开票,回款等
2.2.4 辅助属性字段的配置
辅助属性的查找关联字段配置

辅助属性编码字段配置

辅助属性值字段配置

辅助属性值字段配置

2.2.5 辅助辅助字段的对接

3.K3C对接字段说明
3.1 主键
每个ERP中间对象都必须要有主键字段,用来表示在集成平台中数据的唯一标识。目前主键字段有的设置为ERP编码比如客户、产品,有的设置为ERP内码id#单据编号比如销售订单主对象,有的设置为ERP内码id比如批次、序列号。ERP预置对象的主键字段不可轻易更改,如需更改请慎重
在数据维护中,ERP中间对象数据ID即是主键字段所表示的数据

3.2 查找关联
一个对象中某些字段需要关联到另外一个对象的对象数据,可以用查找关联字段进行配置。比如销售订单中的客户字段需要关联客户对象数据,则把该字段设置为查找关联-关联对象为客户

在同步策略的字段映射中,查找关联字段只能与查找关联字段进行映射或者设置为固定值

3.3 主从关联
当ERP对象拆分为主从关系的中间对象时,从对象需设置虚拟主从字段来进行主从关联。虚拟主从字段的字段编码通常设置为【fake_master_detail】,关联对象设置所需要关联的主对象。比如销售订单拆分为主从关系的中间对象,从对象订单明细中设置了虚拟主从字段如下

3.4 单选
单选字段,跟平常在其他地方用到的单选并没有太大差别,单选字段需要配置选项编码和选项名称,如下

在同步策略的字段映射中,单选字段需要把选项进行映射

3.5 固定值
固定值就是该字段设置为一个固定不变的值,配置为固定值后,所有同步成功的数据该字段都为字段映射中设置的固定值。比如单据类型(编码)字段设置为固定值--XSDD01_SYS,那么设置后同步成功的数据,单据类型(编码)字段的值则为XSDD01_SYS

固定值在同步策略的字段映射中配置,点击插入值后选择输入固定值,则可进行固定值设置


3.6 默认值
默认值就是如果映射的字段是没有填写或者没有获取到值,则设置为默认值。比如下图中版本号字段与备注字段映射,默认值设置为sk001,假设某条数据的备注字段没有填写,则同步成功后,在目标系统对应数据的版本号字段值为sk001
默认值在同步策略的字段映射中配置,点击插入值后选择输入默认值,则可进行默认值设置


3.7 部门
CRM部门想要与ERP部门进行对接,需要建立部门字段进行映射
首先建立部门数据的映射。部门字段数据映射是在数据同步设置-系统字段管理下

在部门数据映射中,可通过新建或者导入把CRM的部门与ERP的部门进行映射

其中CRM基础数据ID和CRM基础数据名称可参照下图获取

其中ERP基础数据ID填写ERP部门的编码,ERP基础数据名称填写ERP部门名称

后面在同步策略的字段映射中,把部门字段进行映射即可

3.8 员工
1.人员字段,有两种对接方式,一种是销售员编码,一种是员工ID,通常情况下选择销售员编码,如果是需要在数据维护中显示员工ID则使用员工ID对接

2.首先在数据同步设置-账户绑定中把人员进行绑定。K3C推荐使用【同步ERP职员账户】来同步ERP侧人员,同步ERP侧人员时会根据ERP职员的手机号自动匹配CRM员工账号,如果未能匹配则点击 操作列的【编辑】,手工绑定CRM员工账号

3.人员绑定后,在同步策略把人员字段进行映射,如下图

4.如果同一人员在K3C不同部门有不同的销售员编码,又需要进行销售员对接,则还需在ERP中间对象里面添加一个字段编码为【ERP_Dept】的字段并进行字段映射配置
首先添加字段如下图,字段编码为【ERP_Dept】,字段名称任意,字段类型为单选,选项编码和选项名称均填写部门名称

在同步策略中添加该字段的映射,如下图,在CRM建立单选字段与之映射即可

4.客户和联系人
4.1 客户
crm客户,客户地址、客户财务信息->k3的客户,客户地址,银行信息
第一步,在erp对象管理里面确定ERP对象已经存在,如果不存在,联系开发初始化该对象,如图:

第二步,在同步策略--CRM同步到ERP方向中,点击【添加对象】添加客户对象的同步策略,如下图


第三步,在客户对象的同步策略,点击右上侧的添加策略,添加策略明细,选择映射的对象,如下图

第四步,配置字段映射,点击客户对象同步策略明细的字段映射可进行配置。字段映射配置可参考下图。下图中CRM客户、客户财务信息、客户地址对象的某些字段需自行在CRM创建。需注意客户对象的【创建组织】字段为查找关联类型,查找关联【ERP组织机构】对象。



第五步,配置同步规则。根据客户需求选择可以触发同步的事件,同时根据客户需求决定是否配置自定义函数

4.2 联系人
crm联系人->k3的联系人
第一步,在erp对象管理里面确定ERP对象已经存在,如果不存在,联系开发初始化该对象,如图:

第二步,在同步策略--CRM同步到ERP方向中,点击【添加对象】添加联系人对象的同步策略,如下图


第三步,在联系人对象的同步策略,点击右上侧的添加策略,添加策略明细,选择映射的对象,如下图

第四步,配置字段映射,点击联系人对象同步策略明细的字段映射可进行配置。下图的字段映射为必须映射字段,其余字段根据客户需求自行添加
ERP联系人对象【类型】字段设置为固定值BD_Customer
CRM联系人对象【客户名称】与ERP联系人对象【所属公司】字段映射,ERP联系人对象【所属公司】的字段已预设,但需注意要选择编码为 FCompany.FNumber的那个字段
以上两个字段需配置正确才能使ERP的联系人关联上客户

第五步,配置同步规则,根据客户需求勾选需要触发同步的事件,同时自定义函数也根据客户需求决定是否需要配置

5.K3C产品
5.1 产品对接(必选)
产品对象是对接的基础,在对接产品对象的时候,一定慎重,产品对象对接好了,后面依赖产品对象的对象对接工作,就会顺利很多
5.1.1产品对接字段映射参考

CRM批次与序列号管理字段说明
CRM产品对象中的批次与序列号管理字段,是服务端用来标记当前产品是否开启了批次或序列号,并根据情况返回对应的标识值,0为普通产品,2为开启了批次管理,3为开启了序列号管理,这个字段不需要对接,这个说明文档,仅供技术同学参考,实施同学请忽略
5.1.2批次对接参考
如果物料启用批号管理被选中,那么这个产品就需要对接CRM的批次,对接CRM的批次,首先需要把CRM的批次与序列号管理开关打开,之后才能对接批次

5.1.3保质期管理对接
在k3cloud,也可以不启用批次,只启用保质期管理,如果启用了保质期管理,只需要对接保质期就行,不需要对接批次。在k3cloud在对启用了保质期的物料进行入库时,需要填写保质期相关的字段信息,入库后,在库存里面也可以查询到保质期相关的字段,比如生产日期,有效期至等字段

5.1.4序列号对接
如果物料在序列号管理模块启用了库存管理,那么这个产品就需要对接CRM的序列号,对接CRM的序列号,首先需要把CRM的批次与序列号管理开关打开,之后才能对接序列号

5.1.5多单位对接
如果CRM开启了多单位并且ERP也开启了多单位,那么,在对接的过程中,可以考虑多单位的对接,因为订单,入库单,发货单等对象,会依赖多单位,下面是多单位对接的核心操作
核心对接对象
ERP的 计量单位 --> CRM的 单位
ERP的 物料单位转换 --> CRM的 多单位关联表
核心对接字段映射配置

5.1.6多规格对接
说明:目前对接平台还不支持k3cloud多规格的对接,只支持SAF多规格的对接
5.2 产品分类的对接
产品分类对接,就是把ERP的物料分组和CRM和产品分类进行对接,由于这一块对接比较特殊,所以,单独拎出来说明

产品分类自动导入(推荐)

对接步骤
第一步,在对接平台系统字段管理,导入产品分类,可以采用上面说的自动导入或批量导入
第二步,在产品对象上添加产品分类字段,如图

第三步,在同步策略明细上,配置产品分类字段映射,如图

第四步,启用同步策略,就可以正常进行产品和产品分类同步了
5.3 CPQ对接(可选 ,如果CRM开启了CPQ,ERP开启了BOM,可以考虑对接)
CPQ对接前提:
- 1.k3cloud支持物料清单对象(也就是BOM对象)
- 2.CRM开启了CPQ即产品选配明细对象
CPQ对接注意事项:
- 1.CRM的CPQ支持嵌套,也就是支持CPQ层级树结构
- 2.k3cloud的物料清单,支持标准BOM和配置BOM,我们目前只支持对接标准BOM
- 3.k3cloud的物料清单,有BOM版本的概述,CRM的CPQ没有类似的概念,所以,我们在对接的时候,会把k3cloud的BOM版本号同步到CRM的产品名称里面,以此来区分不同步BOM版本的CPQ产品
k3cloud物料清单和CRM产品CPQ示例图

CPQ对接步骤:
第一步,新建ERP物料清单对象,如图

第二步,在同步策略添加CPQ对象和策略明细,并配置CPQ字段映射,如图

第三步,启用同步策略,就可以进行数据同步了
6.K3C订单
先对ERP销售订单对象完成基本配置



配置单据类型(编码)

配置结算币别


配置销售组织

配置订单明细对象的销售单位


字段配置参考下图


7.K3C回款
k3Cloud的收款单对象对接crm的回款对象(也可以根据需要对接到自定义对象)
对接步骤
第一步,在erp对象管理里面确定ERP对象已经存在,如果不存在,联系开发初始化该对象,如图:

第二步,在同步策略里面添加回款的同步策略,如图:

第三步,选中回款策略,点击右上侧按钮添加策略明细,选择映射的对象,如图:

第四步,点击字段映射,把需要映射的各个字段映射上,最基本的映射如下图:

第五步,点击同步规则,根据需求设置:选择轮询,新增/更新根据客户需求选择,同步时间根据客户需求选择,是否需要函数也视情况而定,自定义函数介绍在4.21 节。规则如图:

对接注意点
回款的对接没有太多的特殊的地方,主要要注意几个查找关联的字段的映射:关联客户,关联订单
8.K3C退款
k3Cloud的收款退款单->crm的退款对象(也可以根据需要对接到自定义对象)
可以咨询【深圳市施罗德工业集团有限公司】相关实施人员,这个企业配置了k3Cloud的收款退款单对接crm的退款对象
对接步骤
第一步,在erp对象管理里面确定ERP对象已经存在,如果不存在,联系开发初始化该对象,如图:

第二步,在同步策略里面添加退款的同步策略,如图:

第三步,选中退款策略,点击右上侧按钮添加策略明细,选择映射的对象,如图:

第四步,点击字段映射,把需要映射的各个字段映射上,最基本的映射如下图:

第五步,点击同步规则,根据需求设置:选择轮询,新增/更新根据客户需求选择,同步时间根据客户需求选择,是否需要函数也视情况而定,自定义函数介绍在4.21 节。规则如图:

数据范围
根据业务需求,过滤对应不需要同步的数据,只有满足配置的数据范围的数据才会被同步
对接注意点
注意查找关联字段映射查找关联字段
退款的对接没有太多的特殊的地方,主要要注意几个查找关联的字段的映射:关联客户
注意关联订单字段
关联订单(选择k3的对象的SalesOrderComId这个字段与crm的查找关联订单的字段映射),如果不存在该字段SalesOrderComId,按下图手动添加

9.K3C开票
k3销售普通发票(主),普通销售发票明细->crm的开票申请(主),开票申请明细(也可以根据需要对接到自定义对象)
增值税销售发票(主),增值税销售发票明细->crm的开票申请(主),开票申请明细(也可以根据需要对接到自定义对象)
可以咨询【深圳市施罗德工业集团有限公司】相关实施人员,这个企业配置了k3Cloud的发票对接crm的开票对象
对接步骤
第一步,在erp对象管理里面确定ERP对象已经存在,如果不存在,联系开发初始化该对象,如图:

第二步,在同步策略里面添加开票的同步策略,如图:

第三步,选中开票策略,点击右上侧按钮添加策略明细,选择映射的对象,如图:

第四步,点击字段映射,把需要映射的各个字段映射上,最基本的映射如下图:

第五步,点击同步规则,根据需求设置:选择轮询,新增/更新根据客户需求选择,同步时间根据客户需求选择,是否需要函数也视情况而定,自定义函数介绍在4.21 节。规则如图:

数据范围
根据业务需求,过滤对应不需要同步的数据,只有满足配置的数据范围的数据才会被同步
对接注意点
注意查找关联字段映射查找关联字段
发票的对接没有太多的特殊的地方,主要要注意几个查找关联的字段的映射:关联客户
注意明细对象关联订单字段
关联订单(选择k3发票明细对象的SalesOrderComId这个字段与crm明细的查找关联订单的字段映射),如果不存在该字段SalesOrderComId,按下图手动添加

10.K3C 可售范围+价目表
对接前准备
配置前先检查ERP对象里面是否有销售价目表和可销控制,没有的话请自行添加。
价目表对接有两个方案,请根据实际情况选择相应的方案。
方案一:
K3C销售价目表-------->CRM价目表+可售范围

方案二:
K3C销售价目表-------->CRM价目表
K3C可销控制----------->CRM可售范围
需注意,CRM可售范围里面客户只有一个客户,按照客户维度进行同步。一张价目表,包含多个可售范围。
详细配置
方案一:
K3 Cloud中对象是销售价目表(BD_SAL_PriceList),需要对接到CRM中两个对象价目表(PriceBookObj)和可售范围(AvailableRangeObj)。
第一步:
先进入K3 Cloud价目表的对象配置。

第二步:
在对象里面里面添加一个自定义的从对象,对象名称随意,编码必须是:BD_SAL_PriceList.AvailablePriceBookObj,拆分类型为从对象(明细)。

第三步:
配置完对象后,进入字段配置。

字段内容如下图。其中价目表的引用字段名必须是:AvailablePriceBookObj。


第四步:
建立两个策略和分别建立策略明细。

第五步:
CRM价目表对象按照需求正常对接就可以。可售范围,当前不支持按照范围选取客户和产品,只支持按照具体明细对接。所以三个范围都要按照固定值对接。
客户:{"type":"FIXED","value":"FIXED"}、组织:{"type":"ALL","value":"ALL"}、产品:{"type":"FIXED","value":"FIXED"}。

第六步:剩余字段按照需求自行对接。
方案二:
第一步:
先进入K3 Cloud可销控制的对象配置。

第二步:
添加三个从对象,对象编码分别是
客户:SAL_SC_CustMat.AvailableAccountObj
产品:SAL_SC_CustMat.AvailableProductObj
价目表:SAL_SC_CustMat.AvailablePriceBookObj

第三步:
配置完对象后,进入字段配置。
字段配置如下图








第四步:
建立两个策略和分别建立策略明细。

第五步:
CRM价目表对象按照需求正常对接就可以。可售范围,当前不支持按照范围选取客户和产品,只支持按照具体明细对接。所以三个范围都要按照固定值对接。
客户:{"type":"FIXED","value":"FIXED"}、组织:{"type":"ALL","value":"ALL"}、产品:{"type":"FIXED","value":"FIXED"}。
字段参考配置:





11.K3C 发货单
K3C销售出库单对接到CRM发货单。针对B类库存,发货单自动补齐关联的库存ID
字段映射参考


发货单自动关联库存
1.在CRM发货单对象增加【无库存ID集成平台同步标识】字段,字段类型为布尔值,字段API Name为 field_no_stock_id_integration_flag__c

2.在字段映射中增加该字段映射,设置为固定值【是】

开启序列号物料发货
1.在ERP出库单明细对象里面添加4个字段
a.【序列号(编码)】:字段编码为crmSerialNo,字段类型为文本
b.【序列号备注】:字段编码为crmSerialNote,字段类型为文本
c.【序列号(id)】:字段编码为serialId,字段类型为查找关联,引用对象为序列号主档
d.【出库序列号】:字段编码为SAL_OutStockSerial,字段类型为文本

2.在CRM发货单产品对象增加两个文本字段--ERP序列号、ERP序列号备注,字段Api Name无要求
3.在明细对象字段映射里面添加如下字段

开启批次物料发货
1.在ERP出库单明细对象里面,增加一个字段【批号】,字段编码为【FLot】,查看接口字段编码为【Lot.Id】,保存接口字段编码为【FLot】;字段类型为查找关联,关联批号主档对象

2.在明细对象字段映射里面添加如下字段

多订单发货
1.在进销存管理-插件管理,开启多订单发货

2.在K3C勾选多个订单后(注意需是同一个客户的订单),点击下推,选择下推销售出库单即可

12.K3C 仓库
K3Cloud渠道注意事项
- 先确认ERP需要同步哪些组织的仓库。
- 如果只同步一个组织的仓库,需要保证CRM中ERP组织机构对象的组织id正确。可以参考导入K3C组织机构

- 如果需要同步多个组织的仓库,需要保证K3Cloud的不同组织间仓库编码唯一。历史数据可以直接修改编码。可以修改编码规则增加组织编码确保新建仓库不存在重复编码。

- 在ERP组织机构对象中,把需要同步仓库的组织的【是否同步仓库】选项选择【是】,其他选【否】
- 对于存在仓位的仓库,需要按仓位的规则进行同步。(注意:即使不需要同步仓位,如果同步库存,也需要同步仓位)
字段映射参考

ERP数据导入说明
如果K3Cloud仓库未开启仓位,可以在导入CRM数据后,在【数据维护】页面导入中间表。需要注意的是,K3Cloud渠道,仓库的ERP主键id默认使用仓库编码字段。
K3Cloud特殊预设字段
| 字段名称 | 字段编码 | 查看接口编码 | 保存接口编码 | 说明 |
|---|---|---|---|---|
| 母仓库编码 | parentWarehouseNumber | 查找关联仓库,用于仓位对接 | ||
| 是否仓位 | isLoc | 布尔值, |
13.K3C B类库存对接逻辑图
B类库存,原来的库存和批次库存对象,不需要对接。数据进入库存明细对象后,会自动生成库存和批次库存的数据。

云星空中,页面上的对象名叫做即时库存明细, webapi中的对象叫做 即时库存。注意,页面上的"即时库存"的数据,并不能通过webapi的接口返回。


14.K3C 即时库存对接CRM库存明细
注意事项
- 由于K3Cloud【即时库存】储存的数据只有库存量(基本单位)【FBaseQty】是准确的,暂时只支持该数量准确对接。库存量(主单位)、可用量等字段获取准确值正在开发中。
- 如果K3Cloud存在开启了批次的物料需要同步,必须开启批次对接以及在库存明细添加批次字段映射。
第一步 在进销存管理-插件管理,设置对接插件同步机制为“同步库存明细”,CRM才会有库存明细对象

第二步 在数据同步设置->ERP对象管理,检查ERP即时库存对象的主键字段是否为FID,如果不是需要把主键设置为该字段。

主键字段详细内容如下,字段编码、查看接口字段编码、保存接口字段编码都设置为FID

第三步 添加CRM【库存明细】对象的同步策略

第四步 配置字段映射,基本字段配置如下

15.K3C 批次
注意事项
- CRM库存需要打开批次及序列化管理。
- 产品需要对接字段【是否开启批次序列号管理(虚拟)】,参考【产品】对接说明。
字段映射参考

数据导入说明
注意批次K3Cloud预置的中间对象id字段为K3Cloud的内码Id字段,需要取该字段的值作为ERP数据id导入。
16.K3C 批次库存
K3C即时库存对接到CRM的库存明细对象后,不需要对接批次库存对象。
17.K3C 序列号
注意事项
- CRM不支持同一产品既开启批次又开启序列号。
- 产品需要对接字段【是否开启批次序列号管理(虚拟)】,参考【产品】对接说明。
字段映射参考

18.K3C退货单
k3销售退货单(主),退货单明细->crm的退货单(主),退货单产品(也可以根据需要对接到自定义对象)
可以咨询【深圳市施罗德工业集团有限公司】相关实施人员,这个企业配置了k3Cloud的退货对接crm的退货对象
对接步骤
第一步,在erp对象管理里面确定ERP对象已经存在,如果不存在,联系开发初始化该对象,如图:

第二步,在同步策略里面添加退货的同步策略,如图:

第三步,选中退货策略,点击右上侧按钮添加策略明细,选择映射的对象,如图:

第四步,点击字段映射,把需要映射的各个字段映射上,最基本的映射如下图:

第五步,点击同步规则,根据需求设置:选择轮询,新增/更新根据客户需求选择,同步时间根据客户需求选择,是否需要函数也视情况而定,自定义函数介绍在4.21 节。规则如图:

数据范围
根据业务需求,过滤对应不需要同步的数据,只有满足配置的数据范围的数据才会被同步
对接注意点
注意查找关联字段映射查找关联字段
发票的对接没有太多的特殊的地方,主要要注意几个查找关联的字段的映射:关联客户
注意明细对象关联订单字段
关联订单(选择k3发票明细对象的SalesOrderComId这个字段与crm明细的查找关联订单的字段映射),如果不存在该字段SalesOrderComId,按下图手动添加

19. K3C 二开非标准接口对接
创建ERP对象和字段,然后通过写自定义函数调用外部接口做格式转换


六、配置第一个简单ERP项目demo
该部分主要描述ERP集成平台的配置步骤,配置的时候可按照如下步骤操作;
1 第一步 购买集成平台插件
根据客户要对接的系统,找到对应的产品,下订单进行购买,则配置入口自动开通。 配置入口在 管理->系统对接管理 下面。
一个销售订单对应客户的一个系统,如果客户有多个IT系统需要对接,则需要购买多个订单。

集成平台-SAP插件:对接客户的SAP系统。
集成平台-用友U8Cloud插件:对接用友U8系统。
集成平台-标准插件:对接客户的自研系统等。没有对外提供标准API接口的,都可以通过此产品来对接。
集成平台-金蝶K3Cloud插件:对接金蝶k3cloud, 云星空系统。
2 第二步 找研发开通配置权限
如遇到如下提示,请确定好实施人员后找研发开通配置权限

3 第三步 连接ERP厂商
进入ERP数据同步-数据同步设置-ERP厂商设置,选择厂商并填写相关的参数,点击保存即可连接
4 第四步 数据同步基础配置
在数据同步设置中配置账户绑定、ERP对象及字段、系统字段、同步通知设置;
4.1 账户绑定
进入ERP数据同步-数据同步设置-账户绑定,可通过新建或者同步ERP职员账户把纷享员工跟ERP员工建立绑定关系
4.2 ERP对象管理
进入ERP数据同步-数据同步设置-ERP对象管理,点击新建按钮,新建需要对接的ERP对象

ERP对象新建完成后,点击编辑字段,对ERP对象的字段进行新增、编辑、删除操作;
如下图中的客户对象为例,点击添加字段可对字段进行新增,如需编辑或删除某字段,可以在操作列点击编辑或删除
注:SAP厂商,ERP对象对接需按照下图中的标准接口实现,如没有按照标准接口实现,则需插入脚本;点击【生成api】可看到标准接口模式
4.3系统字段管理
进入ERP数据同步-数据同步设置-系统字段管理,在此处把系统字段的CRM数据与ERP数据进行映射,都可通过新建或者批量导入字段信息完成该操作。产品分类字段还可从ERP导入
产品分类字段从ERP导入,操作如下图
4.4 同步通知设置
开启后如果有同步失败的数据则会发通知给下图中设置的通知人员,根据自行需要设置

5 第五步 配置同步策略
5.1 建立同步策略、设置数据范围及同步规则
(1)进入ERP数据同步-同步策略,先添加同步对象再添加策略
(2)设置数据范围
在同步策略明细点击数据范围,进入数据范围配置页。在数据范围添加条件后,就只同步符合数据范围的数据。该功能详细解释见该文档【3.2.2 数据范围】,此处不再赘述

(3)设置同步规则
在同步策略明细点击同步规则,即可进入同步规则配置页 。可以设置同步逻辑参数以及插入自定义函数。同步规则的功能解释参考该文档【3.2.3 同步规则】,自定义函数部分参考该文档【3.6 自定义函数】

5.2 对接金蝶K3Cloud需提前建立的策略
对接金蝶K3Cloud需提前建立ERP组织机构的策略,并导入组织映射关系,详细操作见该文档【3.3.4.1 ERP组织机构导入】
辅助资料策略也需提前建立,详细操作见该文档【4.21 K3C辅助资料功能对接】
5.3 ERP往CRM流向调试功能使用
ERP同步到CRM流向可在策略建好后进行调试,首先同步方式选择调试,然后在策略操作列点击调试进行后面的调试操作
6 第六步 导入历史数据
ERP数据平台配置好后,找研发导入历史数据
7 第七步 查看数据同步结果
配置完后,对于数据同步的结果详情可在数据维护中查看
七.对接OA设置
1 第一步 购买集成平台OA插件
找到对应的产品,下订单进行购买,则配置入口自动开通。 配置入口在 管理->系统对接管理 下面。

2 第二步 账户绑定
进入集成平台-OA代办 ->账户绑定,可通过新建或导入将纷享员工与OA员工进行绑定

3 第三步 发送消息到OA接口配置
首先确认客户的接口调用方式,webservice和restful两种不同的调用方式在配置上稍微有些不同,下面的配置文档中将会对有区别的地方分别写清楚该如何配置
3.1 通用参数配置
进入集成平台-OA代办 ->初始设置 ->通用参数配置,分为Headers参数设置和结果格式设置

(1)Headers参数设置根据客户需求,自行增加。点击添加一行输入key和value,点击保存即可添加成功

(2)结果格式设置中key已预置,value需根据客户接口调用的返回结果自行添加

codeName:填写返回结果中的code字段名
msgName:填写返回结果中message信息的字段名
dataName:默认不填写
successCode:填写调用成功的code值
xmlJsonField: webservice接口调用方式默认填写out,restful接口调用方式默认不填写
示例:如下图所示的返回结果,codeName填写code,msgName填写message,successCode填写0

3.2 场景参数设置
(1)进入集成平台-OA代办 ->初始设置 ->场景参数设置,可根据客户需求开启相应场景并进行配置。开启则推送相应的代办消息操作到OA系统,关闭则不会

(2)下面以新增代办为例来进行配置讲解,点击新增代办的【设置】,进入新增代办设置页面

- 接口地址设置:配置OA系统新增代办的接口调用地址
- 接口类型:配置调用接口的请求方法
- Body参数设置: 配置调用接口需传递的参数,参数值填写对接CRM代办的字段,注意需填写以#开头的占位符,CRM代办字段及占位符可在右侧进行搜索。注意webservice接口调用方式,Body参数需为xml格式;restful接口调用方式,Body参数需为json格式
- 编辑代办、删除代办根据客户接口文档相应更换接口地址、接口类型、Body参数设置
(3)新增代办配置示例
假设以下为客户给出的接口调用文档
- 请求方式: POST
- 请求地址:http://test.com.cn:909/rest/transmit/fxiaoke/create
- 请求参数:


按照以上给出的接口文档,则接口地址设置填写:http://test.com.cn:909/rest/transmit/fxiaoke/create,接口类型选择POST
Body参数填写给出的Post内容(如果客户接口是webservice调用方式,则需转换为xml格式),左边字段不变,把右边的值填写对应要映射的CRM字段-用占位符,则填写完后如下图所示

4 第四步 验证OA消息推送接口
在纷享系统新增、编辑、删除代办消息后,查看同步记录,并在OA查看代办是否推送成功

5 第五步 免登录对接
CRM的代办消息推送到OA以后,用户从OA点击消息,要能免登录到CRM。
根据不同厂商有不同的操作:
5.1 致远OA
致远OA认证方式选择:
应用注册:

产品登记:

在【应用对接】找到对应应用:

配置用户绑定:

待办集成:

做完上述操作后,需要客户提供应用账号密码。
一、待办消息推送
使用致远OA里面的V5auth认证方式:
致远OA系统,推送待办需要先获取他们系统的token。需要让客户在致远OA系统上创建一个纷享的应用,并且提供对应的账号密码。每次调用接口的时候,需要在请求头拼接token。
OA平台有根据脚本生成url的功能,需要编写脚本获取带token的地址。
脚本模板:
import groovy.json.JsonSlurper import sun.net.www.protocol.https.DelegateHttpsURLConnection
import javax.crypto.Mac import javax.crypto.spec.SecretKeySpec
public String getToken() { String token = null; String userName = \"\"; // 填写客户提供的账号 String password = \"**\"; // 填写客户提供的密码 String requestUrl = \"http://**********/seeyon/rest/token/\" + userName + \"/\" + password; // 修改请求地址 HttpURLConnection connection = (HttpURLConnection) new URL(requestUrl).openConnection(); connection.setRequestMethod(\"GET\"); // 设置连接主机服务器的超时时间:15000毫秒 connection.setConnectTimeout(15000); connection.setUseCaches(false); connection.setRequestProperty(\"Content-Type\", \"text/xml; charset=UTF-8\"); // 设置读取远程返回的数据时间:60000毫秒 connection.setReadTimeout(60000); connection.setDoOutput(true); connection.setDoInput(true); connection.connect(); int code = connection.getResponseCode(); if (code == 200) { InputStream inputStream = connection.getInputStream(); BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream)); String line; StringBuffer buffer = new StringBuffer(); while ((line = bufferedReader.readLine()) != null) { buffer.append(line); } String str = buffer.toString(); def jsonSlurper = new JsonSlurper() Map map = jsonSlurper.parseText(str) token = map.get(\"id\") } else { throw new RuntimeException(\"握手异常(\" + connection.getResponseCode() + \")!\" + connection.getResponseMessage()) } return url + \"?token=\" + token; } url = getToken();return url;
二、单点登录

单点登录通过致远OA的门户认证机制认证。OA平台对外开放致远OA免登录接口:/authorizeWeb/SeeYon/{apiName}/{dataId}/{ei}/{isApp}
OA那边通过点击待办,或者纷享应用。会携带token给平台,平台通过拿到的token再去调用OA的门户认证接口,获取当前用户。最后重定向到
这个用户免登录的页面。
三、致远OA待办跳转CRM待办和跳转CRM主页面
单点登录成功后,可以获取到对应的用户信息。通过CRM的免登录接口,重定向到对应的页面。
跳转CRM待办接口:/authorizeWeb/SeeYon/{apiName}/{dataId}/{ei}/{isApp}
跳转CRM主页面接口:/authorizeWeb/SeeYon/login/{ei}/{isApp}
参考:

{ "registerCode": "3004", "taskId": "#F012", "title": "#F054 #F056 #F053", "senderName": "#F054", "state": "0", "thirdSenderId": "#F049", "thirdReceiverId": "#F001", "creationDate": "#F009", "content": "", "h5url": "https://www.fxiaoke.com/erp/syncdata/open/oa/authorizeWeb/SeeYon/#F037/#F015/714439/true", "url": "https://www.fxiaoke.com/erp/syncdata/open/oa/authorizeWeb/SeeYon/#F037/#F015/714439/false", "noneBindingSender":"", "noneBindingReceiver":"#F001" }
5.2 泛微OA:
联系集成开发沟通获取身份接口。
5.3 蓝凌OA:
联系集成开发沟通获取身份接口。
5.4 其它OA:
联系集成开发沟通获取身份接口。
八.ERP系统常见操作指引
1 金蝶云星空(含早期K3 Cloud版本)部分
1.1 金蝶云星空(含早期K3 Cloud版本)基础资料控制类型及基础资料控制策略如何查看?
使用金蝶云星空(含早期K3 Cloud版本)管理员账户(具备基础资料分配权限)进入系统管理>组织机构>基础资料控制查看,见下图。
1.2 基础资料控制类型的策略类型为分配类型,如何设置金蝶云星空(含早期K3 Cloud版本)自动分配执行频率?
以物料为例,在执行计划列表,通过名称找到对应的执行计划,双击进入即可设置执行频率,见下图:
参见:https://vip.kingdee.com/article/8771
1.3 如何启用变更单/新变更单?
进入销售管理系统参数界面,在订单变更单选项中勾选后保存即可开启,见下图:
1.4 如何查看该员工在金蝶云星空(含早期K3 Cloud版本)是否为销售员?
在金蝶云星空(含早期K3 Cloud版本)的基础管理>基础资料>公共资料>业务员列表查看,见下图:
或者在录入单据时,填写销售员字段,点解弹出的弹窗即为销售员列表,见下图:
1.5 如何从金蝶云星空(含早期K3 Cloud版本)中导出物料/销售订单/即时库存导出数据?
物料导出:
在物料列表>选项>引出 有按引入/出模板引出数据:
销售订单/即时库存引出参考物料引出;
1.6 如何查看纷享界面字段的apiname?
在界面搜索WebAPISDK Web API,如下图,点击进入后再web api界面左侧找到对应的单据,进入选择 保存 ,即可看到该单据界面的字段标识;
注:CRM新增ERP字段时,请参照该单据json格式判断是否需要增加明细或FNumber/FName,详情参见培训助手视频课程:金蝶云星空(含早期K3 Cloud版本)产品培训2.0 ;
1.7 在客户/订单等单据列表查看页面,如何将隐藏的列放出来?
在单据列表页,点击 过滤 按钮,在弹窗中切换显示隐藏列页签,即可勾选显示隐藏列,见下图:
1.8 查看辅助资料


2. SAP对接部分
3. 用友U8对接部分
3.1 单据联查
在单据详情页可联查相关单据,图中示例为发货单上查、下查,其它单据同理

3.2 单据快速定位
在单据列表(下图为销售订单列表),选中要定位的列下的任意一行数据,点击”定位“按钮,弹出框中下拉选择定位的内容,点击”定位下一个“按钮进行定位

3.3 筛选查看范围

3.4 U8主键自增长设置
