界面设计器创建批量更新的动作

界面设计器如果创建批量更新的动作

一、拖拽批量动作到表格区域

拖拽批量动作至表格区域,创建批量更新动作
界面设计器创建批量更新的动作
设置动作信息,设置完成之后点击保存
界面设计器创建批量更新的动作

二、设置批量动作弹窗视图

点击设计弹窗,出现弹窗设计器界面
界面设计器创建批量更新的动作
将需要批量更新的字段拖入表单区,将待提交的数据需要展示字段拖入表格区域,比如更新名称,展示待提交数据的ID、名称、创建时间(注意:创建时间需要在表格中也展示)
界面设计器创建批量更新的动作
拖拽客户端动作进入动作区域,并设置动作信息,客户端行为选择批量更新
界面设计器创建批量更新的动作
动作设置成功,点击保存

三、发布设计好的批量动作,在运行页面看看效果

选择批量更新的数据之后点击批量更新
界面设计器创建批量更新的动作
将名称修改为‘批量修改名称’
界面设计器创建批量更新的动作
查看最后实现效果
界面设计器创建批量更新的动作

Oinone社区 作者:oinone原创文章,如若转载,请注明出处:https://doc.oinone.top/designer/6827.html

访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验

(0)
oinone的头像oinone
上一篇 2024年4月19日 pm8:51
下一篇 2024年4月23日 pm7:19

相关推荐

  • 左树右表的配置,无代码方式实现

    场景 以公司的部门与员工为示例(需要建一个自关联字段) 第一步先在模型设计器界面创建一个员工模型 第二步在模式设计器界面创建一个部门模型,并建自关联字段与他表模型关联字段 1.创建部门模型 2.创建自关联字段 3.建关联其他模型字段 第三步在界面设计器页面设计树表 1.创建树表页面 2.设计树表 3.设计创建表单 第四步查看效果 1.先创建部门 2.再创建员工 3.最终树表效果

    2023年11月20日
    4.3K00
  • 创建与编辑一体化

    在业务操作中,用户通常期望能够在创建页面后立即进行编辑,以减少频繁切换页面的步骤。我们可以充分利用Oinone平台提供的创建与编辑一体化功能,使操作更加高效便捷。 通过拖拽实现表单页面设计 在界面设计器中,我们首先需要设计出对应的页面。完成页面设计后,将需要的动作拖入设计好的页面。这个动作的关键在于支持一个功能,即根据前端传入的数据是否包含id来判断是创建操作还是编辑操作。 动作的属性配置如下: 前端自定义动作 一旦页面配置完成,前端需要对这个动作进行自定义。以下是一个示例的代码: @SPI.ClassFactory( ActionWidget.Token({ actionType: [ActionType.Server], model: '模型', name: '动作的名称' }) ) export class CreateOrUpdateServerActionWidget extends ServerActionWidget { @Widget.Reactive() protected get updateData(): boolean { return true; } } 通过以上步骤,我们实现了一个更智能的操作流程,使用户能够在创建页面的同时进行即时的编辑,从而提高了整体操作效率。这种创建与编辑一体化的功能不仅使操作更加顺畅,同时也为用户提供了更灵活的工作流程。

    2023年11月21日
    1.8K00
  • 集成接口与数据流程的使用

    连接器 点击连接器tab,进入连接器页面,默认选择应用 应用 点击新增应用资源,抽屉打开创建应用的表单 创建应用成功之后,点击应用卡片,进入应用详情页 点击新增API,出现新增API与新增webservice的选项 点击新增API或者新增webservice,抽屉打开新增页面,需设置api名称、url、描述、请求参数、响应结果等信息 数据库 点击数据库tab,切换至数据库列表页 点击新增db资源,抽屉打开新增页面 数据库创建完成之后,点击数据卡片,可进入数据库详情页 点击新增API,抽屉打开新增页面,新增页面包含API名称、描述、请求参数、数据库操作、响应结果等内容(注意:响应结果中的取值表达式的值为查询结果中的列名,如列名取了别名,就写别名,截图有例子) 数据流程 点击数据流程tab进入数据流程列表页 点击创建流程,选择应用之后,点击创建,进入数据流程创建页 点击名称处的编辑操作可设置流程名称 触发-定时触发 点击触发节点,选择定时触发 设置好定时信息之后,点击保存(到定时时间之后会自动触发流程) 触发-消息触发 点击触发节点,触发方式选择消息触发,输入消息标识,设置参数(触发时根据消息标识触发,如果存在两个相同的消息标识,那触发时两个都会触发) 设置完成参数之后,点击确定 再点击保存,触发设置完成 消息触发的方式,可直接调用接口,或者写入到代码中触发,以下为接口触发方式 先调用登录接口 再调用消息触发接口(msgId为消息标识) 点击加号可添加节点,可选择API、新增数据、更新数据、获取数据、删除数据、更新流程参数、引用逻辑、延时、条件分支、子流程、循环、站内信、邮件、短信等节点 API节点 点击API节点 点击节点可设置节点名称 输入节点名称 点击节点设置,进入设置页面 先选择资源应用,再选择API(资源应用的数据为连接器创建的数据) 设置赋值表达式(当字段为必填,且无默认值时,赋值表达式必填) 设置完成点击,保存 API的响应结果可作为下个节点的参数 提示:当参数类型为对象非数组时,赋值表达式配置在对象的下个层级中,当参数类型为对象数组时,赋值表达式配置在对象中,具体见如下图片 对象非数组 对象数组 ### 循环节点-列表循环 设置循环节点 #### 设置循环列表 设置完成,点击保存(循环次数为获取的数据条数) 循环里面可添加节点 设置循环里面的节点,如选择新增节点,点击新增节点之后,选择应用,模型数据保存方式,点击创建 字段的表达式可选择循环节点的参数 设置完内容之后,点击保存 #### 循环节点-次数循环 点击循环节点,循环模式选择次数循环 循环开始值、结束值、步长,可通过表达式选择数字类型的,也可自己手动输入 设置完成之后,点击保存 ### 更新流程参数 第一步先进行流程配置 点击添加新参数 参数类型支持四种,文本、数值、日期(日期时间)、布尔 输入参数名称之后点击保存 保存成功之后,再切换至流程设计 第二步添加更新流程参数节点 第三步设置流程参数节点 进入节点设置之后,点击添加参数 选择参数,给参数赋值(注意布尔类型的值,直接输入ture或者false) 参数值设置完成之后点击保存 设置的参数可用于下个节点的赋值表达式中(如更新数据节点) 设置完成点击保存 ### 引用逻辑 添加引用逻辑节点 设置引用逻辑节点 选择应用、模型、函数,设置参数 配置表达式,配置完成,点击确定 节点信息设置完成之后,点击保存 ### 新增数据、更新数据、获取数据、删除数据、延时、条件分支、子流程、循环、站内信、邮件、短信节点与流程设计器用法一致 流程发布 流程设置完成之后,点击发布流程(如果是定时触发,将会到触发时间自动触发,如果是消息触发,当发送对应消息时触发,具体见上文中写的触发-消息触发)

    2023年11月10日
    82000
  • 集成接口测试功能

    API、 WebService、数据库的测试功能

    2025年8月26日
    81600
  • 如何实现页面间的跳转

    介绍 在日常的业务中,我们经常需要在多个模型的页面之间跳转,例如从商品的行可以直接点击链接跳转到类目详情,还有查看该订单发起的售后单列表,这里将给大家展示如何在oinone中如何实现这些功能。 方法一、通过界面设计器的无代码能力配置 表格行跳转到表单页/详情页 拖入一个跳转动作到表格行,保存动作后,在左侧的动作属性面板底部有个请求配置,里面的上下文属性就是配置跳转参数的地方,点击添加按钮可以增加一行参数 点击添加按钮后,可以看到新增了一行,行内有2个输入框,左侧输入框为目标视图模型的字段,右侧输入框为当前视图模型的表达式 注意 表达式中activeRecord关键字代表当前行的数据对象 “上下文”相关知识点 当前页面的模型和跳转后的页面模型相同的情况下,会字段带上当前行数据的id作为路由参数 上下文是从当前页面跳转到下个页面带的自定义参数 上下文会作为跳转后的页面数据加载函数的入参,后端的该函数需要根据该条件查询到数据返回给前端,典型的例子就是编辑页,根据id查询对象的其他字段信息返回 跳转后页面的数据加载函数可以在动作场景的时候选择加载函数,也可以在页面的加载函数处设置 方法二、通过低代码方式在自定义代码中调用 oinone提供了内置函数executeViewAction实现该功能 import { DefaultComparisonOperator, executeViewAction, QueryExpression, RuntimeViewAction, ViewActionTarget, ViewType } from '@kunlun/dependencies'; export class JumpActionWidget { protected goToObjectView() { executeViewAction( { viewType: ViewType.Form, moduleName: 'resource', model: 'resource.ResourceCountry', name: 'redirectUpdatePage', target: ViewActionTarget.Router } as RuntimeViewAction, undefined, undefined, { // 此处为id参数,目前只有表单和详情页需要 id: '12223', // 此处为上下文参数,context内对象的key是目标页面需要传递的默认值 context: JSON.stringify({code: 'xxx'}), // 此处为跳转后左侧菜单展开选中的配置 menu: JSON.stringify({"selectedKeys":["国家"],"openKeys":["地址库","地区"]}) } ); } protected goToListView() { const searchConditions: QueryExpression[] = []; searchConditions.push({ leftValue: ['countryCode'], // 查询条件的字段 operator: DefaultComparisonOperator.EQUAL, right: 'CN' // 字段的值 }); executeViewAction( { viewType: ViewType.Table, moduleName: 'resource', model: 'resource.ResourceCity', name: 'resource#市', target: ViewActionTarget.OpenWindow } as RuntimeViewAction, undefined, undefined, { // searchConditions相当于domain,不会随页面搜索项重置动作一起被清空 searchConditions: encodeURIComponent(JSON.stringify(searchConditions)), // searchBody的字段会填充搜索区域的字段组件,会随页面搜索项重置动作一起被清空 searchBody: JSON.stringify({code: 'CN'}), menu: JSON.stringify({"selectedKeys":["国家"],"openKeys":["地址库","地区"]}) } ); } } 扩展知识点 为什么executeViewAction跳转到的新页面不是入参的moduleName属性对应的模块? 答:跳转后所在的模块优先级为: 第一个入参的resModuleName属性对应的模块 执行executeViewAction时所在的模块 第一个入参的moduleName属性对应的模块 如何快速获取选中菜单的值? 答:先通过页面菜单手动打开页面,然后在浏览器自带调试工具的控制台执行decodeURIComponent(location.href),其中的menu参数就是我们需要的值

    2024年5月13日
    2.8K00

Leave a Reply

登录后才能评论