华为云用户手册

  • 相关操作 (可选)设置字段访问权限。 默认批量创建自定义字段后,所有权限Profile都会添加批量导入自定义字段的访问权限。若需要单独设置某些字段的访问权限,请执行该步骤。 单击自定义字段列表中的具体字段名,进入自定义字段详情页,单击“设置字段级权限”,可单独设置字段的访问权限,即哪些权限Profile可以查看或修改该字段。 图17 单击字段名 图18 设置字段级权限入口 图19 设置字段级权限 (可选)将对象字段添加到对象的页面布局。 默认批量创建自定义字段后,所有自定义字段都会显示在布局页面。若需要修改对象页面布局中字段,请执行该步骤。 在对象配置页面选择“布局”页签,单击“visitorlnfo Records”,进入对象布局页面后,选中页面中的表格组件,可在布局页添加或者删除字段。 图20 进入布局页 图21 添加或者删除字段
  • 在脚本中调用连接器 在脚本中,调用已创建的连接器,实现与SMTP的对接。 参考开发一个简单脚本实例中操作,创建一个空白脚本。 图6 新建一个空白脚本 在脚本编辑器中,输入如下代码。 // 导入连接器import * as connector from 'connector';//新建SMTP邮件连接器,第一个参数固定是emailsmtp,第二个参数是连接器的名称let client = connector.newClient("emailsmtp","命名空间__smtp01");//构建请求消息头,包括收件人地址、邮件主题、邮件正文(主题和正文不能同时为空)//按内容发送let req ={"address":"test@huawei.com","subject":"SMTP功能验证-脚本","body":"使用SMTP发送邮件"};//按模板发送,如果有template模板参数,则主题和正文配置无效,按邮件模板中的内容发送//let req={"address":"test@huawei.com","template":"smtptt1."}//发送邮件,其中第一个参数不用填写,第二个参数为消息体let resp = client.invoke("",req); 其中,connector.newClient中“命名空间__smtp01”为连接器的名称,“address”为收件人,“subject”为主题,“body”为邮件内容。 单击脚本编辑器页面上方的,保存脚本。 保存成功后,单击,执行脚本。 2中已设置入参,故此处不需要再设置,直接单击测试窗口右上角的。 检查收件人是否收到邮件。 收到邮件,表示成功调用连接器,如图7。 图7 接收邮件内容 单击脚本编辑器页面上方的,启用脚本。
  • 操作步骤 参考如何登录新版应用设计器中操作,登录新版应用设计器。 在左侧导航栏中,选择“逻辑”。 单击脚本后的,设置脚本名称,单击“添加”。 图1 新增一个空脚本 在脚本编辑器中,输入如下代码。 // Here's your code.import * as connector from "connector";let client = connector.newClient("LT927__test", "test1");let result = client.invoke("LT927__flapRefund", {});console.log(result) 其中,“LT927__test”表示连接器的名称,“test1”为创建Rest Service(自定义连接器)配置的认证信息名称,“LT927__flapRefund”为6中配置的动作名称。 单击脚本编辑器页面上方的,保存脚本。 脚本保存成功后,单击,运行脚本。 在页面底部“输入参数”页签中,输入请求参数,单击测试窗口右上角的。 在“日志”页签,查看打印的日志。
  • 支持自动审批 AstroZero支持用户任务自动审批功能,例如设置“主管审核”任务自动审批。在用户任务配置界面,指定该任务具体某一接收人,可使用表达式的形式将任务指派某一用户,在自动审批中进行设置。 流程触发人自动通过:若勾选该选项,任务接收人是流程触发人时,该用户任务会被自动审批。 已审批过该流程的审批人自动通过:若勾选该选项,任务接收人在当前BPM实例中已审批过其他用户任务,则该用户任务会被自动审批。 图1 自动审批设置 当任务接收人设置为“当前泳道”对应的工作队列或用户组时,将无法使用自动审批功能。只有任务接收人设置为某一用户时,才可进行自动审批。 父主题: 深入了解用户任务
  • 如何使用自定义错误码 自定义错误码创建完成后,可在脚本中使用。在脚本中,调用抛出错误信息的error函数I18nError('ErrorCodeName','变量1','变量2')。该函数中,输入参数为错误码名称"t__testErrorCode"和错误码信息中所携带的变量("val1"和"val2")。 创建脚本。 在新版设计器页面,单击左侧导航栏中的“逻辑”。 单击脚本后的,进入新增脚本页面。 设置脚本的名称,模板选择“空脚本”,单击“添加”。 在脚本编辑器中,输入如下代码。 // test custom error func , get diff language error by user langimport * as error from 'error';export class TestDemo { @action.method({ label: 'test', description: 'error code', input: 'No input', output: 'No output' }) public test() { //使用I18nError函数设定错误码和错误码信息携带变量 throw new error.I18nError('t__testErrorCode', ["val1", "val2"]); }} 其中,“t__testErrorCode”为自定义错误码名称,请根据实际情况配置。 单击,保存脚本后,单击,启用脚本。 按照如何定义API接口中操作,绑定上述开发的脚本,进行测试。 图3 自定义错误信息测试
  • 绑定数据模型 设置组件绑定的数据模型,有自定义对象、对象、服务和事件四种。 向页面中拖入一个表格(新)组件,单击“表格”页签,在表格属性“数据绑定”中单击,绑定数据模型。 图3 数据绑定 在弹出页面中,单击“新增模型”。 设置表格的数据模型,添加对象模型,模型名称“equipmentInstance”,单击“下一步”。 图4 创建数据模型 “选择对象”选择一个提前创建好的对象,例如“HW__Equipment__CST”,“选择字段”中选择表单中需要展示的字段,单击“下一步”。 图5 选择展示字段 在方法页面,单击“确定”,返回选择模型页面。 勾选刚建好的数据模型,单击“确定”。 绑定对象模型后,显示如图6所示。系统默认添加了斑马纹,如果不需要,可在表格属性的“基本设置”中关闭“斑马纹”。 图6 绑定数据模型后的结果列
  • 属性 数据绑定:通过建立不同类型的视图模型,将各种数据源和组件的返回值或者属性值进行关联,实现动态数据效果。 值绑定:设置组件绑定的数据模型,数据模型一般有以下几种。更多介绍,请参见值绑定。 自定义:由用户自定义的前端模型,可以在模型树上快速创建自定义字段。 对象:由后台对象模型映射创建,支持选择字段。 服务:由后台服务的出入参数模型创建,分别生成inputParam和outputParam节点。 事件:由后台事件的字段映射创建,并且支持websocket刷新模型数据。 属性值绑定,用于对该组件所有属性的动态设置。当某一属性被动态绑定时,以绑定值为准。更多介绍,请参见属性绑定。
  • 补丁包发布步骤 参考导入导出应用源码包中操作,对应用中部分组件进行设置打包。 选中“组件”后,单击“详情”,在“可选组件”页面勾选需要设置的组件,单击“保存”再进行后续操作。例如,对应用中的某一个脚本进行打包。 参考如何登录经典应用设计器中操作,登录经典版应用设计器。 在左侧导航栏中,单击,选择“设置”,进入应用编译设置页面,设置只编译该脚本。 图1 设置编译组件 图2 勾选脚本 勾选完成后,单击“保存”。 在开发页面左侧列表中,单击,选择“编译”,进行编译。 编译完成后,单击左下角的,选择“我的仓库”,将应用程序安装包发布到当前租户的私仓。 发布成功后,即可在“资产包”下获取仅包含脚本的补丁包。 补丁包发布之后,可以参考如何安装已开发好的应用中的内容进行更新安装。
  • 什么应用代码可以保护 应用包类型有资产包和源码包两种,仅资产包可设置是否受保护,源码包不受保护。 参考应用打包发布,选择“资产包”发布的应用包,包中组件可设置是否受保护。选择该项后,需要配置版权信息(可选)、描述(可选)、每个组件的保护设置(必选,配置为未受保护或者只读保护)。 三种类型保护模式:未受保护、只读保护和不可见保护。相当于Linux下的三种保护模式,即可读可写可执行(RWX)、不可写(RX)和仅可执行(X)。
  • 前台页面常用调测方法 在高级页面的开发中,常借助浏览器内置的开发者工具对样式或功能问题进行定位和分析。下面以Chrome浏览器为例,简单介绍浏览器开发者工具中常用的调测方法。在Chrome浏览器中,按下“F12”或者“Ctrl + Shift + I”,开启开发者工具。 DOM和CSS样式调试 在Elements面板,可以自由的操作DOM和CSS,来迭代布局和设计页面。在开发者工具打开的状态下,使用左上角的箭头按钮,可点选页面元素,查看该元素DOM和CSS等。也可以在Elements页签下,修改页面上的元素的DOM标签或CSS样式(修改立即生效),实时查看修改后效果。 图1 Elements页签查看调试DOM和CSS样式 打印日志信息 在Console页签下,可使用控制台打印日志信息。在Sources页签下,调试JavaScript时常用方法是将多个console.log()语句插入代码,重新加载页面后,可以在Console页签中,查看到打印的消息。Sources页签主要包括三个部分,左侧为页面请求文件列表,中间为选择文件的文件内容,右侧为JavaScript调试窗格。 想要在JavaScript中打印日志,需要找到相应文件,查找相关代码,然后插入console.log()。 图2 Sources页签布局 调用低代码平台API 在Console页签下,可使用控制台调用低代码平台提供的API,以获取相关信息进行调试。 图3 调用低代码平台API 断点调试 在Sources页签下,可以设置断点来调试JavaScript。使用断点,DevTools会在暂停时及时显示所有变量值。Chrome开发者工具,提供了代码行断点、条件代码行断点、DOM断点和事件侦听断点等多种断点,请根据调测的实际需求选择合适的断点。断点的类型和使用场景,如表1所示。 表1 Chrome断点类型及使用场景 断点类型 使用场景 代码行 在确切的代码区域中。 条件代码行 在确切的代码区域中,且仅当其他一些条件成立时。 DOM 在更改或移除特定DOM节点或其子级的代码中。 XHR 当XHR网址包含字符串模式时。 事件 在触发点击等事件后运行的代码中。 侦听器 在引发已捕获或未捕获异常的代码行中。 异常函数 任何时候调用特定函数时。 代码行断点调试是最为常见的断点调试方法, 设置代码行断点的方法是找到请求文件,在Sources左侧请求文件列表按照目录查找,也可以借助“Ctrl+F”搜索关键词找到相关文件。在Sources中间文件内容区域,找到要设置断点的代码行,单击行号,出现蓝色图标,这意味着这行代码上有一个代码行断点。如图4所示,在global_BubbleChartWidget.js文件的49行代码处,设置了一个代码行断点。 刷新此网页,脚本运行始终会在执行此行代码之前暂停,可单击右侧调试窗格的按钮进行单步调试,或者单击调试窗格的按钮继续执行脚本。 图4 代码行断点示例 多终端测试 在进行页面自适应测试时,可采用Chrome开发者工具提供的模拟移动设备的功能。借助此功能,可无实物快速对网页进行多个终端测试。 单击,可启动模拟移动设备界面,设备工具栏在打开时默认处于自适应视口模式,可以将视口大小调整为所需的任何尺寸,另外还可以选择多种终端型号。 图5 模拟移动设备
  • 自定义高级组件调试 针对用户本地开发的高级组件,AstroZero提供了Scaffolding脚手架工具,Scaffolding可帮助您快捷实现组件的新建、本地开发、调试、预览、发布和下载等主要功能。 Scaffolding打通了本地开发环境与AstroZero开发环境,实现本地开发组件的实时在线调测,简化了本地开发组件后频繁的打包组件资产包上传至AstroZero环境再查看页面显示效果的过程,可提升高级组件的开发效率。 Scaffolding的安装、使用及调试,请参考安装Scaffolding,Scaffolding图形界面操作方式。
  • 如何通过脚本控制接口访问权限 AstroZero提供了示例自定义接口前置脚本,可以仿造示例代码进行脚本的编写。 图7 创建示例自定义接口前置脚本 您可以在自定义接口前置脚本中进行自定义的权限校验,并根据校验结果返回相应的result值。 export class Output { @action.param({ type: "Number"}) result: decimal.Decimal;} const PASS = decimal.newWithExponent(1, 0);const BANNED = decimal.newWithExponent(0, 0);const FALLBACK = decimal.newWithExponent(-1, 0); 自定义接口前置脚本输出参数result含义如下: PASS--{"result":1}:校验通过,直接放行。 BANNED--{"result":0}:校验不通过,无法调用。 FALLBACK--{"result":-1}:校验通过,但还需要进行后续权限校验。 开发自定义接口前置脚本时,出参可按照示例自定义接口前置脚本代码中的表达式也可自行定义,但必须确保出参为“-1”、“0”和“1”中的某一值,否则作为校验不通过处理。 单击左下角的“服务”,在服务管理页面,单击“编辑”,将校验方式改为“与脚本绑定”,在“前置处理”中选择相应的自定义接口前置脚本。 前置处理:一般是授权处理脚本,在访问自定义接口前,需要进行授权处理。 后置处理:一般是敏感错误信息或者统计日志处理脚本,后置脚本没有返回参数,无论执行成功或失败都不影响自定义接口的请求处理流程。 图8 自定义访问控制 图9 绑定自定义接口前置脚本
  • 什么是BO 商业对象(Business Object,简称BO)是封装了完整的数据模型、业务逻辑、页面展现的软件单元。一个BO提供一个完整场景的服务,为上层应用提供特定服务。不同用户可以开发各自的BO,在BO里创建逻辑使其具有特定的业务功能,开发好后制作成用户包并进行发布。下载用户包给其他用户,其他用户安装BO包后,在上层应用(需要使用该BO服务的应用)里导入发布好的BO,即导入特定的业务功能进行使用。 例如,设备BO,为上层应用提供对设备的统一语义,对设备自身能力进行抽象封装,不包含对设备的运营运维管理能力。告警BO,对园区的所有告警提供统一语义,从各个子系统和上层应用获取告警数据,统一模型统一展现。GIS服务BO,提供对GIS子系统的租户管理、地图管理、位置服务接口的封装和标准化接口。您可以基于设备BO、告警BO以及GIS服务BO等多种BO资产,创建智能烟雾感应应用,完成设备数据的接入、处理分析以及告警监控功能。 父主题: 服务组件(BO)
  • 如何调用第三方接口 在使用AstroZero时,通常会调用第三方系统接口,进行数据交互。针对常见Rest和SOAP协议,AstroZero封装了Rest服务连接器和SOAP服务连接器。使用这两种连接器,可方便快捷的调用第三方接口,实现对第三方系统的数据增加、删除、修改和查找。 使用Rest服务调用Rest协议接口:当系统需要调用第三方提供的Rest协议接口时,可以通过配置Rest Service来实现。Rest Service是第三方系统提供的Rest服务,是一组模块化的Rest接口(Rest Action),通过配置第三方提供的Rest服务的URL进行调用。Action是对第三方接口的一个元数据描述,将第三方接口转换成AstroZero可识别的定义,方便AstroZero调用第三方接口。 使用SOAP服务调用SOAP协议接口:当系统需要调用第三方提供的SOAP协议接口时,可以通过配置SOAP Service来实现。SOAP Service是第三方系统提供的Soap服务,是一组模块化的SOAP接口(SOAP Action),通过配置第三方提供的SOAP服务的URL进行调用。Action是对第三方接口的一个元数据描述,将第三方接口转换成AstroZero可识别的定义,方便AstroZero调用第三方接口。 用户可通过第三方提供的WSDL文件手工创建SOAP Service,也可以直接导入第三方提供的WSDL文件创建SOAP Service。 调用第三方接口前,需要第三方系统提供符合Rest和SOAP协议规范的API。 父主题: 集成开发
  • 实现会签 在配置用户任务时,可以选择“或签”或“会签”两种审批类型。 图1 审批类型 或签:任一个分配人均可审批:只需要接收人中的某一用户完成了审批,即可推动任务流程,走向下一个任务。 会签:每个分配人都需要审批:需要接收人中的用户群体,满足设置的审批条件,才可推动任务流程,走向下一个任务。 通过并行审批,可以快速的实现会签功能。可以将结果触发方式选择为“等待所有投票完成触发投票结果”,在这种投票触发方式下,将需要所有被分配了当前任务的用户完成相应的任务后才能推动工作流流程,即实现了会签功能。 父主题: 深入了解用户任务
  • 调试过程 单击页面上方的,输入参数后单击“运行”,运行服务编排。 在“输入参数”中,输入如下参数: { "ownerId":"123", "limit":3, "offset":1} 检查输出页签的结果,是否符合预期。 输出如下: { "interviewId": "002N000000P4ApgMJOM4", "outputs": { "resource": [ { "ownerId": "123", "resourceName": "Folder01", "status": "Waiting", "type": "Folder" }, { "ownerId": "123", "resourceName": "File02", "status": "Waiting", "type": "File" }, { "ownerId": "123", "resourceName": "Folder02", "status": "Waiting", "type": "Folder" } ], "totalCount": 100 }} 单击服务编排编辑器页面右上方的“跟踪”,打开“日志跟踪器”页面。 在“日志跟踪器”页面,可查看服务编排执行的每一步的详细信息。 图10 查看日志详情 单击页面上方的,启用服务编排。
  • 操作步骤 参考如何创建服务编排中操作,创建一个服务编排,标签和名称为GetResourveListFlow。 图1 创建服务编排GetResourveListFlow 创建该服务编排的入参和出参变量。 由于该服务编排封装的是“ResourceListScript”脚本,所以该服务编排的入参和出参的字段类型和字段名与“ResourceListScript”脚本保持一致。 表5 服务编排变量 变量类型 参数名 Data Type Input/Output Type 普通变量Variable ownerId text Input Only limit number Input Only offset number Input Only totalCount number Output Only 结构体变量Struct resource struct Output Only 在服务编排编辑器页面右侧,选择,在私有结构体页面单击“新增”。 创建输出参数结构体类型变量“resource”前,首先需要创建私有结构体类型。 图2 添加私有结构体类型 设置页面参数。 在“基本信息”中,输入结构体名字、描述信息。 在“结构体成员”中,设置自定义成员变量,包括设置成员变量的名称、数据类型、是否必填、是否是集合、描述信息等。单击“新增”,可增加成员变量。成员变量需要和“ResourceListScript”脚本中定义的出参“resource”成员变量(参见表4)保持一致。 创建私有结构体后,即可创建私有结构体变量。 图3 配置私有结构体 在服务编排编辑器页面右侧,选择,在全局上下文页面,单击“对象变量”后的加号。 图4 单击对象变量后的加号 选择“私有结构体”,设置页面参数。 图5 配置私有结构体变量 表6 私有结构体变量参数说明 参数 参数说明 名称 结构体的变量名称,与“ResourceListScript”脚本中定义的出参命名保持一致。 本示例设置为resource。 私有结构体 结构体变量类型。 本示例选择刚创建的结构体类型名称“resourcestruct”。 默认值 变量的默认取值。 本示例不用配置。 描述 变量的描述说明,建议设置为该变量的作用。 是否为数组 是否为数组型变量,即集合变量。 本示例请勾选。 在服务编排编辑器页面右侧,选择,在全局上下文页面,单击“变量”后的加号。 单击新增变量后的“...”,选择“设置”。 图6 设置变量 配置普通变量“ownerId”。 图7 配置变量 表7 普通变量参数说明 参数 参数说明 名称 新建变量的名称。 本示例设置为ownerId。 数据类型 变量的数据类型。 默认值 变量的默认取值。 本示例不用配置。 描述 新增变量的描述说明,建议设置为变量的作用。 是否为数组 是否为数组型变量即集合变量。 本示例不用勾选。 参考上述操作,创建表5中其他普通变量。 在服务编排编辑器页面右侧,选择,按照表5从全局上下文页面中拖拽参数到相应的入参和出参区域,设置服务编排的入参和出参。 图8 设置服务编排的入参和出参 拖拽“基本”下的“脚本”图元至画布中。 单击,如图9所示,设置页面参数。 将服务编排中的变量赋值给脚本中的输入参数,脚本中的输出参数赋值给服务编排中的变量。 图9 配置脚本 表8 脚本配置参数说明 参数 参数说明 脚本 调用的脚本名称,选择“命名空间_ResourceListScript”。 只有在启用状态下同一应用工程内的脚本,才能被服务编排调用。 输入参数/目标 脚本的输入参数名称,直接在下拉框中选择。 输入参数/源 服务编排中的变量,为目标赋值。 请从“全局上下文”中,拖拽之前创建的服务编排输入变量。 输出参数/源 脚本的输出参数名称,直接在下拉框中选择。 输出参数/目标 服务编排中的变量,脚本中的输出参数赋值给服务编排中的变量,请从“全局上下文”中拖拽之前创建的服务编排输出变量。 若有多个输入参数或者输出参数,单击“新增行”,进行添加。 连接所有元素。 单击页面上方的,保存服务编排。
  • 前提条件 已创建名为“Approved Resource”的Object,用于存储资源数据,该对象中需要包含如下字段。 表2 Approved Resource对象说明 字段标签 字段名称 (系统自动生成) 字段类型 取值 读写权限 是否加入界面布局 含义 ownerId ownerId__CST 文本 长度:255 全选 不勾选 资源拥有者ID ResourceName ResourceName__CST 文本 长度:255 全选 不勾选 资源名称 Type Type__CST 选项列表 枚举值如下: File Folder 全选 不勾选 资源类型 SubmitDate SubmitDate__CST 日期/时间 不涉及 全选 不勾选 资源提交时间 ApproveDate ApproveDate__CST 日期/时间 不涉及 全选 不勾选 资源审批时间 Status Status__CST 选项列表 枚举值如下: Waiting Submitted Approved 全选 不勾选 审批状态 已创建场景描述中的脚本。该脚本根据对象的数据生成资源列表数据,用于前台数据呈现。示例脚本为“ResourceListScript.zip”,单击下载链接可获取该脚本包。该脚本中定义的入参和出参说明,如表3和表4所示。 表3 入参说明 参数 参数类型 说明 ownerId string 资源拥有者ID。 limit number 每页展示的资源条数。 offset number 每页展示第一条资源的偏移量,即从offset+1条资源开始展示。 表4 出参说明 参数 参数类型 说明 resource struct 返回资源数组集合。 approveDate:审批时间,若该记录已审批则返回审批时间。 ownerId:资源拥有者Id。 resourceName:资源名称。 status:资源状态。 Waiting:记录未提交。 Submitted:记录已提交未审批。 Approved:记录已审批。 submitDate:资源提交时间。 type:资源类型。 totalCount number 资源总数(固定100)。
  • 常见错误 变量赋值错误? 请检查输入参数的类型与定义是否匹配,必要时进行类型转换。 变量结构错误? 请检查输入参数的结构(属性名、取值类型)与目标结构是否一致。当出现大段JSON报错信息时,可借助JSON Viewer或在线JSON格式化工具进行对比。 没有走指定分支?流程意外终止? 由于流程的结束是隐含的,当没有下一步的内容时流程即结束。因此,在排他网关里如果没有设置默认分支,当所有分支的条件都不满足时,流程即进入结束状态。
  • 操作步骤 参考如何登录经典应用设计器中操作,登录经典版应用设计器。 打开某个BPM,单击编辑器上方的“运行”按钮,运行BPM,模拟与BPM的交互。 交互完成后,需要确认步骤操作的结果是否符合预期。 单击BPM编辑器页面右上方的“跟踪”,打开“日志跟踪器”页面。 在“日志跟踪器”页面,查看BPM执行的每一步的详细信息,例如查看变量传递是否符合预期。 图1 日志跟踪器 日志跟踪器界面分为两部分,即搜索框和流程日志跟踪记录表格。 搜索框 图2 搜索框 流程切换:用户可以根据时间筛选曾启动过的流程,每个流程的跟踪信息只保存半个小时。 搜索框:根据流程跟踪信息进行搜索。 下载:将当前完整的流程日志,以文件形式下载到本地,便于保存或查看。 表格:日志跟踪器表格记录了BPM流程流转的日志。其中包含时间戳、所属模块的类型、所属模块的名字、具体操作的图元类型、图元名称以及该操作的描述。模块在执行子流程时,会切换为子流程的类型和名称。 若不符合预期,则重新返回BPM修改,重复 2 。
  • 在标准页面中与BPM交互 在标准页面的自定义事件中,内置了一些交互的API : 获取变量:context.$bpm.loadVariables(): Promise 提交任务、流程: context.$bpm.submitTask(variables: {[key: string]: any}): Promise 修改变量: context.$bpm.putVariables(variables: {[key: string]: any}): Promise 图2 在标准页面的事件代码中与BPM交互
  • 开发一个业务场景脚本实例 本小节创建的业务场景脚本相对于开发一个简单脚本实例,具有更为复杂的业务逻辑。 本脚本实例实现的业务场景:根据对象的数据生成资源列表数据,用于前台数据呈现,启用本脚本后,可实现数据导入模板使用。 创建脚本之前,需要先创建脚本中操作的对象ApprovedResource,其字段如表1所示。 表1 对象说明 字段标签 字段名称 字段类型 取值 读写权限 含义 ownerId ownerId 文本 长度:255 全选 资源拥有者ID ResourceName ResourceName 文本 长度:255 全选 资源名称 Type Type 选项列表 枚举值如下: File Folder 全选 资源类型 SubmitDate SubmitDate 日期/时间 不涉及 全选 资源提交时间 ApproveDate ApproveDate 日期/时间 不涉及 全选 资源审批时间 Status Status 选项列表 枚举值如下: Waiting Submitted Approved 全选 审批状态
  • 如何定制已有脚本 您可以全新创建一个脚本,也可以根据业务需要修改已有脚本,如使用如何通过模板进行数据导入的BulkInsert脚本为例。 在以下两种场景下,您需要修改已有脚本: 场景1:在已有脚本基础上新建版本。业务需要,脚本要实现的能力变化,此时您可以基于原有脚本修改,并保存为脚本的新版本。在此场景下,原有脚本作为老版本自动失效。 场景2:在已有脚本基础上新建脚本。您需要开发的新脚本与已有的某个脚本类似,此时您可以基于原有脚本修改,再保存为新的脚本名称。在此场景下,原有脚本仍然有效。新脚本和老脚本也没有关联关系,各自独立。 场景1:在已有脚本基础上新建版本: 根据已有的“BulkInsert”版本1.0.1的脚本 ,开发“BulkInsert”版本1.0.2的脚本。 在应用开发工作台Logic目录下,单击“BulkInsert”脚本。 单击编辑器上方的另存为图标,选择“新建版本”,单击“保存”。 图5 另存为“BulkInsert”脚本 图6 保存新建版本 编辑新脚本版本的内容,修改后单击页面上方,保存修改。 图7 修改版本后保存与启用 测试脚本,确保其运行结果符合预期后,再单击启用脚本。 场景2:在已有脚本基础上新建脚本: 根据已有的“BulkInsert”脚本 ,开发“BulkInsertOther”。 在应用开发工作台Logic目录下,单击“BulkInsert”脚本。 单击编辑器上方的另存为图标,选择“新建脚本”,输入新脚本名“BulkInsertOther”,单击“保存”。 图8 新建脚本 编辑新脚本的内容,修改后单击上方图标,进行保存。 测试脚本,确保其运行结果符合预期后,再单击启用脚本。
  • 初识BPM 在经典版应用设计器中,将光标放在应用的某个目录上,单击“+”,选择“BPM”。在弹出的“添加工作流”中,设置BPM的标签和名称后,单击“添加”,即可进入BPM设计界面。 图1 创建BPM BPM设计界面由上方按钮区域、左侧面板图元区域、中间画布工作区域和右侧属性配置区域四部分组成。 图2 BPM设计界面 表1 BPM设计界面说明 序号 分类 功能说明 1 按钮区域 功能按钮区域,包括锁定、解锁、启用(或者禁用)、保存、另存为新版本或者新BPM、运行、操作回退、撤销回退、启用流跟踪器以及切换版本的操作。支持快捷键操作,即可脱离鼠标直接用键盘操作。 2 面板图元区域 BPM的组成图元,详细介绍请参见BPM图元。 3 画布工作区域 设计操作区域,在该区域可对BPM进行具体流程设计、组件放置。 选中图元或者泳道按“Delete”,可进行删除操作。 4 属性配置区域 整个BPM、泳道(Lane)或者图元属性设置区域。 当选择BPM中图元时,右侧配置区域为该图元的属性设置区域。 当选择BPM中空白区域时,右侧配置区域为该BPM的设置区域。 当选择泳道左侧标签时,右侧配置区域为该泳道的属性设置区域。
  • 调试服务编排 在服务编排编辑页面,选中需要设置断点的图元,单击鼠标右键选择“设置断点”。 设置断点后,选中图元,单击鼠标右键选择“禁用断点”或者“移除断点”,可禁用或移除断点。 目前不支持在等待Wait图元,以及等待图元之后的所有图元,设置断点。 图3 设置断点 单击服务编排编辑器上方的,开始调试服务编排。 在弹出的输入参数页面进行配置,单击“运行”。 如果有输入参数,请输入入参,再单击“运行”。如果该服务编排没有输入参数,请直接单击“运行”。 在服务编排编辑器左侧,可看到调试页面,单击可执行到下一断点,单击可停止调试,查看执行到某一断点的参数变化是否符合预期。 图4 调试页面 左侧调试页面说明: 变量:展示执行到当前断点,服务编排中的变量取值情况,包括全局变量、某图元的输入输出变量等。 调用堆栈:执行到当前断点时,出现的调用堆栈。 正在调试:正在调试的服务编排名。当执行到子服务编排时,该处显示当前子服务编排名。 断点:展示设置的所有断点,选中某一断点,单击鼠标右键可出现“移除断点”、“移除所有断点”、“启用所有断点”或“禁用所有断点”。也可以单击该区域某一断点,进行启用或禁用该断点。 单击服务编排编辑器页面右上方的“跟踪”,打开“跟踪器”页面。 在弹出的页面,可查看服务编排执行的每一步的详细信息。 图5 查看详情信息 关闭跟踪器页签,单击,至执行完最后一个断点,调试结束。 重新设计问题图元以及前后逻辑,再次运行服务编排,直至结果符合预期。 单击服务编排设计器页面上方的,启用服务编排。 调试服务编排符合预期后,需要启用服务编排。启用后,服务编排才能在系统中使用。
  • 另存版本后进行定制 此处以基于服务编排“testFlow”的基线“1.0.1”版本另存一个“1.0.2”的定制版本为例,进行说明。 单击已创建好的服务编排“testFlow”,进入该服务编排设计页面。 单击页面上方的,禁用该服务编排。 单击页面上方的,进入另存为页面。 “类型”选择“新版本”,设置服务编排标签,单击“保存”。 保存后,系统默认进入“1.0.2”的新版本服务编排设计页面。 图1 另存为新版本 标签:服务编排的标签,用于在页面展示。 名称:服务编排的名称,和基线版本的服务编排名称保持一致。 类型:另存为的类型。 新版本:另存为新版本,适用于新建的服务编排,基础服务编排仍可使用。 新服务编排:是将原服务编排重新另存并命名,新保存后为另一服务编排,与选择“新版本”场景不同,适用于新建的服务编排,基础服务编排仍可使用。 服务编排类型:服务编排的类型,在创建基础服务编排时配置的类型,不可更改。 Autolaunched Flow:自启动服务编排,在接口调用后会立即执行服务编排模型定义的逻辑。 Event Trigger:事件触发的服务编排,在事件触发时才会开始执行服务编排模型定义的逻辑。 展示标签:服务编排实例的展示标签,系统自动填充为“标签值{!$Flow.CurrentDateTime}”。 描述:服务编排的描述信息。 在“1.0.2”版本服务编排设计页面,按需进行定制。 单击页面上方的,保存服务编排。 保存成功后,单击,运行服务编排,检查服务编排运行结果是否符合预期。 单击页面上方的,启用新版本服务编排。 在此方式下,当基线版本升级时,系统默认启用和使用服务编排的定制版本。升级造成的基线服务编排原有图元变化,定制服务编排可继承。升级造成的基线服务编排新增图元,定制服务编排无法继承。
  • 基于预留扩展点进行定制 此处以“createOrder”接口为例进行介绍,基线“createOrder”接口中预留了一个扩展点。 这个扩展点是一个空的子服务编排“AfterSaveOrder”,将这个子服务编排另存一个定制版本“AfterSaveOrder_0419”,实现新的业务逻辑。子服务编排另存为定制版本的操作方法,请参见另存版本后进行定制。 在此方式下,定制内容在基线接口预留节点中,该接口还是属于基线接口,可以随版本升级使用。 图2 定制示例
  • 运行服务编排 服务编排开发完成后,单击页面上方的,保存服务编排。 保存后,系统会对服务编排进行编译。如果有报错或者警告,请单击“确定”,在服务编排编辑器页面修改服务编排。修改后再次保存,直至无报错和警告。 保存成功后,单击页面上方的,运行服务编排。 在弹出的输入参数页面进行配置,单击“运行”。 如果有输入参数,请输入参数后,再单击“运行”。如果该服务编排没有输入参数,可直接单击“运行”。 表1 基本信息参数说明 参数 参数说明 请求头参数 请求消息头的参数配置,“键”为参数名,“值”为参数取值。 单击“请求头参数”前的,会显示映射区域“键”和“值”。若需要多个请求头参数,请单击“添加行”。 responseType('arraybuffer') 表示返回响应的类型。勾选时,表示返回响应是一个包含二进制数据的JavaScript ArrayBuffer。 输入参数 填写该服务编排运行实例的输入参数及取值。 检查输出页签的调试结果,是否符合预期。 图1 调试结果 表2 输出页签 调试结果 取值 查看日志 单击该按钮,可弹出“日志跟踪器”,显示该服务编排实例的运行日志。 结果 调试结果。 成功 '参数名'的值'%!v(BADINDEX)'无效或格式非法 输出 该服务编排的输出内容,检查输出是否和预期一致。 若输出结果符合预期,单击服务编排编辑器页面上方的,启用服务编排。 若发现输出结果不符合预期,单击服务编排编辑器页面右上方的“跟踪”,打开“跟踪器”页面,查看详细信息。 在“跟踪器”页面,查看服务编排执行的每一步的详细信息。检查哪一步的输出不符合预期,并按照调试服务编排进行调试。 图2 日志跟踪器
  • 是否可以多人编辑服务编排 当多人编辑已有服务编排时,为防止多人篡改,低代码平台提供了一套保护机制。假设,A用户打开X服务编排,编辑前单击锁定服务编排,A用户进行编辑,此时B用户也打开X服务编排,B用户的服务编排编辑器将自动进入锁定模式。 保持A用户对X流程的编辑设计权限。A用户编辑完成后,需要单击,进行解锁或者单击启用按钮进行自动解锁。 当A用户锁定X流程后,系统会只读模式锁定B用户对X流程的操作,B用户的服务编排编辑器页面会有提示“该资源已经由A用户锁定,点击此处强制获得编辑权”。B用户如果按照提示强制获得编辑权,A用户的X流程编辑器画面会自动锁定。 当多人编辑已有BPM、触发器、标准页面或状态机时,AstroZero提供的保护机制是相同的,后续不再分别介绍。 父主题: 服务编排
  • 如何使用开天集成工作台连接器图元 开天集成工作台是面向应用开发者和API开发者,提供基于元数据的可扩展的集成框架,打造开放、共生、智能、协同的技术标准体系,从而降低应用间的集成工作量,并沉淀多种集成资产,如连接器、领域信息模型资产等的平台。更多相关介绍,请参考开天集成工作台产品文档。 连接器图元中有一种特殊的图元,用于对接开天集成工作台,调用开天集成工作台上已有的API。在服务编排中,如何使用开天集成工作台连接器,请参见在服务编排中,如何使用开天集成工作台连接器图元。
共100000条