zoukankan      html  css  js  c++  java
  • Add tailormade function to system function and create menu

    if exists (select * from tempdb.dbo.sysobjects where id = object_id(N'tempdb..#table') and type='U')
      DROP TABLE #table 

    CREATE TABLE #table
        (
          [RECNUM] [decimal](28, 0) IDENTITY(1, 1)     NOT NULL ,
          ModuleCode NVARCHAR(30) COLLATE SQL_Latin1_General_CP1_CI_AS       NULL ,
          FunctionCode NVARCHAR(30) COLLATE SQL_Latin1_General_CP1_CI_AS       NULL ,
          FuncDescription NVARCHAR(30) COLLATE SQL_Latin1_General_CP1_CI_AS  NULL,
          Process_Code NVARCHAR(30) COLLATE SQL_Latin1_General_CP1_CI_AS      NULL,
          Menu_Type NVARCHAR(30) COLLATE SQL_Latin1_General_CP1_CI_AS   NULL,
          Menu_Code NVARCHAR(30) COLLATE SQL_Latin1_General_CP1_CI_AS   NULL                                
        )

    INSERT  INTO #table(ModuleCode, FunctionCode , FuncDescription,Process_Code,Menu_Type,Menu_Code)
            SELECT  'PRSF', 'PRSFRT' ,  'Matrial Reservation Transfer','M6_ENT','ENTRY','100'
            UNION ALL
            SELECT 'PRSF', 'PRSFRC' ,'Routing Process Completion','M6_ENT','ENTRY','110'
            UNION ALL
            SELECT 'PRPE', 'PRPEMJ' ,'Mass ECN','M4_ENT','ENTRY','60'
            UNION ALL
            SELECT 'PRPM', 'PRPMMJ' ,'Mass ECN','M4_ENT','ENTRY','70'
            UNION ALL
            SELECT 'SAMF', 'SAMFRP' ,'Routing Process','MAST01','MAST','110'
            UNION ALL
            SELECT 'SAMF', 'SAMFRP' ,'Bom Routing Process Settings','MAST01','MAST','120'
            UNION ALL
            SELECT 'SAMF', 'SAMFCL' ,'Collection Master','MAST01','MAST','130'
            UNION ALL
            SELECT 'SAMF', 'SAMFSY' ,'Style Master','MAST01','MAST','140'
            UNION ALL
            SELECT  'SAMF','SAMFCO' ,'Color Master','MAST01','MAST','150'
            UNION ALL
            SELECT 'PRPM', 'PRMJU' , 'Job BOM Update','M4_ENT','ENTRY','80'


    DECLARE @SeriesCode nvarchar(30)
    DECLARE @ModuleCode nvarchar(30)
    DECLARE @FunctionCode nvarchar(30)
    DECLARE @FunctionDesc nvarchar(30)
    DECLARE @RECNUM INT

    DECLARE @Process_Code nvarchar(30)
    DECLARE @Menu_Type nvarchar(30)
    DECLARE @Menu_Code nvarchar(30)

    DECLARE @LastLineNo  INT

    SET @SeriesCode=''

    DECLARE function_cursor CURSOR FOR SELECT RECNUM  FROM  #table
    OPEN function_cursor
     
    FETCH NEXT FROM function_cursor  INTO @RECNUM
    WHILE @@FETCH_STATUS = 0
    BEGIN
        SELECT @ModuleCode=ModuleCode,@FunctionCode=FunctionCode, @FunctionDesc=FuncDescription,@Process_Code=Process_Code,
            @Menu_Type=Menu_Type,@Menu_Code=Menu_Code FROM #table  WHERE RECNUM=@RECNUM      
      
         
      -- Check for Function
            if not exists ( select * from [ADFUNC] where Module_Code = @ModuleCode and Function_Code = @FunctionCode)
        begin
        
         Update [ADMODU] Set [Last_Line_No] = [Last_Line_No] + 1
         Where [Module_Code] = @ModuleCode

         Select @LastLineNo = Last_Line_No from ADMODU Where Module_Code = @ModuleCode

         if @LastLineNo is not null
         BEGIN
          Insert [ADFUNC]
           ([Module_Code], [Function_No], [Function_Code], [Description],
           [Suspended], [Series_Option], [Series_Code],
           [Created_Date], [Created_By], [Revised_Date], [Revised_By],
           [OWNER_BRANCH],[SOURCE_BRANCH],[Icon])
          Values
           (@ModuleCode, @LastLineNo, @FunctionCode, @FunctionDesc, N'N', N'Y', @SeriesCode,
           GetDate(), 'MIS', GetDate(), 'MIS', N'', N'','16')

           -- coding for EMPower
          --if '%SYS%'='EMP' or '%SYS%'='EMPT' begin
           Insert [ADAUTD]
            ([User_Group], [Module_Code], [Function_No], [Function_Code], [Description],
            [Suspended], [Allow_Read], [Allow_Create], [Allow_Update], [Allow_Delete], [Allow_Print],
            [Allow_Post], [Allow_All_Tran])
           Values
            ('SYSADM', @ModuleCode, @LastLineNo, @FunctionCode, @FunctionDesc,
            'N' ,'Y', 'Y', 'Y', 'Y', 'Y',
            'Y', 'Y')

           Insert [ADMNUD]
            ([User_Group], [Process_Code], [Function_Code], [Description], [Menu_Type], [Menu_Code],
            [Response_Type], [Suspended])
           Values
            ('SYSADM', @Process_Code, @FunctionCode, @FunctionDesc, @Menu_Type, @Menu_Code,
            'STDFUNC', 'N')
          --end
          -- coding for EPN
          --else if '%SYS%'='EPN' begin
          --  Insert [ADAUTD]
          --   ([User_Group], [Module_Code], [Function_No], [Function_Code], [Description],
          --   [Suspended], [Allow_Read], [Allow_Create], [Allow_Update], [Allow_Delete], [Allow_Print],
          --   [Allow_Post], [Allow_All_Tran])
          --  Values
          --   ('EPN', @ModuleCode, @LastLineNo, @FunctionCode, @FunctionDesc,
          --   'N' ,'Y', 'Y', 'Y', 'Y', 'Y',
          --   'Y', 'Y')

          --  Insert [ADMNUD]
          --   ([User_Group], [Process_Code], [Function_Code], [Description], [Menu_Type], [Menu_Code],
          --   [Response_Type], [Suspended])
          --  Values
          --   ('EPN', @Process_Code, @FunctionCode, @FunctionDesc, @Menu_Type, @Menu_Code,
          --   'STDFUNC', 'N')
          --end
         END
        end
        
      
        FETCH NEXT FROM function_cursor   INTO @RECNUM

    END
    CLOSE function_cursor;
    DEALLOCATE function_cursor;


    DROP TABLE #table


     

  • 相关阅读:
    Oracle Autonomous Health Framework(AHF)
    Autonomous Health Framework(AHF)相关操作
    Postgresql 正则表达式
    如何去官网下载JDK (JDK8 JDK1.8)
    配置免安装版Oracle客户端
    子用户角色权限菜单 浅谈:子账户设计方案
    EF Power Tools Beta 2 生成 Entity Framework Code First 提示 参数错误 hresult e_invalidarg
    mvc 截取上传图片做头像,自动生成不同小尺寸缩略图
    亚马逊的下拉菜单插件 jQueryMenuAim 使用
    apacheab并发负载压力测试
  • 原文地址:https://www.cnblogs.com/JamesLi2015/p/2994049.html
Copyright © 2011-2022 走看看