EAS调用苍穹执行启动方案和服务流程

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

EAS调用苍穹执行启动方案和服务流程


变更记录

产品版本
更新内容更新日期
V6.0.3支持EAS同步调用启动方案和服务流程

2023年12月12日

V7.0.0支持EAS同步调用自定义API2024年7月10日


业务场景

在某些事件触发不支持或者实时性要求较高的场景,需要在EAS业务操作结束后立即调用集成接口,实现数据集成。

由于集成云已经实现了EAS链路打通,因此可以直接在EAS编写代码调用集成基础设施,实现数据推送或者触发集成。目前,对应的集成接口提供了同步和异步两种模式,可供不同场景使用。

注意:

  • 集成方案、服务流程、自定义API等基础资源的启用、禁用状态控制的是前端操作,业务通过API(包括微服务等)调用不受启用禁用控制。

  • 如果使用eas连接多数据中心新特性将不支持反调。



EAS调用苍穹执行启动方案接口


/**

     * 调用集成云服务

     *

     * @param dataCenter 账套名

     * @param iscService 集成云服务名,参考kd.isc.iscb.connector.ierp.svc包下的Service类。

     * @param params     集成云服务调用参数

     * @return

     * @throws Exception

     */

kd.isc.iscb.util.connector.server.ConnectorCallback.call(String dataCenter, String iscService, Map<String, Object> map) throws Exception

参数

名称

类型

说明

datacenter

String

已经完成集成部署的eas数据中心名,替换下面代码调用示例中的第一个参数“dc”

iscService

String

苍穹集成云服务名,如需要根据启动方案编码执行方案时,则填写StartTriggerService

map

Map

参考对应kd.isc.iscb.connector.ierp.svc包下的Service微服务类填写对应参数.


代码示例

1、异步调用

1.1 EAS异步调用苍穹执行启动方案接口时调用示例如下:

Map<String, Object> execute_params = new HashMap<>();
execute_params.put("启动方案的参数key", "参数value");
Map<String, Object> map = new HashMap();
map.put("trigger_number", "启动方案编码");//
map.put("params", execute_params);
kd.isc.iscb.util.connector.server.ConnectorCallback.call("dc","StartTriggerService",map);


 

1.2 EAS异步调用苍穹启动服务流程调用示例如下:

EAS端可能因为方法不支持事件触发、或者可能有一些其他特殊原因不支持事件触发,导致服务流程无法根据实际需要事件触发启动,因此提供一种通过代码调用服务流程的方法,参考下述代码:

Map<String, Object>   execute_params = new HashMap<>();
execute_params.put("服务流程输入变量名",   "服务流程变量值"); 
Map<String, Object>   map = new HashMap();
map.put("flowDefNum",   "服务流程的编码");
map.put("data",   execute_params);
kd.isc.iscb.util.connector.server.ConnectorCallback.call("dc","StartFlowService",map);


2、同步调用

2.1 EAS同步调用苍穹执行启动方案接口时调用示例如下:

Map<String, Object> execute_params = new HashMap<>();
execute_params.put("启动方案的参数key", "参数value");
Map<String, Object> map = new HashMap();
map.put("trigger_number", "启动方案编码");
map.put("params", execute_params);
kd.isc.iscb.util.connector.server.ConnectorCallback.call("dc","syncExecuteTriggerService",map);


 

2.2 EAS同步调用苍穹启动服务流程调用示例如下:

Map<String, Object>   execute_params = new HashMap<>();
execute_params.put("服务流程输入变量名",   "服务流程变量值");
Map<String, Object>   map = new HashMap();
map.put("flowDefNum",   "服务流程的编码");
map.put("data",   execute_params);
map.put("need_procid",   true);//如果不需要返回流程实例id则不传该参数或者传false
kd.isc.iscb.util.connector.server.ConnectorCallback.call("dc","ExecuteFlowService",map);


2.3 EAS同步调用苍穹自定义API的调用示例如下:

Map<String, Object> map = new HashMap();
map.put("number", "test06211_FOR_EAS"); //自定义API编码(后缀只能是_FOR_EAS)
Map<String, Object> execute_params = new HashMap();//自定义API入参
execute_params.put("a", 4);
execute_params.put("b", 8);
map.put("params", execute_params);
kd.isc.iscb.util.connector.server.ConnectorCallback.call("Pneworcl","CallScriptApiService",map);//Pneworcl:EAS数据中心的代码



注意事项:

其他所需微服务请参考对应类参考苍穹kd.isc.iscb.connector.ierp.svc包

EAS调用苍穹执行启动方案和服务流程

变更记录产品版本更新内容更新日期V6.0.3支持EAS同步调用启动方案和服务流程2023年12月12日V7.0.0支持EAS同步调用自定义API2024年7月10日业...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息