技术答疑.常用SQL.更新单据体序号

【应用场景】
单据体先有数据,后启用序号列,新的数据行会自动刷新序号,而历史数据是不会自动刷新序号的,需要手动刷新。
下面以流程配置中心为例,演示如何使用SQL脚本刷新序号列的数据。
单据体启用序号列:

历史数据,序号列全是0:

【实现步骤】
<1>登录星空数据中心所在数据库服务器,执行以下SQL刷新序号列数据。
-- 更新单行分录的单据体的序号 UPDATE T_WF_PRCLAUNCHCONFIG SET FSEQ = 1 WHERE FTMPID IN ( SELECT FTMPID FROM T_WF_PRCLAUNCHCONFIG GROUP BY FTMPID HAVING ( COUNT(*) = 1 ) ) -- 更新多行分录的单据体的序号(拷贝此查询语句生成的SQL并执行,即可实现单据体序号的刷新) -- SET a.FSEQ = b.ROWID -- 完全覆盖 -- SET a.FSEQ = CASE WHEN a.FSEQ=0 THEN b.ROWID ELSE a.FSEQ END -- 仅更新值等于0的序号 SELECT 'UPDATE a SET a.FSEQ = b.ROWID FROM T_WF_PRCLAUNCHCONFIG a JOIN ( SELECT ROW_NUMBER() OVER ( ORDER BY FTMPDETAILID ) AS ROWID , * FROM T_WF_PRCLAUNCHCONFIG WHERE FTMPID = '+CAST(FTMPID AS VARCHAR(50))+' ) b ON a.FTMPDETAILID = b.FTMPDETAILID' FROM T_WF_P
技术答疑.常用SQL.更新单据体序号
【应用场景】单据体先有数据,后启用序号列,新的数据行会自动刷新序号,而历史数据是不会自动刷新序号的,需要手动刷新。下面以流程配置中...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇



