if exists (select name from sysobjects where name = 'PROC_CREATE_COMPARE_VIEW')
begin
drop procedure PROC_CREATE_COMPARE_VIEW
endgo/*
过程名:创建业务财务对照视图 动态创建
编写人:zhough
编写日期:2004-05-07
最后修改:
*/go/*得到ROW_ID*/
create procedure PROC_CREATE_COMPARE_VIEW
@Business_flag varchar(2)
--with ENCRYPTION
as
declare
@v_Table varchar(16), -- 表格名称
@v_CodeField varchar(16), -- 显示代码字段
@v_NameField varchar(16); -- 显示名称字段BEGIN
if @Business_flag = '1' -- 人员表
begin
set @v_Table = 'MD_PERSON'
set @v_CodeField = 'PERSON_CODE'
set @v_NameField = 'PERSON_NAME'
end; else if @Business_flag = '2' -- 客户视图
begin
set @v_Table = 'V_MD_CUSTOMER'
set @v_CodeField = 'CUSTOMER_CODE'
set @v_NameField = 'CUSTOMER_NAME'
end; else if @Business_flag = '3' -- 部门表
begin
set @v_Table = 'MD_BRANCH'
set @v_CodeField = 'BRANCH_CODE'
set @v_NameField = 'BRANCH_NAME'
end; else if @Business_flag = '4' -- 科目表
begin
set @v_Table = 'MD_ACCOUNT'
set @v_CodeField = 'ACCOUNT_CODE'
set @v_NameField = 'ACCOUNT_NAME'
end;
exec('
alter view V_COMPARE_TYPE
as
select row_id,
'+@v_CodeField+' as compareCode,
'+@v_NameField+' as compareName
from md_person
where active_flag = ''1''
')
END;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货