慧表临时表回写物理表实现批量修改,能实现,简单和稳定性仅次于映射法

2022-05-18 20:49:00
微图
原创
1016
摘要:不用映射用回写实现批量修改,且保留RecoridID表单标识作用

前言

几乎每个系统都会涉及批量修改操作。新增的话,通常用自带导入功能或者新开个物理明细表批量新增数据,常应用在系统初始化过程中。初始化之后在系统使用过程中,会不定时逐行新增,之后有时会有批量修改的需求。此时批量回写修改从是否共用批量新增模板来分有2中选择,共用新增模板;另1种是另起模板。下表比较2者优缺点:

比较
优点 缺点
共用新增模板表 模板总数少 和原始新增数据混合,执行前得先把后逐行新增的数据提过来,区分后改的,才能执行回写修改,逻辑有点长且复杂
另起模板 和新增模板分离,保持原始新增数据不变,分类修改所有数据,逻辑清晰,权限、交互各自控制 多1模板

基于以上比较,另起模板方案优点较多,本文选用另起模板方式实现批量修改。

本文主要涉及的模板路径

h.weitue.com:7788

admin

教程

一.思路

二.实现过程

1.复制-映射品类模板

2.映射表-改成:临时表

3.开高阶,存后刷新

4.绑定前台表

4.1主表


--查出所有品类
with t as(
select 
    row_number() over(partition by 类ID order by ID) as 类N
,*
from 产品表 with(nolock)
)
select * from t where 类N = 1

构建视图v品类

绑定前台表(这里为简单,把品类字段删除,只留品类ID字段)

给权限,就可以在前台查看了

4.2.明细表

主、明细表类ID字段都勾选自定义报表标识

各自过滤出来了

5.回写公式

6.按钮执行回写公式

7.优化交互和显示

三.总结


回写修改法
优点 缺点
和纯粹映射法比
保留RecordID表单标识作用。后台也没新增任何物理表
得构建前台表和回写公式
和先删后插法比
不浪费RecordID号

要是系统后期用到RecordID字段做表单标识的话,更推荐本方法。

四.应用实例

设备管理


--v设备类型
--先按设备类型分类,RecordIDID由小到大排序
with t as (
select  
      row_number() over(partition by 设备类型 order by RecordID) as RN
      ,设备类型
      ,'批量修改设备' as 模板
      ,[RecordID]
      ,[CreateUser]
      ,[CreateOrg]
      ,[CreateTime]
      ,[EditingUser]
      ,[LastEditUser]
      ,[LastEditTime]
      ,[ReportStatus]
      ,[LockStatus]
      ,[WorkflowStatus]
 from 设备表 with(nolock)
) 
--找出RN=1的就是唯一的设备类型
select * from t where RN = 1



发表评论
评论通过审核后显示。
  • 在线客服
  • 关注微信
    • 客服帆帆
    • 客服娜娜
    • 客服美美
    • 客服龙龙
  • 扫一扫关注微信