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字符串,最终传入服务接口

 

 

 

 

 

    • 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查询语句

 

 

    • 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: 客户端时间戳

 

 

    • 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接口取得内码

 

 

  • UnAudit
    Summary: 对指定数据进行反审核操作
    Parameters:  
    usertoken: 用户令牌
    formId: 业务对象的标识
    data: 待反审核的数据信息
    data参数数据结构说明:  
    root(Array)|--Id(string):待处理数据在K3Cloud系统里的主键信息,若只知编码或编号可以使用ExecuteDynamicObject接口取得内码
posted @   木古白水  阅读(116)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示