EDIServiceBus说明
K/3Cloud电子数据交换系统
在供应链协同过程中,第三方系统与K3Cloud集成时,可以通过此服务总线进行关联单据及基础数据的自动传输!
支持下列操作。有关正式定义,请查看服务说明。
- Allocate
Summary: 对指定基础资料数据进行分配操作 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 data: 待分配的基础资料信息 data参数数据结构说明: root(Array)|--Id(string):待分配数据在K3Cloud系统里的主键信息,本属性与Number二传一
|--Number(string):待分配数据在K3Cloud系统里的编码信息,本属性与Id二传一
|--TargetOrgIds(string[]):需要分配到的目标组织集合
- Audit
Summary: 对指定数据进行审核操作 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 data: 待审核的数据信息 data参数数据结构说明: root(Array)|--Id(string):待处理数据在K3Cloud系统里的主键信息,若只知编码或编号可以使用ExecuteDynamicObject接口取得内码
- Auth
Summary: 登陆授权 Parameters: dataCenterNumber: 数据中心编码 username: 用户名 password: 密码
- CreateOrUpdateBill
Summary: 新增或修改单据数据(修改时请注意对DynamicJObjectView对象的Id赋值,以便接口定位待修改的目标单据数据),数据结构说明可以参考接口CreateOrUpdateBillByHand的说明 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 billData: 通常是DynamicJObjectView实体对象序列化后的json串 bNoValidation: 保存时是否做数据校验
- CreateOrUpdateBillByHand
Summary: 模拟人工方式进行新增或修改单据数据(修改时请注意对DynamicJObjectView对象的Id赋值,以便接口定位待修改的目标单据数据) Parameters: usertoken: 用户令牌 formId: 业务对象的标识 billData: 通常是DynamicJObjectView实体对象序列化后的json串 billData参数结构说明: 金蝶K3Cloud系统里的表单结构通常是这样的:
一张单据一般由单据头和单据体组成,单据头上有字段F1,F2,F3...,单据体有字段F4,F5,F6...
除了字段本身有标识外,单据头和单据体本身通常也是有标识的,单据头在整个体系里默认是FBillHead是写死的,通常是忽略的,单据体标识是开发人员给的,这里假设为FEntity
那么基于上面的描述,这张表单的数据结构通常是下面这样的,下面红色显示的属性属于系统服务的内置属性:
root(FBillHead)|--F1(object)
|--F2(object)
|--F3(object)
|--...
|--Id(string):数据主键,传递时强制认为本数据是更新,不传递时,自动根据属性PkFieldItems进行判断是新增还是修改
|--MainOrgId(string):主业务组织,不传默认取系统代码为1的组织
|--_SyncMode_(int):同步模式,0:不同步,1:新增,2:修改,4:删除,-1:自适应
|--_AutoAudit_(int):是否自动审核,1:自动提交并审核
|--PkFieldItems(string[]):实体数据唯一性判断依据,支持复合主键
|--_DstTableName_(string):目标表名,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_DstEntityKey_(string):目标实体标识,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_DstBillFormId_(string):目标表单标识,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_SrcBillFormId_(string):来源表单标识,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_SrcEntityKey_(string):来源实体标识,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_SrcTableName_(string):来源表名,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_SrcSystemId_(string):来源系统标识,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_SrcPkId_(string):来源系统数据主键,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--FEntity(Collection)
|--Item1
|--F4
|--F5
|--F6
|--...
|--Id(string)
|--MainOrgId(string)
|--_SyncMode_(int)
|--PkFieldItems(string[])
|--_DstTableName_(string)
|--_DstEntityKey_(string)
|--_DstBillFormId_(string)
|--_SrcBillFormId_(string)
|--_SrcEntityKey_(string)
|--_SrcTableName_(string)
|--_SrcSystemId_(string)
|--_SrcPkId_(string)
|--Item2
|--...
看到这个数据结构,那么上述参数billData的json格式就变得很清晰了,下面以C#语法示意,其它语言请调用者自行翻译转换:
var billJObj=new JObject();
billJObj.Put("F1",100);
billJObj.Put("F2","2015-01-02 12:00:00");
billJObj.Put("F3","hello");
var rowObjList=new JArray();
billJObj.Put("FEntity",rowObjList);
var rowObj=new JObject();
rowObjList.Add(rowObj);
rowObj.Put("F4",100);
rowObj.Put("F5","2015-01-02 12:00:00");
rowObj.Put("F6","hello");
string billData=billJObj.ToString(); //转换成json字符串,最终传入服务接口
- CreateOrUpdateBillByPush
Summary: 模拟人工选单方式根据来源数据创建指定单据 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 ruleId: 单据转换流程标识 billData: 当前单数据:通常是DynamicJObjectView实体对象集合序列化后的json串 billData参数结构说明: 金蝶K3Cloud系统里的表单结构通常是这样的:
一张单据一般由单据头和单据体组成,单据头上有字段F1,F2,F3...,单据体有字段F4,F5,F6...
除了字段本身有标识外,单据头和单据体本身通常也是有标识的,单据头在整个体系里默认是FBillHead是写死的,通常是忽略的,单据体标识是开发人员给的,这里假设为FEntity
那么基于上面的描述,这张表单的数据结构通常是下面这样的,下面红色显示的属性属于系统服务的内置属性:
root(FBillHead)|--F1(object)
|--F2(object)
|--F3(object)
|--...
|--Id(string):数据主键,传递时强制认为本数据是更新,不传递时,自动根据属性PkFieldItems进行判断是新增还是修改
|--MainOrgId(string):主业务组织,不传默认取系统代码为1的组织
|--_SyncMode_(int):同步模式,0:不同步,1:新增,2:修改,4:删除,-1:自适应
|--_PushMode_(int)下推模式:0:以第三方系统的行标识选单下推,1:以K3Cloud源单行ID选单下推。缺省为0。(_SelSrcPkId_为第三方系统的行标识 或 K3Cloud源单行ID)
|--_AutoAudit_(int):是否自动审核,1:自动提交并审核
|--PkFieldItems(string[]):实体数据唯一性判断依据,支持复合主键
|--_DstTableName_(string):目标表名,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_DstEntityKey_(string):目标实体标识,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_DstBillFormId_(string):目标表单标识,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_SrcBillFormId_(string):来源表单标识,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_SrcEntityKey_(string):来源实体标识,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_SrcTableName_(string):来源表名,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_SrcSystemId_(string):来源系统标识,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_SrcPkId_(string):来源系统数据主键,当需要记录来源系统与本系统数据对应关系时,需要传递本参数
|--_SelSrcPkId_(string):选单创建时原单行的第三方系统里的行标识,也就是曾经在创建上游单据时传入的_SrcPkId_
|--_SelDstEntityKey_(string):选单创建时原单行对应的实体标识,主要用于给当前服务定位关联关系表用的
|--FEntity(Collection)
|--Item1
|--F4
|--F5
|--F6
|--...
|--Id(string)
|--MainOrgId(string)
|--_SyncMode_(int)
|--PkFieldItems(string[])
|--_DstTableName_(string)
|--_DstEntityKey_(string)
|--_DstBillFormId_(string)
|--_SrcBillFormId_(string)
|--_SrcEntityKey_(string)
|--_SrcTableName_(string)
|--_SrcSystemId_(string)
|--_SrcPkId_(string)
|--_SelSrcPkId_(string)
|--_SelDstEntityKey_(string)
|--Item2
|--...
看到这个数据结构,那么上述参数billData的json格式就变得很清晰了,下面以C#语法示意,其它语言请调用者自行翻译转换:
var billJObj=new JObject();
billJObj.Put("F1",100);
billJObj.Put("F2","2015-01-02 12:00:00");
billJObj.Put("F3","hello");
var rowObjList=new JArray();
billJObj.Put("FEntity",rowObjList);
var rowObj=new JObject();
rowObjList.Add(rowObj);
rowObj.Put("F4",100);
rowObj.Put("F5","2015-01-02 12:00:00");
rowObj.Put("F6","hello");
string billData=billJObj.ToString(); //转换成json字符串,最终传入服务接口
- CreateOrUpdateCommonContact
创建或修改联系人(客户、供应商联系人)
- CreateOrUpdateFormGroup
创建或修改数据分组- 参数
- usertoken -- 用户令牌
- formId -- 此处指定分组字段所属的业务对象Id
- groupDataInfo -- 分组的数据包的Json串
- 返回值
- 参数
- CreateOrUpdateOperator
创建或修改业务员- 参数
- usertoken -- 用户令牌
- optorGroupInfo -- 分组的数据包的Json串
- 返回值
- 参数
- CreateOrUpdateOperatorGroup
创建或修改业务组- 参数
- usertoken -- 用户令牌
- optorGroupInfo -- 分组的数据包的Json串
- 返回值
- 参数
- CreateSaleOrder
【接口已作废,请改用CreateOrUpdateBill或CreateOrUpdateBillByHand接口】创建K3Cloud系统里的标准销售订单
- Delete
Summary: 对指定数据进行删除操作 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 data: 待删除的数据信息 data参数数据结构说明: root(Array)|--Id(string):待处理数据在K3Cloud系统里的主键信息,若只知编码或编号可以使用ExecuteDynamicObject接口取得内码
- ExecuteDataTable
Summary: 向数据库发送SQL特定查询返回DataTable的json序列化数据 Parameters: usertoken: 用户令牌 sql: SQL查询语句
- ExecuteDynamicObject
Summary: 向数据库发送SQL特定查询返回DynamicObject的json序列化数据 Parameters: usertoken: 用户令牌 sql: SQL查询语句
- GetDataCenterList
获取管理中心列表
- GetDynamicObjectCollection
Summary: 使用指定过滤条件获取指定单据上指定字段 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 selectFieldKeys: 查询字段列表 filterClauseWihtKey: 查询过滤条件
- GetDynamicObjectCollectionByPage
Summary: 使用指定过滤条件获取指定单据上指定字段 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 selectFieldKeys: 查询字段列表 filterClauseWihtKey: 查询过滤条件 currPage: 当前页数 recordsPerPage: 每页记录数
- GetInvStock
即时库存查询- 参数
- usertoken -- 用户令牌
- getInvStockDetailArgs -- 此处指定需要查询的物料和库存维度信息
Index
索引值,用于批量查询时的索引StockOrgNumber
库存组织编码MaterialNumber
物料编码UnitNumber
单位,用于返回的数量单位BomNumber
BOM编码MtoNo
计划跟踪号StockNumber
仓库编码StockStatusNumber
库存状态编码
- 返回值
- 参数
- IsBaseDataExistByHeadFilter
Summary: 根据自定义过滤条件判断基础资料或单据是否存在 Parameters: usertoken: 服务令牌 formId: 金蝶表单标识 pkId: 金蝶表单单据头过滤条件
- IsBaseDataExistByNumber
Summary: 根据编码或单据编号判断基础资料或单据是否存在 Parameters: usertoken: 服务令牌 formId: 金蝶表单标识 pkId: 金蝶表单编码或单据编号
- LoadAssistantData
Summary: 读取K/3Cloud系统辅助资料信息 Parameters: usertoken: 系统访问过程中使用的用户令牌 assistantDataNumber: 辅助资料编码 Result: 返回辅助资料明细数据 |--ValueId:资料明细内码
|--ValueNumber:资料明细编码
|--ValueName:资料明细名称
|--ParentValueId:父级资料明细内码
- LoadBillTemplateJsonFormat
Summary: 加载某个表单数据的JSON模板 Parameters: usertoken: 服务令牌 formId: 金蝶表单标识 pkId: 金蝶表单的单据内码,可不传,直接返回空包的json格式
- LoadBusinessDataFromCache
Summary: 加载指定单据的数据 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 pkValues: 内码数组 例如:数值型的内码[10001,10002],字符串型的内码['10001','10002']
- LoadBusinessDataFromCache2
Summary: 根据过滤条件加载单据的数据 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 filterClauseWihtKey: 过滤条件,例如FBillNo='XSDD00001'
- LoadBusinessDataFromCache3
Summary: 根据过滤条件加载单据的数据 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 encryptFilterClauseWihtKey: 加密过的过滤条件,例如FBillNo='XSDD00001'
- LoadDomainModelData
Summary: 读取指定的领域模型元数据 Parameters: usertoken: 用户令牌 formId: 领域模型标识
- LoadFormMetadata
Summary: 读取指定表单的元数据 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 timestamp: 客户端时间戳
- Logout
注销
- NewExecuteDynamicObject
Summary: 向数据库发送SQL特定查询返回DynamicObject的json序列化数据 Parameters: usertoken: 用户令牌 sql: 加密后的SQL查询语句
- SaveBillData
Summary: 【接口已作废,请改用CreateOrUpdateBill或CreateOrUpdateBillByHand接口】自动根据DynamicJObjectView里的Id赋值情况判断待保存的数据是要新增还是修改,并且对数据做合法性校验 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 billData: 通常是DynamicJObjectView实体对象序列化后的json串
- Submit
Summary: 对指定数据进行提交操作 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 data: 待提交的数据信息 data参数数据结构说明: root(Array)|--Id(string):待处理数据在K3Cloud系统里的主键信息,若只知编码或编号可以使用ExecuteDynamicObject接口取得内码
- TestWebConnection
测试Web服务的连通性
- UnAudit
Summary: 对指定数据进行反审核操作 Parameters: usertoken: 用户令牌 formId: 业务对象的标识 data: 待反审核的数据信息 data参数数据结构说明: root(Array)|--Id(string):待处理数据在K3Cloud系统里的主键信息,若只知编码或编号可以使用ExecuteDynamicObject接口取得内码
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通