Files
workspace/code/fms/sql/fms_workflow_edge_name.sql
T
2026-09-23 16:54:54 +08:00

42 lines
1.7 KiB
Transact-SQL

/* ============================================================================
wf_edge 增加 b_name(连线名称)
----------------------------------------------------------------------------
背景:设计器要给连线起名(条件分支出线上的「是 / 否」「金额大于 1 万」这类标签),
但 wf_edge 原本没有名称列,属性面板里填的名称没有落点,重开就丢。
wf_node 早就有 b_name,连线补上才对称。
语义:只用于画布标签展示;留空时前端按 b_condition_json 生成摘要显示,
不参与流程执行,也不参与连线条件判断。
历史行保持 NULL:不臆造名称,前端对空值回落成条件摘要。
============================================================================ */
if not exists (
select 1
from sys.columns
where object_id = object_id('dbo.wf_edge')
and name = 'b_name'
)
alter table dbo.wf_edge add b_name nvarchar(200) null;
GO
-- 说明属性(MS_Description):已存在时不重复添加
if not exists (
select 1
from sys.extended_properties
where major_id = object_id('dbo.wf_edge')
and minor_id = columnproperty(object_id('dbo.wf_edge'), 'b_name', 'ColumnId')
and name = N'MS_Description'
)
exec sys.sp_addextendedproperty @name=N'MS_Description', @value=N'连线名称(画布标签,留空时前端按条件摘要显示)',
@level0type=N'SCHEMA', @level0name=N'dbo', @level1type=N'TABLE', @level1name=N'wf_edge',
@level2type=N'COLUMN', @level2name=N'b_name';
GO
/* 自检 */
select N'wf_edge.b_name' as 项, count(*) as 行数
from sys.columns
where object_id = object_id('dbo.wf_edge')
and name = 'b_name';
GO