ASTRO轻应用 ASTROZERO-使用AstroZero文件模板生成合同文档:步骤四:创建下载文档的脚本
步骤四:创建下载文档的脚本
创建一个脚本,用于根据文档名下载OBS桶中生成的合同文档。
- 在应用设计器的左侧导航栏中,选择“逻辑”,单击脚本后的“+”。
- 新建一个空白的脚本,名称设置为“docScript”,单击“添加”。
图29 创建脚本docScript
- 在脚本编辑器中,输入示例代码。
本示例代码主要用于下载文档,示例中的“命名空间__OBS_Connector”为2中配置的连接器名称,“docTemplate”为2中配置的文件存储位置。
import * as context from 'context';//导入上下文相关的标准库 import * as objectstorage from 'objectstorage'; //定义入参结构 @action.object({ type: "param" }) export class ActionInput { @action.param({ type: 'String', required: true, label: 'String' }) docName: string; } //定义出参结构 @action.object({ type: "param" }) export class ActionOutput { @action.param({ type: 'Any' }) buf: any; } @action.object({ type: "method" }) export class CreateWorkOrder { //定义接口类,接口的入参为ActionInput,出参为ActionOutput @action.method({ input: 'ActionInput', output: 'ActionOutput' }) public createWorkOrder(input: ActionInput): ActionOutput { let out = new ActionOutput(); //新建出参ActionOutput类型的实例,作为返回值 let error = new Error(); //新建错误类型的实例,用于在发生错误时保存错误信息 try { // OBS桶路径,和模板配置中的一致 let path = "docTemplate/"; // 调用连接器下载,NS1__OBS_Connector为调用连接器名称 let obsCli = objectstorage.newClient(objectstorage.StoreType.OBS, "命名空间__OBS_Connector"); let data = obsCli.getObject(path + input.docName); out.buf = data; } catch (error) { console.error(error.name, error.message); context.setError(error.name, error.message); } return out; } }
- 单击,保存脚本。
- 运行测试脚本。
- 单击编辑器上方的,执行脚本。
- 设置输入参数,单击测试窗口右上角的,查看返回消息。
{ "docName": "1730874683589013855743152260007e733dd-80ea-19f1-b7a0-93fdcd20a541_NS1__contractModel.docx" }
其中,“1730874683589013855743152260007e733dd-80ea-19f1-b7a0-93fdcd20a541_NS1__contractModel.docx”为步骤三:创建服务编排生成文档中生成的文档,即通过脚本根据文档名下载OBS桶中的实际合同文档。
图30 查看输出参数
- 脚本测试完成后,单击页面上方的,启用该脚本。
- 华为云零代码平台AstroZero创建培训报名表_低代码开发平台_华为云Astro-华为云
- Astro轻应用_低代码开发平台Astro Zero_新手入门
- Astro轻应用_低代码开发平台Astro Zero_码农防脱神器
- 零代码开发如何创建应用_零代码开发平台_华为云Astro-华为云
- 低代码开发简易出差审批应用_低代码平台_华为云Astro-华为云
- 零代码开发平台_托拉拽开发应用_华为云Astro-华为云
- 华为云低代码平台_低代码开发平台_华为云Astro-华为云
- 华为云Astro低代码开发平台的技术价值与使用体验_低代码开发平台_华为云Astro-华为云
- Astro低代码平台关键能力_低代码开发平台_华为云Astro-华为云
- Astro轻应用_零代码平台_开发无忧加速创新