事件目标(脚本服务)

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

事件目标(脚本服务)

变更记录


产品版本

更新内容更新日期
V6.0.13初始版本2024年6月13日




1 简介


1.1 功能介绍

事件订阅时,可通过脚本编程实现事件目标复杂业务逻辑,如复杂逻辑运算、API接口、微服务调用等处理。


1.2 应用场景

1、事件触发时,需要执行微服务调用、WebAPI接口等场景。

2、事件触发,需要进行多动作串行调用(逻辑运算、微服务、API等组合串行调用)的场景。


1.3 系统路径

【集成服务云】→【事件网格】→【事件订阅(脚本服务)】


1.4 关键字段/按钮说明

1.4.1 关键字段说明

字段名称详细解释
备注简要概括脚本处理的业务逻辑,使脚本更易读
脚本编写脚本逻辑进行事件目标处理,如进行复杂数据转换、WebAPI接口、微服务调用等处理


2 主要操作

2.1 配置脚本服务事件目标

操作步骤

步骤1:填写脚本备注。

步骤2:编写事件目标脚本。

脚本可用变量如下

变量标识变量说明
$data

事件参数。通过“$data.”获取事件参数里某个属性变量。比如:$data.number 表示取事件参数里的编码。

$event.number当前触发事件的编码
$event.name当前触发事件的名称
$event.dataSourceNumber当前触发事件的来源数据源编码
$event.dataSourceName当前触发事件的来源数据源名称
$event.time当前事件触发时间
$event.msgId事件消息唯一ID
$event.req.userId上下文中用户ID
$event.req.accountId上下文中账套ID
$event.req.orgId上下文中组织ID
$event.req.tenantId上下文中租户ID


脚本示例1:调用苍穹微服务插件

var objNumbers;
objNumbers += $data.objNumber;

var userId = $event.useId;

//获取执行对象的结果),代码示例
var result = invokeMicroService2('isc', 'iscb', 'ISCDataCopyService', 'getExecutionState',objNumbers , userId);

//把结果打到订阅实例日志输出参数里面
return result;


脚本示例2:调用二开微服务插件

注意:调用二开微服务(注意:二开微服务的cloudid为二开工厂类的部署包路径,并以@isv结尾)。具体可参考:https://vip.kingdee.com/link/s/lY7XW

var result = invokeMicroService2("kd.isc.iscb.platform.core.isv@isv", "iscb", "TestService", "sayHello", "二开微服务调用测试");

//把结果打到订阅实例日志输出参数里面
return result;


脚本示例3:HTTP请求远端API

//设置链接
var url = "https://qyapi.weixin.qq.com/cgi-bin/service/get_provider_token";

//设置cookies 
var cookies = {"KERPSESSIONID":"OdQkekKB0wvsT1mExYpI7U9jisFDxTrnIk9lWM29mGheks8
BPi8fGXFLVP7Ys5ivOvrR62fGho1V4VB4zIoNfFH5UYgE5E3Ku98jSMERJ57o2h8vItnzOEt1Gkhb2Z5R"};

//设置请求头
var header = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36
(KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36'};

//设置参数
var param =  {"corpid":"xxxxx","provider_secret":"xxx"};

//发起请求,返回结果需要是json格式,如果不是会抛出异常

var result = HttpInvoke(url, param, cookies, header);

//把结果打到订阅实例日志输出参数里面
return result;


3、注意事项

1、编写脚本时,可前往【事件网格->其他->脚本帮助手册】查看在线帮助手册,里面有很多函数的使用教程和案例

2、脚本编写完,可先使用【事件网格->其他->脚本执行工具】进行脚本执行,看是否符合预期。如果执行出现错误,可使用【事件网格->其他->脚本调试工具】进行脚本的调试和优化。

3、更详细的脚本编写教程请参考:脚本基本语法脚本开发指南脚本优化实例

4、脚本执行不抛错的话,订阅实例里记录目标执行就是成功的。请在脚本里面处理失败场景进行抛错处理。




事件目标(脚本服务)

变更记录产品版本更新内容更新日期V6.0.13初始版本2024年6月13日1 简介1.1 功能介绍事件订阅时,可通过脚本编程实现事件目标复杂业务逻辑...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息