USE [master]
GO
/****** Object:  Database [EProjectDB]    Script Date: 2022/4/11 10:09:18 ******/
CREATE DATABASE [EProjectDB]
 CONTAINMENT = NONE
 ON  PRIMARY 
( NAME = N'EProjectDB', FILENAME = N'D:\SqlDataDb\Sql2016\EProjectDB.mdf' , SIZE = 425984KB , MAXSIZE = UNLIMITED, FILEGROWTH = 51200KB )
 LOG ON 
( NAME = N'EProjectDB_log', FILENAME = N'D:\SqlDataDb\Sql2016\EProjectDB_log.ldf' , SIZE = 470144KB , MAXSIZE = 2048GB , FILEGROWTH = 51200KB )
GO
ALTER DATABASE [EProjectDB] SET COMPATIBILITY_LEVEL = 100
GO
IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
begin
EXEC [EProjectDB].[dbo].[sp_fulltext_database] @action = 'enable'
end
GO
ALTER DATABASE [EProjectDB] SET ANSI_NULL_DEFAULT OFF 
GO
ALTER DATABASE [EProjectDB] SET ANSI_NULLS OFF 
GO
ALTER DATABASE [EProjectDB] SET ANSI_PADDING OFF 
GO
ALTER DATABASE [EProjectDB] SET ANSI_WARNINGS OFF 
GO
ALTER DATABASE [EProjectDB] SET ARITHABORT OFF 
GO
ALTER DATABASE [EProjectDB] SET AUTO_CLOSE OFF 
GO
ALTER DATABASE [EProjectDB] SET AUTO_SHRINK OFF 
GO
ALTER DATABASE [EProjectDB] SET AUTO_UPDATE_STATISTICS ON 
GO
ALTER DATABASE [EProjectDB] SET CURSOR_CLOSE_ON_COMMIT OFF 
GO
ALTER DATABASE [EProjectDB] SET CURSOR_DEFAULT  GLOBAL 
GO
ALTER DATABASE [EProjectDB] SET CONCAT_NULL_YIELDS_NULL OFF 
GO
ALTER DATABASE [EProjectDB] SET NUMERIC_ROUNDABORT OFF 
GO
ALTER DATABASE [EProjectDB] SET QUOTED_IDENTIFIER OFF 
GO
ALTER DATABASE [EProjectDB] SET RECURSIVE_TRIGGERS OFF 
GO
ALTER DATABASE [EProjectDB] SET  DISABLE_BROKER 
GO
ALTER DATABASE [EProjectDB] SET AUTO_UPDATE_STATISTICS_ASYNC OFF 
GO
ALTER DATABASE [EProjectDB] SET DATE_CORRELATION_OPTIMIZATION OFF 
GO
ALTER DATABASE [EProjectDB] SET TRUSTWORTHY OFF 
GO
ALTER DATABASE [EProjectDB] SET ALLOW_SNAPSHOT_ISOLATION OFF 
GO
ALTER DATABASE [EProjectDB] SET PARAMETERIZATION SIMPLE 
GO
ALTER DATABASE [EProjectDB] SET READ_COMMITTED_SNAPSHOT OFF 
GO
ALTER DATABASE [EProjectDB] SET HONOR_BROKER_PRIORITY OFF 
GO
ALTER DATABASE [EProjectDB] SET RECOVERY SIMPLE 
GO
ALTER DATABASE [EProjectDB] SET  MULTI_USER 
GO
ALTER DATABASE [EProjectDB] SET PAGE_VERIFY CHECKSUM  
GO
ALTER DATABASE [EProjectDB] SET DB_CHAINING OFF 
GO
ALTER DATABASE [EProjectDB] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF ) 
GO
ALTER DATABASE [EProjectDB] SET TARGET_RECOVERY_TIME = 0 SECONDS 
GO
ALTER DATABASE [EProjectDB] SET DELAYED_DURABILITY = DISABLED 
GO
EXEC sys.sp_db_vardecimal_storage_format N'EProjectDB', N'ON'
GO
ALTER DATABASE [EProjectDB] SET QUERY_STORE = OFF
GO
USE [EProjectDB]
GO
ALTER DATABASE SCOPED CONFIGURATION SET MAXDOP = 0;
GO
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET MAXDOP = PRIMARY;
GO
ALTER DATABASE SCOPED CONFIGURATION SET LEGACY_CARDINALITY_ESTIMATION = OFF;
GO
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET LEGACY_CARDINALITY_ESTIMATION = PRIMARY;
GO
ALTER DATABASE SCOPED CONFIGURATION SET PARAMETER_SNIFFING = ON;
GO
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET PARAMETER_SNIFFING = PRIMARY;
GO
ALTER DATABASE SCOPED CONFIGURATION SET QUERY_OPTIMIZER_HOTFIXES = OFF;
GO
ALTER DATABASE SCOPED CONFIGURATION FOR SECONDARY SET QUERY_OPTIMIZER_HOTFIXES = PRIMARY;
GO
USE [EProjectDB]
GO
/****** Object:  User [monitor]    Script Date: 2022/4/11 10:09:18 ******/
CREATE USER [monitor] WITHOUT LOGIN WITH DEFAULT_SCHEMA=[monitor]
GO
/****** Object:  User [bycsrveproject]    Script Date: 2022/4/11 10:09:18 ******/
CREATE USER [bycsrveproject] WITHOUT LOGIN WITH DEFAULT_SCHEMA=[dbo]
GO
/****** Object:  User [backup]    Script Date: 2022/4/11 10:09:18 ******/
CREATE USER [backup] WITHOUT LOGIN WITH DEFAULT_SCHEMA=[backup]
GO
ALTER ROLE [db_owner] ADD MEMBER [bycsrveproject]
GO
ALTER ROLE [db_backupoperator] ADD MEMBER [backup]
GO
/****** Object:  Schema [backup]    Script Date: 2022/4/11 10:09:18 ******/
CREATE SCHEMA [backup]
GO
/****** Object:  Schema [monitor]    Script Date: 2022/4/11 10:09:18 ******/
CREATE SCHEMA [monitor]
GO
/****** Object:  Table [dbo].[Editor_PM]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Editor_PM](
	[PMId] [nvarchar](50) NOT NULL,
	[EProjectId] [nvarchar](50) NOT NULL,
	[DisciplinesWBSCode] [nvarchar](50) NULL,
	[DisciplinesWBSName] [nvarchar](50) NULL,
	[WBS] [nvarchar](50) NULL,
	[SchStart] [datetime] NULL,
	[SchEnd] [datetime] NULL,
	[RevisedStart] [datetime] NULL,
	[RevisedEnd] [datetime] NULL,
	[ActualProgress] [decimal](18, 2) NULL,
 CONSTRAINT [PK_Editor_EProjectItem] PRIMARY KEY CLUSTERED 
(
	[PMId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_InDetailedDesign_GetMechEI]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_InDetailedDesign_GetMechEI]
AS
/**********获取专业为电气仪表并RevisedEnd大于当前日期的PM明细表信息********/ 
SELECT * FROM dbo.Editor_PM
WHERE (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
AND RevisedEnd>GETDATE()

GO
/****** Object:  Table [dbo].[Base_DisciplinesWBS]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Base_DisciplinesWBS](
	[DisciplinesWBSId] [nvarchar](50) NOT NULL,
	[DisciplinesWBSCode] [nvarchar](50) NULL,
	[DisciplinesWBSName] [nvarchar](50) NULL,
	[WBS] [nvarchar](50) NULL,
	[DepartId] [nvarchar](50) NULL,
	[DepartName] [nvarchar](50) NULL,
	[NetworkOper] [nvarchar](50) NULL,
	[WorkorderOper] [nvarchar](50) NULL,
	[Designer] [nvarchar](50) NULL,
	[Checker] [nvarchar](50) NULL,
	[Approver] [nvarchar](50) NULL,
	[Leader] [nvarchar](50) NULL,
	[Roles] [nvarchar](50) NULL,
	[Remark] [nvarchar](50) NULL,
	[Type] [char](1) NULL,
 CONSTRAINT [PK_Base_DisciplinesWBS] PRIMARY KEY CLUSTERED 
(
	[DisciplinesWBSId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_Disciplines]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_Disciplines]
AS
SELECT t.* FROM
(SELECT (Designer+'_'+DisciplinesWBSName +'_Designer') AS Disciplines, 'Design' AS [type],DisciplinesWBSId+'_Designer' as DisciplinesWBSId
        FROM dbo.Base_DisciplinesWBS  WHERE Type='1' AND DisciplinesWBSName NOT IN ('Document','Cost Estimate')
UNION ALL
SELECT (Checker+'_'+DisciplinesWBSName +'_Checker') Disciplines, 'Design' AS [type],DisciplinesWBSId +'_Checker' AS DisciplinesWBSId
       FROM dbo.Base_DisciplinesWBS  WHERE Type='1' AND DisciplinesWBSName NOT IN ('Document','Cost Estimate')
UNION ALL
SELECT (Approver+'_'+DisciplinesWBSName +'_Approver') AS Disciplines, 'Design' AS [type],DisciplinesWBSId + '_Approver' AS DisciplinesWBSId
       FROM dbo.Base_DisciplinesWBS  WHERE Type='1' AND DisciplinesWBSName NOT IN ('Document','Cost Estimate')
UNION ALL
SELECT (Leader+'_'+ DisciplinesWBSName+'_Leader') AS Disciplines, 'Design' AS [type],DisciplinesWBSId +'_Leader' AS DisciplinesWBSId
       FROM dbo.Base_DisciplinesWBS  WHERE Type='1' AND DisciplinesWBSName NOT IN ('Document','Cost Estimate')
UNION ALL
SELECT (Designer+'_'+DisciplinesWBSName) AS Disciplines, 'Design' AS [type],DisciplinesWBSId+'_'+Designer AS DisciplinesWBSId
       FROM dbo.Base_DisciplinesWBS  WHERE Type='1' AND DisciplinesWBSName IN ('Document','Cost Estimate')
UNION ALL
SELECT ('M00_'+DisciplinesWBSName) AS Disciplines, 'Project Management' AS [type] ,DisciplinesWBSId +'_M00' AS DisciplinesWBSId
       FROM dbo.Base_DisciplinesWBS  WHERE Type='4'
UNION ALL
SELECT (Roles+'_'+DisciplinesWBSName) AS Disciplines, 'Construction(CTE/S)' AS [type] ,DisciplinesWBSId +'_'+Roles AS DisciplinesWBSId
       FROM dbo.Base_DisciplinesWBS  WHERE Type='2'
UNION ALL
SELECT (Roles+'_'+DisciplinesWBSName) AS Disciplines, 'Quality(CTE/Q)' AS [type],DisciplinesWBSId +'_'+Roles AS DisciplinesWBSId
       FROM dbo.Base_DisciplinesWBS  WHERE Type='3'
 ) t



GO
/****** Object:  Table [dbo].[Resource_Plan]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Resource_Plan](
	[ResourcePlanId] [nvarchar](50) NOT NULL,
	[EProjectId] [nvarchar](50) NULL,
	[WO] [nvarchar](50) NULL,
	[ProjectApproval_Sch_Start] [datetime] NULL,
	[ProjectApproval_Sch_End] [datetime] NULL,
	[ProjectApproval_Sch_NotApplicable] [bit] NULL,
	[Detail_Eng_Civil_Sch_Start] [datetime] NULL,
	[Detail_Eng_Civil_Sch_End] [datetime] NULL,
	[Detail_Eng_Civil_Sch_NotApplicable] [bit] NULL,
	[Detail_Eng_Mech_EI_Sch_Start] [datetime] NULL,
	[Detail_Eng_Mech_EI_Sch_End] [datetime] NULL,
	[Detail_Eng_Mech_EI_Sch_NotApplicable] [bit] NULL,
	[LLE_Procurement_Sch_Start] [datetime] NULL,
	[LLE_Procurement_Sch_End] [datetime] NULL,
	[LLE_Procurement_Sch_NotApplicable] [bit] NULL,
	[Const_Civil_Sch_Start] [datetime] NULL,
	[Const_Civil_Sch_End] [datetime] NULL,
	[Const_Civil_Sch_NotApplicable] [bit] NULL,
	[Const_Mech_EI_Start] [datetime] NULL,
	[Const_Mech_EI_End] [datetime] NULL,
	[Const_Mech_EI_NotApplicable] [bit] NULL,
	[MC_Sch_Start] [datetime] NULL,
	[MC_Sch_End] [datetime] NULL,
	[MC_Sch_NotApplicable] [bit] NULL,
	[CountNum] [int] NULL,
	[IsClose] [int] NULL,
	[Phase] [nvarchar](30) NULL,
	[Design] [nvarchar](30) NULL,
	[Procurement] [nvarchar](30) NULL,
	[Construction] [nvarchar](30) NULL,
	[CreateDate] [datetime] NULL,
 CONSTRAINT [PK_Resource_Plan] PRIMARY KEY CLUSTERED 
(
	[ResourcePlanId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Editor_EProject]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Editor_EProject](
	[EProjectId] [nvarchar](50) NOT NULL,
	[PM_General_CDI] [nvarchar](50) NULL,
	[PM_General_CostToComplete] [decimal](18, 2) NULL,
	[PM_General_Priority] [nvarchar](50) NULL,
	[PM_General_Category] [nvarchar](50) NULL,
	[PM_LLEP_RevisedStart] [datetime] NULL,
	[PM_LLEP_RevisedEnd] [datetime] NULL,
	[PM_LLEP_ActualProgress] [decimal](18, 2) NULL,
	[PM_SC_ApprovedQty] [int] NULL,
	[PM_SC_ApprovedCost] [decimal](18, 2) NULL,
	[PM_SC_PendingQty] [int] NULL,
	[PM_SC_PendingCost] [decimal](18, 2) NULL,
	[PM_MA_JobReveive] [datetime] NULL,
	[PM_MA_KickOffMeeting] [datetime] NULL,
	[PM_MA_SR] [datetime] NULL,
	[PM_MA_ProjectApproval] [datetime] NULL,
	[PM_Remarks_Engineering] [nvarchar](2000) NULL,
	[PM_Remarks_Procurement] [nvarchar](2000) NULL,
	[PM_PP_PressureVessel] [datetime] NULL,
	[PM_PP_PressurePiping] [datetime] NULL,
	[PM_PP_SQIB] [datetime] NULL,
	[PM_Study_StartDate] [datetime] NULL,
	[PM_Study_EndDate] [datetime] NULL,
	[CM_CC_RevisedStart] [datetime] NULL,
	[CM_CC_RevisedEnd] [datetime] NULL,
	[CM_CC_AcutalProgress] [decimal](18, 2) NULL,
	[CM_CM_RevisedStart] [datetime] NULL,
	[CM_CM_RevisedEnd] [datetime] NULL,
	[CM_CM_AcutalProgress] [decimal](18, 2) NULL,
	[CM_Cost] [money] NULL,
	[CM_Punch_CKilledDate] [datetime] NULL,
	[CM_KickOffMetting] [datetime] NULL,
	[CM_MA_MC] [datetime] NULL,
	[CM_FC] [datetime] NULL,
	[CM_Remarks_Construction] [nvarchar](2000) NULL,
	[CM_Remarks_Procurement] [nvarchar](2000) NULL,
	[CM_Remarks_QualityHSE] [nvarchar](2000) NULL,
	[CM_Date_of_Registration] [datetime] NULL,
	[Permit_PPA_EnvAssess] [datetime] NULL,
	[Permit_PPA_EnergySaving] [datetime] NULL,
	[Permit_PPA_ProjectRegistration] [datetime] NULL,
	[Permit_PPA_PlanningPermit] [datetime] NULL,
	[Permit_PPA_SafetyConRev] [datetime] NULL,
	[Permit_PPA_SafetyDesignRev] [datetime] NULL,
	[Permit_PPA_FFDesignReview] [datetime] NULL,
	[Permit_PS_EnvAssess] [datetime] NULL,
	[Permit_PS_EnergySaving] [datetime] NULL,
	[Permit_PS_ProjectRegistr] [datetime] NULL,
	[Permit_PS_PlanningPermit] [datetime] NULL,
	[Permit_PS_SafetyConReview] [datetime] NULL,
	[Permit_PS_SafetyDesginReview] [datetime] NULL,
	[Permit_PS_FFDesginReview] [datetime] NULL,
	[Permit_PS_ConstPermit] [datetime] NULL,
	[Permit_PS_SafetyFinalAcc] [datetime] NULL,
	[Permit_PS_FFFinalAcc] [datetime] NULL,
	[Permit_PS_EnvFinalAcc] [datetime] NULL,
	[Permit_PS_ArchiveAccep] [datetime] NULL,
	[Permit_PS_PressureVesse] [datetime] NULL,
	[Permit_PS_3rdConstJian] [datetime] NULL,
	[Permit_PA_ConstPermit] [datetime] NULL,
	[Permit_PA_SafetyFinalACC] [datetime] NULL,
	[Permit_PA_FFFinalACC] [datetime] NULL,
	[Permit_PA_EnvFinalACC] [datetime] NULL,
	[SQIB_PressureVessel] [datetime] NULL,
	[SQIB_PressurePiping] [datetime] NULL,
	[SQIB_SQIB] [datetime] NULL,
	[ProjectControl_JobNo] [nvarchar](50) NULL,
	[ProjectControl_JobType] [nvarchar](50) NULL,
	[ProjectControl_JobStatus] [nvarchar](50) NULL,
	[ProjectControl_JobTitle] [nvarchar](300) NULL,
	[ProjectControl_BUCode] [nvarchar](50) NULL,
	[ProjectControl_MOCFormNo] [nvarchar](50) NULL,
	[ProjectControl_NetworkNo] [nvarchar](50) NULL,
	[ProjectControl_NotesLink] [nvarchar](300) NULL,
	[ProjectControl_OrginalBudget] [decimal](18, 2) NULL,
	[ProjectControl_Account] [nvarchar](50) NULL,
	[ProjectControl_PVIPrediction] [decimal](18, 2) NULL,
	[ProjectControl_CostEffectvitity] [nvarchar](50) NULL,
	[ProjectControl_LeadBy] [nvarchar](50) NULL,
	[ProjectControl_LeadByName] [nvarchar](50) NULL,
	[ProjectControl_ProjectManagerId] [nvarchar](50) NULL,
	[ProjectControl_ProjectManager] [nvarchar](50) NULL,
	[ProjectControl_ConstManagerId] [nvarchar](50) NULL,
	[ProjectControl_ConstManager] [nvarchar](50) NULL,
	[ProjectControl_EMManagerId] [nvarchar](50) NULL,
	[ProjectControl_EMManager] [nvarchar](50) NULL,
	[ProjectControl_SQIBManagerId] [nvarchar](50) NULL,
	[ProjectControl_SQIBManager] [nvarchar](50) NULL,
	[ProjectControl_PermitManagerId] [nvarchar](50) NULL,
	[ProjectControl_PermitManager] [nvarchar](50) NULL,
	[ProjectControl_TDCManagerId] [nvarchar](50) NULL,
	[ProjectControl_TDCManager] [nvarchar](50) NULL,
	[ProjectControl_ProjectControlManagerId] [nvarchar](50) NULL,
	[ProjectControl_ProjectControlManager] [nvarchar](50) NULL,
	[ProjectControl_OperationRepId] [nvarchar](50) NULL,
	[ProjectControl_OperationRep] [nvarchar](50) NULL,
	[ProjectControl_Remarks] [nvarchar](2000) NULL,
	[ProjectControl_ChangedBudget] [decimal](18, 2) NULL,
	[ProjectControl_CommittedPRPO] [decimal](18, 2) NULL,
	[ProjectControl_CommittedSSRs] [decimal](18, 2) NULL,
	[ProjectControl_Actual] [decimal](18, 2) NULL,
	[ProjectControl_MS_ResourcePlanReceived] [datetime] NULL,
	[ProjectControl_MS_SR] [datetime] NULL,
	[ProjectControl_MS_Approval] [datetime] NULL,
	[ProjectControl_MS_MC] [datetime] NULL,
	[ProjectControl_MS_Close] [datetime] NULL,
	[ProjectControl_CI_Process] [nvarchar](50) NULL,
	[ProjectControl_CI_ProcessName] [nvarchar](50) NULL,
	[ProjectControl_CI_Equipment] [nvarchar](50) NULL,
	[ProjectControl_CI_EquipmentName] [nvarchar](50) NULL,
	[ProjectControl_CI_Instrument] [nvarchar](50) NULL,
	[ProjectControl_CI_InstrumentName] [nvarchar](50) NULL,
	[ProjectControl_CI_Electrical] [nvarchar](50) NULL,
	[ProjectControl_CI_ElectricalName] [nvarchar](50) NULL,
	[ProjectControl_CI_Civil] [nvarchar](50) NULL,
	[ProjectControl_CI_CivilName] [nvarchar](50) NULL,
	[ProjectControl_BC_CloseDate] [datetime] NULL,
	[ProjectControl_LP_SchStart] [datetime] NULL,
	[ProjectControl_LP_SchEnd] [datetime] NULL,
	[ProjectControl_LP_Progress] [decimal](18, 2) NULL,
	[ProjectControl_CC_SchStart] [datetime] NULL,
	[ProjectControl_CC_SchEnd] [datetime] NULL,
	[ProjectControl_CC_Progress] [decimal](18, 2) NULL,
	[ProjectControl_CM_SchStart] [datetime] NULL,
	[ProjectControl_CM_SchEnd] [datetime] NULL,
	[ProjectControl_CM_Progress] [decimal](18, 2) NULL,
	[ProjectControl_PC_CancelDate] [datetime] NULL,
	[ProjectControl_Study_StartDate] [datetime] NULL,
	[ProjectControl_Study_EndDate] [datetime] NULL,
	[ProjectControl_NetworkDate] [datetime] NULL,
	[ProjectControl_WBSNo] [nvarchar](50) NULL,
	[ProjectControl_FilesLink] [nvarchar](300) NULL,
	[ProjectControl_ClosedDate] [datetime] NULL,
	[Detail_Eng_Civil_SchStart] [datetime] NULL,
	[Detail_Eng_Civil_SchEnd] [datetime] NULL,
	[Detail_Eng_Civil_SchProgress] [decimal](18, 2) NULL,
	[Detail_Eng_Civil_ReviseStart] [datetime] NULL,
	[Detail_Eng_Civil_ReviseEnd] [datetime] NULL,
	[Detail_Eng_Civil_ReviseProgress] [decimal](18, 2) NULL,
	[Detail_Eng_MechEI_SchStart] [datetime] NULL,
	[Detail_Eng_MechEI_SchEnd] [datetime] NULL,
	[Detail_Eng_MechEI_SchProgress] [decimal](18, 2) NULL,
	[Detail_Eng_MechEI_ReviseStart] [datetime] NULL,
	[Detail_Eng_MechEI_ReviseEnd] [datetime] NULL,
	[Detail_Eng_MechEI_ReviseProgress] [decimal](18, 2) NULL,
	[PM_PressureVesselChecked] [bit] NULL,
	[PM_PressurePipingChecked] [bit] NULL,
	[PM_SQIBChecked] [bit] NULL,
	[Permit_PS_EnvAssessChecked] [bit] NULL,
	[Permit_PS_EnergySavingChecked] [bit] NULL,
	[Permit_PS_ProjectRegistrChecked] [bit] NULL,
	[Permit_PS_PlanningPermitChecked] [bit] NULL,
	[Permit_PS_SafetyConReviewChecked] [bit] NULL,
	[Permit_PS_SafetyDesginReviewChecked] [bit] NULL,
	[Permit_PS_FFDesginReviewChecked] [bit] NULL,
	[Permit_PS_ConstPermitChecked] [bit] NULL,
	[Permit_PS_SafetyFinalAccChecked] [bit] NULL,
	[Permit_PS_FFFinalAccChecked] [bit] NULL,
	[Permit_PS_EnvFinalAccChecked] [bit] NULL,
	[Permit_PS_ArchiveAccepChecked] [bit] NULL,
	[Permit_PS_3rdConstJianChecked] [bit] NULL,
	[OutSourceType] [nvarchar](10) NULL,
	[CAPEXPlanNo] [nvarchar](150) NULL,
	[StudyWo] [nvarchar](50) NULL,
	[CTEInvolved] [nchar](1) NULL,
	[IsNewCreate] [bit] NULL,
	[ProjectControl_Revised_MC_Date] [datetime] NULL,
	[PM_Critical] [nvarchar](10) NULL,
	[PM_ReasonForCritical] [nvarchar](100) NULL,
	[Job_EHSReview_Files] [datetime] NULL,
	[Job_Estimate_Worksheet] [datetime] NULL,
	[Job_Budget] [datetime] NULL,
	[Job_TecoAlarm_Study] [datetime] NULL,
	[Job_Plan_IFC] [datetime] NULL,
	[Job_Hold] [datetime] NULL,
	[Job_Delaybyteam1] [nvarchar](50) NULL,
	[Job_Delaybypersonel1] [nvarchar](50) NULL,
	[Job_Remark1] [nvarchar](150) NULL,
	[Job_Delaybyteam2] [nvarchar](50) NULL,
	[Job_Delaybypersonel2] [nvarchar](50) NULL,
	[Job_Remark2] [nvarchar](150) NULL,
	[Job_Delaybyteam3] [nvarchar](50) NULL,
	[Job_Delaybypersonel3] [nvarchar](50) NULL,
	[Job_Remark3] [nvarchar](150) NULL,
	[Job_PlanEHSReview_Files] [datetime] NULL,
	[Job_EHSReview_Meeting] [datetime] NULL,
	[DesignPlanIsComplete] [bit] NULL,
	[DesignInputIsFile] [bit] NULL,
	[DesignDocumentIsConfirm] [bit] NULL,
 CONSTRAINT [PK_EProject] PRIMARY KEY CLUSTERED 
(
	[EProjectId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Sys_User]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_User](
	[UserId] [nvarchar](50) NOT NULL,
	[Account] [nvarchar](50) NULL,
	[UserCode] [nvarchar](50) NULL,
	[Password] [nvarchar](50) NULL,
	[UserName] [nvarchar](20) NULL,
	[ChineseName] [nvarchar](20) NULL,
	[RoleId] [nvarchar](50) NULL,
	[IsPost] [bit] NULL,
	[UnitId] [nvarchar](50) NULL,
	[DepartId] [nvarchar](50) NULL,
	[IsHeadMan] [bit] NULL,
	[EmailPassword] [nvarchar](50) NULL,
	[Email] [nvarchar](50) NULL,
	[LoginProjectId] [nvarchar](50) NULL,
	[Phone] [nvarchar](50) NULL,
	[Remark] [nvarchar](100) NULL,
	[ActType] [nvarchar](50) NULL,
	[IsCTE] [bit] NULL,
	[IsCalculated] [bit] NULL,
	[IsThirdParty] [bit] NULL,
	[ManagerName] [nvarchar](50) NULL,
 CONSTRAINT [PK_Sys_User] PRIMARY KEY CLUSTERED 
(
	[UserId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[ManHours_Plan]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[ManHours_Plan](
	[ManHoursPlanId] [nvarchar](50) NOT NULL,
	[ResourcePlanId] [nvarchar](50) NULL,
	[EProjectId] [nvarchar](50) NULL,
	[EngineerId] [nvarchar](50) NULL,
	[EngineerName] [nvarchar](50) NULL,
	[Account] [nvarchar](50) NULL,
	[DisciplineId] [nvarchar](50) NULL,
	[Discipline] [nvarchar](50) NULL,
	[Roles] [nvarchar](50) NULL,
	[ManHours] [float] NULL,
	[AccountDisabled] [int] NULL,
	[IsClose] [int] NULL,
 CONSTRAINT [PK_ManHours_Plan] PRIMARY KEY CLUSTERED 
(
	[ManHoursPlanId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Editor_TDC]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Editor_TDC](
	[TDCId] [nvarchar](50) NOT NULL,
	[EProjectId] [nvarchar](50) NULL,
	[Type] [nvarchar](50) NULL,
	[Disc] [nvarchar](50) NULL,
	[A1Pages] [nvarchar](50) NULL,
	[ReceiveHC] [datetime] NULL,
	[ReceivePDF] [datetime] NULL,
	[ReceiveNative] [datetime] NULL,
	[PublishPDF] [datetime] NULL,
	[PublishNative] [datetime] NULL,
	[ToPlant] [datetime] NULL,
	[ToCHA] [datetime] NULL,
	[Remarks] [nvarchar](500) NULL,
	[InputDate] [datetime] NULL,
 CONSTRAINT [PK_Editor_TDC] PRIMARY KEY CLUSTERED 
(
	[TDCId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_Report_DocumentationStatusMC_OUT]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO




CREATE VIEW [dbo].[View_Report_DocumentationStatusMC_OUT]
AS
/*********DocumentationStatusMC报告*************/
SELECT eproject.EProjectId,eproject.ProjectControl_JobNo,
       eproject.ProjectControl_ProjectManager,eproject.ProjectControl_LeadByName,
       eproject.ProjectControl_BUCode,CONVERT(NVARCHAR(10),eproject.CM_MA_MC,23) AS MC,
       eproject.ProjectControl_JobStatus,eproject.ProjectControl_JobType,
	   eproject.PM_MA_JobReveive,eProject.PM_General_CDI,eProject.OutSourceType,
	  (CASE WHEN CONVERT(VARCHAR(10), eproject.ProjectControl_MS_Approval, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), ProjectControl_MS_Approval, 23) ELSE '' END) AS ApprSch,
      (CASE WHEN CONVERT(VARCHAR(10), eproject.PM_MA_ProjectApproval, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), PM_MA_ProjectApproval, 23) ELSE '' END) AS ApprAct,
(SELECT TOP 1 EngineerName FROM dbo.ManHours_Plan WHERE EProjectId=eproject.EProjectId AND Roles='D10') AS ProjectControl_TDCManager,
 'D01_IFC' AS Phase,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='01_Process') AS Process,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='30_Plumbing/F.F') AS Plumbling,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='40_Mech./Equi.') AS Equipment,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='50_Piping') AS Piping,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='60_Electrical') AS Electrical,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='65_Telecommunication') AS Communication,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='70_Instrument') AS Instrument,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='10_Civil') AS Civil,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='20_Architectral') AS Architectral,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='20_HVAC') AS HVAC,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='10_MasterpLanning') AS MasterpLanning,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='02_HSE') AS HSE,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='00_ALL') AS ALLS,

-----------------------------------------------
--STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
--		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
--		WHERE p.EProjectId = eproject.EProjectId 
--		AND (p.Roles LIKE '%P10%' OR p.Roles LIKE '%P11%' OR p.Roles LIKE '%P12%' OR p.Roles LIKE '%P13%')
--FOR XML PATH('')),1,1,'') AS P1_Process, 

--STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
--		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
--		WHERE p.EProjectId = eproject.EProjectId 
--		AND (p.Roles LIKE '%P30%' OR p.Roles LIKE '%P31%' OR p.Roles LIKE '%P32%' OR p.Roles LIKE '%P33%')
--FOR XML PATH('')),1,1,'') AS P3_Plumbing_FF, 

--STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
--		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
--		WHERE p.EProjectId = eproject.EProjectId 
--		AND (p.Roles LIKE '%P20%' OR p.Roles LIKE '%P21%' OR p.Roles LIKE '%P22%' OR p.Roles LIKE '%P23%')
--FOR XML PATH('')),1,1,'') AS P2_Mech_Equi,

--STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
--		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
--		WHERE p.EProjectId = eproject.EProjectId 
--		AND (p.Roles LIKE '%P40%' OR p.Roles LIKE '%P41%' OR p.Roles LIKE '%P42%' OR p.Roles LIKE '%P43%')
--FOR XML PATH('')),1,1,'') AS P4_Piping,  

--STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
--		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
--		WHERE p.EProjectId = eproject.EProjectId 
--		AND (p.Roles LIKE '%A20%' OR p.Roles LIKE '%A21%' OR p.Roles LIKE '%A22%' OR p.Roles LIKE '%A23%')
--FOR XML PATH('')),1,1,'') AS A2_Electrical, 
--STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
--		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
--		WHERE p.EProjectId = eproject.EProjectId 
--		AND (p.Roles LIKE '%A30%' OR p.Roles LIKE '%A31%' OR p.Roles LIKE '%A32%' OR p.Roles LIKE '%A33%')
--FOR XML PATH('')),1,1,'') AS A3_Telec, 

--STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
--		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
--		WHERE p.EProjectId = eproject.EProjectId 
--		AND (p.Roles LIKE '%A10%' OR p.Roles LIKE '%A11%' OR p.Roles LIKE '%A12%' OR p.Roles LIKE '%A13%')
--FOR XML PATH('')),1,1,'') AS A1_Instrument, 


--STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
--		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
--		WHERE p.EProjectId = eproject.EProjectId 
--		AND (p.Roles LIKE '%C10%' OR p.Roles LIKE '%C11%' OR p.Roles LIKE '%C12%' OR p.Roles LIKE '%C13%')
--FOR XML PATH('')),1,1,'') AS C1_Civil, 

--STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
--		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
--		WHERE p.EProjectId = eproject.EProjectId 
--		AND (p.Roles LIKE '%C30%' OR p.Roles LIKE '%C31%' OR p.Roles LIKE '%C32%' OR p.Roles LIKE '%C33%')
--FOR XML PATH('')),1,1,'') AS C3_Architectral, 

--STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
--		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
--		WHERE p.EProjectId = eproject.EProjectId 
--		AND (p.Roles LIKE '%C40%' OR p.Roles LIKE '%C41%' OR p.Roles LIKE '%C42%' OR p.Roles LIKE '%C43%')
--FOR XML PATH('')),1,1,'') AS C4_HVAC, 

--STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
--		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
--		WHERE p.EProjectId = eproject.EProjectId 
--		AND (p.Roles LIKE '%C20%' OR p.Roles LIKE '%C21%' OR p.Roles LIKE '%C22%' OR p.Roles LIKE '%C23%')
--FOR XML PATH('')),1,1,'') AS C2_MasterPlanning, 

pu.UserName AS P1_Process,
'' AS P3_Plumbing_FF,
meu.UserName AS P2_Mech_Equi,
pu.UserName AS P4_Piping,  
eleu.UserName AS A2_Electrical, 
eleu.UserName AS A3_Telec, 
insu.UserName AS A1_Instrument, 
civu.UserName AS C1_Civil, 
'' AS C3_Architectral,
'' AS C4_HVAC,
'' AS C2_MasterPlanning, 
-----------------------------------------------
(CASE WHEN eproject.Detail_Eng_Civil_SchStart IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_SchStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Civil_Sch_Start FROM dbo.Resource_Plan WHERE EProjectId = eproject.EProjectId),23) 
	END)AS Detail_Eng_Civil_Sch_Start,--PROJ_DE_CIVIL_SCH_START_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_SchEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_SchEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Civil_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23)
	END) AS Detail_Eng_Civil_Sch_End,--PROJ_DE_CIVIL_SCH_END_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_ReviseStart IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_ReviseStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedStart FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedStart IS NOT NULL 
					AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') 
					ORDER BY RevisedStart),23)
	END) AS PROJ_DE_CIVIL_ACU_START_DATE,--PROJ_DE_CIVIL_ACU_START_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_ReviseEnd IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_ReviseEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL 
					AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') 
					ORDER BY RevisedEnd DESC),23)
	END) AS PROJ_DE_CIVIL_ACU_END_DATE,--PROJ_DE_CIVIL_ACU_END_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_SchStart IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_SchStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Mech_EI_Sch_Start FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23) 
	END)AS Detail_Eng_Mech_EI_Sch_Start,--PROJ_DE_ME_SCH_START_DATE

(CASE WHEN eproject.Detail_Eng_MechEI_SchEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_SchEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Mech_EI_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23) 
	END)AS PROJ_DE_ME_SCH_END_DATE,--PROJ_DE_ME_SCH_END_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_ReviseStart IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_ReviseStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedStart FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedStart IS NOT NULL
					AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
					ORDER BY RevisedStart),23)
	END) AS Detail_Eng_Mech_EI_Sch_End,--PROJ_DE_ME_ACU_START_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_ReviseEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_ReviseEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL
					AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
					ORDER BY RevisedEnd DESC),23)
	END) AS PROJ_DE_ME_ACU_END_DATE --PROJ_DE_ME_ACU_END_DATE
FROM dbo.Editor_EProject eproject
LEFT JOIN dbo.Sys_User pu ON eproject.ProjectControl_CI_Process=pu.UserId
LEFT JOIN dbo.Sys_User meu ON eproject.ProjectControl_CI_Equipment=meu.UserId
LEFT JOIN dbo.Sys_User eleu ON eproject.ProjectControl_CI_Electrical=eleu.UserId
LEFT JOIN dbo.Sys_User insu ON eproject.ProjectControl_CI_Instrument=insu.UserId
LEFT JOIN dbo.Sys_User civu ON eproject.ProjectControl_CI_Civil=civu.UserId

UNION ALL

SELECT eproject.EProjectId,eproject.ProjectControl_JobNo,
       eproject.ProjectControl_ProjectManager,eproject.ProjectControl_LeadByName,
       eproject.ProjectControl_BUCode,CONVERT(NVARCHAR(10),eproject.CM_MA_MC,23) AS MC,
       eproject.ProjectControl_JobStatus,eproject.ProjectControl_JobType,
	   eproject.PM_MA_JobReveive,eProject.PM_General_CDI,eProject.OutSourceType,
	  (CASE WHEN CONVERT(VARCHAR(10), eproject.ProjectControl_MS_Approval, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), ProjectControl_MS_Approval, 23) ELSE '' END) AS ApprSch,
      (CASE WHEN CONVERT(VARCHAR(10), eproject.PM_MA_ProjectApproval, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), PM_MA_ProjectApproval, 23) ELSE '' END) AS ApprAct,
	  (SELECT TOP 1 EngineerName FROM dbo.ManHours_Plan WHERE EProjectId=eproject.EProjectId AND Roles='D10') AS ProjectControl_TDCManager,
 'D02_AS-BUILT' AS Phase,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='01_Process') AS Process,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='30_Plumbing/F.F') AS Plumbling,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='40_Mech./Equi.') AS Equipment,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='50_Piping') AS Piping,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='60_Electrical') AS Electrical,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='65_Telecommunication') AS Communication,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='70_Instrument') AS Instrument,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='10_Civil') AS Civil,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='20_Architectral') AS Architectral,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='20_HVAC') AS HVAC,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='10_MasterpLanning') AS MasterpLanning,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='02_HSE') AS HSE,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='00_ALL') AS ALLS,

-----------------------------------------------
pu.UserName AS P1_Process,
'' AS P3_Plumbing_FF,
meu.UserName AS P2_Mech_Equi,
pu.UserName AS P4_Piping,  
eleu.UserName AS A2_Electrical, 
eleu.UserName AS A3_Telec, 
insu.UserName AS A1_Instrument, 
civu.UserName AS C1_Civil, 
'' AS C3_Architectral,
'' AS C4_HVAC,
'' AS C2_MasterPlanning, 
-----------------------------------------------
(CASE WHEN eproject.Detail_Eng_Civil_SchStart IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_SchStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Civil_Sch_Start FROM dbo.Resource_Plan WHERE EProjectId = eproject.EProjectId),23) 
	END)AS Detail_Eng_Civil_Sch_Start,--PROJ_DE_CIVIL_SCH_START_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_SchEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_SchEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Civil_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23)
	END) AS Detail_Eng_Civil_Sch_End,--PROJ_DE_CIVIL_SCH_END_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_ReviseStart IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_ReviseStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedStart FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedStart IS NOT NULL 
					AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') 
					ORDER BY RevisedStart),23)
	END) AS PROJ_DE_CIVIL_ACU_START_DATE,--PROJ_DE_CIVIL_ACU_START_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_ReviseEnd IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_ReviseEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL 
					AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') 
					ORDER BY RevisedEnd DESC),23)
	END) AS PROJ_DE_CIVIL_ACU_END_DATE,--PROJ_DE_CIVIL_ACU_END_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_SchStart IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_SchStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Mech_EI_Sch_Start FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23) 
	END)AS Detail_Eng_Mech_EI_Sch_Start,--PROJ_DE_ME_SCH_START_DATE

(CASE WHEN eproject.Detail_Eng_MechEI_SchEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_SchEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Mech_EI_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23) 
	END)AS PROJ_DE_ME_SCH_END_DATE,--PROJ_DE_ME_SCH_END_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_ReviseStart IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_ReviseStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedStart FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedStart IS NOT NULL
					AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
					ORDER BY RevisedStart),23)
	END) AS Detail_Eng_Mech_EI_Sch_End,--PROJ_DE_ME_ACU_START_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_ReviseEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_ReviseEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL
					AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
					ORDER BY RevisedEnd DESC),23)
	END) AS PROJ_DE_ME_ACU_END_DATE --PROJ_DE_ME_ACU_END_DATE

FROM dbo.Editor_EProject eproject
LEFT JOIN dbo.Sys_User pu ON eproject.ProjectControl_CI_Process=pu.UserId
LEFT JOIN dbo.Sys_User meu ON eproject.ProjectControl_CI_Equipment=meu.UserId
LEFT JOIN dbo.Sys_User eleu ON eproject.ProjectControl_CI_Electrical=eleu.UserId
LEFT JOIN dbo.Sys_User insu ON eproject.ProjectControl_CI_Instrument=insu.UserId
LEFT JOIN dbo.Sys_User civu ON eproject.ProjectControl_CI_Civil=civu.UserId

UNION ALL

SELECT eproject.EProjectId,eproject.ProjectControl_JobNo,
       eproject.ProjectControl_ProjectManager,eproject.ProjectControl_LeadByName,
       eproject.ProjectControl_BUCode,CONVERT(NVARCHAR(10),eproject.CM_MA_MC,23) AS MC,
       eproject.ProjectControl_JobStatus,eproject.ProjectControl_JobType,
	   eproject.PM_MA_JobReveive,eProject.PM_General_CDI,eProject.OutSourceType,
	  (CASE WHEN CONVERT(VARCHAR(10), eproject.ProjectControl_MS_Approval, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), ProjectControl_MS_Approval, 23) ELSE '' END) AS ApprSch,
      (CASE WHEN CONVERT(VARCHAR(10), eproject.PM_MA_ProjectApproval, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), PM_MA_ProjectApproval, 23) ELSE '' END) AS ApprAct,
      (SELECT TOP 1 EngineerName FROM dbo.ManHours_Plan WHERE EProjectId=eproject.EProjectId AND Roles='D10') AS ProjectControl_TDCManager,
 'D03_MD' AS Phase,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='01_Process') AS Process,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='30_Plumbing/F.F') AS Plumbling,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='40_Mech./Equi.') AS Equipment,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='50_Piping') AS Piping,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='60_Electrical') AS Electrical,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='65_Telecommunication') AS Communication,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='70_Instrument') AS Instrument,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='10_Civil') AS Civil,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='20_Architectral') AS Architectral,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='20_HVAC') AS HVAC,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='10_MasterpLanning') AS MasterpLanning,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='02_HSE') AS HSE,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='00_ALL') AS ALLS,

-----------------------------------------------
pu.UserName AS P1_Process,
'' AS P3_Plumbing_FF,
meu.UserName AS P2_Mech_Equi,
pu.UserName AS P4_Piping,  
eleu.UserName AS A2_Electrical, 
eleu.UserName AS A3_Telec, 
insu.UserName AS A1_Instrument, 
civu.UserName AS C1_Civil, 
'' AS C3_Architectral,
'' AS C4_HVAC,
'' AS C2_MasterPlanning, 
-----------------------------------------------
(CASE WHEN eproject.Detail_Eng_Civil_SchStart IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_SchStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Civil_Sch_Start FROM dbo.Resource_Plan WHERE EProjectId = eproject.EProjectId),23) 
	END)AS Detail_Eng_Civil_Sch_Start,--PROJ_DE_CIVIL_SCH_START_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_SchEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_SchEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Civil_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23)
	END) AS Detail_Eng_Civil_Sch_End,--PROJ_DE_CIVIL_SCH_END_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_ReviseStart IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_ReviseStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedStart FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedStart IS NOT NULL 
					AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') 
					ORDER BY RevisedStart),23)
	END) AS PROJ_DE_CIVIL_ACU_START_DATE,--PROJ_DE_CIVIL_ACU_START_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_ReviseEnd IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_ReviseEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL 
					AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') 
					ORDER BY RevisedEnd DESC),23)
	END) AS PROJ_DE_CIVIL_ACU_END_DATE,--PROJ_DE_CIVIL_ACU_END_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_SchStart IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_SchStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Mech_EI_Sch_Start FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23) 
	END)AS Detail_Eng_Mech_EI_Sch_Start,--PROJ_DE_ME_SCH_START_DATE

(CASE WHEN eproject.Detail_Eng_MechEI_SchEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_SchEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Mech_EI_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23) 
	END)AS PROJ_DE_ME_SCH_END_DATE,--PROJ_DE_ME_SCH_END_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_ReviseStart IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_ReviseStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedStart FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedStart IS NOT NULL
					AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
					ORDER BY RevisedStart),23)
	END) AS Detail_Eng_Mech_EI_Sch_End,--PROJ_DE_ME_ACU_START_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_ReviseEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_ReviseEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL
					AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
					ORDER BY RevisedEnd DESC),23)
	END) AS PROJ_DE_ME_ACU_END_DATE --PROJ_DE_ME_ACU_END_DATE

FROM dbo.Editor_EProject eproject
LEFT JOIN dbo.Sys_User pu ON eproject.ProjectControl_CI_Process=pu.UserId
LEFT JOIN dbo.Sys_User meu ON eproject.ProjectControl_CI_Equipment=meu.UserId
LEFT JOIN dbo.Sys_User eleu ON eproject.ProjectControl_CI_Electrical=eleu.UserId
LEFT JOIN dbo.Sys_User insu ON eproject.ProjectControl_CI_Instrument=insu.UserId
LEFT JOIN dbo.Sys_User civu ON eproject.ProjectControl_CI_Civil=civu.UserId




GO
/****** Object:  Table [dbo].[Editor_CostReport]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Editor_CostReport](
	[CostReportId] [nvarchar](50) NOT NULL,
	[EProjectId] [nvarchar](50) NULL,
	[Monthly] [nvarchar](50) NULL,
	[OrginalBudget] [decimal](18, 2) NULL,
	[ChangedBudget] [decimal](18, 2) NULL,
	[ActualCost] [decimal](18, 2) NULL,
	[CommittedPRPO] [decimal](18, 2) NULL,
	[CommittedSSRs] [decimal](18, 2) NULL,
	[CostToComplete] [decimal](18, 2) NULL,
 CONSTRAINT [PK_Editor_Cost] PRIMARY KEY CLUSTERED 
(
	[CostReportId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_Report_ProjectCostReport]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE VIEW [dbo].[View_Report_ProjectCostReport]
AS
/*********Project_Cost_Report*********/
SELECT costReport.CostReportId, 
costReport.EProjectId, 
costReport.Monthly, 
ISNULL(costReport.OrginalBudget,0) AS OrginalBudget, 
ISNULL(costReport.ChangedBudget,0) AS ChangedBudget, 
ISNULL(costReport.ActualCost,0) AS ActualCost, 
ISNULL(costReport.CommittedPRPO,0) + ISNULL(costReport.CommittedSSRs,0) AS Committeds,  
ISNULL(costReport.CostToComplete,0) AS CostToComplete,
(CASE WHEN costReport.OrginalBudget > 0 then CONVERT(nvarchar(10),CONVERT(DECIMAL(18,2),(CONVERT(DECIMAL(18,2),costReport.CommittedPRPO + costReport.CommittedSSRs + costReport.ActualCost)/CONVERT(DECIMAL(18,2),costReport.OrginalBudget)*100)))+'%'
	  ELSE '0.00%' end) as CostCompetedRate,
(CASE WHEN costReport.OrginalBudget > 0 THEN CONVERT(DECIMAL(18,2),costReport.CostToComplete / costReport.OrginalBudget * 100) ELSE 0 END) AS CostCompeted,
eproject.ProjectControl_BUCode,
eproject.ProjectControl_JobNo,
eproject.ProjectControl_JobType,
eproject.ProjectControl_JobTitle,
eproject.ProjectControl_ProjectManager,
eproject.ProjectControl_ConstManager,
eproject.ProjectControl_JobStatus,
CONVERT(NVARCHAR(10),eProject.PM_MA_ProjectApproval,23) AS PM_MA_ProjectApproval
FROM dbo.Editor_CostReport AS costReport
LEFT JOIN dbo.Editor_EProject AS eproject ON eproject.EProjectId = costReport.EProjectId


GO
/****** Object:  View [dbo].[View_Project_Closure_Report]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE VIEW [dbo].[View_Project_Closure_Report]
AS
/**********Project_Closure_Report***********/
SELECT eproject.EProjectId,
eproject.ProjectControl_JobNo,
eproject.ProjectControl_JobType,
eproject.ProjectControl_LeadByName,
eproject.ProjectControl_JobTitle,
eproject.ProjectControl_OrginalBudget,
eproject.ProjectControl_ProjectManager,
eproject.ProjectControl_JobStatus,
eproject.CM_MA_MC AS CompletedDate,
eproject.ProjectControl_ClosedDate AS CloseDate,
eproject.CM_Date_of_Registration AS Date_of_Registeration,
(SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D11_MC' ORDER BY ReceiveHC DESC) AS MC_Signed,
(SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D12_RFSU' AND ReceiveHC IS NOT NULL ORDER BY ReceiveHC DESC) AS RFSU,
(SELECT TOP 1 ReceiveHC FROM Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='00_ALL' ORDER BY ReceiveHC DESC) AS AsBuiltReceived,
eproject.CM_Punch_CKilledDate, --Punch C Killed
(SELECT TOP 1 ReceiveHC FROM Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D30_FC') AS FC_Signed,--FC Signed
eproject.ProjectControl_BC_CloseDate AS Business_Colsed,
(SELECT TOP 1 ReceivePDF FROM Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD') AS MD_Updated
FROM dbo.Editor_EProject AS eproject
WHERE eproject.ProjectControl_JobStatus='MC' OR eproject.ProjectControl_JobStatus='Closed'


GO
/****** Object:  Table [dbo].[Editor_FCRLog]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Editor_FCRLog](
	[FCRLogId] [nvarchar](50) NOT NULL,
	[EProjectId] [nvarchar](50) NULL,
	[FCRNo] [nvarchar](50) NULL,
	[DisciplineId] [nvarchar](50) NULL,
	[DisciplineName] [nvarchar](50) NULL,
	[CategoryId] [nvarchar](50) NULL,
	[CategoryName] [nvarchar](50) NULL,
	[Initiator] [nvarchar](50) NULL,
	[InitiatorName] [nvarchar](50) NULL,
	[CDIId] [nvarchar](50) NULL,
	[CDIName] [nvarchar](50) NULL,
	[TDCRecDate] [datetime] NULL,
	[FCRIssueDate] [datetime] NULL,
	[ConReturnDate] [datetime] NULL,
	[CostYorN] [nvarchar](10) NULL,
	[CostCNY] [decimal](18, 2) NULL,
	[SchYorN] [nvarchar](10) NULL,
	[SchDays] [decimal](18, 2) NULL,
	[Remark] [nvarchar](500) NULL,
	[DesignReason] [nvarchar](20) NULL,
 CONSTRAINT [PK_Editor_FCRLog] PRIMARY KEY CLUSTERED 
(
	[FCRLogId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_FCR_Report]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_FCR_Report]
AS
/*******FCR_Report**********/
SELECT fcrLog.FCRLogId,
eproject.ProjectControl_JobNo,
fcrLog.DisciplineName,
fcrLog.FCRNo,
fcrLog.CostYorN AS FCR_COST,
fcrLog.CostCNY AS FCR_COST_CNY,
fcrLog.SchYorN AS FCR_SCH,
fcrLog.SchDays AS FCR_SCH_DAY,
fcrLog.InitiatorName AS FCR_INITATOR,
fcrLog.CategoryName AS FCR_CATETORY,
fcrLog.TDCRecDate AS DATE_RECEIVE,
fcrLog.FCRIssueDate AS DATE_ISSUE,
fcrLog.ConReturnDate AS DATE_RETURN,
fcrLog.DesignReason AS Design_Reason_Related_With,
fcrLog.CDIName AS FCR_CDI,
fcrLog.Remark,
eproject.ProjectControl_JobStatus,
eproject.ProjectControl_LeadByName,
CONVERT(VARCHAR(10), eproject.CM_MA_MC, 23) AS MC_Date,
CONVERT(VARCHAR(10), ProjectControl_ClosedDate, 23) AS Closed_Date
FROM Editor_FCRLog AS fcrLog
LEFT JOIN dbo.Editor_EProject AS eproject ON eproject.EProjectId = fcrLog.EProjectId


GO
/****** Object:  Table [dbo].[Editor_Punch]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Editor_Punch](
	[PunchId] [nvarchar](50) NOT NULL,
	[EProjectId] [nvarchar](50) NULL,
	[DisciplineId] [nvarchar](50) NULL,
	[DisciplineName] [nvarchar](50) NULL,
	[ClassId] [nvarchar](50) NULL,
	[ClassName] [nvarchar](50) NULL,
	[TagNo] [nvarchar](50) NULL,
	[RespUnitPerson] [nvarchar](50) NULL,
	[ResiedById] [nvarchar](50) NULL,
	[ResiedByName] [nvarchar](50) NULL,
	[PlanedFinishDate] [datetime] NULL,
	[CTECheckerId] [nvarchar](50) NULL,
	[CTECheckerName] [nvarchar](50) NULL,
	[CTECheckDate] [datetime] NULL,
	[OwnerCheckerId] [nvarchar](50) NULL,
	[OwnerCheckerName] [nvarchar](50) NULL,
	[OwnerCheckDate] [datetime] NULL,
	[Description] [nvarchar](1500) NULL,
	[Remark] [nvarchar](500) NULL,
	[Area] [nvarchar](50) NULL,
	[ActionType] [nvarchar](50) NULL,
	[BYC_Person] [nvarchar](50) NULL,
	[InitiatedByName] [nvarchar](50) NULL,
	[InitiatedByDate] [datetime] NULL,
 CONSTRAINT [PK_Editor_Punch] PRIMARY KEY CLUSTERED 
(
	[PunchId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_Punch]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_Punch]
AS
SELECT p.PunchId, p.EProjectId,pro.ProjectControl_JobNo,p.Area,p.DisciplineId, 
       p.DisciplineName, p.ActionType, p.ClassId,  p.ClassName, p.TagNo,
       p.RespUnitPerson, p.ResiedById, p.ResiedByName,u1.UserName AS BYC_Person, 
       u2.UserName AS InitiatedByName, p.InitiatedByDate,p.PlanedFinishDate, 
       p.[Description],  p.CTECheckerId, p.CTECheckerName, p.CTECheckDate, 
       p.OwnerCheckerId, p.OwnerCheckerName, p.OwnerCheckDate, p.Remark,
	   (CASE WHEN (p.PlanedFinishDate<GETDATE() AND 
				  ((p.CTECheckerId IS NOT NULL AND p.CTECheckDate IS NULL) OR (p.OwnerCheckerId IS NOT NULL AND p.OwnerCheckDate IS NULL)))
				   OR p.PlanedFinishDate IS NULL OR p.CTECheckerId IS NULL 
			 THEN '1'
			 WHEN (p.PlanedFinishDate>GETDATE() OR p.PlanedFinishDate IS NULL) AND 
			      ((p.CTECheckerId IS NOT NULL AND p.CTECheckDate IS NULL) OR (p.OwnerCheckerId IS NOT NULL AND p.OwnerCheckDate IS NULL))
			 THEN '2'
			 WHEN ((p.CTECheckerId IS NOT NULL AND p.CTECheckDate IS NOT NULL AND p.OwnerCheckerId IS NOT NULL AND p.OwnerCheckDate IS NOT NULL)
			       OR (p.CTECheckerId IS NOT NULL AND p.OwnerCheckerId IS NULL AND p.CTECheckDate IS NOT NULL))
			 THEN '3' END) AS States
FROM dbo.Editor_Punch p
LEFT JOIN dbo.Sys_User u1 ON u1.UserId=p.BYC_Person
LEFT JOIN dbo.Sys_User u2 ON u2.UserId=p.InitiatedByName
LEFT JOIN dbo.Editor_EProject pro ON pro.EProjectId = p.EProjectId




GO
/****** Object:  Table [dbo].[Editor_AreaConcern]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Editor_AreaConcern](
	[AreaConcernId] [nvarchar](50) NOT NULL,
	[EProjectId] [nvarchar](50) NULL,
	[SN] [nvarchar](50) NULL,
	[EntryDate] [datetime] NULL,
	[CreatedById] [nvarchar](50) NULL,
	[CreatedByName] [nvarchar](50) NULL,
	[CategoryCauseId] [nvarchar](50) NULL,
	[CategoryCauseName] [nvarchar](50) NULL,
	[Remark] [nvarchar](1500) NULL,
 CONSTRAINT [PK_Editor_AreaConcern] PRIMARY KEY CLUSTERED 
(
	[AreaConcernId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_ConcernReport]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_ConcernReport]
AS

SELECT eProject.EProjectId,
eProject.ProjectControl_JobNo,
eProject.ProjectControl_JobType,
eProject.ProjectControl_JobTitle,
eProject.ProjectControl_JobStatus,
eProject.PM_General_Priority,
eProject.ProjectControl_ProjectManager,
eProject.ProjectControl_ConstManager,
CONVERT(NVARCHAR(10),eProject.PM_MA_ProjectApproval,23) AS PM_MA_ProjectApproval,--Approval Date_Actual
CONVERT(NVARCHAR(10),eProject.ProjectControl_MS_MC,23) AS ProjectControl_MS_MC, --MC Date_Plan
CONVERT(NVARCHAR(10),eProject.CM_CM_RevisedEnd,23) AS CM_CM_RevisedEnd,--Construction_Mech.,E&I_ Revised End
/*Area Concern*/
CONVERT(NVARCHAR(10),con.EntryDate,23) AS EntryDate,--Entry Date
con.CategoryCauseName AS PM_General_Category, --Category 
con.Remark AS Descriptions 
FROM dbo.Editor_AreaConcern con
LEFT JOIN dbo.Editor_EProject AS eProject ON eProject.EProjectId = con.EProjectId



GO
/****** Object:  Table [dbo].[Base_Depart]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Base_Depart](
	[DepartId] [nvarchar](50) NOT NULL,
	[DepartCode] [nvarchar](10) NULL,
	[DepartName] [nvarchar](20) NULL,
	[Remark] [nvarchar](150) NULL,
	[SupCheckItem] [nvarchar](50) NULL,
 CONSTRAINT [PK_Base_Depart] PRIMARY KEY CLUSTERED 
(
	[DepartId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_Job_List]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo].[View_Job_List]
AS
SELECT t.EProjectId,t.ProjectControl_BUCode,t.ProjectControl_JobNo,t.ProjectControl_JobType,t.ProjectControl_LeadByName,
       t.ProjectControl_JobTitle,t.ProjectControl_OrginalBudget,t.ProjectControl_ProjectManager,t.PM_General_Priority,
	   t.ProjectControl_JobStatus,t.PM_MA_JobReveive, t.Date_Resource_Plan,t.Duration_Resource_Plan,t.Date_Plan_EHS_Review_Files,
	   t.Date_EHS_Review_Files,t.Duration_EHS_Review_Files,t.Date_EHS_Review_Meeting,t.Duration_EHS_Review_Meeting,t.Date_Estimate_Worksheet,
	   t.Duration_Estimate_Worksheet,t.Date_Budget,t.Duration_Budget,t.Date_Approval,t.Duration_Approval,t.Date_Teco_Alarm_Study,
	   t.Duration_Teco_Alarm_Study,
	   --------------------------------------------------------------------------------------------------
       CONVERT(NVARCHAR(10),t.IFC_Start_Process,23) AS IFC_Start_Process,
	   CONVERT(NVARCHAR(10),t.IFC_End_Process,23) AS IFC_End_Process,
	   CONVERT(NVARCHAR(10),t.IFC_Act_Process,23) AS IFC_Act_Process,
	   (CASE WHEN t.IFC_Start_Process IS NOT NULL AND t.IFC_Act_Process IS NOT NULL
       THEN DATEDIFF(DAY,t.IFC_Act_Process,t.IFC_End_Process) ELSE NULL END) AS Light_IFC_Process,

	   CONVERT(NVARCHAR(10),t.IFC_Start_MasterPlanning,23) AS IFC_Start_MasterPlanning,
	   CONVERT(NVARCHAR(10),t.IFC_End_MasterPlanning,23) AS IFC_End_MasterPlanning,
	   CONVERT(NVARCHAR(10),t.IFC_Act_MasterPlanning,23) AS IFC_Act_MasterPlanning,
	   (CASE WHEN t.IFC_Start_MasterPlanning IS NOT NULL AND t.IFC_Act_MasterPlanning IS NOT NULL
       THEN DATEDIFF(DAY,t.IFC_Act_MasterPlanning,t.IFC_End_MasterPlanning) ELSE NULL END) AS Light_IFC_MasterPlanning,

	   CONVERT(NVARCHAR(10),t.IFC_Start_Civil,23) AS IFC_Start_Civil,
	   CONVERT(NVARCHAR(10),t.IFC_End_Civil,23) AS IFC_End_Civil,
	   CONVERT(NVARCHAR(10),t.IFC_Act_Civil,23) AS IFC_Act_Civil,
	   (CASE WHEN t.IFC_Start_Civil IS NOT NULL AND t.IFC_Act_Civil IS NOT NULL
       THEN DATEDIFF(DAY,t.IFC_Act_Civil,t.IFC_End_Civil) ELSE NULL END) AS Light_IFC_Civil,

	   CONVERT(NVARCHAR(10),t.IFC_Start_Architectral,23) AS IFC_Start_Architectral,
	   CONVERT(NVARCHAR(10),t.IFC_End_Architectral,23) AS IFC_End_Architectral,
	   CONVERT(NVARCHAR(10),t.IFC_Act_Architectral,23) AS IFC_Act_Architectral,
	   (CASE WHEN t.IFC_Start_Architectral IS NOT NULL AND t.IFC_Act_Architectral IS NOT NULL
       THEN DATEDIFF(DAY,t.IFC_Act_Architectral,t.IFC_End_Architectral) ELSE NULL END) AS Light_IFC_Architectral,

	   CONVERT(NVARCHAR(10),t.IFC_Start_HVAC,23) AS IFC_Start_HVAC,
	   CONVERT(NVARCHAR(10),t.IFC_End_HVAC,23) AS IFC_End_HVAC,
	   CONVERT(NVARCHAR(10),t.IFC_Act_HVAC,23) AS IFC_Act_HVAC,
	   (CASE WHEN t.IFC_Start_HVAC IS NOT NULL AND t.IFC_Act_HVAC IS NOT NULL
       THEN DATEDIFF(DAY,t.IFC_Act_HVAC,t.IFC_End_HVAC) ELSE NULL END) AS Light_IFC_HVAC,

	   CONVERT(NVARCHAR(10),t.IFC_Start_Plumbing,23) AS IFC_Start_Plumbing,
	   CONVERT(NVARCHAR(10),t.IFC_End_Plumbing,23) AS IFC_End_Plumbing,
	   CONVERT(NVARCHAR(10),t.IFC_Act_Plumbing,23) AS IFC_Act_Plumbing,
	   (CASE WHEN t.IFC_Start_Plumbing IS NOT NULL AND t.IFC_Act_Plumbing IS NOT NULL
       THEN DATEDIFF(DAY,t.IFC_Act_Plumbing,t.IFC_End_Plumbing) ELSE NULL END) AS Light_IFC_Plumbing,

	   CONVERT(NVARCHAR(10),t.IFC_Start_Mech_Equi,23) AS IFC_Start_Mech_Equi,
	   CONVERT(NVARCHAR(10),t.IFC_End_Mech_Equi,23) AS IFC_End_Mech_Equi,
	   CONVERT(NVARCHAR(10),t.IFC_Act_Mech_Equi,23) AS IFC_Act_Mech_Equi,
	   (CASE WHEN t.IFC_Start_Mech_Equi IS NOT NULL AND t.IFC_Act_Mech_Equi IS NOT NULL
       THEN DATEDIFF(DAY,t.IFC_Act_Mech_Equi,t.IFC_End_Mech_Equi) ELSE NULL END) AS Light_IFC_Mech_Equi,

	   CONVERT(NVARCHAR(10),t.IFC_Start_Piping,23) AS IFC_Start_Piping,
	   CONVERT(NVARCHAR(10),t.IFC_End_Piping,23) AS IFC_End_Piping,
	   CONVERT(NVARCHAR(10),t.IFC_Act_Piping,23) AS IFC_Act_Piping,
	   (CASE WHEN t.IFC_Start_Piping IS NOT NULL AND t.IFC_Act_Piping IS NOT NULL
       THEN DATEDIFF(DAY,t.IFC_Act_Piping,t.IFC_End_Piping) ELSE NULL END) AS Light_IFC_Piping,

	   CONVERT(NVARCHAR(10),t.IFC_Start_Electrical,23) AS IFC_Start_Electrical,
	   CONVERT(NVARCHAR(10),t.IFC_End_Electrical,23) AS IFC_End_Electrical,
	   CONVERT(NVARCHAR(10),t.IFC_Act_Electrical,23) AS IFC_Act_Electrical,
	   (CASE WHEN t.IFC_Start_Electrical IS NOT NULL AND t.IFC_Act_Electrical IS NOT NULL
       THEN DATEDIFF(DAY,t.IFC_Act_Electrical,t.IFC_End_Electrical) ELSE NULL END) AS Light_IFC_Electrical,

	   CONVERT(NVARCHAR(10),t.IFC_Start_Telecommunication,23) AS IFC_Start_Telecommunication,
	   CONVERT(NVARCHAR(10),t.IFC_End_Telecommunication,23) AS IFC_End_Telecommunication,
	   CONVERT(NVARCHAR(10),t.IFC_Act_Telecommunication,23) AS IFC_Act_Telecommunication,
	   (CASE WHEN t.IFC_Start_Telecommunication IS NOT NULL AND t.IFC_Act_Telecommunication IS NOT NULL
       THEN DATEDIFF(DAY,t.IFC_Act_Telecommunication,t.IFC_End_Telecommunication) ELSE NULL END) AS Light_IFC_Telecommunication,

	   CONVERT(NVARCHAR(10),t.IFC_Start_Instrument,23) AS IFC_Start_Instrument,
	   CONVERT(NVARCHAR(10),t.IFC_End_Instrument,23) AS IFC_End_Instrument,
	   CONVERT(NVARCHAR(10),t.IFC_Act_Instrument,23) AS IFC_Act_Instrument,
	   (CASE WHEN t.IFC_Start_Instrument IS NOT NULL AND t.IFC_Act_Instrument IS NOT NULL
       THEN DATEDIFF(DAY,t.IFC_Act_Instrument,t.IFC_End_Instrument) ELSE NULL END) AS Light_IFC_Instrument,
	   -------------------------------------------------------------------------------------------------
	   CONVERT(NVARCHAR(10),t.Job_Plan_IFC,23) AS Date_Plan_IFC, CONVERT(NVARCHAR(10),t.Date_Act_IFC,23) AS Date_Act_IFC,
	   (CASE WHEN t.Job_Plan_IFC IS NOT NULL AND t.Date_Act_IFC IS NOT NULL THEN DATEDIFF(DAY,t.Job_Plan_IFC,t.Date_Act_IFC) ELSE NULL END) AS Act_Plan_IFC,

	   t.Date_Plan_MC, CONVERT(NVARCHAR(10),t.Date_Act_MC,23) AS Date_Act_MC, t.Act_Plan_MC,
	   CONVERT(NVARCHAR(10),t.Date_Act_Teco_Execution,23) AS Date_Act_Teco_Execution,
	   (CASE WHEN t.Date_Act_MC IS NOT NULL AND Date_Act_Teco_Execution IS NOT NULL
             THEN DATEDIFF(DAY,t.Date_Act_MC,t.Date_Act_Teco_Execution) ELSE NULL END) AS Duration_Act_Teco_Execution,
       CONVERT(NVARCHAR(10),t.Date_As_Built,23) AS Date_As_Built,
	  (CASE WHEN t.Date_Act_MC IS NOT NULL AND Date_As_Built IS NOT NULL
             THEN DATEDIFF(DAY,t.Date_Act_MC,t.Date_As_Built) ELSE NULL END) AS Duration_As_Built,
      
	  t.Date_FC, t.IsNeedFC, t.Duration_FC, t.Hold_Date, t.Cancel_Date,
	  t.Job_Delaybyteam1, t.Job_Delaybypersonel1, t.Job_Remark1,
	  t.Job_Delaybyteam2, t.Job_Delaybypersonel2, t.Job_Remark2,
	  t.Job_Delaybyteam3, t.Job_Delaybypersonel3, t.Job_Remark3,
	  t.Equivalent_Qty
FROM
(SELECT ep.EProjectId,ep.ProjectControl_BUCode,ep.ProjectControl_JobNo,ep.ProjectControl_JobType,ep.ProjectControl_LeadByName,
       ep.ProjectControl_JobTitle,ep.ProjectControl_OrginalBudget,ep.ProjectControl_ProjectManager,ep.PM_General_Priority,
	   ep.ProjectControl_JobStatus,CONVERT(NVARCHAR(10),ep.PM_MA_JobReveive,23) AS PM_MA_JobReveive,--Received Date
       
	   CONVERT(NVARCHAR(10),ep.ProjectControl_MS_ResourcePlanReceived,23) AS Date_Resource_Plan,--ResourcePlan Date
       (CASE WHEN ep.PM_MA_JobReveive IS NOT NULL AND ep.ProjectControl_MS_ResourcePlanReceived IS NOT NULL
       THEN DATEDIFF(DAY,ep.PM_MA_JobReveive,ep.ProjectControl_MS_ResourcePlanReceived) ELSE NULL END) AS Duration_Resource_Plan,
	   
	   CONVERT(NVARCHAR(10),ep.Job_PlanEHSReview_Files,23) AS Date_Plan_EHS_Review_Files,
	   CONVERT(NVARCHAR(10),ep.Job_EHSReview_Files,23) AS Date_EHS_Review_Files,
	   (CASE WHEN ep.Job_PlanEHSReview_Files IS NOT NULL AND ep.Job_EHSReview_Files IS NOT NULL
       THEN DATEDIFF(DAY,ep.Job_PlanEHSReview_Files,ep.Job_EHSReview_Files) ELSE NULL END) AS Duration_EHS_Review_Files,

	   CONVERT(NVARCHAR(10),ep.Job_EHSReview_Meeting,23) AS Date_EHS_Review_Meeting,
	   (CASE WHEN ep.Job_EHSReview_Files IS NOT NULL AND ep.Job_EHSReview_Meeting IS NOT NULL
       THEN DATEDIFF(DAY,ep.Job_EHSReview_Files,ep.Job_EHSReview_Meeting) ELSE NULL END) AS Duration_EHS_Review_Meeting,

	   CONVERT(NVARCHAR(10),ep.Job_Estimate_Worksheet,23) AS Date_Estimate_Worksheet,
	   (CASE WHEN ep.Job_EHSReview_Meeting IS NOT NULL AND ep.Job_Estimate_Worksheet IS NOT NULL
       THEN DATEDIFF(DAY,ep.Job_EHSReview_Meeting,ep.Job_Estimate_Worksheet) ELSE NULL END) AS Duration_Estimate_Worksheet,

	    CONVERT(NVARCHAR(10),ep.Job_Budget,23) AS Date_Budget,
	   (CASE WHEN ep.Job_Estimate_Worksheet IS NOT NULL AND ep.Job_Budget IS NOT NULL
       THEN DATEDIFF(DAY,ep.Job_Estimate_Worksheet,ep.Job_Budget) ELSE NULL END) AS Duration_Budget,  --PM_MA_ProjectApproval

	    CONVERT(NVARCHAR(10),ep.PM_MA_ProjectApproval,23) AS Date_Approval,
	   (CASE WHEN ep.Job_Budget IS NOT NULL AND ep.PM_MA_ProjectApproval IS NOT NULL
       THEN DATEDIFF(DAY,ep.Job_Budget,ep.PM_MA_ProjectApproval) ELSE NULL END) AS Duration_Approval,

	    CONVERT(NVARCHAR(10),ep.Job_TecoAlarm_Study,23) AS Date_Teco_Alarm_Study,
	   (CASE WHEN ep.PM_MA_ProjectApproval IS NOT NULL AND ep.Job_TecoAlarm_Study IS NOT NULL
       THEN DATEDIFF(DAY,ep.PM_MA_ProjectApproval,ep.Job_TecoAlarm_Study) ELSE NULL END) AS Duration_Teco_Alarm_Study,

	   ----------------------------新加部分---------------------
		(SELECT RevisedStart FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Process')  AS IFC_Start_Process,
		(SELECT p.RevisedEnd FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Process') AS IFC_End_Process,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='01_Process' ORDER BY t.ReceiveHC DESC)  AS IFC_Act_Process,

		(SELECT RevisedStart FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='MasterPlanning')  AS IFC_Start_MasterPlanning,
		(SELECT p.RevisedEnd FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='MasterPlanning') AS IFC_End_MasterPlanning,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='10_MasterPlanning' ORDER BY t.ReceiveHC DESC)  AS IFC_Act_MasterPlanning,

		(SELECT RevisedStart FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Civil')  AS IFC_Start_Civil,
		(SELECT p.RevisedEnd FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Civil') AS IFC_End_Civil,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='10_Civil' ORDER BY t.ReceiveHC DESC)  AS IFC_Act_Civil,

		(SELECT RevisedStart FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Architectral')  AS IFC_Start_Architectral,
		(SELECT p.RevisedEnd FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Architectral') AS IFC_End_Architectral,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='20_Architectral' ORDER BY t.ReceiveHC DESC)  AS IFC_Act_Architectral,

		(SELECT RevisedStart FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='HVAC')  AS IFC_Start_HVAC,
		(SELECT p.RevisedEnd FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='HVAC') AS IFC_End_HVAC,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='20_HVAC' ORDER BY t.ReceiveHC DESC)  AS IFC_Act_HVAC,

		(SELECT RevisedStart FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Plumbing/F.F')  AS IFC_Start_Plumbing,
		(SELECT p.RevisedEnd FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Plumbing/F.F') AS IFC_End_Plumbing,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='30_Plumbing/F.F' ORDER BY t.ReceiveHC DESC)  AS IFC_Act_Plumbing,

		(SELECT RevisedStart FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Mech./Equi.')  AS IFC_Start_Mech_Equi,
		(SELECT p.RevisedEnd FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Mech./Equi.') AS IFC_End_Mech_Equi,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='40_Mech./Equi.' ORDER BY t.ReceiveHC DESC)  AS IFC_Act_Mech_Equi,

		(SELECT RevisedStart FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Piping')  AS IFC_Start_Piping,
		(SELECT p.RevisedEnd FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Piping') AS IFC_End_Piping,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='50_Piping' ORDER BY t.ReceiveHC DESC)  AS IFC_Act_Piping,

		(SELECT RevisedStart FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Electrical')  AS IFC_Start_Electrical,
		(SELECT p.RevisedEnd FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Electrical') AS IFC_End_Electrical,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='60_Electrical' ORDER BY t.ReceiveHC DESC)  AS IFC_Act_Electrical,

		(SELECT RevisedStart FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Telecommunication')  AS IFC_Start_Telecommunication,
		(SELECT p.RevisedEnd FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Telecommunication') AS IFC_End_Telecommunication,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='65_Telecommunication' ORDER BY t.ReceiveHC DESC)  AS IFC_Act_Telecommunication,

		(SELECT RevisedStart FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Instrument')  AS IFC_Start_Instrument,
		(SELECT p.RevisedEnd FROM dbo.Editor_PM p WHERE p.EProjectId=ep.EProjectId AND p.DisciplinesWBSName='Instrument') AS IFC_End_Instrument,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='70_Instrument' ORDER BY t.ReceiveHC DESC)  AS IFC_Act_Instrument,

	   ---------------------------------------------------------
	     ep.Job_Plan_IFC,
		(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D01_IFC' AND t.Disc='00_ALL' ORDER BY t.ReceiveHC DESC) AS Date_Act_IFC,
	  
	   CONVERT(VARCHAR(10), ep.ProjectControl_Revised_MC_Date, 23) AS Date_Plan_MC, ep.CM_MA_MC AS Date_Act_MC,
	   (CASE WHEN ep.ProjectControl_Revised_MC_Date IS NOT NULL AND ep.CM_MA_MC IS NOT NULL
       THEN DATEDIFF(DAY,ep.ProjectControl_Revised_MC_Date,ep.CM_MA_MC) ELSE NULL END) AS Act_Plan_MC,

	   (SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND t.[Type]='D11_MC'  ORDER BY t.ReceiveHC DESC) Date_Act_Teco_Execution, --MC Signed
	   (SELECT TOP(1) ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND [Type]='D02_AS-BUILT' AND Disc='00_ALL' ORDER BY t.ReceiveHC DESC) AS Date_As_Built,

	   (CASE WHEN ep.CM_MA_MC IS NOT NULL AND EXISTS(SELECT t.TDCId FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND [Type]='D02_AS-BUILT' AND Disc='00_ALL')
       THEN DATEDIFF(DAY,ep.CM_MA_MC,(SELECT TOP(1) t.ReceiveHC FROM dbo.Editor_TDC t WHERE t.EProjectId=ep.EProjectId AND t.ReceiveHC IS NOT NULL AND [Type]='D02_AS-BUILT' AND Disc='00_ALL' ORDER BY t.ReceiveHC DESC)) ELSE NULL END) AS  Duration_As_Built,

	   CONVERT(VARCHAR(10), ep.ProjectControl_ClosedDate, 23) AS Date_FC,
	   (CASE WHEN ep.ProjectControl_OrginalBudget>=1000000 THEN 'Y' ELSE 'N' END) AS IsNeedFC,
	   (CASE WHEN ep.ProjectControl_OrginalBudget>=1000000 AND ep.CM_MA_MC IS NOT NULL
		THEN DATEDIFF(DAY,ep.CM_MA_MC,ep.ProjectControl_ClosedDate) ELSE NULL END) AS Duration_FC,

       CONVERT(VARCHAR(10), ep.Job_Hold, 23) AS Hold_Date,
	   CONVERT(VARCHAR(10), ep.ProjectControl_PC_CancelDate, 23) AS Cancel_Date,
       
	   d1.DepartName AS Job_Delaybyteam1, u1.UserName AS Job_Delaybypersonel1, ep.Job_Remark1,  
	   d2.DepartName AS Job_Delaybyteam2, u2.UserName AS Job_Delaybypersonel2, ep.Job_Remark2, 
	   d3.DepartName AS Job_Delaybyteam3, u3.UserName AS Job_Delaybypersonel3, ep.Job_Remark3,
	   
	   (CASE WHEN ep.PM_MA_ProjectApproval IS NULL THEN '1'
	        ELSE (CASE WHEN (ep.ProjectControl_OrginalBudget IS NULL OR ep.ProjectControl_OrginalBudget<4000000) THEN '1'
			           ELSE CONVERT(VARCHAR(10),CONVERT(DECIMAL(9,2),0.25*(ep.ProjectControl_OrginalBudget/1000000))) END)END) AS Equivalent_Qty
			 
FROM dbo.Editor_EProject ep
LEFT JOIN dbo.Base_Depart d1 ON d1.DepartId=ep.Job_Delaybyteam1
LEFT JOIN dbo.Base_Depart d2 ON d2.DepartId=ep.Job_Delaybyteam2
LEFT JOIN dbo.Base_Depart d3 ON d3.DepartId=ep.Job_Delaybyteam3
LEFT JOIN dbo.Sys_User u1 ON u1.UserId=ep.Job_Delaybypersonel1
LEFT JOIN dbo.Sys_User u2 ON u2.UserId=ep.Job_Delaybypersonel2
LEFT JOIN dbo.Sys_User u3 ON u3.UserId=ep.Job_Delaybypersonel3
)t





GO
/****** Object:  Table [dbo].[Resource_PlanDetail]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Resource_PlanDetail](
	[ResourcePlanDetailId] [nvarchar](50) NOT NULL,
	[ResourcePlanId] [nvarchar](50) NULL,
	[EProjectId] [nvarchar](50) NULL,
	[DisciplinesWBSId] [nvarchar](50) NULL,
	[DisciplinesWBSCode] [nvarchar](50) NULL,
	[DisciplinesWBSName] [nvarchar](50) NULL,
	[WBS] [nvarchar](50) NULL,
	[Sch_Start] [datetime] NULL,
	[Sch_End] [datetime] NULL,
	[DesignersId] [nvarchar](50) NULL,
	[Designer] [nvarchar](50) NULL,
	[Ratio1] [decimal](18, 2) NULL,
	[ManHours1] [decimal](18, 2) NULL,
	[CheckersId] [nvarchar](50) NULL,
	[Checker] [nvarchar](50) NULL,
	[Ratio2] [decimal](18, 2) NULL,
	[ManHours2] [decimal](18, 2) NULL,
	[ApproversId] [nvarchar](50) NULL,
	[Approver] [nvarchar](50) NULL,
	[Ratio3] [decimal](18, 2) NULL,
	[ManHours3] [decimal](18, 2) NULL,
	[LeadersId] [nvarchar](50) NULL,
	[Leader] [nvarchar](50) NULL,
	[Ratio4] [decimal](18, 2) NULL,
	[ManHours4] [decimal](18, 2) NULL,
	[Types] [nchar](10) NULL,
	[ISort] [int] NULL,
 CONSTRAINT [PK_Resource_PlanDetail] PRIMARY KEY CLUSTERED 
(
	[ResourcePlanDetailId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_ResourcePlanDetailWBS]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_ResourcePlanDetailWBS]
AS
SELECT     dbo.Resource_PlanDetail.ResourcePlanDetailId, dbo.Resource_PlanDetail.ResourcePlanId, dbo.Resource_PlanDetail.EProjectId, dbo.Resource_PlanDetail.DisciplinesWBSId, 
                      dbo.Resource_PlanDetail.DisciplinesWBSCode, dbo.Resource_PlanDetail.DisciplinesWBSName, dbo.Resource_PlanDetail.WBS, dbo.Resource_PlanDetail.Sch_Start, 
                      dbo.Resource_PlanDetail.Sch_End, dbo.Base_DisciplinesWBS.DepartId, dbo.Base_DisciplinesWBS.DepartName
FROM         dbo.Resource_PlanDetail LEFT OUTER JOIN
                      dbo.Base_DisciplinesWBS ON dbo.Resource_PlanDetail.DisciplinesWBSId = dbo.Base_DisciplinesWBS.DisciplinesWBSId
WHERE     (dbo.Resource_PlanDetail.Types = 1)



GO
/****** Object:  Table [dbo].[Sys_Role]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_Role](
	[RoleId] [nvarchar](50) NOT NULL,
	[RoleCode] [nvarchar](50) NULL,
	[RoleName] [nvarchar](50) NOT NULL,
	[Def] [nvarchar](100) NULL,
	[SortIndex] [int] NULL,
	[IsAuditFlow] [bit] NULL,
 CONSTRAINT [PK_Sys_Role] PRIMARY KEY CLUSTERED 
(
	[RoleId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
 CONSTRAINT [IX_Sys_Role] UNIQUE NONCLUSTERED 
(
	[RoleName] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_Sys_Users]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO



CREATE VIEW [dbo].[View_Sys_Users]
AS
SELECT u.UserId, 
u.UserCode, 
u.UserName, 
u.DepartId, 
depart.DepartCode, 
depart.DepartName, 
u.RoleId, 
rol.RoleName, 
u.IsPost, 
u.Email, 
rol.RoleCode,
u.IsCTE,
u.IsCalculated,
depart.SupCheckItem
FROM dbo.Sys_User AS u 
LEFT OUTER JOIN dbo.Base_Depart AS depart ON depart.DepartId = u.DepartId 
LEFT OUTER JOIN dbo.Sys_Role AS rol ON rol.RoleId = u.RoleId
WHERE (u.Account <> 'gly')




GO
/****** Object:  Table [dbo].[ManHours_Actual]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[ManHours_Actual](
	[ManHoursActualId] [nvarchar](50) NOT NULL,
	[ManHoursPlanId] [nvarchar](50) NULL,
	[ResourcePlanId] [nvarchar](50) NULL,
	[EProjectId] [nvarchar](50) NULL,
	[Type] [nvarchar](50) NULL,
	[Description] [nvarchar](500) NULL,
	[DisciplineId] [nvarchar](50) NULL,
	[Discipline] [nvarchar](50) NULL,
	[UserId] [nvarchar](50) NULL,
	[UserName] [nvarchar](50) NULL,
	[Roles] [nvarchar](50) NULL,
	[Account] [nvarchar](50) NULL,
	[Month] [date] NULL,
	[Hours] [float] NULL,
	[Itype] [int] NULL,
	[ManHoursDate] [varchar](6) NULL,
 CONSTRAINT [PK_ManHours_Actual] PRIMARY KEY CLUSTERED 
(
	[ManHoursActualId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_ManHours_Actual]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_ManHours_Actual]
AS
SELECT  dbo.ManHours_Actual.EProjectId, dbo.View_Sys_Users.UserName AS EngineerName, dbo.View_Sys_Users.RoleName AS Roles, 
               dbo.View_Sys_Users.DepartId, dbo.Editor_EProject.ProjectControl_JobNo, dbo.Editor_EProject.ProjectControl_JobType, 
               dbo.Editor_EProject.ProjectControl_JobStatus, dbo.Editor_EProject.ProjectControl_JobTitle, dbo.Editor_EProject.ProjectControl_BUCode, 
               dbo.ManHours_Actual.Hours, dbo.ManHours_Actual.UserId, dbo.ManHours_Actual.Month, dbo.ManHours_Actual.Itype
FROM     dbo.ManHours_Actual LEFT OUTER JOIN
               dbo.View_Sys_Users ON dbo.ManHours_Actual.UserId = dbo.View_Sys_Users.UserId LEFT OUTER JOIN
               dbo.Editor_EProject ON dbo.ManHours_Actual.EProjectId = dbo.Editor_EProject.EProjectId


GO
/****** Object:  Table [dbo].[ManHours_PlanDetail]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[ManHours_PlanDetail](
	[ManHoursPlanDetailId] [nvarchar](50) NOT NULL,
	[PlanManHoursId] [nvarchar](50) NULL,
	[EProjectId] [nvarchar](50) NULL,
	[UserId] [nvarchar](50) NULL,
	[UserName] [nvarchar](50) NULL,
	[DateMonth] [datetime] NULL,
	[Hour] [float] NULL,
 CONSTRAINT [PK_ManHours_PlanDetail] PRIMARY KEY CLUSTERED 
(
	[ManHoursPlanDetailId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_ManHours_PlanDetail]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

/****** Script for SelectTopNRows command from SSMS  ******/
CREATE VIEW [dbo].[View_ManHours_PlanDetail]
AS
SELECT     dbo.ManHours_PlanDetail.ManHoursPlanDetailId, dbo.ManHours_PlanDetail.EProjectId, dbo.ManHours_PlanDetail.UserId, dbo.ManHours_PlanDetail.UserName, 
                      dbo.ManHours_PlanDetail.DateMonth, dbo.ManHours_PlanDetail.Hour, dbo.View_Sys_Users.DepartId
FROM         dbo.ManHours_PlanDetail LEFT OUTER JOIN
                      dbo.View_Sys_Users ON dbo.ManHours_PlanDetail.UserId = dbo.View_Sys_Users.UserId


GO
/****** Object:  View [dbo].[View_Resource_PlanDetai]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo].[View_Resource_PlanDetai]
AS
SELECT  dbo.Resource_PlanDetail.ResourcePlanDetailId, dbo.Resource_PlanDetail.ResourcePlanId, dbo.Resource_PlanDetail.EProjectId, 
               dbo.Resource_PlanDetail.DisciplinesWBSId, dbo.Resource_PlanDetail.DisciplinesWBSCode, dbo.Resource_PlanDetail.DisciplinesWBSName, 
               dbo.Resource_PlanDetail.WBS, dbo.Resource_PlanDetail.DesignersId, dbo.Resource_PlanDetail.Designer, dbo.Resource_PlanDetail.Ratio1, 
               dbo.Resource_PlanDetail.ManHours1, dbo.Resource_PlanDetail.CheckersId, dbo.Resource_PlanDetail.Checker, dbo.Resource_PlanDetail.Ratio2, 
               dbo.Resource_PlanDetail.ManHours2, dbo.Resource_PlanDetail.ApproversId, dbo.Resource_PlanDetail.Approver, dbo.Resource_PlanDetail.Ratio3, 
               dbo.Resource_PlanDetail.ManHours3, dbo.Resource_PlanDetail.LeadersId, dbo.Resource_PlanDetail.Leader, dbo.Resource_PlanDetail.Ratio4, 
               dbo.Resource_PlanDetail.ManHours4, dbo.Resource_PlanDetail.Types, dbo.Resource_PlanDetail.ISort, dbo.Base_DisciplinesWBS.NetworkOper, 
               dbo.Base_DisciplinesWBS.WorkorderOper, dbo.Resource_PlanDetail.Sch_Start, dbo.Resource_PlanDetail.Sch_End
FROM     dbo.Resource_PlanDetail LEFT OUTER JOIN
               dbo.Base_DisciplinesWBS ON dbo.Resource_PlanDetail.DisciplinesWBSId = dbo.Base_DisciplinesWBS.DisciplinesWBSId

GO
/****** Object:  View [dbo].[View_UserDropDownList]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_UserDropDownList]
AS
/******Project Control中Leadby下拉选择项*******/
SELECT TOP 100 PERCENT DepartId AS ID,
DepartName AS Name,
'1' AS GroupId
FROM dbo.Base_Depart
WHERE DepartName LIKE 'CTE%'
--ORDER BY DepartName

UNION ALL

SELECT TOP 100 PERCENT UserId AS ID,
UserName AS NAME,
'2' AS GroupID
FROM dbo.Sys_User
--ORDER BY UserName

GO
/****** Object:  View [dbo].[View_HomePage_Permits]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_HomePage_Permits]
AS
/*******首页Permits模块*********/
SELECT 1 as sort,
EProjectId,
'Env.Assess.'AS Name,
Permit_PS_EnvAssess AS ScheduledDate,
Permit_PPA_EnvAssess AS ActualDate,
(CASE WHEN Permit_PS_EnvAssessChecked='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 2 as sort,
EProjectId,
'Energy Saving'AS Name,
Permit_PS_EnergySaving AS ScheduledDate,
Permit_PPA_EnergySaving AS ActualDate,
(CASE WHEN Permit_PS_EnergySavingChecked='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 3 as sort,
EProjectId,
'Project Registration'AS Name,
Permit_PS_ProjectRegistr AS ScheduledDate,
Permit_PPA_ProjectRegistration AS ActualDate,
(CASE WHEN Permit_PS_ProjectRegistrChecked='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 4 as sort,
EProjectId,
'Planning Permit'AS Name,
Permit_PS_PlanningPermit AS ScheduledDate,
Permit_PPA_PlanningPermit AS ActualDate,
(CASE WHEN Permit_PS_PlanningPermitChecked='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 5 as sort,
EProjectId,
'Safety Con.Rev.'AS Name,
Permit_PS_SafetyConReview AS ScheduledDate,
Permit_PPA_SafetyConRev AS ActualDate,
(CASE WHEN Permit_PS_SafetyConReviewChecked='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 6 as sort,
EProjectId,
'Safety Desgin Review'AS Name,
Permit_PS_SafetyDesginReview AS ScheduledDate,
Permit_PPA_SafetyDesignRev AS ActualDate,
(CASE WHEN Permit_PS_SafetyDesginReviewChecked='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 7 as sort,
EProjectId,
'FF Desgin Review'AS Name,
Permit_PS_FFDesginReview AS ScheduledDate,
Permit_PPA_FFDesignReview AS ActualDate,
(CASE WHEN Permit_PS_FFDesginReviewChecked ='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 8 as sort,
EProjectId,
'Const.Permit'AS Name,
Permit_PS_ConstPermit AS ScheduledDate,
Permit_PA_ConstPermit AS ActualDate,
(CASE WHEN Permit_PS_ConstPermitChecked='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 9 as sort,
EProjectId,
'Safety Final ACC.'AS Name,
Permit_PS_SafetyFinalAcc AS ScheduledDate,
Permit_PA_SafetyFinalACC AS ActualDate,
(CASE WHEN Permit_PS_SafetyFinalAccChecked='True' THEN '√'ELSE	'×' END) AS Need
FROM Editor_EProject

UNION

SELECT 10 as sort,
EProjectId,
'FF Final ACC.'AS Name,
Permit_PS_FFFinalAcc AS ScheduledDate,
Permit_PA_FFFinalACC AS ActualDate,
(CASE WHEN Permit_PS_FFFinalAccChecked ='True' THEN '√' ELSE	'×' END) AS Need
FROM Editor_EProject

UNION

SELECT 11 as sort,
EProjectId,
'Env.Final ACC.'AS Name,
Permit_PS_EnvFinalAcc AS ScheduledDate,
Permit_PA_EnvFinalACC AS ActualDate,
(CASE WHEN Permit_PS_EnvFinalAccChecked ='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 12 as sort,
EProjectId,
'Pressure Vessel'AS Name,
PM_PP_PressureVessel AS ScheduledDate,
SQIB_PressureVessel AS ActualDate,
(CASE WHEN PM_PressureVesselChecked='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 13 as sort,
EProjectId,
'Pressure Piping'AS Name,
PM_PP_PressurePiping AS ScheduledDate,
SQIB_PressurePiping AS ActualDate,
(CASE WHEN PM_PressurePipingChecked ='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 14 as sort,
EProjectId,
'QIB'AS Name,
PM_PP_SQIB AS ScheduledDate,
SQIB_SQIB AS ActualDate,
(CASE WHEN PM_SQIBChecked ='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 15 as sort,
EProjectId,
'Archive Accep.'AS Name,
Permit_PS_ArchiveAccep AS ScheduledDate,
NULL AS ActualDate,
(CASE WHEN Permit_PS_ArchiveAccepChecked ='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject

UNION

SELECT 16 as sort,
EProjectId,
'3rd Const.JianLi'AS Name,
Permit_PS_3rdConstJian AS ScheduledDate,
NULL AS ActualDate,
(CASE WHEN Permit_PS_3rdConstJianChecked ='True' THEN '√' ELSE '×' END) AS Need
FROM Editor_EProject


GO
/****** Object:  View [dbo].[View_ManHours_Plan]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo].[View_ManHours_Plan]
AS
SELECT     EProjectId, EngineerId, DisciplineId, Account, Discipline, SUM(ManHours) AS ManHours, AccountDisabled, IsClose, EngineerName, Roles, DepartId, ProjectControl_JobNo, ProjectControl_JobType, 
                      ProjectControl_JobStatus, ProjectControl_JobTitle, ProjectControl_BUCode, ProjectControl_Account, PM_General_Priority, ProjectControl_MS_ResourcePlanReceived, ProjectControl_MS_MC, 
                      ProjectControl_PC_CancelDate
FROM         (SELECT     dbo.ManHours_Plan.ResourcePlanId, dbo.ManHours_Plan.EProjectId, dbo.ManHours_Plan.EngineerId, dbo.ManHours_Plan.DisciplineId, dbo.ManHours_Plan.Account, 
                                              dbo.ManHours_Plan.Discipline, dbo.ManHours_Plan.ManHours, dbo.ManHours_Plan.AccountDisabled, dbo.ManHours_Plan.IsClose, dbo.View_Sys_Users.UserName AS EngineerName, 
                                              CASE WHEN dbo.View_Sys_Users.RoleCode IS NULL THEN View_Sys_Users.RoleName ELSE (dbo.View_Sys_Users.RoleCode + '-' + dbo.View_Sys_Users.RoleName) END AS Roles, 
                                              dbo.View_Sys_Users.DepartId, dbo.Editor_EProject.ProjectControl_JobNo, dbo.Editor_EProject.ProjectControl_JobType, dbo.Editor_EProject.ProjectControl_JobStatus, 
                                              dbo.Editor_EProject.ProjectControl_JobTitle, dbo.Editor_EProject.ProjectControl_BUCode, dbo.Editor_EProject.ProjectControl_Account, dbo.Editor_EProject.PM_General_Priority, 
                                              dbo.Editor_EProject.ProjectControl_MS_ResourcePlanReceived, dbo.Editor_EProject.ProjectControl_MS_MC, dbo.Editor_EProject.ProjectControl_PC_CancelDate
                       FROM          dbo.ManHours_Plan LEFT OUTER JOIN
                                              dbo.View_Sys_Users ON dbo.ManHours_Plan.EngineerId = dbo.View_Sys_Users.UserId LEFT OUTER JOIN
                                              dbo.Editor_EProject ON dbo.ManHours_Plan.EProjectId = dbo.Editor_EProject.EProjectId
                       WHERE      (dbo.ManHours_Plan.IsClose = 0) AND (dbo.ManHours_Plan.AccountDisabled = 0)) AS M
GROUP BY EProjectId, EngineerId, DisciplineId, Account, Discipline, AccountDisabled, IsClose, EngineerName, Roles, DepartId, ProjectControl_JobNo, ProjectControl_JobType, ProjectControl_JobStatus, 
                      ProjectControl_JobTitle, ProjectControl_BUCode, ProjectControl_Account, PM_General_Priority, ProjectControl_MS_ResourcePlanReceived, ProjectControl_MS_MC, ProjectControl_PC_CancelDate


GO
/****** Object:  View [dbo].[View_ResourceDisc]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE VIEW [dbo].[View_ResourceDisc]
AS

SELECT p.ManHoursPlanId, p.EProjectId, epro.ProjectControl_JobNo,epro.ProjectControl_JobTitle,
epro.ProjectControl_JobStatus,p.EngineerId, u.UserName,
(CASE WHEN u.IsThirdParty=1 THEN SUBSTRING(p.Account,CHARINDEX('-',p.Account)+1,LEN(p.Account)-CHARINDEX('-',p.Account)) 
      ELSE p.Account END) AS Account, 
p.DisciplineId,p.Roles,p.ManHours, p.AccountDisabled,
(SELECT ISNULL(SUM(ISNULL(act.Hours,0)),0) FROM  dbo.ManHours_Actual act WHERE act.ManHoursPlanId=p.ManHoursPlanId)  AS Hourss,
(CASE WHEN p.Roles='M00' THEN p.Roles+'_Project Management' 
       WHEN CHARINDEX('_',p.Roles)=0 THEN p.Roles+'_'+p.Discipline
       WHEN CHARINDEX('_',p.Roles)>0 THEN LEFT(p.Roles,(CHARINDEX('_',p.Roles)))+p.Discipline+'_'+SUBSTRING(p.Roles,(CHARINDEX('_',p.Roles))+1,LEN(p.Roles))
 END) AS Discipline
FROM  dbo.ManHours_Plan AS p   
LEFT JOIN dbo.Sys_User u ON p.EngineerId = u.UserId
LEFT JOIN dbo.Editor_EProject epro ON epro.EProjectId = p.EProjectId
WHERE p.EProjectId IS NOT NULL 


GO
/****** Object:  View [dbo].[View_Report_DocumentationStatusMC]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO



CREATE VIEW [dbo].[View_Report_DocumentationStatusMC]
AS
/*********DocumentationStatusMC报告*************/
SELECT eproject.EProjectId,eproject.ProjectControl_JobNo,
       eproject.ProjectControl_ProjectManager,eproject.ProjectControl_LeadByName,
       eproject.ProjectControl_BUCode,CONVERT(NVARCHAR(10),eproject.CM_MA_MC,23) AS MC,
       eproject.ProjectControl_JobStatus,eproject.ProjectControl_JobType,
	   eproject.PM_MA_JobReveive,
(SELECT TOP 1 EngineerName FROM dbo.ManHours_Plan WHERE EProjectId=eproject.EProjectId AND Roles='D10') AS ProjectControl_TDCManager,
 'D01_IFC' AS Phase,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='01_Process') AS Process,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='30_Plumbing/F.F') AS Plumbling,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='40_Mech./Equi.') AS Equipment,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='50_Piping') AS Piping,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='60_Electrical') AS Electrical,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='65_Telecommunication') AS Communication,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='70_Instrument') AS Instrument,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='10_Civil') AS Civil,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='20_Architectral') AS Architectral,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='20_HVAC') AS HVAC,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='10_MasterpLanning') AS MasterpLanning,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='02_HSE') AS HSE,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='00_ALL') AS ALLS

FROM dbo.Editor_EProject eproject

UNION ALL

SELECT eproject.EProjectId,eproject.ProjectControl_JobNo,
       eproject.ProjectControl_ProjectManager,eproject.ProjectControl_LeadByName,
       eproject.ProjectControl_BUCode,CONVERT(NVARCHAR(10),eproject.CM_MA_MC,23) AS MC,
       eproject.ProjectControl_JobStatus,eproject.ProjectControl_JobType,
	   eproject.PM_MA_JobReveive,
	   (SELECT TOP 1 EngineerName FROM dbo.ManHours_Plan WHERE EProjectId=eproject.EProjectId AND Roles='D10') AS ProjectControl_TDCManager,
 'D02_AS-BUILT' AS Phase,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='01_Process') AS Process,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='30_Plumbing/F.F') AS Plumbling,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='40_Mech./Equi.') AS Equipment,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='50_Piping') AS Piping,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='60_Electrical') AS Electrical,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='65_Telecommunication') AS Communication,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='70_Instrument') AS Instrument,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='10_Civil') AS Civil,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='20_Architectral') AS Architectral,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='20_HVAC') AS HVAC,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='10_MasterpLanning') AS MasterpLanning,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='02_HSE') AS HSE,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='00_ALL') AS ALLS

FROM dbo.Editor_EProject eproject

UNION ALL

SELECT eproject.EProjectId,eproject.ProjectControl_JobNo,
       eproject.ProjectControl_ProjectManager,eproject.ProjectControl_LeadByName,
       eproject.ProjectControl_BUCode,CONVERT(NVARCHAR(10),eproject.CM_MA_MC,23) AS MC,
       eproject.ProjectControl_JobStatus,eproject.ProjectControl_JobType,
	   eproject.PM_MA_JobReveive,
(SELECT TOP 1 EngineerName FROM dbo.ManHours_Plan WHERE EProjectId=eproject.EProjectId AND Roles='D10') AS ProjectControl_TDCManager,
 'D03_MD' AS Phase,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='01_Process') AS Process,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='30_Plumbing/F.F') AS Plumbling,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='40_Mech./Equi.') AS Equipment,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='50_Piping') AS Piping,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='60_Electrical') AS Electrical,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='65_Telecommunication') AS Communication,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='70_Instrument') AS Instrument,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='10_Civil') AS Civil,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='20_Architectral') AS Architectral,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='20_HVAC') AS HVAC,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='10_MasterpLanning') AS MasterpLanning,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='02_HSE') AS HSE,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceivePDF,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D03_MD' AND Disc='00_ALL') AS ALLS

FROM dbo.Editor_EProject eproject




GO
/****** Object:  View [dbo].[View_Report_PermitGeneral]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE VIEW [dbo].[View_Report_PermitGeneral]
AS
/******报表:Permit_General*******/
SELECT top 100 percent NEWID() as EprojectId,t.*
from 
(SELECT ProjectControl_JobNo, --项目号	
ProjectControl_JobTitle, --项目名称	
ProjectControl_ProjectManager, --项目经理	
'计划' AS PType,--计划/实际	
(case when Permit_PS_EnvAssess is not null 
then CONVERT(NVARCHAR(10),Permit_PS_EnvAssess,23)else '-' end ) AS EnvAssess,--环评	
(case when Permit_PS_EnergySaving is  not null 
then CONVERT(NVARCHAR(10),Permit_PS_EnergySaving,23) else '-' end) AS EnergySaving, --节能报告
(case when Permit_PS_ProjectRegistr is not null
then CONVERT(NVARCHAR(10),Permit_PS_ProjectRegistr,23)else '-' end) AS ProjectRegistr, --项目备案	
(case when Permit_PS_PlanningPermit is not null
then CONVERT(NVARCHAR(10),Permit_PS_PlanningPermit,23)else '-' end) AS PlanningPermit,--规划许可	
(case when Permit_PS_SafetyConReview is not null
then CONVERT(NVARCHAR(10),Permit_PS_SafetyConReview,23)else '-' end) AS SafetyConReview,--安全条件审查	
(case when Permit_PS_SafetyDesginReview is not null
then CONVERT(NVARCHAR(10),Permit_PS_SafetyDesginReview,23)else '-' end) AS SafetyDesginReview, --安全设施设计审查
(case when Permit_PS_FFDesginReview is not null
then CONVERT(NVARCHAR(10),Permit_PS_FFDesginReview,23)else '-' end) AS FFDesginReview, --消防设计审查	
(case when Permit_PS_ConstPermit is not null
then CONVERT(NVARCHAR(10),Permit_PS_ConstPermit,23)else '-' end) AS ConstPermit, --施工许可	
(CASE WHEN ProjectControl_CC_SchStart IS NOT NULL AND ProjectControl_CM_SchStart IS NOT NULL AND ProjectControl_CC_SchStart <= ProjectControl_CM_SchStart 
	  THEN CONVERT(NVARCHAR(10),ProjectControl_CM_SchStart,23) 
	  WHEN ProjectControl_CC_SchStart IS NOT NULL AND ProjectControl_CM_SchStart IS NOT NULL AND ProjectControl_CC_SchStart >= ProjectControl_CM_SchStart 
	  THEN CONVERT(NVARCHAR(10),ProjectControl_CC_SchStart,23)
	  WHEN ProjectControl_CC_SchStart IS NOT NULL AND ProjectControl_CM_SchStart IS NULL
	  THEN CONVERT(NVARCHAR(10),ProjectControl_CC_SchStart,23)
	  WHEN ProjectControl_CC_SchStart IS NULL AND ProjectControl_CM_SchStart IS NOT NULL
	  THEN CONVERT(NVARCHAR(10),ProjectControl_CM_SchStart,23)
	  ELSE '-' END) AS CMStart,--施工开始	
(case when ProjectControl_MS_MC is not null
then CONVERT(NVARCHAR(10),ProjectControl_MS_MC,23) else '-' end)AS MC,--机械竣工	
(case when Permit_PS_SafetyFinalAcc is not null 
then CONVERT(NVARCHAR(10),Permit_PS_SafetyFinalAcc,23) else '-' end) AS SafetyFinalAcc,--安全设施竣工验收
(case when Permit_PS_FFFinalAcc is not null
then CONVERT(NVARCHAR(10),Permit_PS_FFFinalAcc,23) else '-' end) AS FFFinalAcc,--消防设施竣工验收
(case when ProjectControl_MS_MC is not null 
then CONVERT(NVARCHAR(10),DATEADD(MONTH,1,ProjectControl_MS_MC),23)else '-' end) AS Usin,--投用	
(case when Permit_PS_EnvFinalAcc is not null
then CONVERT(NVARCHAR(10),Permit_PS_EnvFinalAcc,23)else '-' end) AS EnvFinalAcc --环保设施竣工验收
FROM dbo.Editor_EProject 
where Permit_PS_EnvAssess is not null 
or Permit_PS_EnergySaving is not null
or Permit_PS_ProjectRegistr is not null
or Permit_PS_PlanningPermit is not null
or Permit_PS_SafetyConReview is not null
or Permit_PS_SafetyDesginReview is not null
or Permit_PS_FFDesginReview is not null
or Permit_PS_ConstPermit is not null
or Permit_PPA_EnvAssess is not null
or Permit_PPA_EnergySaving is not null
or Permit_PPA_ProjectRegistration is not null
or Permit_PPA_PlanningPermit is not null
or Permit_PPA_SafetyConRev is not null
or Permit_PPA_SafetyDesignRev is not null
or Permit_PPA_FFDesignReview is not null
or Permit_PA_ConstPermit is not null

UNION

SELECT 
ProjectControl_JobNo, --项目号	
ProjectControl_JobTitle, --项目名称	
ProjectControl_ProjectManager, --项目经理	
'实际' AS PType,--计划/实际	
(case when Permit_PPA_EnvAssess is not null
then CONVERT(NVARCHAR(10),Permit_PPA_EnvAssess,23) else '-' end) AS EnvAssess,--环评	
(case when Permit_PPA_EnergySaving is not null
then CONVERT(NVARCHAR(10),Permit_PPA_EnergySaving,23) else '-' end) AS EnergySaving, --节能报告
(case when Permit_PPA_ProjectRegistration is not null
then CONVERT(NVARCHAR(10),Permit_PPA_ProjectRegistration,23) else '-' end) AS ProjectRegistr, --项目备案	
(case when Permit_PPA_PlanningPermit is not null
then CONVERT(NVARCHAR(10),Permit_PPA_PlanningPermit,23) else '-' end) AS PlanningPermit,--规划许可	
(case when Permit_PPA_SafetyConRev is not null
then CONVERT(NVARCHAR(10),Permit_PPA_SafetyConRev,23) else '-' end) AS SafetyConReview,--安全条件审查
(case when Permit_PPA_SafetyDesignRev is not null 
then CONVERT(NVARCHAR(10),Permit_PPA_SafetyDesignRev,23) else '-' end) AS SafetyDesginReview, --安全设施设计审查	
(case when Permit_PPA_FFDesignReview is not null
then CONVERT(NVARCHAR(10),Permit_PPA_FFDesignReview,23) else '-' end) AS FFDesginReview, --消防设计审查	
(case when Permit_PA_ConstPermit is not null 
then CONVERT(NVARCHAR(10),Permit_PA_ConstPermit,23)else '-' end) AS ConstPermit, --施工许可	
(CASE WHEN CM_CC_RevisedStart IS NOT NULL AND CM_CM_RevisedStart IS NOT NULL AND CM_CC_RevisedStart <= CM_CM_RevisedStart 
	  THEN CONVERT(NVARCHAR(10),CM_CM_RevisedStart,23) 
	  WHEN CM_CC_RevisedStart IS NOT NULL AND CM_CM_RevisedStart IS NOT NULL AND CM_CC_RevisedStart >= CM_CM_RevisedStart 
	  THEN CONVERT(NVARCHAR(10),CM_CC_RevisedStart,23)
	  WHEN CM_CC_RevisedStart IS NOT NULL AND CM_CM_RevisedStart IS NULL
	  THEN CONVERT(NVARCHAR(10),CM_CC_RevisedStart,23)
	  WHEN CM_CC_RevisedStart IS NULL AND CM_CM_RevisedStart IS NOT NULL
	  THEN CONVERT(NVARCHAR(10),CM_CM_RevisedStart,23)
	  ELSE '-' END) AS CMStart,--施工开始	
(case when CM_MA_MC is not null then CONVERT(NVARCHAR(10),CM_MA_MC,23)else '-' end)AS MC,--机械竣工	
(case when Permit_PA_SafetyFinalACC is not null
then CONVERT(NVARCHAR(10),Permit_PA_SafetyFinalACC,23) else '-' end) AS SafetyFinalAcc,--安全设施竣工验收
(case when Permit_PA_FFFinalACC is not null
then CONVERT(NVARCHAR(10),Permit_PA_FFFinalACC,23) else '-' end) AS FFFinalAcc,--消防设施竣工验收
(case when CM_MA_MC is not  null
then CONVERT(NVARCHAR(10),DATEADD(MONTH,1,CM_MA_MC),23)else '-' end) AS Usin,--投用	
(case when Permit_PA_EnvFinalACC is not null
then CONVERT(NVARCHAR(10),Permit_PA_EnvFinalACC,23)else '-' end) AS EnvFinalAcc --环保设施竣工验收
FROM dbo.Editor_EProject
where Permit_PPA_EnvAssess is not null
or Permit_PPA_EnergySaving is not null
or Permit_PPA_ProjectRegistration is not null
or Permit_PPA_PlanningPermit is not null
or Permit_PPA_SafetyConRev is not null
or Permit_PPA_SafetyDesignRev is not null
or Permit_PPA_FFDesignReview is not null
or Permit_PA_ConstPermit is not null
or Permit_PS_EnvAssess is not null 
or Permit_PS_EnergySaving is not null
or Permit_PS_ProjectRegistr is not null
or Permit_PS_PlanningPermit is not null
or Permit_PS_SafetyConReview is not null
or Permit_PS_SafetyDesginReview is not null
or Permit_PS_FFDesginReview is not null
or Permit_PS_ConstPermit is not null
)t
order by t.ProjectControl_JobNo desc

GO
/****** Object:  View [dbo].[VIEW_Report_Overview]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO



CREATE VIEW [dbo].[VIEW_Report_Overview]
AS
/********报表:Overview **********/
SELECT a.EProjectId,
a.ProjectControl_BUCode,
a.ProjectControl_JobNo,
a.ProjectControl_JobType,	
a.ProjectControl_LeadByName,
a.ProjectControl_JobTitle,
a.ProjectControl_OrginalBudget,
a.ProjectControl_ProjectManager,
a.ProjectControl_ConstManager,
a.ProjectControl_EMManager,
STUFF((SELECT DISTINCT ','+u.UserName FROM ManHours_Plan AS p 
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = a.EProjectId 
FOR XML PATH('')),1,1,'') AS Engineer,
CONVERT(NVARCHAR(10),a.PM_MA_ProjectApproval,23) AS PM_MA_ProjectApproval,
CONVERT(NVARCHAR(10),a.ProjectControl_MS_MC,23) AS ProjectControl_MS_MC,
(CASE WHEN a.CM_CC_RevisedEnd IS NULL 
	  THEN CONVERT(NVARCHAR(10),a.CM_CM_RevisedEnd,23)
	  WHEN a.CM_CM_RevisedEnd IS NULL 
	  THEN CONVERT(NVARCHAR(10),a.CM_CC_RevisedEnd,23)
	  WHEN a.CM_CC_RevisedEnd IS NOT NULL AND a.CM_CM_RevisedEnd IS NOT NULL AND a.CM_CC_RevisedEnd >= a.CM_CM_RevisedEnd
	  THEN CONVERT(NVARCHAR(10),a.CM_CC_RevisedEnd,23)
	  WHEN a.CM_CC_RevisedEnd IS NOT NULL AND a.CM_CM_RevisedEnd IS NOT NULL AND a.CM_CC_RevisedEnd <= a.CM_CM_RevisedEnd
	  THEN CONVERT(NVARCHAR(10),a.CM_CM_RevisedEnd,23)
END) AS MCRevised,
a.PM_General_Priority,
a.PM_General_Category,
a.ProjectControl_JobStatus,


CASE WHEN ISNULL(a.PM_SC_PendingQty,0)>0 THEN 'C'
     WHEN ISNULL(a.PM_SC_PendingQty,0)=0 AND ISNULL(PM_SC_ApprovedQty,0)>0 THEN 'B'
     WHEN ISNULL(a.PM_SC_ApprovedQty,0)=0 AND ISNULL(a.PM_SC_PendingQty,0)=0 THEN 'A'
     ELSE '' END AS Scope,

(CASE WHEN (SELECT TOP 1 OrginalBudget+ ChangedBudget FROM dbo.Editor_CostReport WHERE EProjectId= a.EProjectId ORDER BY Monthly DESC)>0
THEN (CASE WHEN (SELECT TOP 1 (ActualCost+CommittedPRPO+CommittedSSRs+CostToComplete-OrginalBudget-ChangedBudget)/(OrginalBudget+ChangedBudget) FROM dbo.Editor_CostReport WHERE EProjectId=a.EProjectId ORDER BY Monthly DESC)>0.1 THEN 'C'
		   WHEN (SELECT TOP 1 (ActualCost+CommittedPRPO+CommittedSSRs+CostToComplete-OrginalBudget-ChangedBudget)/(OrginalBudget+ChangedBudget) FROM dbo.Editor_CostReport WHERE EProjectId=a.EProjectId ORDER BY Monthly DESC)>0.05 AND (SELECT TOP 1 (ActualCost+CommittedPRPO+CommittedSSRs+CostToComplete-OrginalBudget-ChangedBudget)/(OrginalBudget+ChangedBudget) FROM dbo.Editor_CostReport WHERE EProjectId=a.EProjectId ORDER BY Monthly DESC)<=0.1 THEN 'B' 
		   WHEN (SELECT TOP 1 (ActualCost+CommittedPRPO+CommittedSSRs+CostToComplete-OrginalBudget-ChangedBudget)/(OrginalBudget+ChangedBudget) FROM dbo.Editor_CostReport WHERE EProjectId=a.EProjectId ORDER BY Monthly DESC)<=0.05 THEN 'A'  ELSE '' END)
ELSE '' END) AS Cost,--Cost

CASE WHEN DATEDIFF(DAY, a.ProjectControl_CM_SchEnd,a.PM_MA_ProjectApproval)<>0
	THEN 
	CASE WHEN DATEDIFF(DAY, a.ProjectControl_CM_SchEnd,a.CM_CC_RevisedEnd)/DATEDIFF(DAY, a.PM_MA_ProjectApproval,a.ProjectControl_CM_SchEnd)>0.1 THEN 'C'
	WHEN DATEDIFF(DAY, a.ProjectControl_CM_SchEnd,a.CM_CC_RevisedEnd)/DATEDIFF(DAY, a.PM_MA_ProjectApproval,a.ProjectControl_CM_SchEnd)>0.05 AND DATEDIFF(DAY, a.ProjectControl_CM_SchEnd,a.CM_CC_RevisedEnd)/DATEDIFF(DAY, a.PM_MA_ProjectApproval,a.ProjectControl_CM_SchEnd)<=0.1 THEN 'B'
	WHEN DATEDIFF(DAY, a.ProjectControl_CM_SchEnd,a.CM_CC_RevisedEnd)/DATEDIFF(DAY, a.PM_MA_ProjectApproval,a.ProjectControl_CM_SchEnd) <= 0.05 THEN 'A'
	ELSE '-' END 
ELSE '-' END AS Schedule,

CONVERT(NVARCHAR(10),a.PM_MA_JobReveive,23) AS PM_MA_JobReveive,--Received Date

(CASE WHEN (SELECT TOP 1 ISNULL(ActualCost,0)+ISNULL(CommittedPRPO,0)+ISNULL(CommittedSSRs,0)+ISNULL(CostToComplete,0) FROM dbo.Editor_CostReport WHERE EProjectId=a.EprojectId ORDER BY Monthly DESC) IS NOT NULL
	  THEN (SELECT TOP 1 ISNULL(ActualCost,0)+ISNULL(CommittedPRPO,0)+ISNULL(CommittedSSRs,0)+ISNULL(CostToComplete,0) FROM dbo.Editor_CostReport WHERE EProjectId=a.EprojectId ORDER BY Monthly DESC)
      ELSE 0 END) AS EstimatedFinalCost,

CONVERT(NVARCHAR(10),a.CM_MA_MC,23) AS MCActual,
CONVERT(NVARCHAR(10),a.CM_Punch_CKilledDate,23) AS Punch_C_Killed,
CONVERT(NVARCHAR(10),a.CM_Date_of_Registration,23) AS Date_of_Registeration,

CONVERT(NVARCHAR(10),(SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=a.EProjectId AND [Type]='D11_MC' ORDER BY ReceiveHC DESC),23) AS MC_Signed,
CONVERT(NVARCHAR(10),(SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=a.EProjectId AND [Type]='D30_FC' ORDER BY ReceiveHC DESC),23) AS FC_Signed,
CONVERT(NVARCHAR(10),(SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=a.EProjectId AND [Type]='D12_RFSU' AND ReceiveHC IS NOT NULL ORDER BY ReceiveHC DESC),23) AS RFSU,
CONVERT(NVARCHAR(10),a.ProjectControl_BC_CloseDate,23) AS ProjectControl_BC_CloseDate, --Business Closed
CONVERT(NVARCHAR(10),(SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=a.EProjectId AND [Type]='D01_IFC' AND Disc='00_ALL'),23) AS IFC_Received,
CONVERT(NVARCHAR(10),(SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=a.EProjectId AND [Type]='D02_AS-BUILT' AND Disc='00_ALL'),23) AS As_built_Received,
CONVERT(NVARCHAR(10),(SELECT TOP 1 ReceivePDF FROM dbo.Editor_TDC WHERE EProjectId=a.EProjectId AND [Type]='D03_MD' ORDER BY ReceivePDF DESC),23) AS MD_Received,
a.ProjectControl_CostEffectvitity,
a.ProjectControl_PVIPrediction,
CONVERT(NVARCHAR(10),a.ProjectControl_PC_CancelDate,23) AS ProjectControl_PC_CancelDate,--Cancel Date
a.ProjectControl_NetworkNo,
a.PM_General_CDI,
a.ProjectControl_Account,
a.StudyWo,
a.CTEInvolved,
a.CAPEXPlanNo

FROM dbo.Editor_EProject AS a




GO
/****** Object:  View [dbo].[View_Report_Permit_PressurePipingVesse]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_Report_Permit_PressurePipingVesse]
AS
/****报表:Permit_Pressure Piping & Vesse*****/
SELECT top 100 percent NEWID() as EprojectId,t.*
from 
(SELECT ProjectControl_JobNo, --项目号	
ProjectControl_JobTitle,--项目名称	
ProjectControl_ProjectManager, --项目经理	
'计划' AS PType, --计划/实际	
(case when PM_PP_PressurePiping is not null
THEN CONVERT(NVARCHAR(10),PM_PP_PressurePiping,23)
else '-' end) AS PressurePiping,--压力管道	
(case when PM_PP_PressureVessel is not null 
then CONVERT(NVARCHAR(10),PM_PP_PressureVessel,23)
else '-' end) AS PressureVessel,--压力容器	
(CASE WHEN PM_SQIBChecked='True' THEN 'Y' ELSE 'N' END) AS SQIB,--SQIB	
(CASE WHEN Permit_PS_ArchiveAccepChecked='True' THEN 'Y' ELSE 'N' END) AS ArchiveAccep,--档案验收	
(CASE WHEN Permit_PS_3rdConstJianChecked='True' THEN 'Y' ELSE 'N' END) AS ThrdConstJian --第三方监理
FROM dbo.Editor_EProject

UNION

SELECT 
ProjectControl_JobNo, --项目号	
ProjectControl_JobTitle,--项目名称	
ProjectControl_ProjectManager, --项目经理	
'实际' AS PType, --计划/实际	
(CASE WHEN SQIB_PressurePiping is not null
THEN CONVERT(NVARCHAR(10),SQIB_PressurePiping,23)
ELSE '-' END) AS PressurePiping,--压力管道	
(CASE WHEN SQIB_PressureVessel is not null
THEN CONVERT(NVARCHAR(10),SQIB_PressureVessel,23)
else '-' end) AS PressureVessel,--压力容器	
'-' AS SQIB,--SQIB	
'-' AS ArchiveAccep,--档案验收	
'-' AS ThrdConstJian --第三方监理
FROM dbo.Editor_EProject
)t
order by t.ProjectControl_JobNo desc

GO
/****** Object:  View [dbo].[View_Report_ScheduleGanttBar]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE VIEW [dbo].[View_Report_ScheduleGanttBar]
AS
/********报表:Schedule_Gantt_Bar*********/
SELECT eproject.EProjectId,
eproject.ProjectControl_JobNo,	
eproject.ProjectControl_BUCode,	
eproject.ProjectControl_JobType,	
eproject.ProjectControl_JobTitle,	
eproject.PM_General_Priority,	
eproject.PM_General_Category,	
CASE WHEN DATEDIFF(DAY, eproject.ProjectControl_CM_SchEnd,eproject.PM_MA_ProjectApproval)<>0
	THEN 
	CASE WHEN DATEDIFF(DAY, eproject.ProjectControl_CM_SchEnd,eproject.CM_CC_RevisedEnd)/DATEDIFF(DAY, eproject.PM_MA_ProjectApproval,eproject.ProjectControl_CM_SchEnd)>0.1 THEN 'C'
	WHEN DATEDIFF(DAY, eproject.ProjectControl_CM_SchEnd,eproject.CM_CC_RevisedEnd)/DATEDIFF(DAY, eproject.PM_MA_ProjectApproval,eproject.ProjectControl_CM_SchEnd)>0.05 AND DATEDIFF(DAY, eproject.ProjectControl_CM_SchEnd,eproject.CM_CC_RevisedEnd)/DATEDIFF(DAY, eproject.PM_MA_ProjectApproval,eproject.ProjectControl_CM_SchEnd)<=0.1 THEN 'B'
	WHEN DATEDIFF(DAY, eproject.ProjectControl_CM_SchEnd,eproject.CM_CC_RevisedEnd)/DATEDIFF(DAY, eproject.PM_MA_ProjectApproval,eproject.ProjectControl_CM_SchEnd) <= 0.05 THEN 'A'
	ELSE '-' END 
ELSE '-' END AS Schedule,
eproject.PM_MA_JobReveive AS ReceiveDate,
eproject.PM_MA_ProjectApproval AS ApprovalDate,
(CASE WHEN CM_CC_RevisedStart IS NOT NULL AND CM_CM_RevisedStart IS NULL
		THEN CM_CC_RevisedStart
		WHEN CM_CC_RevisedStart IS NULL AND CM_CM_RevisedStart IS NOT NULL
		THEN CM_CM_RevisedStart
		WHEN CM_CC_RevisedStart IS NOT NULL AND CM_CM_RevisedStart IS NOT NULL AND CM_CC_RevisedStart>=CM_CM_RevisedStart 
		THEN CM_CM_RevisedStart
		WHEN CM_CC_RevisedStart IS NOT NULL AND CM_CM_RevisedStart IS NOT NULL AND CM_CC_RevisedStart<=CM_CM_RevisedStart 
		THEN CM_CC_RevisedStart
		ELSE NULL END) AS ConstMECivilStart,
(CASE WHEN CM_CC_RevisedEnd IS NOT NULL AND CM_CM_RevisedEnd IS NULL
		THEN CM_CC_RevisedEnd
		WHEN CM_CC_RevisedEnd IS NULL AND CM_CM_RevisedEnd IS NOT NULL
		THEN CM_CM_RevisedEnd
		WHEN CM_CC_RevisedEnd IS NOT NULL AND CM_CM_RevisedEnd IS NOT NULL AND CM_CC_RevisedEnd<=CM_CM_RevisedEnd
		THEN CM_CM_RevisedEnd
		WHEN CM_CC_RevisedEnd IS NOT NULL AND CM_CM_RevisedEnd IS NOT NULL AND CM_CC_RevisedEnd>=CM_CM_RevisedEnd
		THEN CM_CC_RevisedEnd
		ELSE NULL END) AS DEMECivilEnd,

(CASE WHEN Detail_Eng_Civil_ReviseEnd IS NOT NULL AND Detail_Eng_MechEI_ReviseEnd IS NULL
		THEN Detail_Eng_Civil_ReviseEnd
		WHEN Detail_Eng_Civil_ReviseEnd IS NULL AND Detail_Eng_MechEI_ReviseEnd IS NOT NULL
		THEN Detail_Eng_MechEI_ReviseEnd
		WHEN Detail_Eng_Civil_ReviseEnd IS NOT NULL AND Detail_Eng_MechEI_ReviseEnd IS NOT NULL AND Detail_Eng_Civil_ReviseEnd<=Detail_Eng_MechEI_ReviseEnd
		THEN Detail_Eng_MechEI_ReviseEnd
		WHEN Detail_Eng_Civil_ReviseEnd IS NOT NULL AND Detail_Eng_MechEI_ReviseEnd IS NOT NULL AND Detail_Eng_Civil_ReviseEnd>=Detail_Eng_MechEI_ReviseEnd
		THEN Detail_Eng_Civil_ReviseEnd
		ELSE 
		(CASE WHEN tdc.ReceiveHC IS NOT NULL THEN tdc.ReceiveHC
		WHEN pm.RevisedEnd IS NOT NULL THEN pm.RevisedEnd
		ELSE NULL END )		
		END) AS ConstMECivilEnd
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE ReceiveHC IS NOT NULL AND (Disc='60_Electrical' OR Disc='65_Telecommunication' OR Disc='70_Instrument' OR Disc='01_PID' OR Disc='01_Process' OR Disc='30_Plumbing/F.F' OR Disc='40_Mech./Equi.' OR Disc='50_Piping') ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
LEFT JOIN(SELECT TOP 1 EProjectId,RevisedEnd FROM dbo.Editor_PM WHERE RevisedEnd IS NOT NULL AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping') ORDER BY RevisedEnd DESC) AS pm ON pm.EProjectId = eproject.EProjectId



GO
/****** Object:  View [dbo].[View_Report_Rolesview]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE VIEW [dbo].[View_Report_Rolesview]
AS
/********Rolesview*******/
SELECT eproject.EProjectId,
eproject.ProjectControl_BUCode,
eproject.ProjectControl_JobNo,
eproject.ProjectControl_JobType,
eproject.ProjectControl_JobTitle,
eproject.ProjectControl_JobStatus,
eproject.PM_General_Priority,
u.UserName AS ProjectManager,
Proc_planDetail.Proc_Designer,
Proc_planDetail.Proc_Checker,
Proc_planDetail.Proc_Approvers,
ME_planDetail.ME_Designer,
ME_planDetail.ME_Checker,
ME_planDetail.ME_Approvers,
PluFF_planDetail.PluFF_Designer,
PluFF_planDetail.PluFF_Checker,
PluFF_planDetail.PluFF_Approvers,
Piping_planDetail.Piping_Designer,
Piping_planDetail.Piping_Checker,
Piping_planDetail.Piping_Approvers,
Ins_planDetail.Ins_Designer,
Ins_planDetail.Ins_Checker,
Ins_planDetail.Ins_Approvers,
Ele_planDetail.Ele_Designer,
Ele_planDetail.Ele_Checker,
Ele_planDetail.Ele_Approvers,
Civil_planDetail.Civ_Designer,
Civil_planDetail.Civ_Checker,
Civil_planDetail.Civ_Approvers,
MP_planDetail.MP_Designer,
MP_planDetail.MP_Checker,
MP_planDetail.MP_Approvers
FROM dbo.Editor_EProject AS eproject
LEFT JOIN dbo.Sys_User AS u ON u.UserId = eproject.ProjectControl_ProjectManagerId
LEFT JOIN (SELECT TOP 1 ResourcePlanDetailId,Resource_PlanDetail.EProjectId,designer.UserName AS Proc_Designer,checker.UserName AS Proc_Checker,Approvers.UserName AS Proc_Approvers FROM dbo.Resource_PlanDetail
			LEFT JOIN dbo.Sys_User AS designer ON designer.UserId = Resource_PlanDetail.DesignersId
			LEFT JOIN dbo.Sys_User AS checker ON checker.UserId = Resource_PlanDetail.CheckersId
			LEFT JOIN dbo.Sys_User AS Approvers ON Approvers.UserId = Resource_PlanDetail.ApproversId
			LEFT JOIN dbo.Resource_Plan AS pla ON pla.ResourcePlanId = Resource_PlanDetail.ResourcePlanId
			WHERE DisciplinesWBSName='Process' AND [Types]='1' AND pla.IsClose=0
			) AS Proc_planDetail ON Proc_planDetail.EProjectId = eproject.EProjectId

LEFT JOIN (SELECT TOP 1 ResourcePlanDetailId,Resource_PlanDetail.EProjectId,designer.UserName AS ME_Designer,checker.UserName AS ME_Checker,Approvers.UserName AS ME_Approvers FROM dbo.Resource_PlanDetail
			LEFT JOIN dbo.Sys_User AS designer ON designer.UserId = Resource_PlanDetail.DesignersId
			LEFT JOIN dbo.Sys_User AS checker ON checker.UserId = Resource_PlanDetail.CheckersId
			LEFT JOIN dbo.Sys_User AS Approvers ON Approvers.UserId = Resource_PlanDetail.ApproversId
			LEFT JOIN dbo.Resource_Plan AS pla ON pla.ResourcePlanId = Resource_PlanDetail.ResourcePlanId
			WHERE DisciplinesWBSName='Mech./Equi.' AND [Types]='1' AND pla.IsClose=0
			) AS ME_planDetail ON ME_planDetail.EProjectId = eproject.EProjectId

LEFT JOIN (SELECT TOP 1 ResourcePlanDetailId,Resource_PlanDetail.EProjectId,designer.UserName AS PluFF_Designer,checker.UserName AS PluFF_Checker,Approvers.UserName AS PluFF_Approvers FROM dbo.Resource_PlanDetail
			LEFT JOIN dbo.Sys_User AS designer ON designer.UserId = Resource_PlanDetail.DesignersId
			LEFT JOIN dbo.Sys_User AS checker ON checker.UserId = Resource_PlanDetail.CheckersId
			LEFT JOIN dbo.Sys_User AS Approvers ON Approvers.UserId = Resource_PlanDetail.ApproversId
			LEFT JOIN dbo.Resource_Plan AS pla ON pla.ResourcePlanId = Resource_PlanDetail.ResourcePlanId
			WHERE DisciplinesWBSName='Plumbing/F.F' AND [Types]='1' AND pla.IsClose=0
			) AS PluFF_planDetail ON PluFF_planDetail.EProjectId = eproject.EProjectId

LEFT JOIN (SELECT TOP 1 ResourcePlanDetailId,Resource_PlanDetail.EProjectId,designer.UserName AS Piping_Designer,checker.UserName AS Piping_Checker,Approvers.UserName AS Piping_Approvers FROM dbo.Resource_PlanDetail
			LEFT JOIN dbo.Sys_User AS designer ON designer.UserId = Resource_PlanDetail.DesignersId
			LEFT JOIN dbo.Sys_User AS checker ON checker.UserId = Resource_PlanDetail.CheckersId
			LEFT JOIN dbo.Sys_User AS Approvers ON Approvers.UserId = Resource_PlanDetail.ApproversId
			LEFT JOIN dbo.Resource_Plan AS pla ON pla.ResourcePlanId = Resource_PlanDetail.ResourcePlanId
			WHERE DisciplinesWBSName='Piping' AND [Types]='1' AND pla.IsClose=0
			) AS Piping_planDetail ON Piping_planDetail.EProjectId = eproject.EProjectId

LEFT JOIN (SELECT TOP 1 ResourcePlanDetailId,Resource_PlanDetail.EProjectId,designer.UserName AS Ins_Designer,checker.UserName AS Ins_Checker,Approvers.UserName AS Ins_Approvers FROM dbo.Resource_PlanDetail
			LEFT JOIN dbo.Sys_User AS designer ON designer.UserId = Resource_PlanDetail.DesignersId
			LEFT JOIN dbo.Sys_User AS checker ON checker.UserId = Resource_PlanDetail.CheckersId
			LEFT JOIN dbo.Sys_User AS Approvers ON Approvers.UserId = Resource_PlanDetail.ApproversId
			LEFT JOIN dbo.Resource_Plan AS pla ON pla.ResourcePlanId = Resource_PlanDetail.ResourcePlanId
			WHERE DisciplinesWBSName='Instrument' AND [Types]='1' AND pla.IsClose=0
			) AS Ins_planDetail ON Ins_planDetail.EProjectId = eproject.EProjectId

LEFT JOIN (SELECT TOP 1 ResourcePlanDetailId,Resource_PlanDetail.EProjectId,designer.UserName AS Ele_Designer,checker.UserName AS Ele_Checker,Approvers.UserName AS Ele_Approvers FROM dbo.Resource_PlanDetail
			LEFT JOIN dbo.Sys_User AS designer ON designer.UserId = Resource_PlanDetail.DesignersId
			LEFT JOIN dbo.Sys_User AS checker ON checker.UserId = Resource_PlanDetail.CheckersId
			LEFT JOIN dbo.Sys_User AS Approvers ON Approvers.UserId = Resource_PlanDetail.ApproversId
			LEFT JOIN dbo.Resource_Plan AS pla ON pla.ResourcePlanId = Resource_PlanDetail.ResourcePlanId
			WHERE DisciplinesWBSName='Electrical' AND [Types]='1' AND pla.IsClose=0
			) AS Ele_planDetail ON Ele_planDetail.EProjectId = eproject.EProjectId

LEFT JOIN (SELECT TOP 1 ResourcePlanDetailId,Resource_PlanDetail.EProjectId,designer.UserName AS Civ_Designer,checker.UserName AS Civ_Checker,Approvers.UserName AS Civ_Approvers FROM dbo.Resource_PlanDetail
			LEFT JOIN dbo.Sys_User AS designer ON designer.UserId = Resource_PlanDetail.DesignersId
			LEFT JOIN dbo.Sys_User AS checker ON checker.UserId = Resource_PlanDetail.CheckersId
			LEFT JOIN dbo.Sys_User AS Approvers ON Approvers.UserId = Resource_PlanDetail.ApproversId
			LEFT JOIN dbo.Resource_Plan AS pla ON pla.ResourcePlanId = Resource_PlanDetail.ResourcePlanId
			WHERE DisciplinesWBSName='Civil' AND [Types]='1' AND pla.IsClose=0
			) AS Civil_planDetail ON Civil_planDetail.EProjectId = eproject.EProjectId

LEFT JOIN (SELECT TOP 1 ResourcePlanDetailId,Resource_PlanDetail.EProjectId,designer.UserName AS MP_Designer,checker.UserName AS MP_Checker,Approvers.UserName AS MP_Approvers FROM dbo.Resource_PlanDetail
			LEFT JOIN dbo.Sys_User AS designer ON designer.UserId = Resource_PlanDetail.DesignersId
			LEFT JOIN dbo.Sys_User AS checker ON checker.UserId = Resource_PlanDetail.CheckersId
			LEFT JOIN dbo.Sys_User AS Approvers ON Approvers.UserId = Resource_PlanDetail.ApproversId
			LEFT JOIN dbo.Resource_Plan AS pla ON pla.ResourcePlanId = Resource_PlanDetail.ResourcePlanId
			WHERE DisciplinesWBSName='MasterpLanning' AND [Types]='1' AND pla.IsClose=0
			) AS MP_planDetail ON MP_planDetail.EProjectId = eproject.EProjectId




GO
/****** Object:  View [dbo].[View_NewManHours_Plan]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

--2021.05.28
CREATE VIEW [dbo].[View_NewManHours_Plan]
AS
SELECT  p.ManHoursPlanId, 
p.ResourcePlanId, 
p.EProjectId, 
p.EngineerId, 
p.Account, 
p.DisciplineId,
(CASE WHEN p.Discipline='M00' THEN 'Project Management' ELSE p.Discipline END) AS Discipline, 
(CASE WHEN p.Roles='M00' THEN 'M00_Project Management' 
		     WHEN CHARINDEX('_',p.Roles)=0 THEN p.Roles+'_'+p.Discipline
			 WHEN CHARINDEX('_',p.Roles)>0 THEN LEFT(p.Roles,(CHARINDEX('_',p.Roles)))+p.Discipline + 
			                 SUBSTRING(p.Roles,CHARINDEX('_',p.Roles),LEN(p.Roles)) END) AS Roles,
p.ManHours, 
p.AccountDisabled, 
e.ProjectControl_JobNo,  
e.ProjectControl_JobType,
e.PM_MA_JobReveive,
e.ProjectControl_JobStatus, 
e.ProjectControl_JobTitle, 
e.ProjectControl_BUCode, 
e.ProjectControl_PC_CancelDate,
e.CM_MA_MC, 
u.UserName AS EngineerName, 
u.DepartId, 
u.DepartName, 
e.ProjectControl_MS_ResourcePlanReceived,
e.ProjectControl_NetworkDate,
u.IsCalculated,
(SELECT ISNULL(SUM(ISNULL(act.Hours,0)),0) FROM dbo.ManHours_Actual act WHERE act.ManHoursPlanId=p.ManHoursPlanId) AS ActHours
FROM dbo.ManHours_Plan AS p 
LEFT JOIN dbo.Editor_EProject AS e ON p.EProjectId = e.EProjectId
LEFT JOIN dbo.View_Sys_Users AS u ON p.EngineerId = u.UserId
WHERE (p.EProjectId IS NOT NULL)



GO
/****** Object:  Table [dbo].[Base_Const]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Base_Const](
	[ConstId] [nvarchar](50) NOT NULL,
	[ConstValue] [nvarchar](50) NULL,
	[ConstText] [nvarchar](50) NULL,
	[GroupId] [nvarchar](50) NULL,
 CONSTRAINT [PK_Base_Const] PRIMARY KEY CLUSTERED 
(
	[ConstId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_TDCDiscValue]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_TDCDiscValue]
AS
/*********TDC Disc下拉项*********/
SELECT NEWID() AS ID,'' AS EProjectId, ConstValue,ConstText FROM dbo.Base_Const WHERE GroupId='TDC-Disc'
UNION
SELECT NEWID() AS ID,'' AS EProjectId,
       wbs.DisciplinesWBSCode + '_' + wbs.DisciplinesWBSName AS ConstValue,
       wbs.DisciplinesWBSCode + '_' + wbs.DisciplinesWBSName AS ConstText 
 FROM dbo.Base_DisciplinesWBS wbs
 WHERE wbs.[Type]=1 AND wbs.DisciplinesWBSCode NOT IN ('91','92')

--(SELECT EProjectId,DisciplineId FROM dbo.ManHours_Plan
-- GROUP BY EProjectId, DisciplineId) t
--LEFT JOIN dbo.Base_DisciplinesWBS wbs ON t.DisciplineId=wbs.DisciplinesWBSId
--WHERE wbs.[Type]=1 AND wbs.DisciplinesWBSCode NOT IN ('91','92')

--暂不用(等处理完老数据再用)
--SELECT NEWID() AS ID,Resource_Plan.EProjectId, DisciplinesWBSCode + '_' + DisciplinesWBSName AS ConstValue, 
--DisciplinesWBSCode + '_' + DisciplinesWBSName AS ConstText 
--FROM Resource_PlanDetail
--LEFT JOIN dbo.Resource_Plan ON Resource_Plan.ResourcePlanId = Resource_PlanDetail.ResourcePlanId
--WHERE Types = '1'AND IsClose=0 AND ((DesignersId IS NOT NULL AND DesignersId!='') 
--      OR (CheckersId IS NOT NULL AND CheckersId!='') OR (ApproversId IS NOT NULL AND ApproversId!='') OR (LeadersId IS NOT NULL AND LeadersId !=''))



GO
/****** Object:  View [dbo].[View_Report_DocumentationTakeoverReport]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE VIEW [dbo].[View_Report_DocumentationTakeoverReport]
AS
/*************报表:Documentation Takeover Report***********/
SELECT eproject.EProjectId,eproject.ProjectControl_JobNo,eproject.ProjectControl_BUCode,eproject.ProjectControl_JobStatus,
       (CASE WHEN t1.IFC_HC_A1_Pages<>0 THEN t1.IFC_HC_A1_Pages ELSE NULL END ) AS IFC_HC_A1_Pages,
	   t1.IFC_Hard_Copy,t1.IFC_PDF_in_X_Drive,t1.IFC_Native_in_X_Drive,t1.IFC_PDF_in_DCTM,
	   (CASE WHEN t2.BUILT_HC_A1_Pages<>0 THEN t2.BUILT_HC_A1_Pages ELSE NULL END ) AS BUILT_HC_A1_Pages,
	   t2.BUILT_Hard_Copy,t2.BUILT_PDF_in_X_Drive,t2.BUILT_Native_in_X_Drive,t2.BUILT_PDF_in_DCTM,t2.BUILT_Native_in_DCTM,
	   t3.Vendor_Hard_Copy,t3.Vendor_PDF_in_X_Drive,t3.Vendor_Native_in_X_Drive,t3.Vendor_PDF_in_DCTM,t3.Vendor_Native_in_DCTM,
	   t4.Construction_Hard_Copy,t4.Construction_PDF_in_X_Drive

FROM dbo.Editor_EProject eproject
LEFT JOIN
(SELECT EProjectId,SUM((CASE WHEN (A1Pages!='' and A1Pages IS NOT null) THEN CAST(A1Pages AS DECIMAL(9,3)) ELSE 0 END)) AS IFC_HC_A1_Pages,
CONVERT(NVARCHAR(10),MAX(ReceiveHC),23) AS IFC_Hard_Copy,
CONVERT(NVARCHAR(10),MAX(ReceivePDF),23) AS IFC_PDF_in_X_Drive,
CONVERT(NVARCHAR(10),MAX(ReceiveNative),23) AS IFC_Native_in_X_Drive,
CONVERT(NVARCHAR(10),MAX(PublishPDF),23) AS IFC_PDF_in_DCTM 
FROM dbo.Editor_TDC 
WHERE  Type='D01_IFC' AND (ISNUMERIC(A1Pages) = 1 OR A1Pages='' or A1Pages IS null)
GROUP BY EProjectId, Type
) t1 ON t1.EProjectId = eproject.EProjectId

LEFT JOIN
(SELECT EProjectId,SUM((CASE WHEN (A1Pages!='' and A1Pages IS NOT null) THEN CAST(A1Pages AS DECIMAL(9,3)) ELSE 0 END)) AS BUILT_HC_A1_Pages,
CONVERT(NVARCHAR(10),MAX(ReceiveHC),23) AS BUILT_Hard_Copy,
CONVERT(NVARCHAR(10),MAX(ReceivePDF),23) AS BUILT_PDF_in_X_Drive,
CONVERT(NVARCHAR(10),MAX(ReceiveNative),23) AS BUILT_Native_in_X_Drive,
CONVERT(NVARCHAR(10),MAX(PublishPDF),23) AS BUILT_PDF_in_DCTM,
CONVERT(NVARCHAR(10),MAX(PublishNative),23) AS BUILT_Native_in_DCTM
FROM dbo.Editor_TDC 
WHERE  Type='D02_AS-BUILT' AND (ISNUMERIC(A1Pages) = 1 OR A1Pages='' or A1Pages IS null)
GROUP BY EProjectId, Type
) t2 ON t2.EProjectId = eproject.EProjectId

LEFT JOIN
(SELECT EProjectId,
CONVERT(NVARCHAR(10),MAX(ReceiveHC),23) AS Vendor_Hard_Copy,
CONVERT(NVARCHAR(10),MAX(ReceivePDF),23) AS Vendor_PDF_in_X_Drive,
CONVERT(NVARCHAR(10),MAX(ReceiveNative),23) AS Vendor_Native_in_X_Drive,
CONVERT(NVARCHAR(10),MAX(PublishPDF),23) AS Vendor_PDF_in_DCTM,
CONVERT(NVARCHAR(10),MAX(PublishNative),23) AS Vendor_Native_in_DCTM
FROM dbo.Editor_TDC 
WHERE  Type='D10_Vendor' AND (ISNUMERIC(A1Pages) = 1 OR A1Pages='' or A1Pages IS null)
GROUP BY EProjectId, Type
) t3 ON t3.EProjectId = eproject.EProjectId

LEFT JOIN
(SELECT EProjectId,
CONVERT(NVARCHAR(10),MAX(ReceiveHC),23) AS Construction_Hard_Copy,
CONVERT(NVARCHAR(10),MAX(ReceivePDF),23) AS Construction_PDF_in_X_Drive
FROM dbo.Editor_TDC 
WHERE  Type='D21_Construction' AND (ISNUMERIC(A1Pages) = 1 OR A1Pages='' or A1Pages IS null)
GROUP BY EProjectId, Type
) t4 ON t4.EProjectId = eproject.EProjectId



GO
/****** Object:  View [dbo].[View_UserDepartDropDownList]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo].[View_UserDepartDropDownList]
AS
SELECT TOP 100 PERCENT DepartId AS ID,
DepartName AS Name,
'1' AS GroupId
FROM dbo.Base_Depart

UNION ALL

SELECT TOP 100 PERCENT UserId AS ID,
UserName AS NAME,
'2' AS GroupID
FROM dbo.Sys_User
ORDER BY GroupId,NAME

GO
/****** Object:  Table [dbo].[Sys_Const]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_Const](
	[ID] [nvarchar](50) NOT NULL,
	[ConstValue] [nvarchar](50) NULL,
	[ConstText] [nvarchar](100) NULL,
	[SortIndex] [int] NULL,
	[GroupId] [nvarchar](50) NULL,
 CONSTRAINT [PK_Sys_Const] PRIMARY KEY CLUSTERED 
(
	[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  View [dbo].[View_ProjectListReport]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE VIEW [dbo].[View_ProjectListReport]
AS
/*********报表:项目列表*********/
SELECT eproject.EProjectId,
eproject.ProjectControl_BUCode,--BU. 	
eproject.ProjectControl_JobNo,--Job No	
eproject.ProjectControl_JobType,--Job Type	
eproject.ProjectControl_LeadByName,--Lead By	
eproject.ProjectControl_JobTitle,--Job Title	
ISNULL(eproject.ProjectControl_OrginalBudget,0) AS OrginalBudget,--Org. Budget

eproject.ProjectControl_ChangedBudget AS ChangedBudget,
eproject.PM_General_CostToComplete AS CostToComplete,
(ISNULL(eproject.ProjectControl_Actual,0)+ISNULL(eproject.ProjectControl_CommittedPRPO,0)+
ISNULL(eproject.ProjectControl_CommittedSSRs,0)+ISNULL(eproject.PM_General_CostToComplete,0)) AS FinalCost,
--(CASE WHEN (SELECT TOP 1 ISNULL(cost.ChangedBudget,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC) IS NOT NULL
--THEN (SELECT TOP 1 ISNULL(cost.ChangedBudget,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC) 
--ELSE 0 END) AS ChangedBudget,--Chd. Budget	

--(CASE WHEN (SELECT TOP 1 ISNULL(cost.CostToComplete,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC) IS NOT NULL
--THEN (SELECT TOP 1 ISNULL(cost.CostToComplete,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC)
--ELSE 0 END) AS CostToComplete,--Cost.Comp	

--((CASE WHEN (SELECT TOP 1 ISNULL(cost.ActualCost,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC) IS NOT NULL
--THEN (SELECT TOP 1 ISNULL(cost.ActualCost,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC)
--ELSE 0 END)+
--(CASE WHEN (SELECT TOP 1 ISNULL(cost.CommittedPRPO,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC) IS NOT NULL
--THEN (SELECT TOP 1 ISNULL(cost.CommittedPRPO,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC)
--ELSE 0 END)+
--(CASE WHEN (SELECT TOP 1 ISNULL(cost.CommittedSSRs,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC) IS NOT NULL
--THEN (SELECT TOP 1 ISNULL(cost.CommittedSSRs,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC)
--ELSE 0 END)+
--(CASE WHEN (SELECT TOP 1 ISNULL(cost.CostToComplete,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC) IS NOT NULL
--THEN (SELECT TOP 1 ISNULL(cost.CostToComplete,0) FROM dbo.Editor_CostReport AS cost WHERE cost.EProjectId=eproject.EProjectId ORDER BY cost.Monthly DESC)
--ELSE 0 END)) AS FinalCost,--Final Cost	

eproject.ProjectControl_ProjectManager,--Proj. Manager	
eproject.ProjectControl_ConstManager,--Const. Manager	
CONVERT(NVARCHAR(10),eproject.PM_MA_JobReveive,23) AS RECEIVES,--RECEIVE	
CONVERT(NVARCHAR(10),eproject.ProjectControl_MS_Approval,23) AS ProjectControl_MS_Approval,--Appr Date(Sch)	
CONVERT(NVARCHAR(10),eproject.PM_MA_ProjectApproval,23) AS PM_MA_ProjectApproval,--Appr Date(Act)	
CONVERT(NVARCHAR(10),eproject.ProjectControl_MS_MC,23) AS ProjectControl_MS_MC,--MC (Plan)	
CONVERT(NVARCHAR(10),eproject.CM_MA_MC,23) AS CM_MA_MC,--MC (Act)	
CONVERT(NVARCHAR(10),eproject.ProjectControl_MS_Close,23) AS ProjectControl_MS_Close,--CLOSE(Sch)	
CONVERT(NVARCHAR(10),eproject.ProjectControl_ClosedDate,23)  AS CloseAct,--CLOSE(Act) 代码中处理
CONVERT(NVARCHAR(10),eproject.ProjectControl_PC_CancelDate,23) AS ProjectControl_PC_CancelDate,--Cancel Date	
CONVERT(NVARCHAR(10),eproject.ProjectControl_BC_CloseDate,23) AS ProjectControl_BC_CloseDate,--B. Close	
eproject.PM_General_Priority,--Priority	
eproject.ProjectControl_JobStatus,--Job Status	
eproject.PM_Critical,
(SELECT TOP 1 ConstText FROM dbo.Sys_Const WHERE ConstValue=eproject.PM_ReasonForCritical AND GroupId='ReasonForCritical') AS PM_ReasonForCritical,
(CASE WHEN DATEDIFF(DAY,PM_MA_ProjectApproval,ProjectControl_CM_SchEnd)>0
			THEN (CASE WHEN (DATEDIFF(DAY,ProjectControl_CM_SchEnd,CM_CM_RevisedEnd)/DATEDIFF(DAY,PM_MA_ProjectApproval,ProjectControl_CM_SchEnd))>0.1 THEN 'C'
					   WHEN (DATEDIFF(DAY,ProjectControl_CM_SchEnd,CM_CM_RevisedEnd)/DATEDIFF(DAY,PM_MA_ProjectApproval,ProjectControl_CM_SchEnd))<=0.1 AND (DATEDIFF(DAY,ProjectControl_CM_SchEnd,CM_CM_RevisedEnd)/DATEDIFF(DAY,PM_MA_ProjectApproval,ProjectControl_CM_SchEnd))>0.05 THEN 'B'
					   WHEN (DATEDIFF(DAY,ProjectControl_CM_SchEnd,CM_CM_RevisedEnd)/DATEDIFF(DAY,PM_MA_ProjectApproval,ProjectControl_CM_SchEnd))<=0.05 THEN 'A'
			ELSE '' END)
		ELSE ''END) AS Schedule,--Sche.	

(CASE WHEN (SELECT TOP 1 OrginalBudget+ ChangedBudget FROM dbo.Editor_CostReport WHERE EProjectId= eproject.EProjectId ORDER BY Monthly DESC)>0
THEN (CASE WHEN (SELECT TOP 1 (ActualCost+CommittedPRPO+CommittedSSRs+CostToComplete-OrginalBudget-ChangedBudget)/(OrginalBudget+ChangedBudget) FROM dbo.Editor_CostReport WHERE EProjectId=eproject.EProjectId ORDER BY Monthly DESC)>0.1 THEN 'C'
		   WHEN (SELECT TOP 1 (ActualCost+CommittedPRPO+CommittedSSRs+CostToComplete-OrginalBudget-ChangedBudget)/(OrginalBudget+ChangedBudget) FROM dbo.Editor_CostReport WHERE EProjectId=eproject.EProjectId ORDER BY Monthly DESC)>0.05 AND (SELECT TOP 1 (ActualCost+CommittedPRPO+CommittedSSRs+CostToComplete-OrginalBudget-ChangedBudget)/(OrginalBudget+ChangedBudget) FROM dbo.Editor_CostReport WHERE EProjectId=eproject.EProjectId ORDER BY Monthly DESC)<=0.1 THEN 'B' 
		   WHEN (SELECT TOP 1 (ActualCost+CommittedPRPO+CommittedSSRs+CostToComplete-OrginalBudget-ChangedBudget)/(OrginalBudget+ChangedBudget) FROM dbo.Editor_CostReport WHERE EProjectId=eproject.EProjectId ORDER BY Monthly DESC)<=0.05 THEN 'A'  ELSE '' END)
ELSE '' END) AS Cost,--Cost

(CASE WHEN eproject.PM_SC_PendingQty>0 THEN 'C'
     WHEN eproject.PM_SC_PendingQty=0 AND PM_SC_ApprovedQty>0 THEN 'B'
     WHEN eproject.PM_SC_ApprovedQty=0 AND eproject.PM_SC_PendingQty=0 THEN 'A'
     ELSE '' END) AS Scope,--Scope	
eproject.ProjectControl_MOCFormNo,--MOC No.	
eproject.ProjectControl_Account,--Account	
ISNULL(eproject.ProjectControl_PVIPrediction,0) AS ProjectControl_PVIPrediction,--PVI Pre.	
eproject.ProjectControl_CostEffectvitity,--Cost Eff.	
eproject.ProjectControl_OperationRep,--Oper. Rep.
eproject.ProjectControl_CI_ProcessName,--Process Eng.	
eproject.ProjectControl_CI_EquipmentName,--Equip. Eng.	
eproject.ProjectControl_CI_InstrumentName,--Instr. Eng.	
eproject.ProjectControl_CI_ElectricalName,--Elec. Eng.	
eproject.ProjectControl_CI_CivilName,--Civil Eng.	
eproject.PM_General_Category,--CATEGORY	
eproject.PM_General_CDI,--PROJECT_CDI	

CONVERT(NVARCHAR(10),(SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE [Type]='D01_IFC' AND Disc='00_ALL' AND EProjectId = eproject.EProjectId),23) AS IFC_Received,--IFC Received
CONVERT(NVARCHAR(10),(SELECT TOP 1 InputDate FROM dbo.Editor_TDC WHERE [Type]='D11_MC' AND Disc='00_ALL' AND EProjectId = eproject.EProjectId),23) AS MC_ReceivedDate,--MC Received Date

(CASE WHEN eproject.Detail_Eng_Civil_SchStart IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_SchStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Civil_Sch_Start FROM dbo.Resource_Plan WHERE EProjectId = eproject.EProjectId),23) 
	END)AS Detail_Eng_Civil_Sch_Start,--PROJ_DE_CIVIL_SCH_START_DATE	

 (CASE WHEN (SELECT TOP 1 SchEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND SchEnd IS NOT NULL AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') ORDER BY SchEnd DESC) IS NOT NULL
     THEN CONVERT(VARCHAR(10),(SELECT TOP 1 SchEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND SchEnd IS NOT NULL AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') ORDER BY SchEnd DESC),23)
	 ELSE (CASE WHEN eproject.Detail_Eng_Civil_SchEnd IS NOT NULL
	       THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_SchEnd,23)
	 ELSE (CASE WHEN (SELECT TOP 1 Detail_Eng_Civil_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId) IS NOT NULL 
			THEN CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Civil_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23)
	END) END) END)  AS Detail_Eng_Civil_Sch_End,--PROJ_DE_CIVIL_SCH_END_DATE	**

(CASE WHEN eproject.Detail_Eng_Civil_ReviseStart IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_ReviseStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedStart FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedStart IS NOT NULL 
					AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') 
					ORDER BY RevisedStart),23)
	END) AS PROJ_DE_CIVIL_ACU_START_DATE,--PROJ_DE_CIVIL_ACU_START_DATE	

 (CASE WHEN (SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL 
					AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') 
					ORDER BY RevisedEnd DESC) IS NOT NULL
           THEN CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL 
					AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') 
					ORDER BY RevisedEnd DESC),23)
	 ELSE (CASE WHEN (SELECT TOP 1 Detail_Eng_Civil_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId) IS NOT NULL 
	      THEN  CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Civil_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23)
	 ELSE (CASE WHEN eproject.Detail_Eng_Civil_ReviseEnd IS NOT NULL 
	        THEN CONVERT(NVARCHAR(10),eproject.Detail_Eng_Civil_ReviseEnd,23)
	END) END) END) AS PROJ_DE_CIVIL_ACU_END_DATE,--PROJ_DE_CIVIL_ACU_END_DATE	**

(CASE WHEN eproject.Detail_Eng_MechEI_SchStart IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_SchStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Mech_EI_Sch_Start FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23) 
	END)AS Detail_Eng_Mech_EI_Sch_Start,--PROJ_DE_ME_SCH_START_DATE

(CASE WHEN (SELECT TOP 1 SchEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND SchEnd IS NOT NULL AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping') ORDER BY SchEnd DESC) IS NOT NULL
     THEN CONVERT(VARCHAR(10),(SELECT TOP 1 SchEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND SchEnd IS NOT NULL AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping') ORDER BY SchEnd DESC),23)
	 ELSE (CASE WHEN eproject.Detail_Eng_MechEI_SchEnd IS NOT NULL
	       THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_SchEnd,23)
	 ELSE (CASE WHEN (SELECT TOP 1 Detail_Eng_Mech_EI_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId) IS NOT NULL 
			THEN CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Mech_EI_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23)
	END) END) END) AS PROJ_DE_ME_SCH_END_DATE,--PROJ_DE_ME_SCH_END_DATE	**

(CASE WHEN eproject.Detail_Eng_MechEI_ReviseStart IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_ReviseStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedStart FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedStart IS NOT NULL
					AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
					ORDER BY RevisedStart),23)
	END) AS Detail_Eng_Mech_EI_Sch_End,--PROJ_DE_ME_ACU_START_DATE	

	(CASE WHEN (SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND ReceiveHC IS NOT NULL AND [Type]='D01_IFC'  AND Disc='00_ALL' ORDER BY ReceiveHC DESC) IS NOT NULL
      THEN CONVERT(VARCHAR(10), (SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND ReceiveHC IS NOT NULL AND [Type]='D01_IFC'  AND Disc='00_ALL' ORDER BY ReceiveHC DESC),23)
      ELSE (CASE WHEN (SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL 
					AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
					ORDER BY RevisedEnd DESC) IS NOT NULL
           THEN CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL 
					AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
					ORDER BY RevisedEnd DESC),23)
	 ELSE (CASE WHEN (SELECT TOP 1 Detail_Eng_Mech_EI_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId) IS NOT NULL 
	      THEN  CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Mech_EI_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23)
	 ELSE (CASE WHEN eproject.Detail_Eng_MechEI_ReviseEnd IS NOT NULL 
	        THEN CONVERT(NVARCHAR(10),eproject.Detail_Eng_MechEI_ReviseEnd,23)
	END) END) END) END) AS PROJ_DE_ME_ACU_END_DATE,--PROJ_DE_ME_ACU_END_DATE	**

CONVERT(VARCHAR(10),eproject.ProjectControl_LP_SchStart,23) AS ProjectControl_LP_SchStart,--PROJ_DE_LLI_SCH_START_DATE	
CONVERT(VARCHAR(10),eproject.ProjectControl_LP_SchEnd,23) AS ProjectControl_LP_SchEnd,--PROJ_DE_LLI_SCH_END_DATE	
CONVERT(VARCHAR(10),eproject.PM_LLEP_RevisedStart,23) AS PM_LLEP_RevisedStart,--PROJ_DE_LLI_ACU_START_DATE	
CONVERT(VARCHAR(10),eproject.PM_LLEP_RevisedEnd,23) AS PM_LLEP_RevisedEnd,--PROJ_DE_LLI_ACU_END_DATE	
CONVERT(VARCHAR(10),eproject.ProjectControl_CC_SchStart,23) AS ProjectControl_CC_SchStart,--PROJ_CN_CIVIL_SCH_START_DATE	
CONVERT(VARCHAR(10),eproject.ProjectControl_CC_SchEnd,23) AS ProjectControl_CC_SchEnd,--PROJ_CN_CIVIL_SCH_END_DATE	
CONVERT(VARCHAR(10),eproject.CM_CC_RevisedStart,23) AS CM_CC_RevisedStart,--PROJ_CN_CIVIL_ACU_START_DATE	
CONVERT(VARCHAR(10),eproject.CM_CC_RevisedEnd,23) AS CM_CC_RevisedEnd,--PROJ_CN_CIVIL_ACU_END_DATE	
CONVERT(VARCHAR(10),eproject.ProjectControl_CM_SchStart,23) AS ProjectControl_CM_SchStart,--PROJ_CN_ME_SCH_START_DATE	
CONVERT(VARCHAR(10),eproject.ProjectControl_CM_SchEnd,23) AS ProjectControl_CM_SchEnd,--PROJ_CN_ME_SCH_END_DATE	
CONVERT(VARCHAR(10),eproject.CM_CM_RevisedStart,23) AS CM_CM_RevisedStart,--PROJ_CN_ME_ACU_START_DATE	
CONVERT(VARCHAR(10),eproject.CM_CM_RevisedEnd,23) AS CM_CM_RevisedEnd,--PROJ_CN_ME_ACU_END_DATE	
eproject.ProjectControl_Revised_MC_Date,--Revised MC Date	
eproject.ProjectControl_Remarks, --Remarks
eproject.OutSourceType,
eproject.CM_Date_of_Registration,
eproject.CM_Punch_CKilledDate,
eproject.StudyWo,
eproject.CTEInvolved,
eproject.CAPEXPlanNo
FROM dbo.Editor_EProject AS eproject



GO
/****** Object:  View [dbo].[View_Report_DocumentationStatusIFC]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE VIEW [dbo].[View_Report_DocumentationStatusIFC]
AS
/*********DocumentationStatusIFC报告*************/
SELECT eproject.EProjectId,eproject.ProjectControl_JobNo,
       eproject.ProjectControl_ProjectManager,eproject.ProjectControl_LeadByName,
       eproject.ProjectControl_BUCode,CONVERT(NVARCHAR(10),eproject.CM_MA_MC,23) AS MC,
       eproject.ProjectControl_JobStatus,eproject.ProjectControl_JobType,
	   eproject.PM_MA_JobReveive,
(SELECT TOP 1 EngineerName FROM dbo.ManHours_Plan WHERE EProjectId=eproject.EProjectId AND Roles='D10') AS ProjectControl_TDCManager,
 'D01_IFC' AS Phase,
(SELECT TOP 1 CONVERT(NVARCHAR(10),SchEnd,23) FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND DisciplinesWBSName ='Process') AS PlanProcess,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='01_Process') AS Process,

(SELECT TOP 1 CONVERT(NVARCHAR(10),SchEnd,23) FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND DisciplinesWBSName ='Plumbing/F.F') AS PlanPlumbing,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='30_Plumbing/F.F') AS Plumbling,

(SELECT TOP 1 CONVERT(NVARCHAR(10),SchEnd,23) FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND DisciplinesWBSName ='Mech./Equi.') AS PlanEquipment,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='40_Mech./Equi.') AS Equipment,

(SELECT TOP 1 CONVERT(NVARCHAR(10),SchEnd,23) FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND DisciplinesWBSName ='Piping') AS PlanPiping,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='50_Piping') AS Piping,

(SELECT TOP 1 CONVERT(NVARCHAR(10),SchEnd,23) FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND DisciplinesWBSName ='Electrical') AS PlanElectrical,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='60_Electrical') AS Electrical,

(SELECT TOP 1 CONVERT(NVARCHAR(10),SchEnd,23) FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND DisciplinesWBSName ='Telecommunication') AS PlanTelecommunication,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='65_Telecommunication') AS Communication,

(SELECT TOP 1 CONVERT(NVARCHAR(10),SchEnd,23) FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND DisciplinesWBSName ='Instrument') AS PlanInstrument,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='70_Instrument') AS Instrument,

(SELECT TOP 1 CONVERT(NVARCHAR(10),SchEnd,23) FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND DisciplinesWBSName ='Civil') AS PlanCivil,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='10_Civil') AS CivilStruc,

(SELECT TOP 1 CONVERT(NVARCHAR(10),SchEnd,23) FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND DisciplinesWBSName ='Architectral') AS PlanHVAC,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='20_Architectral') AS ArchHVAC,

(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='02_HSE') AS HSE,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='00_ALL') AS ALLS

FROM dbo.Editor_EProject eproject

GO
/****** Object:  View [dbo].[View_InDetailedDesign_GetCivil]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo].[View_InDetailedDesign_GetCivil]
AS
/*******获取专业为土建并RevisedEnd大于当前日期的PM明细表信息*******/
SELECT * FROM dbo.Editor_PM 
WHERE (DisciplinesWBSName = 'Civil' OR DisciplinesWBSName = 'Masterplanning' OR DisciplinesWBSName = 'Architectral' OR DisciplinesWBSName = 'HVAC')
AND RevisedEnd > GETDATE()


GO
/****** Object:  Table [dbo].[AttachFile]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[AttachFile](
	[AttachFileId] [nvarchar](50) NOT NULL,
	[ToKeyId] [nvarchar](50) NULL,
	[AttachSource] [nvarchar](max) NULL,
	[AttachUrl] [nvarchar](1000) NULL,
	[MenuId] [nvarchar](50) NULL,
 CONSTRAINT [PK_AttachFile] PRIMARY KEY CLUSTERED 
(
	[AttachFileId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO
/****** Object:  Table [dbo].[AudiFlow]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[AudiFlow](
	[AudiFlowId] [nvarchar](50) NOT NULL,
	[AudiFlowStep] [int] NOT NULL,
	[FlowModule] [nvarchar](50) NOT NULL,
	[AuditFlowName] [nvarchar](20) NULL,
	[NextAuditFlow] [nvarchar](30) NULL,
	[RoleId] [nvarchar](500) NULL,
	[IsFlowEnd] [bit] NULL,
 CONSTRAINT [PK_AudiFlow_1] PRIMARY KEY CLUSTERED 
(
	[AudiFlowId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Base_ActType]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Base_ActType](
	[ActTypeId] [nvarchar](50) NOT NULL,
	[ActType] [nvarchar](50) NULL,
	[Remark] [nvarchar](500) NULL,
 CONSTRAINT [PK_Base_ActType] PRIMARY KEY CLUSTERED 
(
	[ActTypeId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Base_Contractor]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Base_Contractor](
	[ContractorId] [nvarchar](50) NOT NULL,
	[ContractorName] [nvarchar](150) NULL,
	[ContractorShortName] [nvarchar](50) NULL,
	[Remark] [nvarchar](150) NULL,
 CONSTRAINT [PK_Base_Contractor] PRIMARY KEY CLUSTERED 
(
	[ContractorId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Design_Input]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Design_Input](
	[DesignInputId] [nvarchar](50) NOT NULL,
	[DesignRectId] [int] NOT NULL,
	[EProjectId] [nvarchar](50) NULL,
	[DesignInputChName] [nvarchar](100) NULL,
	[DesignInputEnName] [nvarchar](100) NULL,
	[DesignInputNo] [nvarchar](100) NULL,
	[IssuedDiscipline] [nvarchar](50) NULL,
	[IssuedDisciplineCode] [nvarchar](50) NULL,
	[ReceivedDiscipline] [nvarchar](50) NULL,
	[IssuedMan] [nvarchar](50) NULL,
	[ReceivedMan] [nvarchar](50) NULL,
	[PlanStartDate] [datetime] NULL,
	[PlanEndDate] [datetime] NULL,
	[ActStartDate] [datetime] NULL,
	[ActEndDate] [datetime] NULL,
	[IsComplete] [bit] NULL,
	[ReceivedDisciplineCode] [nvarchar](50) NULL,
 CONSTRAINT [PK_Design_Input] PRIMARY KEY CLUSTERED 
(
	[DesignInputId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Design_Notice]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Design_Notice](
	[DesignNoticeId] [nvarchar](50) NOT NULL,
	[DesignInputId] [nvarchar](50) NULL,
	[DesignStage] [nvarchar](50) NULL,
	[MutualIssuedNo] [nvarchar](50) NULL,
	[MutualIssuedName] [nvarchar](50) NULL,
	[MutualIssuedDef] [nvarchar](500) NULL,
	[PlanMutualIssuedDate] [datetime] NULL,
	[ActMutualIssuedDate] [datetime] NULL,
	[IssuedMan] [nvarchar](50) NULL,
	[ReceivedMan] [nvarchar](50) NULL,
	[IsNeedConfirm] [bit] NULL,
	[ConfirmResult] [nvarchar](500) NULL,
	[Flag] [nchar](1) NULL,
	[Sup_DesignNoticeId] [nvarchar](50) NULL,
 CONSTRAINT [PK_Design_Notice] PRIMARY KEY CLUSTERED 
(
	[DesignNoticeId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Design_Rect_Init]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Design_Rect_Init](
	[DesignRectId] [int] NOT NULL,
	[DesignInputChName] [nvarchar](100) NULL,
	[DesignInputEnName] [nvarchar](100) NULL,
	[DesignInputNo] [nvarchar](100) NULL,
	[IssuedDiscipline] [nvarchar](50) NULL,
	[IssuedDisciplineCode] [nvarchar](50) NULL,
 CONSTRAINT [PK_Design_Rect_Init] PRIMARY KEY CLUSTERED 
(
	[DesignRectId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Editor_CM_HTD]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Editor_CM_HTD](
	[HTDID] [nvarchar](50) NOT NULL,
	[ContractorId] [nvarchar](50) NULL,
	[EProjectId] [nvarchar](50) NULL,
	[Discipline] [nvarchar](50) NULL,
	[ReceiveDate] [datetime] NULL,
	[Status] [nvarchar](50) NULL,
 CONSTRAINT [PK_Editor_CM_HTD] PRIMARY KEY CLUSTERED 
(
	[HTDID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Editor_LessonsLearned]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Editor_LessonsLearned](
	[LessonsLearnedId] [nvarchar](50) NOT NULL,
	[EProjectId] [nvarchar](50) NULL,
	[Id] [nvarchar](50) NULL,
	[JobNo] [nvarchar](50) NULL,
	[PostBy] [nvarchar](50) NULL,
	[EntryDate] [datetime] NULL,
	[AppliedDiscip] [nvarchar](100) NULL,
	[Stage] [nvarchar](100) NULL,
	[Keyword] [nvarchar](100) NULL,
	[Description] [nvarchar](1500) NULL,
	[RootCause] [nvarchar](1500) NULL,
	[LessonLearned] [nvarchar](1500) NULL,
 CONSTRAINT [PK_Editor_LessonsLearned] PRIMARY KEY CLUSTERED 
(
	[LessonsLearnedId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Email_Params]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Email_Params](
	[ID] [varchar](50) NOT NULL,
	[MailClassName] [varchar](100) NULL,
	[MailClassID] [varchar](50) NOT NULL,
	[CreateName] [varchar](100) NOT NULL,
	[CreateTime] [datetime] NOT NULL,
	[UpdateName] [nchar](10) NULL,
	[UpdateTime] [datetime] NULL,
 CONSTRAINT [PK_Email_Params] PRIMARY KEY CLUSTERED 
(
	[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
 CONSTRAINT [IX_Email_Params] UNIQUE NONCLUSTERED 
(
	[MailClassID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Email_Pop]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Email_Pop](
	[EmailID] [varchar](50) NOT NULL,
	[EmailFwq] [varchar](50) NULL,
	[EmailDk] [varchar](50) NULL,
	[EmailYx] [varchar](50) NULL,
	[EmailUsername] [varchar](50) NULL,
	[EmailPass] [varchar](50) NULL,
	[CreateTime] [varchar](50) NULL,
	[CreateName] [varchar](50) NULL,
	[UpdateTime] [varchar](50) NULL,
	[UpdateName] [varchar](50) NULL,
 CONSTRAINT [PK_Email_Pop] PRIMARY KEY CLUSTERED 
(
	[EmailID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Email_SendLog]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Email_SendLog](
	[EmailId] [varchar](50) NOT NULL,
	[EmailTile] [varchar](255) NULL,
	[EmailContent] [text] NULL,
	[EmailURL] [varchar](50) NULL,
	[EmailName] [varchar](50) NULL,
	[EmailStatus] [varchar](10) NULL,
	[CreateTime] [datetime] NULL,
	[CreateName] [varchar](50) NULL,
 CONSTRAINT [PK_Email_Send] PRIMARY KEY CLUSTERED 
(
	[EmailId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Email_SendTemplate]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Email_SendTemplate](
	[EmailId] [varchar](50) NOT NULL,
	[EmailParamsID] [varchar](50) NOT NULL,
	[EailTiaoJian] [varchar](500) NULL,
	[EmailUserYN] [int] NULL,
	[EmailTitle] [varchar](500) NULL,
	[EmailContext] [text] NULL,
	[CreateName] [varchar](500) NULL,
	[CreateTime] [datetime] NULL,
	[UpdateName] [varchar](500) NULL,
	[UpdateTime] [datetime] NULL,
	[EmailDesc] [varchar](500) NULL,
 CONSTRAINT [PK_Email_SendTemplate] PRIMARY KEY CLUSTERED 
(
	[EmailId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
 CONSTRAINT [IX_Email_SendTemplate] UNIQUE NONCLUSTERED 
(
	[EmailParamsID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Email_ToPeople]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Email_ToPeople](
	[EmID] [varchar](50) NOT NULL,
	[EmtempID] [varchar](50) NOT NULL,
	[EmuserID] [varchar](50) NULL,
	[EmuserName] [varchar](50) NULL,
	[EmuaerEmailAddress] [varchar](100) NULL,
	[EMPeopleType] [varchar](5) NULL,
 CONSTRAINT [PK_Email_ToPeople] PRIMARY KEY CLUSTERED 
(
	[EmID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[File_Template]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[File_Template](
	[TemplateId] [nvarchar](50) NOT NULL,
	[TemplateName] [nvarchar](100) NULL,
	[UploadMan] [nvarchar](50) NULL,
	[UploadDate] [datetime] NULL,
	[AttachUrl] [nvarchar](500) NULL,
	[Remark] [nvarchar](500) NULL,
 CONSTRAINT [PK_File_Template] PRIMARY KEY CLUSTERED 
(
	[TemplateId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[File_UserGuideAndQA]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[File_UserGuideAndQA](
	[FileId] [nvarchar](50) NOT NULL,
	[FileName] [nvarchar](150) NULL,
	[UploadMan] [nvarchar](50) NULL,
	[UploadDate] [datetime] NULL,
	[AttachUrl] [nvarchar](500) NULL,
	[Remark] [nvarchar](500) NULL,
 CONSTRAINT [PK_File_UserGuideAndQA] PRIMARY KEY CLUSTERED 
(
	[FileId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[ManHours_PlanManHours]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[ManHours_PlanManHours](
	[PlanManHoursId] [nvarchar](50) NOT NULL,
	[EprojectId] [nvarchar](50) NULL,
	[ManHoursPlanId] [nvarchar](50) NULL,
	[UserId] [nvarchar](50) NULL,
	[UserName] [nvarchar](50) NULL,
	[ManHoursMonth] [nvarchar](50) NULL,
	[Month1] [nvarchar](50) NULL,
	[Month2] [nvarchar](50) NULL,
	[Month3] [nvarchar](50) NULL,
	[Month4] [nvarchar](50) NULL,
	[Month5] [nvarchar](50) NULL,
	[Month6] [nvarchar](50) NULL,
	[Month7] [nvarchar](50) NULL,
	[Month8] [nvarchar](50) NULL,
	[Month9] [nvarchar](50) NULL,
	[Month10] [nvarchar](50) NULL,
	[Month11] [nvarchar](50) NULL,
	[Month12] [nvarchar](50) NULL,
 CONSTRAINT [PK_ManHours_PlanManHours] PRIMARY KEY CLUSTERED 
(
	[PlanManHoursId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Sys_ActualManHourMonthSet]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_ActualManHourMonthSet](
	[ActualManHourMonthId] [nvarchar](50) NOT NULL,
	[DepartId] [nvarchar](50) NULL,
	[Person] [nchar](10) NULL,
	[HeadCount] [int] NULL,
	[Years] [nvarchar](10) NULL,
	[Month1] [decimal](18, 2) NULL,
	[Month2] [decimal](18, 2) NULL,
	[Month3] [decimal](18, 2) NULL,
	[Month4] [decimal](18, 2) NULL,
	[Month5] [decimal](18, 2) NULL,
	[Month6] [decimal](18, 2) NULL,
	[Month7] [decimal](18, 2) NULL,
	[Month8] [decimal](18, 2) NULL,
	[Month9] [decimal](18, 2) NULL,
	[Month10] [decimal](18, 2) NULL,
	[Month11] [decimal](18, 2) NULL,
	[Month12] [decimal](18, 2) NULL,
 CONSTRAINT [PK_Sys_ActualManHourMonthSet] PRIMARY KEY CLUSTERED 
(
	[ActualManHourMonthId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Sys_ButtonPower]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_ButtonPower](
	[ButtonPowerID] [nvarchar](50) NOT NULL,
	[RoleId] [nvarchar](50) NULL,
	[MenuId] [nvarchar](50) NULL,
	[ButtonToMenuId] [nvarchar](50) NULL,
 CONSTRAINT [PK_Sys_ButtonPower] PRIMARY KEY CLUSTERED 
(
	[ButtonPowerID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Sys_ButtonToMenu]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_ButtonToMenu](
	[ButtonToMenuId] [nvarchar](50) NOT NULL,
	[MenuId] [nvarchar](50) NOT NULL,
	[ButtonName] [nvarchar](50) NULL,
	[ButtonEnName] [nvarchar](50) NULL,
	[SortIndex] [int] NULL,
 CONSTRAINT [PK_ButtonToMenu] PRIMARY KEY CLUSTERED 
(
	[ButtonToMenuId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Sys_ErrLogInfo]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_ErrLogInfo](
	[ErrLogId] [nvarchar](50) NOT NULL,
	[ErrType] [nvarchar](500) NULL,
	[ErrMessage] [nvarchar](2000) NULL,
	[ErrStackTrace] [nvarchar](max) NULL,
	[ErrTime] [datetime] NULL,
	[ErrUrl] [nvarchar](800) NULL,
	[ErrIP] [nvarchar](50) NULL,
	[UserName] [nvarchar](50) NULL,
 CONSTRAINT [PK_Sys_ErrLogInfo] PRIMARY KEY CLUSTERED 
(
	[ErrLogId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Sys_Log]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_Log](
	[LogId] [nvarchar](50) NOT NULL,
	[UserId] [nvarchar](50) NULL,
	[ProjectId] [nvarchar](50) NULL,
	[OperationTime] [datetime] NULL,
	[Ip] [nvarchar](20) NULL,
	[HostName] [nvarchar](100) NULL,
	[OperationLog] [nvarchar](50) NULL,
	[SystemId] [nvarchar](50) NULL,
 CONSTRAINT [PK_Sys_Log] PRIMARY KEY CLUSTERED 
(
	[LogId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Sys_Menu]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_Menu](
	[MenuId] [nvarchar](50) NOT NULL,
	[MenuName] [nvarchar](50) NULL,
	[MenuEnName] [nvarchar](50) NULL,
	[Url] [nvarchar](60) NULL,
	[SortIndex] [smallint] NULL,
	[SuperMenu] [nvarchar](50) NULL,
 CONSTRAINT [PK_Sys_Menu] PRIMARY KEY CLUSTERED 
(
	[MenuId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Sys_RolePower]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_RolePower](
	[RolePowerId] [nvarchar](50) NOT NULL,
	[RoleId] [nvarchar](50) NOT NULL,
	[MenuId] [nvarchar](50) NOT NULL,
	[ButtonToMenus] [nvarchar](1000) NULL,
 CONSTRAINT [PK_Sys_RolePower] PRIMARY KEY CLUSTERED 
(
	[RolePowerId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Sys_Set]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_Set](
	[SetId] [int] NOT NULL,
	[SetName] [nvarchar](50) NULL,
	[IsAuto] [bit] NULL,
	[SetValue] [nvarchar](50) NULL,
 CONSTRAINT [PK_Sys_Set] PRIMARY KEY CLUSTERED 
(
	[SetId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[Sys_System]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sys_System](
	[SystemId] [nvarchar](50) NOT NULL,
	[SystemName] [nvarchar](120) NULL,
	[SystemType] [char](1) NULL,
	[SorIndex] [int] NULL,
	[IsEnable] [bit] NULL,
	[IsMoreProject] [bit] NULL,
 CONSTRAINT [PK_Sys_System] PRIMARY KEY CLUSTERED 
(
	[SystemId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
SET ANSI_PADDING ON

GO
/****** Object:  Index [NonClusteredIndex-20200802-165847]    Script Date: 2022/4/11 10:09:18 ******/
CREATE NONCLUSTERED INDEX [NonClusteredIndex-20200802-165847] ON [dbo].[Editor_CostReport]
(
	[EProjectId] ASC,
	[Monthly] DESC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO
SET ANSI_PADDING ON

GO
/****** Object:  Index [IX_Editor_EProject_JobNo]    Script Date: 2022/4/11 10:09:18 ******/
CREATE UNIQUE NONCLUSTERED INDEX [IX_Editor_EProject_JobNo] ON [dbo].[Editor_EProject]
(
	[ProjectControl_JobNo] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO
ALTER TABLE [dbo].[Email_Params] ADD  CONSTRAINT [DF_Email_Params_CreateName]  DEFAULT ('sys') FOR [CreateName]
GO
ALTER TABLE [dbo].[Email_Params] ADD  CONSTRAINT [DF_Email_Params_CreateTime]  DEFAULT (getdate()) FOR [CreateTime]
GO
ALTER TABLE [dbo].[Email_ToPeople] ADD  CONSTRAINT [DF_Email_ToPeople_EMPeopleType]  DEFAULT ((0)) FOR [EMPeopleType]
GO
ALTER TABLE [dbo].[Design_Input]  WITH CHECK ADD  CONSTRAINT [FK_Design_Input_Design_Rect_Init] FOREIGN KEY([DesignRectId])
REFERENCES [dbo].[Design_Rect_Init] ([DesignRectId])
GO
ALTER TABLE [dbo].[Design_Input] CHECK CONSTRAINT [FK_Design_Input_Design_Rect_Init]
GO
ALTER TABLE [dbo].[Design_Input]  WITH CHECK ADD  CONSTRAINT [FK_Design_Input_Editor_EProject] FOREIGN KEY([EProjectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[Design_Input] CHECK CONSTRAINT [FK_Design_Input_Editor_EProject]
GO
ALTER TABLE [dbo].[Design_Input]  WITH CHECK ADD  CONSTRAINT [FK_Design_Input_Sys_User] FOREIGN KEY([IssuedMan])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[Design_Input] CHECK CONSTRAINT [FK_Design_Input_Sys_User]
GO
ALTER TABLE [dbo].[Design_Input]  WITH CHECK ADD  CONSTRAINT [FK_Design_Input_Sys_User1] FOREIGN KEY([ReceivedMan])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[Design_Input] CHECK CONSTRAINT [FK_Design_Input_Sys_User1]
GO
ALTER TABLE [dbo].[Design_Notice]  WITH CHECK ADD  CONSTRAINT [FK_Design_Notice_Design_Input] FOREIGN KEY([DesignInputId])
REFERENCES [dbo].[Design_Input] ([DesignInputId])
GO
ALTER TABLE [dbo].[Design_Notice] CHECK CONSTRAINT [FK_Design_Notice_Design_Input]
GO
ALTER TABLE [dbo].[Design_Notice]  WITH CHECK ADD  CONSTRAINT [FK_Design_Notice_Sys_User] FOREIGN KEY([IssuedMan])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[Design_Notice] CHECK CONSTRAINT [FK_Design_Notice_Sys_User]
GO
ALTER TABLE [dbo].[Design_Notice]  WITH CHECK ADD  CONSTRAINT [FK_Design_Notice_Sys_User1] FOREIGN KEY([ReceivedMan])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[Design_Notice] CHECK CONSTRAINT [FK_Design_Notice_Sys_User1]
GO
ALTER TABLE [dbo].[Editor_AreaConcern]  WITH CHECK ADD  CONSTRAINT [FK_Editor_AreaConcern_Base_Const] FOREIGN KEY([CategoryCauseId])
REFERENCES [dbo].[Base_Const] ([ConstId])
GO
ALTER TABLE [dbo].[Editor_AreaConcern] CHECK CONSTRAINT [FK_Editor_AreaConcern_Base_Const]
GO
ALTER TABLE [dbo].[Editor_AreaConcern]  WITH CHECK ADD  CONSTRAINT [FK_Editor_AreaConcern_Editor_EProject] FOREIGN KEY([EProjectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[Editor_AreaConcern] CHECK CONSTRAINT [FK_Editor_AreaConcern_Editor_EProject]
GO
ALTER TABLE [dbo].[Editor_AreaConcern]  WITH CHECK ADD  CONSTRAINT [FK_Editor_AreaConcern_Sys_User] FOREIGN KEY([CreatedById])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[Editor_AreaConcern] CHECK CONSTRAINT [FK_Editor_AreaConcern_Sys_User]
GO
ALTER TABLE [dbo].[Editor_CM_HTD]  WITH CHECK ADD  CONSTRAINT [FK_Editor_CM_HTD_Base_Contractor] FOREIGN KEY([ContractorId])
REFERENCES [dbo].[Base_Contractor] ([ContractorId])
GO
ALTER TABLE [dbo].[Editor_CM_HTD] CHECK CONSTRAINT [FK_Editor_CM_HTD_Base_Contractor]
GO
ALTER TABLE [dbo].[Editor_CM_HTD]  WITH CHECK ADD  CONSTRAINT [FK_Editor_CM_HTD_Editor_EProject] FOREIGN KEY([EProjectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[Editor_CM_HTD] CHECK CONSTRAINT [FK_Editor_CM_HTD_Editor_EProject]
GO
ALTER TABLE [dbo].[Editor_CostReport]  WITH CHECK ADD  CONSTRAINT [FK_Editor_Cost_Editor_EProject] FOREIGN KEY([EProjectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[Editor_CostReport] CHECK CONSTRAINT [FK_Editor_Cost_Editor_EProject]
GO
ALTER TABLE [dbo].[Editor_FCRLog]  WITH CHECK ADD  CONSTRAINT [FK_Editor_FCRLog_Base_Const] FOREIGN KEY([CategoryId])
REFERENCES [dbo].[Base_Const] ([ConstId])
GO
ALTER TABLE [dbo].[Editor_FCRLog] CHECK CONSTRAINT [FK_Editor_FCRLog_Base_Const]
GO
ALTER TABLE [dbo].[Editor_FCRLog]  WITH CHECK ADD  CONSTRAINT [FK_Editor_FCRLog_Base_Const1] FOREIGN KEY([CDIId])
REFERENCES [dbo].[Base_Const] ([ConstId])
GO
ALTER TABLE [dbo].[Editor_FCRLog] CHECK CONSTRAINT [FK_Editor_FCRLog_Base_Const1]
GO
ALTER TABLE [dbo].[Editor_FCRLog]  WITH CHECK ADD  CONSTRAINT [FK_Editor_FCRLog_Base_Const2] FOREIGN KEY([DisciplineId])
REFERENCES [dbo].[Base_Const] ([ConstId])
GO
ALTER TABLE [dbo].[Editor_FCRLog] CHECK CONSTRAINT [FK_Editor_FCRLog_Base_Const2]
GO
ALTER TABLE [dbo].[Editor_FCRLog]  WITH CHECK ADD  CONSTRAINT [FK_Editor_FCRLog_Editor_EProject] FOREIGN KEY([EProjectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[Editor_FCRLog] CHECK CONSTRAINT [FK_Editor_FCRLog_Editor_EProject]
GO
ALTER TABLE [dbo].[Editor_LessonsLearned]  WITH CHECK ADD  CONSTRAINT [FK_Editor_LessonsLearned_Editor_EProject] FOREIGN KEY([EProjectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[Editor_LessonsLearned] CHECK CONSTRAINT [FK_Editor_LessonsLearned_Editor_EProject]
GO
ALTER TABLE [dbo].[Editor_PM]  WITH CHECK ADD  CONSTRAINT [FK_Editor_EProjectItem_Editor_EProject] FOREIGN KEY([EProjectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[Editor_PM] CHECK CONSTRAINT [FK_Editor_EProjectItem_Editor_EProject]
GO
ALTER TABLE [dbo].[Editor_Punch]  WITH CHECK ADD  CONSTRAINT [FK_Editor_Punch_Base_Const] FOREIGN KEY([DisciplineId])
REFERENCES [dbo].[Base_Const] ([ConstId])
GO
ALTER TABLE [dbo].[Editor_Punch] CHECK CONSTRAINT [FK_Editor_Punch_Base_Const]
GO
ALTER TABLE [dbo].[Editor_Punch]  WITH CHECK ADD  CONSTRAINT [FK_Editor_Punch_Base_Const1] FOREIGN KEY([ClassId])
REFERENCES [dbo].[Base_Const] ([ConstId])
GO
ALTER TABLE [dbo].[Editor_Punch] CHECK CONSTRAINT [FK_Editor_Punch_Base_Const1]
GO
ALTER TABLE [dbo].[Editor_Punch]  WITH CHECK ADD  CONSTRAINT [FK_Editor_Punch_Editor_EProject] FOREIGN KEY([EProjectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[Editor_Punch] CHECK CONSTRAINT [FK_Editor_Punch_Editor_EProject]
GO
ALTER TABLE [dbo].[Editor_Punch]  WITH CHECK ADD  CONSTRAINT [FK_Editor_Punch_Sys_User] FOREIGN KEY([ResiedById])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[Editor_Punch] CHECK CONSTRAINT [FK_Editor_Punch_Sys_User]
GO
ALTER TABLE [dbo].[Editor_Punch]  WITH CHECK ADD  CONSTRAINT [FK_Editor_Punch_Sys_User1] FOREIGN KEY([CTECheckerId])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[Editor_Punch] CHECK CONSTRAINT [FK_Editor_Punch_Sys_User1]
GO
ALTER TABLE [dbo].[Editor_Punch]  WITH CHECK ADD  CONSTRAINT [FK_Editor_Punch_Sys_User2] FOREIGN KEY([OwnerCheckerId])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[Editor_Punch] CHECK CONSTRAINT [FK_Editor_Punch_Sys_User2]
GO
ALTER TABLE [dbo].[File_Template]  WITH CHECK ADD  CONSTRAINT [FK_File_Template_Sys_User] FOREIGN KEY([UploadMan])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[File_Template] CHECK CONSTRAINT [FK_File_Template_Sys_User]
GO
ALTER TABLE [dbo].[File_UserGuideAndQA]  WITH CHECK ADD  CONSTRAINT [FK_File_UserGuideAndQA_Sys_User] FOREIGN KEY([UploadMan])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[File_UserGuideAndQA] CHECK CONSTRAINT [FK_File_UserGuideAndQA_Sys_User]
GO
ALTER TABLE [dbo].[ManHours_Plan]  WITH CHECK ADD  CONSTRAINT [FK_ManHours_Plan_Editor_EProject] FOREIGN KEY([EProjectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[ManHours_Plan] CHECK CONSTRAINT [FK_ManHours_Plan_Editor_EProject]
GO
ALTER TABLE [dbo].[ManHours_Plan]  WITH CHECK ADD  CONSTRAINT [FK_ManHours_Plan_Resource_Plan] FOREIGN KEY([ResourcePlanId])
REFERENCES [dbo].[Resource_Plan] ([ResourcePlanId])
GO
ALTER TABLE [dbo].[ManHours_Plan] CHECK CONSTRAINT [FK_ManHours_Plan_Resource_Plan]
GO
ALTER TABLE [dbo].[ManHours_Plan]  WITH CHECK ADD  CONSTRAINT [FK_ManHours_Plan_Sys_User] FOREIGN KEY([EngineerId])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[ManHours_Plan] CHECK CONSTRAINT [FK_ManHours_Plan_Sys_User]
GO
ALTER TABLE [dbo].[ManHours_PlanDetail]  WITH CHECK ADD  CONSTRAINT [FK_ManHours_PlanDetail_Editor_EProject] FOREIGN KEY([EProjectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[ManHours_PlanDetail] CHECK CONSTRAINT [FK_ManHours_PlanDetail_Editor_EProject]
GO
ALTER TABLE [dbo].[ManHours_PlanDetail]  WITH CHECK ADD  CONSTRAINT [FK_ManHours_PlanDetail_Sys_User] FOREIGN KEY([UserId])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[ManHours_PlanDetail] CHECK CONSTRAINT [FK_ManHours_PlanDetail_Sys_User]
GO
ALTER TABLE [dbo].[ManHours_PlanManHours]  WITH CHECK ADD  CONSTRAINT [FK_ManHours_PlanManHours_Editor_EProject] FOREIGN KEY([EprojectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[ManHours_PlanManHours] CHECK CONSTRAINT [FK_ManHours_PlanManHours_Editor_EProject]
GO
ALTER TABLE [dbo].[ManHours_PlanManHours]  WITH CHECK ADD  CONSTRAINT [FK_ManHours_PlanManHours_ManHours_Plan] FOREIGN KEY([ManHoursPlanId])
REFERENCES [dbo].[ManHours_Plan] ([ManHoursPlanId])
GO
ALTER TABLE [dbo].[ManHours_PlanManHours] CHECK CONSTRAINT [FK_ManHours_PlanManHours_ManHours_Plan]
GO
ALTER TABLE [dbo].[ManHours_PlanManHours]  WITH CHECK ADD  CONSTRAINT [FK_ManHours_PlanManHours_Sys_User] FOREIGN KEY([UserId])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[ManHours_PlanManHours] CHECK CONSTRAINT [FK_ManHours_PlanManHours_Sys_User]
GO
ALTER TABLE [dbo].[Resource_Plan]  WITH CHECK ADD  CONSTRAINT [FK_Resource_Plan_Editor_EProject] FOREIGN KEY([EProjectId])
REFERENCES [dbo].[Editor_EProject] ([EProjectId])
GO
ALTER TABLE [dbo].[Resource_Plan] CHECK CONSTRAINT [FK_Resource_Plan_Editor_EProject]
GO
ALTER TABLE [dbo].[Sys_ButtonPower]  WITH CHECK ADD  CONSTRAINT [FK_Sys_ButtonPower_Sys_Menu] FOREIGN KEY([MenuId])
REFERENCES [dbo].[Sys_Menu] ([MenuId])
GO
ALTER TABLE [dbo].[Sys_ButtonPower] CHECK CONSTRAINT [FK_Sys_ButtonPower_Sys_Menu]
GO
ALTER TABLE [dbo].[Sys_ButtonPower]  WITH CHECK ADD  CONSTRAINT [FK_Sys_ButtonPower_Sys_Role] FOREIGN KEY([RoleId])
REFERENCES [dbo].[Sys_Role] ([RoleId])
GO
ALTER TABLE [dbo].[Sys_ButtonPower] CHECK CONSTRAINT [FK_Sys_ButtonPower_Sys_Role]
GO
ALTER TABLE [dbo].[Sys_ButtonToMenu]  WITH CHECK ADD  CONSTRAINT [FK_ButtonToMenu_Sys_Menu] FOREIGN KEY([MenuId])
REFERENCES [dbo].[Sys_Menu] ([MenuId])
GO
ALTER TABLE [dbo].[Sys_ButtonToMenu] CHECK CONSTRAINT [FK_ButtonToMenu_Sys_Menu]
GO
ALTER TABLE [dbo].[Sys_RolePower]  WITH CHECK ADD  CONSTRAINT [FK_Sys_RolePower_Sys_Menu] FOREIGN KEY([MenuId])
REFERENCES [dbo].[Sys_Menu] ([MenuId])
GO
ALTER TABLE [dbo].[Sys_RolePower] CHECK CONSTRAINT [FK_Sys_RolePower_Sys_Menu]
GO
ALTER TABLE [dbo].[Sys_RolePower]  WITH CHECK ADD  CONSTRAINT [FK_Sys_RolePower_Sys_RolePower] FOREIGN KEY([RoleId])
REFERENCES [dbo].[Sys_Role] ([RoleId])
GO
ALTER TABLE [dbo].[Sys_RolePower] CHECK CONSTRAINT [FK_Sys_RolePower_Sys_RolePower]
GO
ALTER TABLE [dbo].[Sys_User]  WITH CHECK ADD  CONSTRAINT [FK_Sys_User_Base_Depart] FOREIGN KEY([DepartId])
REFERENCES [dbo].[Base_Depart] ([DepartId])
GO
ALTER TABLE [dbo].[Sys_User] CHECK CONSTRAINT [FK_Sys_User_Base_Depart]
GO
ALTER TABLE [dbo].[Sys_User]  WITH CHECK ADD  CONSTRAINT [FK_Sys_User_Sys_Role] FOREIGN KEY([RoleId])
REFERENCES [dbo].[Sys_Role] ([RoleId])
GO
ALTER TABLE [dbo].[Sys_User] CHECK CONSTRAINT [FK_Sys_User_Sys_Role]
GO
/****** Object:  StoredProcedure [dbo].[LogEmail]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO





CREATE PROCEDURE [dbo].[LogEmail]
 
AS
DECLARE @emailcontent NVARCHAR(2000);--邮件内容
DECLARE @emailsubject NVARCHAR(200);--邮件主题
DECLARE @emailadress NVARCHAR(100);--邮件发送地址
DECLARE @count INT;                   --总数
DECLARE @i INT;                  --数据行数 
DECLARE @emailrecipients NVARCHAR(200); 
   
 
     SET @count=0;
     SET @emailcontent='请相关人员添加本月的计划人工时';
     SET @emailsubject='人工时计划'; 
       
     
     SELECT * INTO #temp FROM(SELECT  ROW_NUMBER() OVER(ORDER BY UserId) AS row,Email,UserId,UserName,UserCode FROM EProjectDB.dbo.Sys_User WHERE Email LIKE '%@%' ) b
     SELECT @count = COUNT(1) FROM #temp;
     SET @i = 1;
     
     
    WHILE ( @i <= @count)
       BEGIN  
        SET @emailrecipients=(SELECT Email FROM #temp WHERE row = @i);     
        EXEC msdb.dbo.sp_send_dbmail
        @profile_name ='sqlemailtest',--配置文件名称
        @recipients =@emailrecipients, --获取当前行的邮件地址
        @subject=@emailsubject,--邮件主题
        @body=@emailcontent,  --邮件正文内容
        @body_format='html'  --邮件内容格式
        SET @i = @i + 1;  
       END
    DROP TABLE #temp; --删除临时表    





GO
/****** Object:  StoredProcedure [dbo].[Proc_FTE_CTEOverallFTE]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[Proc_FTE_CTEOverallFTE]
	
AS
BEGIN
select NEWID() as DepartId,
u.StaffNum,
d.DepartName,
s.PlanManHoursSum,
s.Years,
s.Months,
s.MonthManHoursSet,
(case when (CONVERT(decimal(18,2),isnull(u.StaffNum,0)) * CONVERT(decimal(18,2),isnull(s.MonthManHoursSet,0))) >0
		then ISNULL(CONVERT(decimal(18,2),(CONVERT(decimal(18,2),isnull(s.PlanManHoursSum,0))/(CONVERT(decimal(18,2),isnull(u.StaffNum,0)) * CONVERT(decimal(18,2),isnull(s.MonthManHoursSet,0))))),0) 
		else 0 end )as FTE
from Base_Depart d
left join (select Count(UserId) as StaffNum,DepartId from Sys_User where IsPost='True' and IsCTE='True' and IsCalculated='True' group by DepartId) u on u.DepartId = d.DepartId 
left join (select sum(Hour) as PlanManHoursSum,DepartId,YEAR(DateMonth) as Years,MONTH(DateMonth) as Months,
(SELECT TOP 1 (CASE WHEN MONTH(DateMonth)=1 THEN m.Month1
					WHEN MONTH(DateMonth)=2 THEN m.Month2 
					WHEN MONTH(DateMonth)=3 THEN m.Month3
					WHEN MONTH(DateMonth)=4 THEN m.Month4
					WHEN MONTH(DateMonth)=5 THEN m.Month5
					WHEN MONTH(DateMonth)=6 THEN m.Month6
					WHEN MONTH(DateMonth)=7 THEN m.Month7
					WHEN MONTH(DateMonth)=8 THEN m.Month8
					WHEN MONTH(DateMonth)=9 THEN m.Month9
					WHEN MONTH(DateMonth)=10 THEN m.Month10
					WHEN MONTH(DateMonth)=11 THEN m.Month11
					WHEN MONTH(DateMonth)=12 THEN m.Month12  END)
  FROM dbo.Sys_ActualManHourMonthSet m WHERE m.DepartId IS NULL AND m.Years=Year(DateMonth)) as MonthManHoursSet
			from ManHours_PlanDetail 
			left join ManHours_Plan p on p.ManHoursPlanId = PlanManHoursId
			left join Sys_User u on u.UserId = ManHours_PlanDetail.UserId	
			where AccountDisabled=0
			group by DepartId,YEAR(DateMonth),MONTH(DateMonth)			
			) as s on s.DepartId = d.DepartId
where d.DepartName like 'CTE%' and d.DepartName!='CTE'

union

select NEWID() as DepartId,
NULL as StaffNum,
(d.DepartName+'_H') as DepartName,
s.PlanManHoursSum,
s.Years,
s.Months,
s.MonthManHoursSet,
ISNULL(CONVERT(decimal(18,2),(CONVERT(decimal(18,2),s.PlanManHoursSum)/(CONVERT(decimal(18,2),u.StaffNum) * CONVERT(decimal(18,2),s.MonthManHoursSet)))),0) as FTE
from Base_Depart d
left join (select Count(UserId) as StaffNum,DepartId from Sys_User where IsPost='True' and IsCTE='True' and IsCalculated='True' group by DepartId) u on u.DepartId = d.DepartId 
left join (select sum(Hour) as PlanManHoursSum,
					DepartId,
					YEAR(DateMonth) as Years,
					MONTH(DateMonth) as Months,
(SELECT TOP 1 (CASE WHEN MONTH(DateMonth)=1 THEN m.Month1
					WHEN MONTH(DateMonth)=2 THEN m.Month2 
					WHEN MONTH(DateMonth)=3 THEN m.Month3
					WHEN MONTH(DateMonth)=4 THEN m.Month4
					WHEN MONTH(DateMonth)=5 THEN m.Month5
					WHEN MONTH(DateMonth)=6 THEN m.Month6
					WHEN MONTH(DateMonth)=7 THEN m.Month7
					WHEN MONTH(DateMonth)=8 THEN m.Month8
					WHEN MONTH(DateMonth)=9 THEN m.Month9
					WHEN MONTH(DateMonth)=10 THEN m.Month10
					WHEN MONTH(DateMonth)=11 THEN m.Month11
					WHEN MONTH(DateMonth)=12 THEN m.Month12  END)
  FROM dbo.Sys_ActualManHourMonthSet m WHERE m.DepartId IS NULL AND m.Years=Year(DateMonth)) as MonthManHoursSet
			from ManHours_PlanDetail 
			left join ManHours_Plan p on p.ManHoursPlanId = PlanManHoursId
			left join Sys_User u on u.UserId = ManHours_PlanDetail.UserId	
			left join Editor_EProject eproject on eproject.EProjectId = ManHours_PlanDetail.EProjectId
			where AccountDisabled=0 and eproject.PM_General_Priority in ('H','TH')
			group by DepartId,YEAR(DateMonth),MONTH(DateMonth)			
			) as s on s.DepartId = d.DepartId
where d.DepartName like 'CTE%' and d.DepartName!='CTE'

union

select NEWID() as DepartId,
NULL as StaffNum, 
(d.DepartName+'_N') as DepartName,
s.PlanManHoursSum,
s.Years,
s.Months,
s.MonthManHoursSet,
ISNULL(CONVERT(decimal(18,2),(CONVERT(decimal(18,2),s.PlanManHoursSum)/(CONVERT(decimal(18,2),u.StaffNum) * CONVERT(decimal(18,2),s.MonthManHoursSet)))),0) as FTE
from Base_Depart d
left join (select Count(UserId) as StaffNum,DepartId from Sys_User where IsPost='True' and IsCTE='True' and IsCalculated='True' group by DepartId) u on u.DepartId = d.DepartId 
left join (select sum(Hour) as PlanManHoursSum,
					DepartId,
					YEAR(DateMonth) as Years,
					MONTH(DateMonth) as Months,
(SELECT TOP 1 (CASE WHEN MONTH(DateMonth)=1 THEN m.Month1
					WHEN MONTH(DateMonth)=2 THEN m.Month2 
					WHEN MONTH(DateMonth)=3 THEN m.Month3
					WHEN MONTH(DateMonth)=4 THEN m.Month4
					WHEN MONTH(DateMonth)=5 THEN m.Month5
					WHEN MONTH(DateMonth)=6 THEN m.Month6
					WHEN MONTH(DateMonth)=7 THEN m.Month7
					WHEN MONTH(DateMonth)=8 THEN m.Month8
					WHEN MONTH(DateMonth)=9 THEN m.Month9
					WHEN MONTH(DateMonth)=10 THEN m.Month10
					WHEN MONTH(DateMonth)=11 THEN m.Month11
					WHEN MONTH(DateMonth)=12 THEN m.Month12  END)
  FROM dbo.Sys_ActualManHourMonthSet m WHERE m.DepartId IS NULL AND m.Years=Year(DateMonth)) as MonthManHoursSet
			from ManHours_PlanDetail 
			left join ManHours_Plan p on p.ManHoursPlanId = PlanManHoursId
			left join Sys_User u on u.UserId = ManHours_PlanDetail.UserId	
			left join Editor_EProject eproject on eproject.EProjectId = ManHours_PlanDetail.EProjectId
			where AccountDisabled=0 and eproject.PM_General_Priority in ('N','T','T_2015')
			group by DepartId,YEAR(DateMonth),MONTH(DateMonth)			
			) as s on s.DepartId = d.DepartId
where d.DepartName like 'CTE%' and d.DepartName!='CTE'
order by DepartName,s.Years,s.Months
end


GO
/****** Object:  StoredProcedure [dbo].[Proc_FTE_FTE]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[Proc_FTE_FTE]

	@departName NVARCHAR(50)
AS
/********FTE**********/
select u.UserId,
u.UserCode,
u.UserName,
SUM(p.[Hour]) as TaskPlan,
YEAR(p.DateMonth) as Years,
MONTH(p.DateMonth) as Months,
isnull(convert(decimal(18,2),(SUM(p.[Hour]) /
		convert(decimal(18,2),(SELECT TOP 1 (CASE WHEN MONTH(p.DateMonth)=1 THEN m.Month1
					WHEN MONTH(p.DateMonth)=2 THEN m.Month2 
					WHEN MONTH(p.DateMonth)=3 THEN m.Month3
					WHEN MONTH(p.DateMonth)=4 THEN m.Month4
					WHEN MONTH(p.DateMonth)=5 THEN m.Month5
					WHEN MONTH(p.DateMonth)=6 THEN m.Month6
					WHEN MONTH(p.DateMonth)=7 THEN m.Month7
					WHEN MONTH(p.DateMonth)=8 THEN m.Month8
					WHEN MONTH(p.DateMonth)=9 THEN m.Month9
					WHEN MONTH(p.DateMonth)=10 THEN m.Month10
					WHEN MONTH(p.DateMonth)=11 THEN m.Month11
					WHEN MONTH(p.DateMonth)=12 THEN m.Month12
			   END)FROM dbo.Sys_ActualManHourMonthSet m WHERE m.DepartId IS NULL AND m.Years=Year(p.DateMonth))))),0) as FTE
from Sys_User as u
left join Base_Depart as d on d.DepartId = u.DepartId
left join ManHours_PlanDetail as p on p.UserId=u.UserId
where d.DepartName=@departName
group by u.UserId,u.UserCode,u.UserName,YEAR(p.DateMonth),MONTH(p.DateMonth)
order by u.UserId,Year(p.DateMonth),MONTH(p.DateMonth)
GO
/****** Object:  StoredProcedure [dbo].[Proc_FTE_Manhour]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[Proc_FTE_Manhour]

	@departName NVARCHAR(50)
AS
/********FTE ManHour**********/
select u.UserId,
u.UserCode,
u.UserName,
ISNULL(SUM(p.[Hour]),0) as TaskPlan,
YEAR(p.DateMonth) as Years,
MONTH(p.DateMonth) as Months
from Sys_User as u
left join Base_Depart as d on d.DepartId = u.DepartId
left join ManHours_PlanDetail as p on p.UserId=u.UserId
where d.DepartName=@departName
group by u.UserId,u.UserCode,u.UserName,YEAR(p.DateMonth),MONTH(p.DateMonth)
order by u.UserId,Year(p.DateMonth),MONTH(p.DateMonth)

GO
/****** Object:  StoredProcedure [dbo].[Proc_ManHours]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[Proc_ManHours]
    @departId nvarchar(50)=null,
	@userId nvarchar(50)=null,
	@eprojectId nvarchar(50)=null
AS

SELECT CONVERT(varchar(6),[Month], 112) as DateMonths,
SUM(planDetail.[Hour]) as PlanHours,
SUM([Hours]) as ActualHours,
(select sum([Hours]) from ManHours_Actual 
left join Sys_User on Sys_User.UserId = ManHours_Actual.UserId
where EProjectId is null 
and CONVERT(varchar(6),[Month], 112)=CONVERT(varchar(6),actual.[Month], 112)
and (Sys_User.DepartId=@departId or @departId is null)
and (ManHours_Actual.UserId=@userId or @userId is null)) as NoPlanHours
FROM ManHours_Actual as actual
left join ManHours_Plan as p on p.ManHoursPlanId = actual.ManHoursPlanId
left join ManHours_PlanDetail as planDetail on planDetail.PlanManHoursId = actual.ManHoursPlanId
left join Sys_User as u on u.UserId = actual.UserId
where actual.EProjectId is not null and p.AccountDisabled=0 
and(u.DepartId=@departId or @departId is null)
and (planDetail.UserId=@userId or @userId is null)
and (actual.EProjectId=@eprojectId or @eprojectId is null)
group by CONVERT(varchar(6),actual.[Month], 112)
order by CONVERT(varchar(6),actual.[Month],112) desc

GO
/****** Object:  StoredProcedure [dbo].[Proc_ManHoursPlan]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
 
CREATE PROCEDURE [dbo].[Proc_ManHoursPlan]
	 @sId  VARCHAR(50) --编号
AS
BEGIN

SELECT       
      [EProjectId]
      ,CONVERT(VARCHAR(6) , DateMonth, 112 )DateMonth
      ,SUM([Hour])ManHours INTO #t1
  FROM [ManHours_PlanDetail]
  GROUP BY EProjectId,CONVERT(VARCHAR(6) , DateMonth, 112 )
   order by CONVERT(VARCHAR(6) , DateMonth, 112 )
  
  
   SELECT EProjectId,CONVERT(VARCHAR(6) , [Month], 112 )data ,SUM([Hours])Hours INTO #t2
  FROM ManHours_Actual
  WHERE EProjectId IS NOT NULL
   GROUP BY EProjectId,CONVERT(VARCHAR(6),[Month], 112)
    order by CONVERT(VARCHAR(6) , [Month], 112 )
   
   
     SELECT #t1.EProjectId,DateMonth,ManHours,ISNULL(#t2.Hours,0)Hours FROM #t1
   LEFT JOIN #t2 ON #t1.EProjectId=#t2.EProjectId AND
   #t1.DateMonth=#t2.data
   WHERE #t1.EProjectId=@sId 
    ORDER BY DateMonth
END


GO
/****** Object:  StoredProcedure [dbo].[Proc_ManHoursPlanEditNew]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[Proc_ManHoursPlanEditNew]
	 @engineerId  VARCHAR(50) --编号
AS
BEGIN
    SELECT  project.ProjectControl_JobNo,project.ProjectControl_JobType,  
            project.ProjectControl_JobStatus, project.ProjectControl_JobTitle, 
			project.ProjectControl_BUCode,
			(CASE WHEN u.IsThirdParty=1 THEN SUBSTRING(t.Account,CHARINDEX('-',t.Account)+1,LEN(t.Account)-CHARINDEX('-',t.Account)) 
             ELSE t.Account END) AS ProjectControl_Account, 
			project.PM_General_Priority, 
            project.ProjectControl_MS_ResourcePlanReceived,project.ProjectControl_MS_MC,
            project.ProjectControl_PC_CancelDate,
	        t.ManHoursPlanId,t.EProjectId,t.EngineerId,t.DisciplineId,t.Account,t.Discipline,
	       (ISNULL(t.ManHours,0)) AS ManHours,
	       (SELECT ISNULL(SUM(ISNULL(act.Hours,0)),0) FROM dbo.ManHours_Actual act 
	        WHERE act.ManHoursPlanId=t.ManHoursPlanId) AS ManHoursActual,
	        (CASE WHEN t.Roles='M00' THEN 'M00_Project Management' 
		     WHEN CHARINDEX('_',t.Roles)=0 THEN t.Roles+'_'+t.Discipline
			 WHEN CHARINDEX('_',t.Roles)>0 THEN LEFT(t.Roles,(CHARINDEX('_',t.Roles)))+t.Discipline + 
			                 SUBSTRING(t.Roles,CHARINDEX('_',t.Roles),LEN(t.Roles)) END) AS Roles,
           0 as  ManhourActualForecast,0 AS Realization,

	   (CASE WHEN CONVERT(VARCHAR(10),project.PM_MA_JobReveive, 23) IS NOT NULL THEN CONVERT(VARCHAR(10),project.PM_MA_JobReveive, 23) ELSE '' END) AS ReceivedDate,
	   (CASE WHEN CONVERT(VARCHAR(10), project.ProjectControl_MS_Approval, 23) IS NOT NULL THEN CONVERT(VARCHAR(10),  project.ProjectControl_MS_Approval, 23) ELSE '' END) AS ApprovalDatePlan,
       (CASE WHEN CONVERT(VARCHAR(10),  project.PM_MA_ProjectApproval, 23) IS NOT NULL THEN CONVERT(VARCHAR(10),  project.PM_MA_ProjectApproval, 23) ELSE '' END) AS ApprovalDateActual,

	   (CASE WHEN  project.Detail_Eng_Civil_ReviseEnd IS NOT NULL THEN CONVERT(NVARCHAR(10), project.Detail_Eng_Civil_ReviseEnd,23)
             ELSE (CASE WHEN tdc1.ReceiveHC IS NOT NULL THEN CONVERT(VARCHAR(10),tdc1.ReceiveHC,23)
	         ELSE (CASE WHEN pm1.RevisedEnd IS NOT NULL THEN CONVERT(VARCHAR(10),pm1.RevisedEnd,23) 
	         ELSE (case when p1.Detail_Eng_Civil_Sch_End IS NOT NULL then CONVERT(VARCHAR(10),p1.Detail_Eng_Civil_Sch_End,23)
	         ELSE '' end) END) END)END) AS Civil_RevisedEnd,
       (CASE WHEN project.Detail_Eng_MechEI_ReviseEnd IS NOT NULL THEN CONVERT(NVARCHAR(10),project.Detail_Eng_MechEI_ReviseEnd,23)
             ELSE(CASE WHEN tdc2.ReceiveHC IS NOT NULL THEN CONVERT(VARCHAR(10),tdc2.ReceiveHC,23) 
	         ELSE (CASE WHEN pm2.RevisedEnd IS NOT NULL THEN CONVERT(VARCHAR(10),pm2.RevisedEnd,23) 
	         ELSE (case when p2.Detail_Eng_Mech_EI_Sch_End IS NOT NULL THEN CONVERT(VARCHAR(10),p2.Detail_Eng_Mech_EI_Sch_End,23)
			 ELSE '' end) END) END) END) AS EI_RevisedEnd,
       (CASE WHEN project.PM_LLEP_RevisedEnd IS NOT NULL THEN CONVERT(VARCHAR(10),project.PM_LLEP_RevisedEnd,23) 
             ELSE (CASE WHEN project.ProjectControl_LP_SchEnd IS NOT NULL THEN CONVERT(VARCHAR(10),project.ProjectControl_LP_SchEnd,23)
             ELSE '' END) END) AS LLE_RevisedEnd,
       (CASE WHEN project.CM_CC_RevisedEnd IS NOT NULL THEN CONVERT(VARCHAR(10),project.CM_CC_RevisedEnd,23) 
             ELSE (CASE WHEN project.ProjectControl_CC_SchEnd IS NOT NULL THEN CONVERT(VARCHAR(10),project.ProjectControl_CC_SchEnd,23)
             ELSE '' END) END) AS Const_Civil_RevisedEnd,
       (CASE WHEN project.CM_CM_RevisedEnd IS NOT NULL THEN CONVERT(VARCHAR(10),project.CM_CM_RevisedEnd,23) 
             ELSE (CASE WHEN project.ProjectControl_CM_SchEnd IS NOT NULL THEN CONVERT(VARCHAR(10),project.ProjectControl_CM_SchEnd,23)
             ELSE '' END) END) AS  Const_EI_RevisedEnd
        FROM
          (SELECT manPlan.ManHoursPlanId, manPlan.EProjectId, manPlan.EngineerId,manPlan.DisciplineId, 
             manPlan.Account, manPlan.Discipline, manPlan.ManHours, manPlan.Roles
            FROM  dbo.ManHours_Plan manPlan
		    LEFT JOIN dbo.Editor_EProject project ON manPlan.EProjectId = project.EProjectId
			LEFT JOIN dbo.Sys_User users ON users.UserId = manPlan.EngineerId
            WHERE ((manPlan.AccountDisabled=0 AND ((project.ProjectControl_JobStatus!='Closed') 
                 OR (project.ProjectControl_JobStatus IS NULL) 
                 OR (project.ProjectControl_JobStatus='Cancelled' AND DATEDIFF(MONTH,project.ProjectControl_PC_CancelDate,GETDATE())<=3) 
				 OR (project.ProjectControl_JobStatus='MC' AND DATEDIFF(MONTH,project.ProjectControl_MS_MC,GETDATE())<=6)))
				 OR (manPlan.AccountDisabled=1 AND (project.ProjectControl_JobType='Projects' OR project.ProjectControl_JobType='Small Invest')
				 AND (project.ProjectControl_NetworkDate IS NOT NULL AND DATEDIFF(DAY,project.ProjectControl_NetworkDate,GETDATE())<= 30 )))
				 AND users.IsCalculated=1
           ) t
   LEFT JOIN dbo.Editor_EProject project ON project.EProjectId = t.EProjectId
   LEFT JOIN dbo.Sys_User u ON t.EngineerId = u.UserId
   LEFT JOIN (SELECT TOP 1 a.EProjectId,a.ReceiveHC FROM dbo.Editor_TDC a WHERE  a.ReceiveHC IS NOT NULL AND (a.Disc='10_Civil' OR a.Disc='10_Masterplanning' OR a.Disc='20_Architectral' OR a.Disc='20_HVAC') ORDER BY a.ReceiveHC DESC) AS tdc1 ON tdc1.EProjectId = project.EProjectId
   LEFT JOIN (SELECT TOP 1 a.EProjectId,a.Detail_Eng_Civil_Sch_End FROM Resource_Plan a order by a.CreateDate desc) AS p1 ON p1.EProjectId = project.EProjectId
   LEFT JOIN (SELECT TOP 1 a.EProjectId,a.RevisedEnd FROM dbo.Editor_PM a WHERE  a.RevisedEnd IS NOT NULL AND (a.DisciplinesWBSName='Civil' OR a.DisciplinesWBSName='Masterplanning' OR a.DisciplinesWBSName='Architectral' OR a.DisciplinesWBSName='HVAC') ORDER BY a.RevisedEnd DESC) AS pm1 ON pm1.EProjectId = project.EProjectId
   LEFT JOIN (SELECT TOP 1 a.EProjectId,a.ReceiveHC FROM dbo.Editor_TDC a WHERE  a.ReceiveHC IS NOT NULL AND (Disc='60_Electrical' OR Disc='65_Telecommunication' OR Disc='70_Instrument' OR Disc='01_PID' OR Disc='01_Process' OR Disc='30_Plumbing/F.F' OR Disc='40_Mech./Equi.' OR Disc='50_Piping') ORDER BY ReceiveHC DESC) AS tdc2 ON tdc2.EProjectId = project.EProjectId
   LEFT JOIN (SELECT TOP 1 a.EProjectId,a.Detail_Eng_Mech_EI_Sch_End FROM Resource_Plan a  order by CreateDate desc) AS p2 ON p2.EProjectId = project.EProjectId
   LEFT JOIN (SELECT TOP 1 a.EProjectId,a.RevisedEnd FROM dbo.Editor_PM a WHERE  RevisedEnd IS NOT NULL AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping') ORDER BY RevisedEnd DESC) AS pm2 ON pm2.EProjectId = project.EProjectId
 WHERE t.EngineerId=@engineerId
 ORDER BY project.ProjectControl_JobNo DESC


END


GO
/****** Object:  StoredProcedure [dbo].[Proc_ManHoursStatisticsGrid1]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO




CREATE PROCEDURE [dbo].[Proc_ManHoursStatisticsGrid1]
    @departId NVARCHAR(50)=NULL,
	@userId NVARCHAR(50)=NULL
AS
SELECT eproject.EProjectId,eproject.ProjectControl_JobNo,eproject.ProjectControl_JobTitle,
       eproject.PM_MA_JobReveive AS ReceivedDate,
       ISNULL(manHoursPlan.ManhoursPlan,0) AS ManhoursPlan, --Manhours(Plan)
       ISNULL(planDetail.ManhoursPlaned,0) AS ManhoursPlaned, --Manhours(∑Planed)
       ISNULL(actual.ManhoursActual,0) AS ManhoursActual --Manhours(∑Actual)
FROM
(SELECT SUM(ManHours) AS ManhoursPlan,EProjectId FROM ManHours_Plan p
			LEFT JOIN Sys_User AS U ON U.UserId = p.EngineerId
			WHERE (U.DepartId=@departId OR @departId IS NULL)
			AND (p.EngineerId=@userId OR @userId IS NULL)
			AND p.AccountDisabled=0
			GROUP BY EProjectId) AS manHoursPlan
     LEFT JOIN (SELECT SUM([Hour]) AS ManhoursPlaned,D.EProjectId FROM ManHours_PlanDetail AS D
			LEFT JOIN Sys_User AS U ON U.UserId = D.UserId
			WHERE (U.DepartId=@departId OR @departId IS NULL)
			AND (D.UserId = @userId OR @userId IS NULL)
			GROUP BY D.EProjectId) AS planDetail ON planDetail.EProjectId = manHoursPlan.EProjectId

     LEFT JOIN (SELECT SUM([Hours]) AS ManhoursActual,EProjectId FROM ManHours_Actual AS A
			LEFT JOIN Sys_User AS U ON U.UserId = A.UserId
			WHERE (U.DepartId = @departId OR @departId IS NULL)
			AND (A.UserId = @userId OR @userId IS NULL)
			GROUP BY EProjectId) AS actual ON actual.EProjectId = manHoursPlan.EProjectId

     LEFT JOIN dbo.Editor_EProject AS eproject ON eproject.EProjectId = manHoursPlan.EProjectId

	 WHERE (eproject.ProjectControl_JobStatus!='Closed') 
                             OR (eproject.ProjectControl_JobStatus is null) 
                             OR (eproject.ProjectControl_JobStatus!='Hold')
                             OR (eproject.ProjectControl_JobStatus='Cancelled' and datediff(MONTH,eproject.ProjectControl_PC_CancelDate,GETDATE())<=3) 
							 OR (eproject.ProjectControl_JobStatus='MC' and datediff(MONTH,eproject.CM_MA_MC,GETDATE())<=4)
	 ORDER BY eproject.ProjectControl_JobNo DESC


GO
/****** Object:  StoredProcedure [dbo].[Proc_ManHoursStatisticsGrid2]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[Proc_ManHoursStatisticsGrid2]
    @departId nvarchar(50)=null,
	@userId nvarchar(50)=null,
	@eprojectId nvarchar(50)=NULL,
	@startDate datetime=null
AS
--计划人工时
SELECT CONVERT(nvarchar(6),planDetail.DateMonth,112) as DateMonth,
SUM(Hour) as TaskPlan
into #Plan
from ManHours_PlanDetail as planDetail
left join Sys_User as u on u.UserId = planDetail.UserId
where (u.DepartId = @departId or @departId is null)
and (planDetail.UserId = @userId or @userId is null)
and (planDetail.EProjectId = @eprojectId or @eprojectId is null)
group by CONVERT(nvarchar(6),planDetail.DateMonth,112)
order by CONVERT(nvarchar(6),planDetail.DateMonth,112) DESC

--计划内实际人工时
SELECT actual.ManHoursDate as DateMonth,
SUM(Hours) as TaskActual
into #Actual
FROM ManHours_Actual as actual
left join Sys_User as u on u.UserId = actual.UserId
WHERE (actual.ManHoursPlanId is not null and actual.ManHoursPlanId!='')
and (u.DepartId = @departId or @departId is null)
and (actual.UserId = @userId or @userId is null)
and (actual.EProjectId = @eprojectId or @eprojectId is null)
group by ManHoursDate
order BY ManHoursDate DESC


--计划外人工时
SELECT ManHoursDate AS DateMonth,
SUM(Hours) AS NoPlanned
into #NoPlan
FROM ManHours_Actual as actual
left join Sys_User as u on u.UserId = actual.UserId
WHERE (actual.ManHoursPlanId is null or actual.ManHoursPlanId='')
and (actual.Account is not null AND actual.Account!='')
and (u.DepartId=@departId or @departId is null)
and (actual.UserId =@userId or @userId is null)
and (actual.EProjectId = @eprojectId or @eprojectId is null)
group by ManHoursDate
order by ManHoursDate DESC

SELECT DISTINCT(t.DateMonth) AS DateMonth
INTO #DateMonth
FROM
(SELECT DateMonth FROM #Plan
UNION
SELECT DateMonth FROM #Actual
UNION
SELECT DateMonth FROM #NoPlan) t

SELECT d.DateMonth,
isnull(p.TaskPlan,0) as PlanHours,
isnull(a.TaskActual,0) as ActualHours,
isnull(np.NoPlanned,0) as NoPlanHours
FROM #DateMonth d
left join #Plan p on p.DateMonth = d.DateMonth
left join #Actual a on a.DateMonth = d.DateMonth
left join #NoPlan np on np.DateMonth = d.DateMonth
where (d.DateMonth > CONVERT(nvarchar(6),@startDate,112) or @startDate is null)
order by CONVERT(decimal(18,2),d.DateMonth) desc

drop table #Actual
drop table #Plan
drop table #NoPlan
DROP TABLE #DateMonth


GO
/****** Object:  StoredProcedure [dbo].[Proc_MC_Report]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[Proc_MC_Report]

   @jobNo VARCHAR(50)=null

AS
select eproject.EProjectId,
eproject.ProjectControl_JobNo,--Job No.	
eproject.ProjectControl_JobType,--Job Type	
eproject.ProjectControl_LeadByName,--Lead By	
eproject.ProjectControl_JobTitle,--Job Title	
CONVERT(NVARCHAR(10),eproject.CM_MA_MC,23) as CM_MA_MC,--MC Actual	
CONVERT(NVARCHAR(10),(SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D11_MC'  ORDER BY ReceiveHC DESC),23) AS MC_Signed,--MC Signed	
CONVERT(NVARCHAR(10),(SELECT TOP 1 ReceiveHC FROM dbo.Editor_TDC WHERE Type='D12_RFSU'  AND ReceiveHC IS NOT NULL AND EProjectId=eproject.EProjectId ORDER BY ReceiveHC DESC),23) as RFSU,--RFSU	
eproject.CAPEXPlanNo,
eproject.ProjectControl_JobStatus,--Job Status	
eproject.ProjectControl_ProjectManager,--Project Manager
eproject.ProjectControl_ConstManager,--Construction Manager
(select top 1 UserName from View_ResourceDisc where EProjectId = eproject.EProjectId and Discipline like '%Document%') as TDCManager--TDC
from Editor_EProject eproject
WHERE eproject.ProjectControl_JobNo like @jobNo or @jobNo is null
ORDER BY eproject.CM_MA_MC desc


GO
/****** Object:  StoredProcedure [dbo].[Proc_NewManHours_Plan]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[Proc_NewManHours_Plan]
	  @JobNo VARCHAR(50)=NULL,--编号
	  @JobType VARCHAR(50)=NULL, --类型
	  @JobStatus VARCHAR(100)=NULL,--状态
	  @sId VARCHAR(50)=NULL,--用户id 
	  @pageSize VARCHAR(50)=NULL,--条数
	  @pageIndex VARCHAR(50)=NULL,--页数
	  @Layer INT=NULL,--级别
	  @Status INT=NULL --是否关闭
AS
BEGIN
	declare @sql NVARCHAR(MAX)
    declare @sqlCount NVARCHAR(MAX)
    declare @strWhere varchar(2000)
    
     IF(LEN(@Status)>0)    
    BEGIN
      IF @Status=1  
	BEGIN
        SET @strWhere=' AccountDisabled=0 AND ((ProjectControl_JobStatus!=''Closed'') or (ProjectControl_JobStatus is null) or (ProjectControl_JobStatus=''Cancelled'' and datediff(MONTH,ProjectControl_PC_CancelDate,GETDATE())<=3) or (ProjectControl_JobStatus=''MC'' and datediff(MONTH,CM_MA_MC,GETDATE())<=4))'
	END
   ELSE IF @Status=2
	BEGIN
	
      SET @strWhere =' AccountDisabled=1'
	END
     
   END 
    
   IF(LEN(@JobNo)>0)
   BEGIN
     SET @strWhere+=' and ProjectControl_JobNo like ''%'+@JobNo+'%'''
   END   
	
   IF(LEN(@JobType)>0)    
    BEGIN
     SET @strWhere +=' and ProjectControl_JobType='''+@JobType+''''
   END 
   
  IF(LEN(@JobStatus)>0)    
    BEGIN
     SET @strWhere +=' and ProjectControl_JobStatus='''+@JobStatus+''''
   END 
   
    IF(LEN(@Layer)>0)    
    BEGIN
     IF @Layer=1  
	BEGIN
      SET @strWhere +=' and EngineerId='''+@sId+''''
	END
	
	 ELSE IF @Layer=2
	BEGIN
      SET @strWhere +=' and DepartId='''+@sId+''''
	END
    
    END 
    
    SET @sql ='SELECT  g.* FROM  (
SELECT [ManHoursPlanId]
      ,[ResourcePlanId]
      ,[EProjectId]
      ,[EngineerId]
      ,[Account]
      ,[DisciplineId]
      ,[Discipline]
      ,[Roles]
      ,[ManHours]
      ,[AccountDisabled]
      ,[ProjectControl_JobNo]
      ,[ProjectControl_JobType]
      ,[ProjectControl_JobStatus]
      ,[ProjectControl_JobTitle]
      ,[ProjectControl_BUCode]
      ,[ProjectControl_PC_CancelDate]
	  ,[CM_MA_MC]
      ,[EngineerName]
      ,[DepartId]
      ,[DepartName]
    , ROW_NUMBER() OVER (ORDER BY  ProjectControl_JobNo DESC,Roles) AS RowIndex  FROM View_NewManHours_Plan WHERE  '+@strWhere+'
    ) g WHERE g.RowIndex > (('+@pageIndex+'-1) * '+@PageSize+') AND g.RowIndex <=( '+@PageIndex+' * '+@PageSize+')'
    
    
   SET @sqlCount ='SELECT  count(1)recordsTotal FROM View_NewManHours_Plan WHERE '+@strWhere+''
 
 EXEC sp_executesql @sql; 
 
 EXEC sp_executesql @sqlCount;   
   
END


GO
/****** Object:  StoredProcedure [dbo].[Proc_NewManHoursStatistics]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


-- =============================================
-- Author:		<Author,,Name>
-- Create date: <Create Date,,>
-- Description:	<Description,,>
-- =============================================
CREATE PROCEDURE [dbo].[Proc_NewManHoursStatistics]
	 @Layer int,--级别
	 @sId  VARCHAR(50), --编号
     @Start VARCHAR(50),
	 @End VARCHAR(50),
	 @DepartId VARCHAR(50)
	 --@pageSize VARCHAR(50)=NULL,--条数
	 --@pageIndex VARCHAR(50)=NULL--页数
AS
BEGIN
    declare @sql NVARCHAR(MAX)
    declare @sqlCount NVARCHAR(MAX)
  
    
		IF @Layer=0 
BEGIN
with s1 as(SELECT actual.[EProjectId],actual.[UserId] ,SUM([Hours])Hours
 FROM [ManHours_Actual] actual
 left join ManHours_Plan p on p.ManHoursPlanId=actual.ManHoursPlanId
 where actual.EProjectId is not null and actual.UserId is not null and p.AccountDisabled=0
 group by  actual.[EProjectId] ,actual.[UserId]),
 s2 as(SELECT [EProjectId] ,[EngineerId] ,sum(ManHours)ManHours
 FROM [ManHours_Plan] 
 where EngineerId is not null and AccountDisabled=0
 group by  [EProjectId] ,[EngineerId])
,s3 as(SELECT View_Sys_Users.UserId,[UserName] ,[DepartId],[DepartCode],[DepartName],SupCheckItem,s2.ManHours
 ,s1.Hours,s1.EProjectId 
 FROM [View_Sys_Users] 
 left join s1 on View_Sys_Users.UserId=s1.UserId left join s2 
 on View_Sys_Users.UserId=s2.EngineerId where s1.EProjectId=s2.EProjectId)
 ,s4 as( select EProjectId,SupCheckItem,SUM(ManHours)ManHours
 ,SUM([Hours])Hours  from s3 
 group by EProjectId,SupCheckItem)
 
  SELECT SupCheckItem,ManHours
 ,Hours,s4.EProjectId ,
 e.ProjectControl_JobNo, e.ProjectControl_JobType, e.PM_MA_JobReveive as ReceivedDate, e.ProjectControl_JobStatus, 
 e.ProjectControl_JobTitle, e.ProjectControl_BUCode,  e.ProjectControl_MS_MC  into #S14
 from s4 left join Editor_EProject e on s4.EProjectId=e.EProjectId
 
 SELECT SupCheckItem,ManHours
 ,Hours,EProjectId ,
 ProjectControl_JobNo, ProjectControl_JobType,  ReceivedDate, ProjectControl_JobStatus, 
 ProjectControl_JobTitle, ProjectControl_BUCode,  ProjectControl_MS_MC 

     FROM #S14  where ProjectControl_JobStatus='On going'
 

 
   DROP TABLE #S14
 
END
ELSE IF @Layer=1 
BEGIN
 with s1 as(SELECT actual.[EProjectId],actual.[UserId] ,SUM([Hours])Hours
 FROM [ManHours_Actual] as actual 
 left join ManHours_Plan p on p.ManHoursPlanId = actual.ManHoursPlanId
 where actual.EProjectId is not null and actual.UserId is not null and p.[AccountDisabled]=0
 group by actual.[EProjectId] ,actual.[UserId]),
 s2 as(SELECT [EProjectId] ,[EngineerId] ,sum(ManHours)ManHours
 FROM [ManHours_Plan] 
 where EngineerId is not null and [AccountDisabled]=0
 group by [EProjectId] ,[EngineerId])
,s3 as(SELECT View_Sys_Users.UserId,[UserName] ,[DepartId],[DepartCode],[DepartName],s2.ManHours
 ,s1.Hours,s1.EProjectId FROM [View_Sys_Users] 
 left join s1 on View_Sys_Users.UserId=s1.UserId left join s2 
 on View_Sys_Users.UserId=s2.EngineerId where s1.EProjectId=s2.EProjectId)

 SELECT UserId,[UserName] ,[DepartId],[DepartCode],[DepartName],ManHours
 ,Hours,s3.EProjectId ,
 e.ProjectControl_JobNo, e.ProjectControl_JobType, e.PM_MA_JobReveive as ReceivedDate, e.ProjectControl_JobStatus, 
 e.ProjectControl_JobTitle, e.ProjectControl_BUCode,  e.ProjectControl_MS_MC  into #S5
 from s3 left join Editor_EProject e on s3.EProjectId=e.EProjectId
 
 SELECT UserId,[UserName] ,[DepartId],[DepartCode],[DepartName],ManHours
 ,Hours,EProjectId ,
 ProjectControl_JobNo, ProjectControl_JobType,  ReceivedDate, ProjectControl_JobStatus, 
 ProjectControl_JobTitle, ProjectControl_BUCode,  ProjectControl_MS_MC 
     FROM #S5 where UserId=@sId
 
 SELECT  CONVERT(varchar(6) , planDetail.DateMonth, 112 ) DateMonth,
SUM(Hour) Hour,
COUNT(distinct planDetail.UserId) UserNum,
View_Sys_Users.DepartId,
View_Sys_Users.UserId
into #Manhours1u
FROM ManHours_PlanDetail as planDetail
left join ManHours_Plan p on p.ManHoursPlanId = planDetail.PlanManHoursId
left join  View_Sys_Users on planDetail.UserId=View_Sys_Users.UserId
where View_Sys_Users.DepartId is not null and View_Sys_Users.UserId is not null and p.[AccountDisabled]=0
group by CONVERT(varchar(6) , planDetail.DateMonth, 112 ),View_Sys_Users.UserId,View_Sys_Users.DepartId  order by CONVERT(varchar(6) , planDetail.DateMonth, 112 )
 

 
 SELECT CONVERT(varchar(6) , actual.[Month], 112 )data ,SUM(actual.[Hours])Hours ,View_Sys_Users.DepartId,View_Sys_Users.UserId
  into #Manhours2u
  FROM ManHours_Actual actual
  left join ManHours_Plan p on p.ManHoursPlanId=actual.ManHoursPlanId
  left join  View_Sys_Users on actual.UserId=View_Sys_Users.UserId
 where actual.EProjectId is  null and  View_Sys_Users.DepartId is not null and p.[AccountDisabled]=0
 group by CONVERT(varchar(6),actual.[Month], 112),View_Sys_Users.DepartId,View_Sys_Users.UserId
  
  
 SELECT CONVERT(varchar(6) , actual.[Month], 112 )data ,SUM(actual.[Hours])Hours ,View_Sys_Users.DepartId,View_Sys_Users.UserId
 into #Manhours3u
  FROM ManHours_Actual actual
   left join  View_Sys_Users on actual.UserId=View_Sys_Users.UserId
   left join ManHours_Plan p on p.ManHoursPlanId=actual.ManHoursPlanId
  where actual.EProjectId is not null and  View_Sys_Users.DepartId is not null and p.[AccountDisabled]=0
   group by CONVERT(varchar(6),actual.[Month], 112),View_Sys_Users.DepartId,View_Sys_Users.UserId
 
select #Manhours1u.DateMonth,#Manhours1u.UserNum, #Manhours1u.DepartId,  #Manhours1u.UserId,  ISNULL(#Manhours1u.Hour,0)TaskPlan,ISNULL(#Manhours2u.Hours,0)TaskActual , ISNULL(#Manhours3u.Hours,0)NoPlanned 
into #Manhours4u from #Manhours1u left join #Manhours2u
on #Manhours1u.DateMonth=#Manhours2u.data and #Manhours1u.DepartId=#Manhours2u.DepartId
and #Manhours1u.UserId=#Manhours2u.UserId
left join #Manhours3u on #Manhours1u.DateMonth=#Manhours3u.data
and #Manhours1u.DepartId=#Manhours3u.DepartId 
and #Manhours1u.UserId=#Manhours3u.UserId 


select #Manhours4u.DateMonth,#Manhours4u.DepartId, #Manhours4u.UserId, #Manhours4u.UserNum,#Manhours4u.TaskPlan,#Manhours4u.TaskActual,#Manhours4u.NoPlanned from #Manhours4u
 
 where DepartId=@DepartId and   UserId=@sId
 
 and DateMonth between @Start and @End

order by DateMonth asc


drop table #Manhours1u
drop table #Manhours2u
drop table #Manhours3u
drop table #Manhours4u

  DROP TABLE #S5
END
ELSE IF @Layer=2
BEGIN
with s1 as(SELECT actual.[EProjectId],actual.[UserId] ,SUM(actual.[Hours])Hours
 FROM [ManHours_Actual] actual
 left join ManHours_Plan as p on p.ManHoursPlanId = actual.ManHoursPlanId
 where actual.EProjectId is not null and UserId is not null and p.AccountDisabled=0
 group by  actual.[EProjectId] ,actual.[UserId]),
 s2 as(SELECT  [EProjectId] ,[EngineerId] ,sum(ManHours)ManHours
 FROM [ManHours_Plan] 
 where EngineerId is not null and AccountDisabled=0
 group by  [EProjectId] ,[EngineerId])
,s3 as(SELECT View_Sys_Users.UserId,[UserName] ,[DepartId],[DepartCode],[DepartName],SupCheckItem,s2.ManHours
 ,s1.Hours,s1.EProjectId FROM [View_Sys_Users] 
 left join s1 on View_Sys_Users.UserId=s1.UserId left join s2 
 on View_Sys_Users.UserId=s2.EngineerId where s1.EProjectId=s2.EProjectId)
 ,s4 as( select EProjectId,SupCheckItem,SUM(ManHours)ManHours
 ,SUM([Hours])Hours  from s3 
 group by EProjectId,SupCheckItem)
 
  SELECT SupCheckItem,ManHours
 ,Hours,s4.EProjectId ,
 e.ProjectControl_JobNo, e.ProjectControl_JobType, e.PM_MA_JobReveive as ReceivedDate, e.ProjectControl_JobStatus, 
 e.ProjectControl_JobTitle, e.ProjectControl_BUCode,  e.ProjectControl_MS_MC  into #S114
 from s4 left join Editor_EProject e on s4.EProjectId=e.EProjectId
 
 SELECT SupCheckItem,ManHours
 ,Hours,EProjectId ,
 ProjectControl_JobNo, ProjectControl_JobType,  ReceivedDate, ProjectControl_JobStatus, 
 ProjectControl_JobTitle, ProjectControl_BUCode,  ProjectControl_MS_MC 
     FROM #S114 where SupCheckItem=@sId  and ProjectControl_JobStatus='On going'
     
     
     
  SELECT CONVERT(varchar(6) , planDetail.DateMonth, 112 )DateMonth,SUM(Hour)Hour,COUNT(distinct planDetail.UserId)UserNum into #Manhours1  
  FROM ManHours_PlanDetail as planDetail
  left join ManHours_Plan p on p.ManHoursPlanId = planDetail.PlanManHoursId
  where p.AccountDisabled=0
 group by CONVERT(varchar(6) , planDetail.DateMonth, 112 )  order by CONVERT(varchar(6) , planDetail.DateMonth, 112 )

 SELECT CONVERT(varchar(6) , actual.[Month], 112 )data ,SUM(actual.[Hours])Hours into #Manhours2 
 FROM ManHours_Actual as actual
 where actual.EProjectId is null 
 group by CONVERT(varchar(6),actual.[Month], 112)

 SELECT CONVERT(varchar(6) , actual.[Month], 112 )data ,SUM(actual.[Hours])Hours into #Manhours3 
 FROM ManHours_Actual as actual
 left join ManHours_Plan p on p.ManHoursPlanId = actual.ManHoursPlanId
 where actual.EProjectId is not null and p.AccountDisabled=0
 group by CONVERT(varchar(6),actual.[Month], 112)


select #Manhours1.DateMonth,#Manhours1.UserNum,ISNULL(#Manhours1.Hour,0)TaskPlan,ISNULL(#Manhours2.Hours,0)TaskActual , ISNULL(#Manhours3.Hours,0)NoPlanned 
into #Manhours4 from #Manhours1 left join #Manhours2
on #Manhours1.DateMonth=#Manhours2.data
left join #Manhours3 on #Manhours1.DateMonth=#Manhours3.data

select #Manhours4.DateMonth,#Manhours4.UserNum,#Manhours4.TaskPlan ,#Manhours4.TaskActual,#Manhours4.NoPlanned from #Manhours4
where #Manhours4.DateMonth  between @Start and @End  order by DateMonth asc


drop table #Manhours1
drop table #Manhours2
drop table #Manhours3
drop table #Manhours4   
     
END
ELSE IF @Layer=3
BEGIN
 with s1 as(SELECT actual.[EProjectId],actual.[UserId] ,SUM(actual.[Hours])Hours
 FROM [ManHours_Actual] as actual
 left join ManHours_Plan as p on p.ManHoursPlanId = actual.ManHoursPlanId
 where actual.EProjectId is not null and actual.UserId is not null and p.AccountDisabled=0
 group by  actual.[EProjectId] ,actual.[UserId]),
 s2 as(SELECT   [EProjectId] ,[EngineerId] ,sum(ManHours)ManHours
 FROM [ManHours_Plan] 
 where EngineerId is not null and AccountDisabled=0
 group by  [EProjectId] ,[EngineerId])
,s3 as(SELECT View_Sys_Users.UserId,[UserName] ,[DepartId],[DepartCode],[DepartName],s2.ManHours
 ,s1.Hours,s1.EProjectId FROM [View_Sys_Users] 
 left join s1 on View_Sys_Users.UserId=s1.UserId left join s2 
 on View_Sys_Users.UserId=s2.EngineerId where s1.EProjectId=s2.EProjectId)

 SELECT UserId,[UserName] ,[DepartId],[DepartCode],[DepartName],ManHours
 ,Hours,s3.EProjectId ,
 e.ProjectControl_JobNo, e.ProjectControl_JobType, e.PM_MA_JobReveive as ReceivedDate, e.ProjectControl_JobStatus, 
 e.ProjectControl_JobTitle, e.ProjectControl_BUCode,  e.ProjectControl_MS_MC  into #S6
 from s3 left join Editor_EProject e on s3.EProjectId=e.EProjectId
 
  SELECT UserId,[UserName] ,[DepartId],[DepartCode],[DepartName],ManHours
 ,Hours,EProjectId ,
 ProjectControl_JobNo, ProjectControl_JobType,  ReceivedDate, ProjectControl_JobStatus, 
 ProjectControl_JobTitle, ProjectControl_BUCode,  ProjectControl_MS_MC 
     FROM #S6  where DepartId=@sId and ProjectControl_JobStatus='On going'
     

  SELECT    CONVERT(varchar(6) , planDetail.DateMonth, 112 )DateMonth,
  SUM(Hour)Hour,
  COUNT(distinct planDetail.UserId)UserNum,
  View_Sys_Users.DepartId
  into #Manhours12
    FROM ManHours_PlanDetail  planDetail
	left join ManHours_Plan p on p.ManHoursPlanId = planDetail.PlanManHoursId
	left join  View_Sys_Users on planDetail.UserId=View_Sys_Users.UserId
    where View_Sys_Users.DepartId is not null and p.AccountDisabled=0
 group by CONVERT(varchar(6) , planDetail.DateMonth, 112 ),View_Sys_Users.DepartId  
 order by CONVERT(varchar(6) , planDetail.DateMonth, 112 )
 
 SELECT CONVERT(varchar(6) , actual.[Month], 112 )data ,SUM(actual.[Hours])Hours ,View_Sys_Users.DepartId
 into #Manhours22
 FROM ManHours_Actual actual
 left join ManHours_Plan as p on p.ManHoursPlanId = actual.ManHoursPlanId
 left join  View_Sys_Users on actual.UserId=View_Sys_Users.UserId 
 where actual.EProjectId is  null and  View_Sys_Users.DepartId is not null and p.AccountDisabled=0
 group by CONVERT(varchar(6),[Month], 112),View_Sys_Users.DepartId 
 
 SELECT CONVERT(varchar(6) , actual.[Month], 112 )data ,SUM(actual.[Hours])Hours ,View_Sys_Users.DepartId
 into #Manhours32
 FROM ManHours_Actual actual
left join  View_Sys_Users on actual.UserId=View_Sys_Users.UserId
left join ManHours_Plan p on p.ManHoursPlanId = actual.ManHoursPlanId
where actual.EProjectId is not null and  View_Sys_Users.DepartId is not null and p.AccountDisabled=0  
group by CONVERT(varchar(6),actual.[Month], 112),View_Sys_Users.DepartId

select #Manhours12.DateMonth,#Manhours12.UserNum, #Manhours12.DepartId,  ISNULL(#Manhours12.Hour,0)TaskPlan,ISNULL(#Manhours22.Hours,0)TaskActual , ISNULL(#Manhours32.Hours,0)NoPlanned 
into #Manhours42 from #Manhours12 left join #Manhours22
on #Manhours12.DateMonth=#Manhours22.data and #Manhours12.DepartId=#Manhours22.DepartId
left join #Manhours32 on #Manhours12.DateMonth=#Manhours32.data
and #Manhours12.DepartId=#Manhours32.DepartId


select #Manhours42.DateMonth,#Manhours42.DepartId,#Manhours42.UserNum,#Manhours42.TaskPlan,#Manhours42.TaskActual,#Manhours42.NoPlanned from #Manhours42
where #Manhours42.DateMonth  between @Start and @End  
and #Manhours42.DepartId=@sId
order by DateMonth asc




drop table #Manhours12
drop table #Manhours22
drop table #Manhours32
drop table #Manhours42
DROP TABLE #S6

END
END



GO
/****** Object:  StoredProcedure [dbo].[Proc_NewManHoursStatisticsChild]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO



-- =============================================
-- Author:		<Author,,Name>
-- Create date: <Create Date,,>
-- Description:	<Description,,>
-- =============================================
CREATE PROCEDURE [dbo].[Proc_NewManHoursStatisticsChild]
     @Layer int,--级别
	 @sId  VARCHAR(50), --部门
	 @Start VARCHAR(50),
	 @End VARCHAR(50)
AS
BEGIN
	IF @Layer=0 
BEGIN
--计划人工时
SELECT  CONVERT(varchar(6) , planDetail.DateMonth, 112 ) as DateMonth,
SUM(planDetail.[Hour]) as [Hour] 
into #Manhours1  
FROM ManHours_PlanDetail as planDetail
left join ManHours_Plan as p on p.ManHoursPlanId = planDetail.PlanManHoursId
where p.AccountDisabled=0
group by CONVERT(varchar(6) , planDetail.DateMonth, 112 )  
order by CONVERT(varchar(6) , planDetail.DateMonth, 112 ) desc
--实际人工时
 SELECT CONVERT(varchar(6) , [Month], 112 ) as [data] ,
 SUM([Hours])Hours into #Manhours3 
 FROM ManHours_Actual as actual
 left join ManHours_Plan as p on p.ManHoursPlanId = actual.ManHoursPlanId
 where actual.EProjectId is not null and p.AccountDisabled=0
 group by CONVERT(varchar(6),actual.[Month], 112)

select #Manhours3.[data],
ISNULL(#Manhours1.[Hour],0) as TaskPlan, 
ISNULL(#Manhours3.[Hours],0) as TaskActual 
into #Manhours4 from #Manhours1 
left join #Manhours3 on #Manhours1.DateMonth=#Manhours3.data

select #Manhours4.[data],
#Manhours4.TaskPlan ,
#Manhours4.TaskActual, 
0 as NoPlanned  
from #Manhours4

drop table #Manhours1
drop table #Manhours3
drop table #Manhours4

END
	IF @Layer=1
BEGIN
--计划人工时
SELECT  CONVERT(varchar(6) , planDetail.DateMonth, 112 ) as DateMonth,
SUM([Hour]) as [Hour] 
into #Manhours11  
FROM ManHours_PlanDetail as planDetail
left join ManHours_Plan as p on p.ManHoursPlanId = planDetail.PlanManHoursId
where planDetail.EProjectId=@sId and p.AccountDisabled=0
group by CONVERT(varchar(6) , planDetail.DateMonth, 112 )  
order by CONVERT(varchar(6) , planDetail.DateMonth, 112 ) desc
  
--实际人工时
SELECT CONVERT(varchar(6) , actual.[Month], 112 ) as [data] ,
SUM(actual.[Hours])Hours 
into #Manhours33 
FROM ManHours_Actual as actual
left join ManHours_Plan as p on p.ManHoursPlanId = actual.ManHoursPlanId
where actual.EProjectId=@sId and p.AccountDisabled=0
group by CONVERT(varchar(6),actual.[Month], 112)

select #Manhours33.data,
ISNULL(#Manhours11.Hour,0)TaskPlan, 
ISNULL(#Manhours33.Hours,0)TaskActual 
into #Manhours44 from #Manhours11 
left join #Manhours33 on #Manhours11.DateMonth=#Manhours33.data

select #Manhours44.data,
#Manhours44.TaskPlan ,
#Manhours44.TaskActual, 
0 as NoPlanned  from #Manhours44

drop table #Manhours11
drop table #Manhours33
drop table #Manhours44
END
	
IF @Layer=3
BEGIN
--计划人工时
  SELECT  CONVERT(varchar(6) , planDetail.DateMonth, 112 )as DateMonth,
  SUM(planDetail.[Hour]) as [Hour],
  COUNT(distinct planDetail.UserId) as UserNum,
  View_Sys_Users.DepartId
  into #Manhours12
FROM ManHours_PlanDetail as planDetail
left join  View_Sys_Users on planDetail.UserId=View_Sys_Users.UserId
left join ManHours_Plan as p on p.ManHoursPlanId = planDetail.PlanManHoursId
where View_Sys_Users.DepartId is not null and p.AccountDisabled=0
group by CONVERT(varchar(6) , planDetail.DateMonth, 112 ),View_Sys_Users.DepartId  
order by CONVERT(varchar(6) , planDetail.DateMonth, 112 ) desc
 
 --计划外实际人工时
SELECT CONVERT(varchar(6) , actual.[Month], 112 )as [data] ,
SUM(actual.[Hours])as [Hours] ,
View_Sys_Users.DepartId
into #Manhours22
FROM ManHours_Actual as actual  
left join  View_Sys_Users on actual.UserId=View_Sys_Users.UserId
 where EProjectId is null and View_Sys_Users.DepartId is not null
 group by CONVERT(varchar(6),actual.[Month], 112),View_Sys_Users.DepartId
 
 --人际人工时
 SELECT CONVERT(varchar(6),actual.[Month], 112 ) as [data] ,
 SUM(actual.[Hours]) as [Hours] ,
 View_Sys_Users.DepartId 
 into #Manhours32 
 FROM ManHours_Actual as actual
 left join  View_Sys_Users on actual.UserId=View_Sys_Users.UserId
 left join ManHours_Plan as p on p.ManHoursPlanId = actual.ManHoursPlanId 
 where actual.EProjectId is not null and  View_Sys_Users.DepartId is not null and p.AccountDisabled=0
 group by CONVERT(varchar(6),actual.[Month], 112),View_Sys_Users.DepartId


select #Manhours32.data,
#Manhours12.UserNum, 
#Manhours12.DepartId,  
ISNULL(#Manhours12.[Hour],0) as TaskPlan,
ISNULL(#Manhours32.[Hours],0) as TaskActual , 
ISNULL(#Manhours22.[Hours],0) as NoPlanned 
into #Manhours42 
from #Manhours12 
left join #Manhours32 on #Manhours32.data=#Manhours12.DateMonth and #Manhours32.DepartId=#Manhours12.DepartId
left join #Manhours22 on #Manhours22.data=#Manhours12.DateMonth and #Manhours22.DepartId=#Manhours12.DepartId


select #Manhours42.data,
#Manhours42.DepartId,
#Manhours42.UserNum,
#Manhours42.TaskPlan,
#Manhours42.TaskActual,
#Manhours42.NoPlanned 
from #Manhours42
where #Manhours42.data  between @Start and @End and #Manhours42.DepartId=@sId
order by data desc

drop table #Manhours12
drop table #Manhours22
drop table #Manhours32
drop table #Manhours42

END	
END



GO
/****** Object:  StoredProcedure [dbo].[Proc_OtherManhours]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


-- 2021.05.31
--UPDATE dbo.Editor_EProject SET ProjectControl_JobStatus='MC'
--WHERE CM_MA_MC IS NOT NULL AND ProjectControl_JobStatus!='Closed' AND ProjectControl_JobStatus!='MC'
--GO


CREATE PROCEDURE [dbo].[Proc_OtherManhours]
    @statedate NVARCHAR(10)=null,
	@enddate NVARCHAR(10)=null,
	@jobno NVARCHAR(50)=null
AS
SELECT p.ManHoursPlanId, p.EProjectId, epro.ProjectControl_JobNo,epro.ProjectControl_JobTitle,
       epro.ProjectControl_JobStatus,p.EngineerId, u.UserName,
      (CASE WHEN u.IsThirdParty=1 THEN SUBSTRING(p.Account,CHARINDEX('-',p.Account)+1,LEN(p.Account)-CHARINDEX('-',p.Account)) 
        ELSE p.Account END) AS Account, 
       p.DisciplineId,p.Roles,p.ManHours, p.AccountDisabled,ISNULL(t.Hourss,0) AS Hourss,
	   (CASE WHEN p.Roles='M00' THEN p.Roles+'_Project Management' 
       WHEN CHARINDEX('_',p.Roles)=0 THEN p.Roles+'_'+p.Discipline
       WHEN CHARINDEX('_',p.Roles)>0 THEN LEFT(p.Roles,(CHARINDEX('_',p.Roles)))+p.Discipline+'_'+SUBSTRING(p.Roles,(CHARINDEX('_',p.Roles))+1,LEN(p.Roles))
        END) AS Discipline
FROM
(SELECT SUM(ISNULL(act.[Hours],0)) AS Hourss,act.ManHoursPlanId
FROM  dbo.ManHours_Actual act
WHERE (@statedate IS NULL OR act.ManHoursDate>=@statedate) 
    AND (@enddate IS NULL OR act.ManHoursDate<=@enddate)
GROUP BY act.ManHoursPlanId) t
LEFT JOIN dbo.ManHours_Plan AS p ON p.ManHoursPlanId = t.ManHoursPlanId  
LEFT JOIN dbo.Sys_User u ON p.EngineerId = u.UserId
LEFT JOIN dbo.Editor_EProject epro ON epro.EProjectId = p.EProjectId
WHERE p.EProjectId IS NOT NULL AND (@jobno IS NULL OR epro.ProjectControl_JobNo LIKE @jobno+'%')
ORDER BY epro.ProjectControl_JobNo DESC, p.Roles,Discipline ASC


GO
/****** Object:  StoredProcedure [dbo].[Proc_Project_Manhour_Report]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE PROCEDURE [dbo].[Proc_Project_Manhour_Report]
	  @pageSize VARCHAR(50),--条数
	  @pageIndex VARCHAR(50)--页数
AS
BEGIN
	
	declare @sql NVARCHAR(MAX)
declare @sqlCount NVARCHAR(MAX)
	
	
SELECT  
      [EProjectId]
      ,[UserId]
      ,SUM([Hour])[Hour] into #S1
  FROM [EProjectDB].[dbo].[ManHours_PlanDetail]
   where EProjectId is not null
  group by  [EProjectId]
      ,[UserId]
      
   SELECT 
      [EProjectId]
      ,[EngineerId]
      ,[EngineerName]
      ,[Roles]
      ,[AccountDisabled]
       ,SUM([ManHours])[ManHours] into #S2
  FROM [EProjectDB].[dbo].[ManHours_Plan]
  where EProjectId is not null
  group by  [EProjectId]
      ,[EngineerId]
      ,[EngineerName]
      ,[Roles]
      ,[AccountDisabled]
      
      
      SELECT 
       [EProjectId]
      ,[UserId]
      ,[UserName]
     -- ,[Month]
      ,SUM([Hours])[ActualHours] into #S3
  FROM [EProjectDB].[dbo].[ManHours_Actual]
  where EProjectId is not null
   group by   [EProjectId]
      ,[UserId]
      ,[UserName]
     -- ,[Month]

     SELECT 
      #S2.[EProjectId]
      ,[EngineerId]
      ,[EngineerName]
      ,[Roles]
      ,[AccountDisabled]
       ,[ManHours]
       ,ISNULL(#S1.Hour,0)Hour  
       ,ISNULL(#S3.ActualHours,0)ActualHours  
        into #S4
       from #S2 left join #S1
       on  #S2.EProjectId=#S1.EProjectId
       and #S2.EngineerId=#S1.UserId
       left join #S3 on 
        #S2.EProjectId=#S3.EProjectId
       and #S2.EngineerId=#S3.UserId
       
       
       
      SELECT 
       #S4.[EProjectId]
        ,[ProjectControl_JobNo]
      ,[ProjectControl_JobType]
       ,[ProjectControl_JobTitle]
      ,[ProjectControl_JobStatus]
      ,[PM_General_Priority]
      ,[PM_MA_JobReveive]
      ,[ProjectControl_MS_Approval]
      ,[CM_MA_MC]
      ,[EngineerId]
      ,[EngineerName]
      ,[Roles]
      ,[AccountDisabled]
       ,[ManHours]
       ,Hour  
       ,ActualHours 
	   ,ProjectControl_BC_CloseDate 
        INTO #S5
       FROM #S4  
        LEFT JOIN Editor_EProject
       ON Editor_EProject.EProjectId=#S4.EProjectId
       
       
       
       SET @sql ='SELECT  g.* FROM  (
 SELECT [EProjectId]
        ,[ProjectControl_JobNo]
      ,[ProjectControl_JobType]
       ,[ProjectControl_JobTitle]
      ,[ProjectControl_JobStatus]
      ,[PM_General_Priority]
      ,[PM_MA_JobReveive]
      ,[ProjectControl_MS_Approval]
      ,[CM_MA_MC]
      ,[EngineerId]
      ,[EngineerName]
      ,[Roles]
      ,[AccountDisabled]
       ,[ManHours]
       ,Hour  
       ,ActualHours 
	   ,ProjectControl_BC_CloseDate 
    , ROW_NUMBER() OVER (ORDER BY  EProjectId DESC) AS RowIndex  FROM #S5 
    ) g WHERE g.RowIndex > (('+@pageIndex+'-1) * '+@pageSize+') 
	AND g.RowIndex <=( '+@pageIndex+' * '+@pageSize+')'
    
   SET @sqlCount ='SELECT  count(1)recordsTotal FROM #S5'
 
 EXEC sp_executesql @sql; 
 
 EXEC sp_executesql @sqlCount;  
     
     
     
     DROP TABLE #S1
     DROP TABLE #S2
     DROP TABLE #S3
     DROP TABLE #S4
     DROP TABLE #S5
      
      
      
END


GO
/****** Object:  StoredProcedure [dbo].[Proc_ProjectManhourReport]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE PROCEDURE [dbo].[Proc_ProjectManhourReport]

	@JobStatus NVARCHAR(100)=NULL --项目状态
AS

SELECT p.ManHoursPlanId,
eProject.ProjectControl_JobNo,
eProject.ProjectControl_JobType,
eProject.ProjectControl_JobTitle,
eProject.ProjectControl_JobStatus,
eProject.PM_General_Priority,
eProject.PM_MA_JobReveive,
PM_MA_ProjectApproval,
eProject.CM_MA_MC,
eProject.ProjectControl_BC_CloseDate,
p.AccountDisabled,
--(CASE WHEN CHARINDEX('_',p.Roles)<>0 
--THEN SUBSTRING(p.Roles,0,CHARINDEX('_',p.Roles))
--ELSE p.Roles END) AS Roles,
(CASE WHEN p.Roles='M00' THEN 'M00_Project Management' 
		     WHEN CHARINDEX('_',p.Roles)=0 THEN p.Roles+'_'+p.Discipline
			 WHEN CHARINDEX('_',p.Roles)>0 THEN LEFT(p.Roles,(CHARINDEX('_',p.Roles)))+p.Discipline + 
			                 SUBSTRING(p.Roles,CHARINDEX('_',p.Roles),LEN(p.Roles)) END) AS Roles,
p.Account,
u.UserName as EngineerName,
ISNULL(p.ManHours,0) AS ManHours,
ISNULL(h.PlanHoursSum,0) AS PlanHoursSum,
ISNULL(actual.ActualSum,0) AS ActualSum,
(SELECT TOP 1 Phase FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId ORDER BY CreateDate) AS Phase,
eProject.PM_General_CDI,
eProject.OutSourceType,
eproject.ProjectControl_LeadByName,--Lead By	
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='01_Process') AS Process,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='30_Plumbing/F.F') AS Plumbling,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='40_Mech./Equi.') AS Equipment,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='50_Piping') AS Piping,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='60_Electrical') AS Electrical,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='65_Telecommunication') AS Communication,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='70_Instrument') AS Instrument,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='10_Civil') AS Civil,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='20_Architectral') AS Architectral,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='20_HVAC') AS HVAC,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='10_MasterpLanning') AS MasterpLanning,
(SELECT TOP 1 CONVERT(NVARCHAR(10),ReceiveHC,23) FROM dbo.Editor_TDC WHERE EProjectId=eproject.EProjectId AND [Type]='D01_IFC' AND Disc='00_ALL') AS IFC_All,

(CASE WHEN eproject.Detail_Eng_Civil_SchStart IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_SchStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Civil_Sch_Start FROM dbo.Resource_Plan WHERE EProjectId = eproject.EProjectId),23) 
	END)AS Detail_Eng_Civil_Sch_Start,--PROJ_DE_CIVIL_SCH_START_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_SchEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_SchEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Civil_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23)
	END) AS Detail_Eng_Civil_Sch_End,--PROJ_DE_CIVIL_SCH_END_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_ReviseStart IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_ReviseStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedStart FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedStart IS NOT NULL 
					AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') 
					ORDER BY RevisedStart),23)
	END) AS PROJ_DE_CIVIL_ACU_START_DATE,--PROJ_DE_CIVIL_ACU_START_DATE	

(CASE WHEN eproject.Detail_Eng_Civil_ReviseEnd IS NOT NULL 
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_Civil_ReviseEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL 
					AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') 
					ORDER BY RevisedEnd DESC),23)
	END) AS PROJ_DE_CIVIL_ACU_END_DATE,--PROJ_DE_CIVIL_ACU_END_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_SchStart IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_SchStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Mech_EI_Sch_Start FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23) 
	END)AS Detail_Eng_Mech_EI_Sch_Start,--PROJ_DE_ME_SCH_START_DATE

(CASE WHEN eproject.Detail_Eng_MechEI_SchEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_SchEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 Detail_Eng_Mech_EI_Sch_End FROM dbo.Resource_Plan WHERE EProjectId=eproject.EProjectId),23) 
	END)AS PROJ_DE_ME_SCH_END_DATE,--PROJ_DE_ME_SCH_END_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_ReviseStart IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_ReviseStart,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedStart FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedStart IS NOT NULL
					AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
					ORDER BY RevisedStart),23)
	END) AS Detail_Eng_Mech_EI_Sch_End,--PROJ_DE_ME_ACU_START_DATE	

(CASE WHEN eproject.Detail_Eng_MechEI_ReviseEnd IS NOT NULL
	THEN CONVERT(VARCHAR(10),eproject.Detail_Eng_MechEI_ReviseEnd,23)
	ELSE CONVERT(VARCHAR(10),(SELECT TOP 1 RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=eproject.EProjectId AND RevisedEnd IS NOT NULL
					AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping')
					ORDER BY RevisedEnd DESC),23)
	END) AS PROJ_DE_ME_ACU_END_DATE --PROJ_DE_ME_ACU_END_DATE
FROM dbo.ManHours_Plan AS p
LEFT JOIN dbo.Editor_EProject AS eProject ON eProject.EProjectId = p.EProjectId
LEFT JOIN dbo.Sys_User u ON p.EngineerId = u.UserId
LEFT JOIN (SELECT SUM(ISNULL([Hour],0)) AS PlanHoursSum,PlanManHoursId FROM ManHours_PlanDetail GROUP BY PlanManHoursId) AS h ON h.PlanManHoursId=p.ManHoursPlanId
LEFT JOIN (SELECT SUM(ISNULL([Hours],0)) AS ActualSum,ManHoursPlanId FROM ManHours_Actual GROUP BY ManHoursPlanId) AS actual ON actual.ManHoursPlanId = p.ManHoursPlanId
WHERE p.EProjectId IS NOT NULL 
     AND (CHARINDEX(eProject.ProjectControl_JobStatus,@JobStatus)>0 OR @JobStatus IS NULL)
ORDER BY eProject.ProjectControl_JobNo DESC


GO
/****** Object:  StoredProcedure [dbo].[Proc_Rolesview]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[Proc_Rolesview]

	@jobno NVARCHAR(50)=NULL 
AS

SELECT eproject.EProjectId,
eproject.ProjectControl_BUCode,
eproject.ProjectControl_JobNo,
eproject.ProjectControl_JobType,
eproject.ProjectControl_JobTitle,
eproject.ProjectControl_JobStatus,
eproject.PM_General_Priority,
eproject.ProjectControl_ProjectManager AS ProjectManager,--P00_Pro Mngmnt
STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p 
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P10%'
FOR XML PATH('')),1,1,'') AS Proc_Designer, --P10_Pro Des

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P11%'
FOR XML PATH('')),1,1,'') AS Proc_Checker, --P11_Pro Che

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P12%'
FOR XML PATH('')),1,1,'') AS Proc_Approvers, --P12_Pro App

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P20%'
FOR XML PATH('')),1,1,'') AS ME_Designer, --P20_Mec/Equ Des

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P21%'
FOR XML PATH('')),1,1,'') AS ME_Checker,--P21_Mec/Equ Che

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P22%'
FOR XML PATH('')),1,1,'') AS ME_Approvers,--P22_Mec/Equ App

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P30%'
FOR XML PATH('')),1,1,'') AS PluFF_Designer,--P30_Plu/FF Des
 
STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P31%'
FOR XML PATH('')),1,1,'') AS PluFF_Checker,--P31_Plu/FF Che

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P32%'
FOR XML PATH('')),1,1,'') AS PluFF_Approvers,--P32_Plu/FF App

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P40%'
FOR XML PATH('')),1,1,'') AS Piping_Designer,--P40_Pip Des

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P41%'
FOR XML PATH('')),1,1,'') AS Piping_Checker,--P41_Pip Che

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%P42%'
FOR XML PATH('')),1,1,'') AS Piping_Approvers,--P42 _Pip App

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%A10%'
FOR XML PATH('')),1,1,'') AS Ins_Designer,--A10_Ins Des

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%A11%'
FOR XML PATH('')),1,1,'') AS Ins_Checker,--A11_Ins Che

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%A12%'
FOR XML PATH('')),1,1,'') AS Ins_Approvers,--A12_Ins App

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%A20%'
FOR XML PATH('')),1,1,'') AS Ele_Designer,--A20_Ele Des

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%A21%'
FOR XML PATH('')),1,1,'') AS Ele_Checker,--A21_Ele Che

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%A22%'
FOR XML PATH('')),1,1,'') AS Ele_Approvers,--A22_Ele App

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%C10%'
FOR XML PATH('')),1,1,'') AS Civ_Designer,--C10_Civ Des

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%C11%'
FOR XML PATH('')),1,1,'') AS Civ_Checker,--C11_Civ Che

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%C12%'
FOR XML PATH('')),1,1,'') AS Civ_Approvers,--C12_Civ App

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%C20%'
FOR XML PATH('')),1,1,'') AS MP_Designer,--C20_MP Des

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%C21%'
FOR XML PATH('')),1,1,'') AS MP_Checker,--C21_MP Che

STUFF((SELECT ','+u.UserName FROM ManHours_Plan AS p
		LEFT JOIN Sys_User AS u ON u.UserId = p.EngineerId 
		WHERE p.EProjectId = eproject.EProjectId AND p.Roles LIKE '%C22%'
FOR XML PATH('')),1,1,'') AS MP_Approvers --C22_MP App
FROM Editor_EProject AS eproject 
WHERE eproject.ProjectControl_JobNo=@jobno OR @jobno IS NULL


GO
/****** Object:  StoredProcedure [dbo].[Proc_SiteJobReport]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE PROCEDURE [dbo].[Proc_SiteJobReport]
	 @jobNo  NVARCHAR(50)=NULL
AS
SELECT eProject.EProjectId,
eProject.ProjectControl_JobNo,--Job No.	
eProject.ProjectControl_JobType,--Job Type	
eproject.ProjectControl_JobTitle,--Job Title	
eproject.ProjectControl_OrginalBudget,--Budget(RMB)
eProject.ProjectControl_BUCode,--Area	
eProject.ProjectControl_ConstManager, --Construction Manager
eProject.PM_General_Priority, --Priority	
CONVERT(varchar(10),eProject.CM_CC_RevisedStart,23) AS CM_CC_RevisedStart,--Civil Start Date
CONVERT(varchar(10),eProject.CM_CC_RevisedEnd,23) AS CM_CC_RevisedEnd,--Civil End Date
(CONVERT(varchar(10),CM_CC_AcutalProgress)+'%') AS CM_CC_AcutalProgress,--Civil Progress(%)

CONVERT(varchar(10),eProject.CM_CM_RevisedStart,23) AS CM_CM_RevisedStart,--Mech. E&I Start Date
CONVERT(varchar(10),eProject.CM_CM_RevisedEnd,23) AS CM_CM_RevisedEnd,--Mech. E&I End Date
(CONVERT(varchar(10),eProject.CM_CM_AcutalProgress)+'%') as CM_CM_AcutalProgress, --Mech. E&I Progress(%)

CASE WHEN ISNULL(eProject.PM_SC_PendingQty,0)>0 THEN 'C'
     WHEN ISNULL(eProject.PM_SC_PendingQty,0)=0 AND ISNULL(eProject.PM_SC_ApprovedQty,0)>0 THEN 'B'
     WHEN ISNULL(eProject.PM_SC_ApprovedQty,0)=0 AND ISNULL(eProject.PM_SC_PendingQty,0)=0 THEN 'A'
     ELSE '' END AS Schedule--Schedule
FROM Editor_EProject AS eProject
WHERE eProject.ProjectControl_JobStatus='On Going' 
AND ((GETDATE() BETWEEN CM_CC_RevisedStart AND CM_CC_RevisedEnd)
OR (GETDATE() BETWEEN CM_CM_RevisedStart AND CM_CM_RevisedEnd))
AND(eProject.ProjectControl_JobNo LIKE @jobNo OR @jobNo IS NULL)
ORDER BY eProject.ProjectControl_JobNo DESC

GO
/****** Object:  StoredProcedure [dbo].[Proc_TaskListReport]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE PROCEDURE [dbo].[Proc_TaskListReport]
	@departId NVARCHAR(50)=null,--部门
	@userId NVARCHAR(50)=NULL,  --人员
	@jobNo nvarchar(50)=null --项目号
as
/*********TaskListReport************/
SELECT eproject.EProjectId,eproject.ProjectControl_JobNo,eproject.ProjectControl_JobTitle,
       eproject.PM_MA_JobReveive,
       ISNULL(manHoursPlan.ManhoursPlan,0) AS PlanManHours, --Manhours(Plan)
       ISNULL(actual.ManhoursActual,0) AS ActualManHours --ActualManHours(∑Actual)
FROM
(SELECT SUM(ManHours) AS ManhoursPlan,EProjectId 
        FROM ManHours_Plan p
			LEFT JOIN Sys_User AS U ON U.UserId = p.EngineerId
			WHERE (U.DepartId=@departId OR @departId IS NULL)
			      AND (p.EngineerId=@userId OR @userId IS NULL)
			GROUP BY EProjectId) AS manHoursPlan
     LEFT JOIN (SELECT SUM([Hours]) AS ManhoursActual,EProjectId 
	        FROM ManHours_Actual AS A
			LEFT JOIN Sys_User AS U ON U.UserId = A.UserId
			WHERE (U.DepartId = @departId OR @departId IS NULl)
			     AND (A.UserId=@userId OR @userId IS NULL)
			GROUP BY EProjectId) AS actual ON actual.EProjectId = manHoursPlan.EProjectId

     LEFT JOIN dbo.Editor_EProject as eproject ON eproject.EProjectId = manHoursPlan.EProjectId

	 WHERE eproject.ProjectControl_JobStatus='On Going' 
	       AND (eproject.ProjectControl_JobNo LIKE @jobNo OR @jobNo IS NULl)
	 ORDER BY eproject.ProjectControl_JobNo DESC


GO
/****** Object:  StoredProcedure [dbo].[Proc_TimeSheetReport]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[Proc_TimeSheetReport]
	 @YearMonths  VARCHAR(50)=NULL, --年月份
	 @WorkCenter VARCHAR(50)=NULL   --成本中心(部门)
AS
BEGIN
/*********报表:Time Sheet Report***********/
SELECT actual.ManHoursActualId,
actual.EProjectId,
actual.ManHoursDate AS Months,
actual.Description as JobTitle,
--截取actual.Account第一个“-”前的字符
(case when charindex('-',actual.Account)>0 then substring(actual.Account,1,charindex('-',actual.Account)-1) else actual.Account end) as Account ,
--截取actual.Account第一个“-”和最二个“-”中间的字符
(case when len(actual.Account)-len(replace(actual.Account,'-',''))>1
	then left(substring(actual.Account,charindex('-',actual.Account)+1,15),charindex('-',substring(actual.Account,charindex('-',actual.Account)+1,15))-1) 
	else (case when charindex('-',actual.Account)>0 
			then substring(actual.Account,charindex('-',actual.Account)+1,len(actual.Account)-charindex('-',actual.Account))
			end) end) Op,
--截取actual.Account第二个“-”后面的字符
 (case when len(actual.Account)-len(replace(actual.Account,'-',''))>1
 then REVERSE(SUBSTRING(REVERSE(actual.Account),1,CHARINDEX('-',REVERSE(actual.Account))-1)) end) AS SubOp,
deparat.DepartName AS WorkCtr,
act.ActType,
actual.[Hours],
actual.[Type],
u.UserName,
isnull(p.ManHours,0) AS PlanedHours,
(SELECT ISNULL(SUM(ISNULL(t.Hours,0)),0) FROM dbo.ManHours_Actual t 
 WHERE t.UserId=actual.UserId and t.EProjectId = actual.EProjectId and t.ManHoursPlanId=p.ManHoursPlanId) AS ActualHours
--isnull(a.ActualHours,0) AS ActualHours
FROM ManHours_Actual AS actual
LEFT JOIN dbo.Sys_User AS u ON u.UserId=actual.UserId
left join Base_ActType as act on act.ActTypeId = u.ActType
LEFT JOIN dbo.Base_Depart AS deparat ON deparat.DepartId = u.DepartId
LEFT JOIN dbo.ManHours_Plan AS p ON p.ManHoursPlanId = actual.ManHoursPlanId
--LEFT JOIN (SELECT SUM(ISNULL(Hours,0)) AS ActualHours,UserId,EProjectId,ManHoursPlanId
--			FROM dbo.ManHours_Actual GROUP BY UserId,EProjectId,ManHoursPlanId) 
--			AS a ON a.UserId=actual.UserId and a.EProjectId = actual.EProjectId and a.ManHoursPlanId=p.ManHoursPlanId
WHERE charindex('CTE',deparat.DepartName)>0 
AND (actual.ManHoursDate=@YearMonths OR @YearMonths IS NULL)
AND (deparat.DepartName=@WorkCenter OR @WorkCenter IS NULL)
ORDER BY Months DESC, deparat.DepartName,u.UserName
END


GO
/****** Object:  StoredProcedure [dbo].[Proc_TimeSheetSummary]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[Proc_TimeSheetSummary]
	 @YearMonths  VARCHAR(50)=NULL, --年月份
	 @WorkCenter VARCHAR(50)=NULL   --成本中心(部门)
AS
BEGIN
SELECT t.*,u.UserName,d.DepartName AS WorkCenter,
(SELECT TOP 1 (CASE WHEN SUBSTRING(t.ManHoursDate,5,7)='01' THEN m.Month1
              WHEN SUBSTRING(t.ManHoursDate,5,7)='02' THEN m.Month2 
              WHEN SUBSTRING(t.ManHoursDate,5,7)='03' THEN m.Month3
              WHEN SUBSTRING(t.ManHoursDate,5,7)='04' THEN m.Month4
              WHEN SUBSTRING(t.ManHoursDate,5,7)='05' THEN m.Month5
              WHEN SUBSTRING(t.ManHoursDate,5,7)='06' THEN m.Month6
              WHEN SUBSTRING(t.ManHoursDate,5,7)='07' THEN m.Month7
              WHEN SUBSTRING(t.ManHoursDate,5,7)='08' THEN m.Month8
              WHEN SUBSTRING(t.ManHoursDate,5,7)='09' THEN m.Month9
              WHEN SUBSTRING(t.ManHoursDate,5,7)='10' THEN m.Month10
              WHEN SUBSTRING(t.ManHoursDate,5,7)='11' THEN m.Month11
              WHEN SUBSTRING(t.ManHoursDate,5,7)='12' THEN m.Month12 
     END)
  FROM dbo.Sys_ActualManHourMonthSet m WHERE m.DepartId IS NULL AND m.Years = SUBSTRING(t.ManHoursDate,0,5)) AS TargetHours,

  ISNULL(t1.NormalWorkHours,0)AS NormalWorkHours,
  ISNULL(t2.OverTimeHours,0)AS OverTimeHours,
  ISNULL(t3.TripHours,0)AS TripHours,
  ISNULL(t4.LeaveHours,0)AS LeaveHours,
  ISNULL(t5.TrainingHours,0)AS TrainingHours,
  ISNULL(t13.SickLeaveHours,0)AS SickLeaveHours,
  ISNULL(t6.OtherHours,0)AS OtherHours,
  (ISNULL(t1.NormalWorkHours,0)+ ISNULL(t2.OverTimeHours,0)+ISNULL(t3.TripHours,0)+ISNULL(t4.LeaveHours,0)+ISNULL(t5.TrainingHours,0)+ISNULL(t13.SickLeaveHours,0)+ISNULL(t6.OtherHours,0)) AS GrandHours
FROM
(SELECT distinct UserId,ManHoursDate FROM dbo.ManHours_Actual
WHERE UserId IS NOT NULL
GROUP BY ManHoursDate,UserId) t
LEFT JOIN dbo.Sys_User u ON u.UserId = t.UserId
LEFT JOIN dbo.Base_Depart d ON d.DepartId = u.DepartId

LEFT JOIN (SELECT distinct UserId, ManHoursDate,SUM(ISNULL([Hours],0)) AS NormalWorkHours
 FROM dbo.ManHours_Actual WHERE Type='T00_Normal Work'
 GROUP BY ManHoursDate,UserId) t1
 ON t1.UserId=t.UserId  AND t1.ManHoursDate=t.ManHoursDate

 LEFT JOIN 
(SELECT distinct UserId,ManHoursDate,SUM(ISNULL(Hours,0)) AS OverTimeHours
 FROM dbo.ManHours_Actual WHERE Type LIKE '%OverTime%'
 GROUP BY ManHoursDate,UserId) t2
 ON t2.UserId=t.UserId  AND t2.ManHoursDate = t.ManHoursDate

   LEFT JOIN 
(SELECT distinct UserId,ManHoursDate,SUM(ISNULL(Hours,0)) AS TripHours
 FROM dbo.ManHours_Actual WHERE Type ='T10_Trip'
 GROUP BY ManHoursDate,UserId) t3
 ON t3.UserId=t.UserId  AND t3.ManHoursDate = t.ManHoursDate

  LEFT JOIN 
(SELECT distinct UserId, ManHoursDate,SUM(ISNULL(Hours,0)) AS LeaveHours
 FROM dbo.ManHours_Actual WHERE Type ='T12_Leave'
 GROUP BY ManHoursDate,UserId) t4
 ON t4.UserId=t.UserId  AND t4.ManHoursDate=t.ManHoursDate

  LEFT JOIN 
(SELECT distinct UserId, ManHoursDate,SUM(ISNULL(Hours,0)) AS TrainingHours
 FROM dbo.ManHours_Actual WHERE Type ='T11_Training'
 GROUP BY ManHoursDate,UserId) t5
 ON t5.UserId=t.UserId  AND t5.ManHoursDate = t.ManHoursDate

 LEFT JOIN 
(SELECT distinct UserId, ManHoursDate,SUM(ISNULL(Hours,0)) AS SickLeaveHours
 FROM dbo.ManHours_Actual WHERE Type ='T13_Sick Leave'
 GROUP BY ManHoursDate,UserId) t13
 ON t13.UserId=t.UserId  AND t13.ManHoursDate = t.ManHoursDate

  LEFT JOIN 
(SELECT distinct UserId, ManHoursDate,SUM(ISNULL(Hours,0)) AS OtherHours
 FROM dbo.ManHours_Actual WHERE Type ='T19_Other'
 GROUP BY ManHoursDate,UserId) t6
 ON t6.UserId=t.UserId  AND t6.ManHoursDate = t.ManHoursDate

 WHERE  charindex('CTE',d.DepartName)>0 AND
        (t.ManHoursDate=@YearMonths OR @YearMonths IS NULL)
        AND (d.DepartName=@WorkCenter OR @WorkCenter IS NULL)

ORDER BY t.ManHoursDate DESC, d.DepartName,u.UserName
 END


GO
/****** Object:  StoredProcedure [dbo].[Proc_View_ResourcePlanDetailWBS]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[Proc_View_ResourcePlanDetailWBS]
 @EProjectId  VARCHAR(50) --编号
	
AS
BEGIN
	
	SELECT MAX(Sch_End) AS Sch_End,
MIN(Sch_Start) AS Sch_Start   FROM [dbo].[View_ResourcePlanDetailWBS]
  WHERE departName='CTE/C' AND EProjectId=@EProjectId
  
  
 SELECT MAX(Sch_End) AS Sch_End,
MIN(Sch_Start) AS Sch_Start   FROM [View_ResourcePlanDetailWBS]
  WHERE (departName='CTE/A' OR departName='CTE/P') AND 
  EProjectId=@EProjectId

	
END



GO
/****** Object:  StoredProcedure [dbo].[ProjectSchDetail]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO



CREATE PROCEDURE [dbo].[ProjectSchDetail] 

   @EProjectId VARCHAR(50)  /*主键*/ 

AS	
/*********首页Schedule中间部分**********/
SELECT 1 AS Sort,
'Detail Eng.-Civil' AS Disciplines,
(CASE WHEN  CONVERT(VARCHAR(10),spm1.SchStart,23) IS NOT NULL THEN CONVERT(VARCHAR(10),spm1.SchStart,23) 
      ELSE (CASE WHEN eproject.Detail_Eng_Civil_SchStart IS NOT NULL THEN CONVERT(NVARCHAR(10),eproject.Detail_Eng_Civil_SchStart,23)
      ELSE (CASE WHEN p.Detail_Eng_Civil_Sch_Start IS NOT NULL THEN CONVERT(VARCHAR(10),p.Detail_Eng_Civil_Sch_Start,23) 
      ELSE 'N.A' END)END)END) AS Sch_Start,

(CASE WHEN CONVERT(VARCHAR(10),spm2.SchEnd,23) IS NOT NULL THEN CONVERT(VARCHAR(10),spm2.SchEnd,23)
      ELSE (CASE WHEN eproject.Detail_Eng_Civil_SchEnd IS NOT NULL THEN CONVERT(NVARCHAR(10),eproject.Detail_Eng_Civil_SchEnd,23)
      ELSE (CASE WHEN p.Detail_Eng_Civil_Sch_End IS NOT NULL THEN CONVERT(VARCHAR(10),p.Detail_Eng_Civil_Sch_End,23)
      ELSE 'N.A' END) END) END) AS Sch_End,

(CASE WHEN CONVERT(VARCHAR(10),pm1.RevisedStart,23) IS NOT NULL THEN CONVERT(VARCHAR(10),pm1.RevisedStart,23) 
      ELSE (CASE WHEN p.Detail_Eng_Civil_Sch_Start IS NOT NULL then CONVERT(VARCHAR(10),p.Detail_Eng_Civil_Sch_Start,23)
      ELSE (case when eproject.Detail_Eng_Civil_ReviseStart IS NOT NULL THEN CONVERT(NVARCHAR(10),eproject.Detail_Eng_Civil_ReviseStart,23)
	  else 'N.A' end) END) END) AS RevisedStart,

(CASE WHEN pm2.RevisedEnd IS NOT NULL THEN CONVERT(VARCHAR(10),pm2.RevisedEnd,23)
	  ELSE (CASE WHEN p.Detail_Eng_Civil_Sch_End IS NOT NULL then CONVERT(VARCHAR(10),p.Detail_Eng_Civil_Sch_End,23)
	  ELSE (case when eproject.Detail_Eng_Civil_ReviseEnd IS NOT NULL THEN CONVERT(NVARCHAR(10),eproject.Detail_Eng_Civil_ReviseEnd,23)
	  else 'N.A' end) END) END) AS RevisedEnd,			 

(CASE WHEN eproject.Detail_Eng_Civil_SchProgress IS NOT NULL 
     THEN CONVERT(VARCHAR(50),eproject.Detail_Eng_Civil_SchProgress)+'%'
	 ELSE (CASE WHEN DATEDIFF(DAY,eproject.Detail_Eng_Civil_SchStart,eproject.Detail_Eng_Civil_SchEnd)<>0
			  THEN CAST(CAST(DATEDIFF(DAY,eproject.Detail_Eng_Civil_SchStart,GETDATE())*1.0/DATEDIFF(DAY,eproject.Detail_Eng_Civil_SchStart,eproject.Detail_Eng_Civil_SchEnd) as decimal(9,2))*100
			      as VARCHAR(10))+'%'
			  ELSE(CASE WHEN DATEDIFF(DAY,p.Detail_Eng_Civil_Sch_Start,p.Detail_Eng_Civil_Sch_End)<>0
			          THEN CAST(CAST(DATEDIFF(DAY,p.Detail_Eng_Civil_Sch_Start,GETDATE())*1.0/DATEDIFF(DAY,p.Detail_Eng_Civil_Sch_Start,p.Detail_Eng_Civil_Sch_End) as decimal(9,2))*100
			      as VARCHAR(10))+'%'
				ELSE 'N.A' END)END)END) AS SchProgress,

(CASE WHEN DATEDIFF(DAY,pm1.RevisedStart, pm2.RevisedEnd)<>0
                 THEN CAST(CAST(DATEDIFF(DAY,pm1.RevisedStart,GETDATE())*1.0/DATEDIFF(DAY,pm1.RevisedStart, pm2.RevisedEnd) 
				 AS DECIMAL(9,2))*100 AS VARCHAR(10))+'%'
      ELSE (CASE WHEN DATEDIFF(DAY,eproject.Detail_Eng_Civil_ReviseStart,eproject.Detail_Eng_Civil_ReviseEnd)<>0
                 THEN CAST(cast(DATEDIFF(DAY,eproject.Detail_Eng_Civil_ReviseStart,GETDATE())*1.0/DATEDIFF(DAY,eproject.Detail_Eng_Civil_ReviseStart,eproject.Detail_Eng_Civil_ReviseEnd) AS DECIMAL(9,2))*100 AS VARCHAR(10))+'%'
      ELSE ( CASE WHEN Detail_Eng_Civil_ReviseProgress IS NOT NULL THEN CONVERT(varchar(50),Detail_Eng_Civil_ReviseProgress)+'%'
	  ELSE (case when DATEDIFF(DAY,p.Detail_Eng_Civil_Sch_Start,p.Detail_Eng_Civil_Sch_End)<>0
	             then CAST(cast(DATEDIFF(DAY,p.Detail_Eng_Civil_Sch_Start,GETDATE())*1.0/DATEDIFF(DAY,p.Detail_Eng_Civil_Sch_Start,p.Detail_Eng_Civil_Sch_End) AS DECIMAL(9,2))*100 AS VARCHAR(10))+'%'
				 else 'N.A' end) END)END)END) AS ActualProgress

FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,Detail_Eng_Civil_Sch_Start,Detail_Eng_Civil_Sch_End FROM Resource_Plan WHERE EProjectId=@EProjectId order by CreateDate desc) AS p ON p.EProjectId = eproject.EProjectId
--计划
LEFT JOIN(SELECT TOP 1 EProjectId,SchStart FROM dbo.Editor_PM WHERE EProjectId=@EProjectId AND SchStart IS NOT NULL AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') ORDER BY SchStart) AS spm1 ON spm1.EProjectId = eproject.EProjectId
LEFT JOIN (SELECT TOP 1 EProjectId,SchEnd FROM dbo.Editor_PM WHERE EProjectId=@EProjectId AND SchEnd IS NOT NULL AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') ORDER BY SchEnd DESC) AS spm2 ON spm2.EProjectId = eproject.EProjectId
--实际
LEFT JOIN(SELECT TOP 1 EProjectId,RevisedStart FROM dbo.Editor_PM WHERE EProjectId=@EProjectId AND RevisedStart IS NOT NULL AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') ORDER BY RevisedStart) AS pm1 ON pm1.EProjectId = eproject.EProjectId
LEFT JOIN (SELECT TOP 1 EProjectId,RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=@EProjectId AND RevisedEnd IS NOT NULL AND (DisciplinesWBSName='Civil' OR DisciplinesWBSName='Masterplanning' OR DisciplinesWBSName='Architectral' OR DisciplinesWBSName='HVAC') ORDER BY RevisedEnd DESC) AS pm2 ON pm2.EProjectId = eproject.EProjectId

--不在分专业都取00_ALL AND (Disc='10_Civil' OR Disc='10_Masterplanning' OR Disc='20_Architectral' OR Disc='20_HVAC')
--LEFT JOIN(SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=@EProjectId AND ReceiveHC IS NOT NULL AND [Type]='D01_IFC'  AND Disc='00_ALL' ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION 

SELECT 2 AS Sort,
'Detail Eng.-Mech,E&I' AS Disciplines,
(CASE WHEN spm1.SchStart IS NOT NULL THEN CONVERT(VARCHAR(10),spm1.SchStart,23) 
      ELSE (CASE WHEN eproject.Detail_Eng_MechEI_SchStart IS NOT NULL THEN CONVERT(NVARCHAR(10),Detail_Eng_MechEI_SchStart,23)
      ELSE (CASE WHEN p.Detail_Eng_Mech_EI_Sch_Start IS NOT NULL THEN CONVERT(VARCHAR(10),p.Detail_Eng_Mech_EI_Sch_Start,23) 
      ELSE 'N.A' END) END) END) AS Sch_Start,

(CASE WHEN spm2.SchEnd IS NOT NULL THEN CONVERT(VARCHAR(10),spm2.SchEnd,23) 
      ELSE (CASE WHEN eproject.Detail_Eng_MechEI_SchEnd IS NOT NULL THEN CONVERT(NVARCHAR(10),eproject.Detail_Eng_MechEI_SchEnd,23)
      ELSE(CASE WHEN p.Detail_Eng_Mech_EI_Sch_End IS NOT NULL THEN CONVERT(VARCHAR(10),p.Detail_Eng_Mech_EI_Sch_End,23)
      ELSE 'N.A' END) END) END) AS Sch_End,

(CASE WHEN pm1.RevisedStart IS NOT NULL THEN CONVERT(VARCHAR(10),pm1.RevisedStart,23) 
      ELSE (CASE WHEN p.Detail_Eng_Mech_EI_Sch_Start IS NOT NULL THEN CONVERT(VARCHAR(10),p.Detail_Eng_Mech_EI_Sch_Start,23)
      ELSE (CASE WHEN eproject.Detail_Eng_MechEI_ReviseStart IS NOT NULL THEN CONVERT(NVARCHAR(10),eproject.Detail_Eng_MechEI_ReviseStart,23) 
				else 'N.A' end) END)END) AS RevisedStart,

(CASE WHEN tdc.ReceiveHC IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) 
      ELSE (CASE WHEN  pm2.RevisedEnd IS NOT NULL THEN CONVERT(VARCHAR(10),pm2.RevisedEnd,23) 
	  ELSE (CASE WHEN p.Detail_Eng_Mech_EI_Sch_End IS NOT NULL THEN CONVERT(VARCHAR(10),p.Detail_Eng_Mech_EI_Sch_End,23)
	  ELSE (case WHEN eproject.Detail_Eng_MechEI_ReviseEnd IS NOT NULL THEN CONVERT(NVARCHAR(10),eproject.Detail_Eng_MechEI_ReviseEnd,23) 
			else 'N.A' end) END) END) END) AS RevisedEnd,

(CASE WHEN eproject.Detail_Eng_MechEI_SchProgress IS NOT NULL THEN CONVERT(varchar(50),eproject.Detail_Eng_MechEI_SchProgress)+'%'
      ELSE
     (CASE WHEN DATEDIFF(DAY,eproject.Detail_Eng_MechEI_SchStart,eproject.Detail_Eng_MechEI_SchEnd)<>0
           THEN CAST(CAST(DATEDIFF(DAY,eproject.Detail_Eng_MechEI_SchStart,GETDATE())*1.0/DATEDIFF(DAY,eproject.Detail_Eng_MechEI_SchStart,eproject.Detail_Eng_MechEI_SchEnd) AS DECIMAL(9,2))*100 AS VARCHAR(10))+'%'
      ELSE
     (CASE WHEN DATEDIFF(DAY,p.Detail_Eng_Mech_EI_Sch_Start,p.Detail_Eng_Mech_EI_Sch_End)<>0
           THEN CAST(cast(DATEDIFF(DAY,p.Detail_Eng_Mech_EI_Sch_Start,GETDATE())*1.0/DATEDIFF(DAY,p.Detail_Eng_Mech_EI_Sch_Start,p.Detail_Eng_Mech_EI_Sch_End) AS DECIMAL(9,2))*100 AS VARCHAR(10))+'%'
	  ELSE 'N.A' END)END)END) AS SchProgress,

(CASE WHEN DATEDIFF(DAY,pm1.RevisedStart,CASE WHEN tdc.ReceiveHC IS NOT NULL THEN tdc.ReceiveHC ELSE pm2.RevisedEnd END)<>0
      THEN CAST(CAST(DATEDIFF(DAY,pm1.RevisedStart,GETDATE())*1.0/DATEDIFF(DAY,pm1.RevisedStart,
	      CASE WHEN tdc.ReceiveHC IS NOT NULL THEN tdc.ReceiveHC ELSE pm2.RevisedEnd END) AS DECIMAL(9,2))*100 AS VARCHAR(10))+'%'
      ELSE
     (CASE WHEN DATEDIFF(DAY,eproject.Detail_Eng_MechEI_ReviseStart,eproject.Detail_Eng_MechEI_ReviseEnd)<>0
      THEN CAST(CAST(DATEDIFF(DAY,eproject.Detail_Eng_MechEI_ReviseStart,GETDATE())*1.0/DATEDIFF(DAY,eproject.Detail_Eng_MechEI_ReviseStart,eproject.Detail_Eng_MechEI_ReviseEnd) AS DECIMAL(9,2))*100 AS VARCHAR(10))+'%'
      ELSE
     (CASE WHEN eproject.Detail_Eng_MechEI_ReviseProgress IS NOT NULL THEN CONVERT(varchar(50),eproject.Detail_Eng_MechEI_ReviseProgress)+'%'
	  ELSE (case when DATEDIFF(DAY,p.Detail_Eng_Mech_EI_Sch_Start,p.Detail_Eng_Mech_EI_Sch_End)<>0
	         then CAST(CAST(DATEDIFF(DAY,p.Detail_Eng_Mech_EI_Sch_Start,GETDATE())*1.0/DATEDIFF(DAY,p.Detail_Eng_Mech_EI_Sch_Start,p.Detail_Eng_Mech_EI_Sch_End) AS DECIMAL(9,2))*100 AS VARCHAR(10))+'%'
			 else 'N.A' END) END) END)END)AS ActualProgress
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,Detail_Eng_Mech_EI_Sch_Start,Detail_Eng_Mech_EI_Sch_End FROM Resource_Plan WHERE EProjectId=@EProjectId order by CreateDate desc) AS p ON p.EProjectId = eproject.EProjectId
--计划
LEFT JOIN(SELECT TOP 1 EProjectId,SchStart FROM dbo.Editor_PM WHERE EProjectId=@EProjectId AND SchStart IS NOT NULL AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping') ORDER BY SchStart) AS spm1 ON spm1.EProjectId = eproject.EProjectId
LEFT JOIN(SELECT TOP 1 EProjectId,SchEnd FROM dbo.Editor_PM WHERE EProjectId=@EProjectId AND SchEnd IS NOT NULL AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping') ORDER BY SchEnd DESC) AS spm2 ON spm2.EProjectId = eproject.EProjectId
--实际
LEFT JOIN(SELECT TOP 1 EProjectId,RevisedStart FROM dbo.Editor_PM WHERE EProjectId=@EProjectId AND RevisedStart IS NOT NULL AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping') ORDER BY RevisedStart) AS pm1 ON pm1.EProjectId = eproject.EProjectId
LEFT JOIN(SELECT TOP 1 EProjectId,RevisedEnd FROM dbo.Editor_PM WHERE EProjectId=@EProjectId AND RevisedEnd IS NOT NULL AND (DisciplinesWBSName='Electrical' OR DisciplinesWBSName='Telecommunication' OR DisciplinesWBSName='Instrument'OR DisciplinesWBSName='PID' OR DisciplinesWBSName='Process' OR DisciplinesWBSName='Plumbing/F.F' OR DisciplinesWBSName='Mech./Equi.' OR DisciplinesWBSName='Piping') ORDER BY RevisedEnd DESC) AS pm2 ON pm2.EProjectId = eproject.EProjectId
--不在分专业都取00_ALL AND (Disc='60_Electrical' OR Disc='65_Telecommunication' OR Disc='70_Instrument' OR Disc='01_PID' OR Disc='01_Process' OR Disc='30_Plumbing/F.F' OR Disc='40_Mech./Equi.' OR Disc='50_Piping')
LEFT JOIN(SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=@EProjectId AND ReceiveHC IS NOT NULL AND [Type]='D01_IFC' AND Disc='00_ALL'  ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION

SELECT 3 AS Sort,
'LLE Procument' AS Disciplines,
(CASE WHEN eproject.ProjectControl_LP_SchStart IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_LP_SchStart,23) ELSE 'N.A' END) AS Sch_Start,
(CASE WHEN eproject.ProjectControl_LP_SchEnd IS NOT NULL THEN	CONVERT(VARCHAR(10),eproject.ProjectControl_LP_SchEnd,23) ELSE 'N.A' END) AS Sch_End,

(CASE WHEN eproject.PM_LLEP_RevisedStart IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.PM_LLEP_RevisedStart,23)
      ELSE (CASE WHEN eproject.ProjectControl_LP_SchStart IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_LP_SchStart,23)
	  ELSE 'N.A' END) END) AS RevisedStart,  
(CASE WHEN eproject.PM_LLEP_RevisedEnd IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.PM_LLEP_RevisedEnd,23) 
      ELSE (CASE WHEN eproject.ProjectControl_LP_SchEnd IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_LP_SchEnd,23)
      ELSE 'N.A' END) END) AS RevisedEnd,

 (CASE WHEN eproject.ProjectControl_LP_Progress IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_LP_Progress)+'%' ELSE 'N.A' END) AS SchProgress,
 
 (CASE WHEN eproject.PM_LLEP_ActualProgress IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.PM_LLEP_ActualProgress)+'%' 
  ELSE
  (CASE WHEN eproject.ProjectControl_LP_Progress IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_LP_Progress)+'%'
  ELSE 'N.A' END) END) AS ActualProgress 
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId

UNION

SELECT 4 AS Sort,
'Const.-Civil' AS Disciplines,
(CASE WHEN eproject.ProjectControl_CC_SchStart IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_CC_SchStart,23) ELSE 'N.A' END) AS Sch_Start,
(CASE WHEN eproject.ProjectControl_CC_SchEnd IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_CC_SchEnd,23) ELSE 'N.A' END) AS Sch_End,

(CASE WHEN eproject.CM_CC_RevisedStart IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.CM_CC_RevisedStart,23)
      ELSE (CASE WHEN eproject.ProjectControl_CC_SchStart IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_CC_SchStart,23)
	  ELSE 'N.A' END) END) AS RevisedStart,  

(CASE WHEN eproject.CM_CC_RevisedEnd IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.CM_CC_RevisedEnd,23) 
      ELSE (CASE WHEN eproject.ProjectControl_CC_SchEnd IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_CC_SchEnd,23)
      ELSE 'N.A' END) END) AS RevisedEnd,

(CASE WHEN eproject.ProjectControl_CC_Progress IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_CC_Progress)+'%' ELSE 'N.A' END) AS SchProgress,

(CASE WHEN eproject.CM_CC_AcutalProgress IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.CM_CC_AcutalProgress)+'%' 
        ELSE (CASE WHEN eproject.ProjectControl_CC_Progress IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_CC_Progress)+'%'
       ELSE 'N.A' END) END) AS ActualProgress
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId

UNION

SELECT 5 AS Sort,
'Const.-Mech,E&I' AS Disciplines,
(CASE WHEN eproject.ProjectControl_CM_SchStart IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_CM_SchStart,23) ELSE 'N.A' END) AS Sch_Start,
(CASE WHEN eproject.ProjectControl_CM_SchEnd IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_CM_SchEnd,23) ELSE 'N.A' END) AS Sch_End, 

(CASE WHEN eproject.CM_CM_RevisedStart IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.CM_CM_RevisedStart,23)
      ELSE (CASE WHEN eproject.ProjectControl_CM_SchStart IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_CM_SchStart,23)
	  ELSE 'N.A' END)END) AS RevisedStart,  

(CASE WHEN eproject.CM_MA_MC IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.CM_MA_MC,23) 
      ELSE (CASE WHEN eproject.CM_CM_RevisedEnd IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.CM_CM_RevisedEnd,23)
      ELSE (CASE WHEN eproject.ProjectControl_CM_SchEnd IS NOT NULL THEN CONVERT(VARCHAR(10),eproject.ProjectControl_CM_SchEnd,23)
      ELSE 'N.A' END) END) END) AS RevisedEnd,

  (CASE WHEN eproject.ProjectControl_CM_Progress IS NOT NULL THEN  CONVERT(VARCHAR(10),ProjectControl_CM_Progress)+'%' ELSE 'N.A' END)  AS SchProgress,
  (CASE WHEN CM_CM_AcutalProgress IS NOT NULL THEN  CONVERT(VARCHAR(10),CM_CM_AcutalProgress)+'%' 
        ELSE (CASE WHEN eproject.ProjectControl_CM_Progress IS NOT NULL THEN  CONVERT(VARCHAR(10),ProjectControl_CM_Progress)+'%'
        ELSE 'N.A' END) END) AS ActualProgress
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId


GO
/****** Object:  StoredProcedure [dbo].[ProjectSchedule]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE PROCEDURE [dbo].[ProjectSchedule] 

   @EProjectId VARCHAR(50)  

AS	
/*********首页Schedule第一部分**********/
SELECT 1 AS id,
 'Job Receive' AS MileSones,
'N.A' AS Schedule,
(CASE WHEN CONVERT(VARCHAR(10),PM_MA_JobReveive, 23) IS NOT NULL THEN CONVERT(VARCHAR(10),PM_MA_JobReveive, 23) ELSE 'N.A' END) AS Actual
FROM dbo.Editor_EProject AS eProject
WHERE eProject.EProjectId=@EProjectId

UNION
SELECT 2 AS id,
'ResourcePlan Received' AS MileSones,
 'N.A' AS Schedule,
(CASE WHEN CONVERT(VARCHAR(10),eProject.ProjectControl_MS_ResourcePlanReceived,23) IS NOT NULL 
THEN CONVERT(VARCHAR(10),eProject.ProjectControl_MS_ResourcePlanReceived,23) ELSE 'N.A' END) AS Actual
FROM dbo.Editor_EProject AS eProject
WHERE eProject.EProjectId=@EProjectId

UNION

SELECT 3 AS id,
'Kick-off Meeting' AS MileSones,
'N.A' AS Schedule,
(CASE WHEN CONVERT(VARCHAR(10), PM_MA_KickOffMeeting, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), PM_MA_KickOffMeeting, 23) ELSE 'N.A' END) AS Actual
FROM dbo.Editor_EProject AS eProject
WHERE eProject.EProjectId=@EProjectId

UNION 

SELECT 4 AS id,
'SR1/2' AS MileSones,
(CASE WHEN CONVERT(VARCHAR(10), ProjectControl_MS_SR, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), ProjectControl_MS_SR, 23) ELSE 'N.A' END) AS Schedule,
(CASE WHEN CONVERT(VARCHAR(10), PM_MA_SR, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), PM_MA_SR, 23) ELSE 'N.A' END) AS Actual
FROM dbo.Editor_EProject AS eProject
WHERE eProject.EProjectId=@EProjectId

UNION 

SELECT 5 AS id,
'Project Approval' AS MileSones,
(CASE WHEN CONVERT(VARCHAR(10), ProjectControl_MS_Approval, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), ProjectControl_MS_Approval, 23) ELSE 'N.A' END) AS Schedule,
(CASE WHEN CONVERT(VARCHAR(10), PM_MA_ProjectApproval, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), PM_MA_ProjectApproval, 23) ELSE 'N.A' END) AS Actual
FROM dbo.Editor_EProject AS eProject
WHERE eProject.EProjectId=@EProjectId

UNION

SELECT 6 AS id,
 'MC' AS MileSones,
(CASE WHEN CONVERT(VARCHAR(10), ProjectControl_Revised_MC_Date, 23) IS NOT NULL AND ProjectControl_Revised_MC_Date=ProjectControl_MS_MC
 THEN CONVERT(VARCHAR(10), ProjectControl_Revised_MC_Date, 23) 
 ELSE CASE WHEN CONVERT(VARCHAR(10), ProjectControl_Revised_MC_Date, 23) IS NOT NULL AND ProjectControl_Revised_MC_Date!=ProjectControl_MS_MC
 THEN CONVERT(VARCHAR(10), ProjectControl_Revised_MC_Date, 23)+'*'
 ELSE 'N.A' END END)  AS Schedule,
(CASE WHEN CONVERT(VARCHAR(10), CM_MA_MC, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), CM_MA_MC, 23)ELSE 'N.A' END)AS Actual
FROM dbo.Editor_EProject AS eProject
WHERE eProject.EProjectId=@EProjectId

UNION

SELECT 7 AS id,
'Close' AS MileSones,
(CASE WHEN CONVERT(VARCHAR(10), ProjectControl_MS_Close, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), ProjectControl_MS_Close, 23) ELSE 'N.A' END) AS Schedule,
(CASE WHEN CONVERT(VARCHAR(10), ProjectControl_ClosedDate, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), ProjectControl_ClosedDate, 23) ELSE 'N.A' END)as Actual

FROM dbo.Editor_EProject AS eProject
WHERE eProject.EProjectId=@EProjectId 

UNION

SELECT 8 AS id,
'Cancel' AS MileSones,
(CASE WHEN CONVERT(VARCHAR(10), ProjectControl_PC_CancelDate, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), ProjectControl_PC_CancelDate, 23) ELSE 'N.A' END) AS Schedule,
'N.A' AS Actual
FROM dbo.Editor_EProject AS eProject
WHERE eProject.EProjectId=@EProjectId


GO
/****** Object:  StoredProcedure [dbo].[Schedule_MOC]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[Schedule_MOC]

   @EProjectId VARCHAR(50) 

AS	
/**MOC项目Start**/
--竣工图接收日期
SELECT 1 AS id,
'AS-Built Received*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) ELSE 'N.A' END) AS ReceiveDate 
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE Type='D02_AS-BUILT' AND ReceiveHC IS NOT NULL AND EProjectId=@EProjectId ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION
--商务关闭日期
SELECT 2 AS id,
'Business Closed*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),ProjectControl_BC_CloseDate,23) IS NOT NULL THEN CONVERT(VARCHAR(10),ProjectControl_BC_CloseDate,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId

UNION
--主控文档更新日期
SELECT 3 AS id,
'MD Updated*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceivePDF,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceivePDF,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceivePDF FROM dbo.Editor_TDC WHERE Type='D03_MD' AND ReceivePDF IS NOT NULL AND EProjectId=@EProjectId ORDER BY ReceivePDF DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION

--剩余材料登记
SELECT 4 AS id,
'Date of Registration*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10), CM_Date_of_Registration, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), CM_Date_of_Registration, 23)ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId
/**MOC项目End**/



GO
/****** Object:  StoredProcedure [dbo].[Schedule_OrginalBudgetMax]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[Schedule_OrginalBudgetMax]

   @EProjectId VARCHAR(50) 

AS
/**预算大于100万的项目Start**/
--竣工图接收日期
SELECT 1 AS id,
'AS-Built Received*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) ELSE 'N.A' END) AS ReceiveDate 
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE Type='D02_AS-BUILT' AND Disc='00_ALL' AND ReceiveHC IS NOT NULL AND EProjectId=@EProjectId ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION

--机械竣工签署日期
SELECT 2 AS id,
'MC Signed*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE Type='D11_MC'AND ReceiveHC IS NOT NULL AND EProjectId=@EProjectId ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION

--计划具备开车条件日期
SELECT 3 AS id,
'RFSU*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
LEFT JOIN (SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE Type='D12_RFSU' AND ReceiveHC IS NOT NULL AND EProjectId=@EProjectId ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION

--C类尾项消项日期
SELECT 4 AS id,
'Punch C Killed*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(100), CM_Punch_CKilledDate, 23) IS NOT NULL THEN CONVERT(VARCHAR(100), CM_Punch_CKilledDate, 23)ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId

UNION

--FC签署日期
SELECT 5 AS id,
'FC Signed*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE Type='D30_FC' AND ReceiveHC IS NOT NULL AND EProjectId=@EProjectId ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION


--商务关闭日期
SELECT 6 AS id,
'Business Closed*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),ProjectControl_BC_CloseDate,23) IS NOT NULL THEN CONVERT(VARCHAR(10),ProjectControl_BC_CloseDate,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId

UNION

--主控文档更新日期
SELECT 7 AS id,
'MD Updated*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceivePDF,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceivePDF,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceivePDF FROM dbo.Editor_TDC WHERE Type='D03_MD' AND ReceivePDF IS NOT NULL AND EProjectId=@EProjectId ORDER BY ReceivePDF DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION

--剩余材料登记
SELECT 8 AS id,
'Date of Registration*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10), CM_Date_of_Registration, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), CM_Date_of_Registration, 23)ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId

/**预算大于100万的项目End**/


GO
/****** Object:  StoredProcedure [dbo].[Schedule_OrginalBudgetMin]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE PROCEDURE [dbo].[Schedule_OrginalBudgetMin]

   @EProjectId VARCHAR(50) 

AS
/**预算小于100万的小型投资项目Start**/
--竣工图接收日期
SELECT 1 AS id,
'AS-Built Received*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) ELSE 'N.A' END) AS ReceiveDate 
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=@EProjectId AND Type='D02_AS-BUILT' AND Disc='00_ALL' AND ReceiveHC IS NOT NULL ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION

--机械竣工签署日期
SELECT 2 AS id,
'MC Signed*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=@EProjectId AND Type='D11_MC' AND ReceiveHC IS NOT NULL ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION

--计划具备开车条件日期
SELECT 3 AS id,
'RFSU*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
LEFT JOIN (SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE Type='D12_RFSU'  AND ReceiveHC IS NOT NULL AND EProjectId=@EProjectId ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION

--C类尾项消项日期
SELECT 4 AS id,
'Punch C Killed*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(100), CM_Punch_CKilledDate, 23) IS NOT NULL THEN CONVERT(VARCHAR(100), CM_Punch_CKilledDate, 23)ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId

UNION

--商务关闭日期
SELECT 5 AS id,
'Business Closed*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),ProjectControl_BC_CloseDate,23) IS NOT NULL THEN CONVERT(VARCHAR(10),ProjectControl_BC_CloseDate,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId

UNION

--主控文档更新日期
SELECT 6 AS id,
'MD Updated*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceivePDF,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceivePDF,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceivePDF FROM dbo.Editor_TDC WHERE EProjectId=@EProjectId AND Type='D03_MD' AND ReceivePDF IS NOT NULL ORDER BY ReceivePDF DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION

--剩余材料登记
SELECT 7 AS id,
'Date of Registration*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10), CM_Date_of_Registration, 23) IS NOT NULL THEN CONVERT(VARCHAR(10), CM_Date_of_Registration, 23)ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId

/**预算小于100万的小型投资项目End**/


GO
/****** Object:  StoredProcedure [dbo].[Schedule_Other]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[Schedule_Other]

   @EProjectId VARCHAR(50) 

AS
/**其他类项目Start**/
--竣工图接收日期
SELECT 1 AS id,
'AS-Built Received*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceiveHC,23) ELSE 'N.A' END) AS ReceiveDate 
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceiveHC FROM dbo.Editor_TDC WHERE EProjectId=@EProjectId AND Type='D02_AS-BUILT' AND ReceiveHC IS NOT NULL ORDER BY ReceiveHC DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId

UNION

--商务关闭日期
SELECT 2 AS id,
'Business Closed*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),ProjectControl_BC_CloseDate,23) IS NOT NULL THEN CONVERT(VARCHAR(10),ProjectControl_BC_CloseDate,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
WHERE eproject.EProjectId=@EProjectId

UNION

--主控文档更新日期
SELECT 3 AS id,
'MD Updated*' AS Closure,
(CASE WHEN CONVERT(VARCHAR(10),tdc.ReceivePDF,23) IS NOT NULL THEN CONVERT(VARCHAR(10),tdc.ReceivePDF,23) ELSE 'N.A' END) AS ReceiveDate
FROM dbo.Editor_EProject AS eproject
LEFT JOIN(SELECT TOP 1 EProjectId,ReceivePDF FROM dbo.Editor_TDC WHERE EProjectId=@EProjectId AND Type='D03_MD' AND ReceivePDF IS NOT NULL ORDER BY ReceivePDF DESC) AS tdc ON tdc.EProjectId = eproject.EProjectId
WHERE eproject.EProjectId=@EProjectId
/**其他类项目end**/



GO
/****** Object:  StoredProcedure [dbo].[SpGetNewCode3]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE PROCEDURE [dbo].[SpGetNewCode3]
 @tableName VARCHAR(50),/*表名*/
 @columnName VARCHAR(50),/*列名*/
 @prefix VARCHAR(50),/*流水号编码前缀*/
 @returnVal NVARCHAR(100) OUTPUT
AS
/*获取一个新的流水号(后四位上增加)*/
DECLARE 
        @sql NVARCHAR(500),
        @old NVARCHAR(50),
        @newid VARCHAR(50),
        @prefix2 NVARCHAR(100),
        @maxId NVARCHAR(50)/*已分配的最大值*/
SET @prefix2= REPLACE(@prefix, @columnName, '')
SELECT @sql=N'SELECT @maxId=MAX('+@columnName+') from '+@tableName+' where ISNUMERIC('+@columnName+')<>0 AND ' + @columnName + '  like ' + '''' + @prefix2 + '%'''
--SELECT @sql=N'SELECT @maxId=MAX('+@columnName+') from '+@tableName+' where ' + @columnName + '  like ' + '''' + @prefix2 + '%'''
EXEC sp_executesql @sql, N'@maxId nvarchar(50) OUTPUT', @maxId OUTPUT 
SET @old=@maxId

IF(@old IS NULL)
BEGIN
SET @newid=@prefix+'001'
END

ELSE
BEGIN
SET @newid = (SELECT MAX(RIGHT(@old,3)))+1
SET @newid = @prefix +RIGHT('000'+@newid,3)
END

SET @returnVal=@newid









GO
/****** Object:  StoredProcedure [dbo].[SpGetNewCodeByJobNo3]    Script Date: 2022/4/11 10:09:18 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[SpGetNewCodeByJobNo3]
 @tableName VARCHAR(50),/*表名*/
 @columnName VARCHAR(50),/*列名*/
 @prefix VARCHAR(50),/*流水号编码前缀*/
 @returnVal NVARCHAR(100) OUTPUT
AS
/*获取一个新的流水号(后四位上增加)*/
DECLARE 
        @sql NVARCHAR(500),
        @old NVARCHAR(50),
        @newid VARCHAR(50),
        @prefix2 NVARCHAR(100),
        @maxId NVARCHAR(50)/*已分配的最大值*/
SET @prefix2= REPLACE(@prefix, @columnName, '')
--SELECT @sql=N'SELECT @maxId=MAX('+@columnName+') from '+@tableName+' where ISNUMERIC('+@columnName+')<>0 AND ' + @columnName + '  like ' + '''' + @prefix2 + '%'''
SELECT @sql=N'SELECT @maxId=MAX('+@columnName+') from '+@tableName+' where ' + @columnName + '  like ' + '''' + @prefix2 + '%'''
EXEC sp_executesql @sql, N'@maxId nvarchar(50) OUTPUT', @maxId OUTPUT 
SET @old=@maxId

IF(@old IS NULL)
BEGIN
SET @newid=@prefix+'001'
END

ELSE
BEGIN
SET @newid = (SELECT MAX(RIGHT(@old,3)))+1
SET @newid = @prefix +RIGHT('000'+@newid,3)
END

SET @returnVal=@newid



GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'AttachFile', @level2type=N'COLUMN',@level2name=N'AttachFileId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'对应ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'AttachFile', @level2type=N'COLUMN',@level2name=N'ToKeyId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'附件源' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'AttachFile', @level2type=N'COLUMN',@level2name=N'AttachSource'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'附件路径' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'AttachFile', @level2type=N'COLUMN',@level2name=N'AttachUrl'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'审核步骤编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'AudiFlow', @level2type=N'COLUMN',@level2name=N'AudiFlowStep'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'工作流模块' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'AudiFlow', @level2type=N'COLUMN',@level2name=N'FlowModule'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'审核步骤名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'AudiFlow', @level2type=N'COLUMN',@level2name=N'AuditFlowName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'下一步流程设置(对应多个用 “,” 隔开)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'AudiFlow', @level2type=N'COLUMN',@level2name=N'NextAuditFlow'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'流程是否结束' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'AudiFlow', @level2type=N'COLUMN',@level2name=N'IsFlowEnd'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'审批流程表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'AudiFlow'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Const', @level2type=N'COLUMN',@level2name=N'ConstId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'值' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Const', @level2type=N'COLUMN',@level2name=N'ConstValue'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Const', @level2type=N'COLUMN',@level2name=N'ConstText'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Const', @level2type=N'COLUMN',@level2name=N'GroupId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'基础表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Const'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'承包商名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Contractor', @level2type=N'COLUMN',@level2name=N'ContractorName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'承包商简称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Contractor', @level2type=N'COLUMN',@level2name=N'ContractorShortName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'备注' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Contractor', @level2type=N'COLUMN',@level2name=N'Remark'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'部门编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Depart', @level2type=N'COLUMN',@level2name=N'DepartCode'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'部门名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Depart', @level2type=N'COLUMN',@level2name=N'DepartName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'备注' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Depart', @level2type=N'COLUMN',@level2name=N'Remark'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'父节点项' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Depart', @level2type=N'COLUMN',@level2name=N'SupCheckItem'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'部门表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_Depart'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_DisciplinesWBS', @level2type=N'COLUMN',@level2name=N'DisciplinesWBSId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_DisciplinesWBS', @level2type=N'COLUMN',@level2name=N'DisciplinesWBSCode'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_DisciplinesWBS', @level2type=N'COLUMN',@level2name=N'DisciplinesWBSName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'WBS' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_DisciplinesWBS', @level2type=N'COLUMN',@level2name=N'WBS'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'部门ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_DisciplinesWBS', @level2type=N'COLUMN',@level2name=N'DepartId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'部门名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_DisciplinesWBS', @level2type=N'COLUMN',@level2name=N'DepartName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'本身角色' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_DisciplinesWBS', @level2type=N'COLUMN',@level2name=N'Roles'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'备注' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_DisciplinesWBS', @level2type=N'COLUMN',@level2name=N'Remark'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设计表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Base_DisciplinesWBS'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设计输入ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'DesignInputId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'矩阵ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'DesignRectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'EProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'条件中文名' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'DesignInputChName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'条件英文名' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'DesignInputEnName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'条件号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'DesignInputNo'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'提出条件专业' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'IssuedDiscipline'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'提出条件专业编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'IssuedDisciplineCode'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'接受条件专业' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'ReceivedDiscipline'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'提出人' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'IssuedMan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'接收人' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'ReceivedMan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划开始日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'PlanStartDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划结束日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'PlanEndDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'实际开始日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'ActStartDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'实际结束日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'ActEndDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设计过程是否完成' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Input', @level2type=N'COLUMN',@level2name=N'IsComplete'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'DesignNoticeId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设计输入ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'DesignInputId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设计阶段' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'DesignStage'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'互提编码' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'MutualIssuedNo'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'互提名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'MutualIssuedName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'互提内容' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'MutualIssuedDef'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划互提日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'PlanMutualIssuedDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'实际互提日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'ActMutualIssuedDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'提出人' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'IssuedMan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'接收人' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'ReceivedMan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否需要设计经理确认' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'IsNeedConfirm'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'说明要确认情况' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'ConfirmResult'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'标记(1-提出通知单,2-变更通知单)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Notice', @level2type=N'COLUMN',@level2name=N'Flag'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主建' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Rect_Init', @level2type=N'COLUMN',@level2name=N'DesignRectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'条件中文名' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Rect_Init', @level2type=N'COLUMN',@level2name=N'DesignInputChName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'条件英文名' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Rect_Init', @level2type=N'COLUMN',@level2name=N'DesignInputEnName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'条件号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Rect_Init', @level2type=N'COLUMN',@level2name=N'DesignInputNo'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'提出条件专业' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Rect_Init', @level2type=N'COLUMN',@level2name=N'IssuedDiscipline'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设计矩阵初始化表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Design_Rect_Init'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'承包商ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CM_HTD', @level2type=N'COLUMN',@level2name=N'ContractorId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CM_HTD', @level2type=N'COLUMN',@level2name=N'EProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'专业' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CM_HTD', @level2type=N'COLUMN',@level2name=N'Discipline'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ReceiveDate(从TDC同步-取最晚的时间:D21 - discipline ReceiveHC,ReceivePDF)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CM_HTD', @level2type=N'COLUMN',@level2name=N'ReceiveDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'状态' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CM_HTD', @level2type=N'COLUMN',@level2name=N'Status'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CostReport', @level2type=N'COLUMN',@level2name=N'CostReportId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CostReport', @level2type=N'COLUMN',@level2name=N'EProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'月份' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CostReport', @level2type=N'COLUMN',@level2name=N'Monthly'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'原始的预算' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CostReport', @level2type=N'COLUMN',@level2name=N'OrginalBudget'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'变更的预算' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CostReport', @level2type=N'COLUMN',@level2name=N'ChangedBudget'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'实际的成本' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CostReport', @level2type=N'COLUMN',@level2name=N'ActualCost'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'承诺的PR或PO成本' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CostReport', @level2type=N'COLUMN',@level2name=N'CommittedPRPO'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'承诺的SSR成本' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CostReport', @level2type=N'COLUMN',@level2name=N'CommittedSSRs'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'预估的完工仍需成本' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_CostReport', @level2type=N'COLUMN',@level2name=N'CostToComplete'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'EProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_竣工需要成本' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_General_CostToComplete'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_优先级' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_General_Priority'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_目录种类' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_General_Category'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_长周期设备采购开始日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_LLEP_RevisedStart'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_长周期设备采购结束日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_LLEP_RevisedEnd'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_实际进展' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_LLEP_ActualProgress'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_范围变更_批准的变更数' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_SC_ApprovedQty'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_范围变更_批准的变更预算' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_SC_ApprovedCost'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_范围变更_待定的变更数' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_SC_PendingQty'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_范围变更_待定的变更预算' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_SC_PendingCost'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_项目实际的里程碑_项目接受日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_MA_JobReveive'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_项目实际的里程碑_开工会日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_MA_KickOffMeeting'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_项目实际的里程碑_第1/2步安全审查日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_MA_SR'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_项目实际的里程碑_项目批准日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_MA_ProjectApproval'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_过程说明_设计领域事项' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_Remarks_Engineering'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器_过程说明_采购领域事项' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'PM_Remarks_Procurement'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_土建施工_开始日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_CC_RevisedStart'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_土建施工_结束日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_CC_RevisedEnd'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_土建施工_实际进度' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_CC_AcutalProgress'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_机械电仪_开始日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_CM_RevisedStart'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_机械电仪_结束日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_CM_RevisedEnd'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_机械电仪_实际进度' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_CM_AcutalProgress'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_成本_估计的完工成本' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_Cost'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_尾项_C类尾项消项日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_Punch_CKilledDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_开工会日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_KickOffMetting'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_过程说明_施工领域事项' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_Remarks_Construction'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_过程说明_采购领域事项' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_Remarks_Procurement'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'施工经理编辑器_过程说明_质量及环安领域事项' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'CM_Remarks_QualityHSE'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit编辑器_实际的政府报批日期_环评' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PPA_EnvAssess'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit编辑器_实际的政府报批日期_节能报告' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PPA_EnergySaving'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit编辑器_实际的政府报批日期_项目备案' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PPA_ProjectRegistration'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit编辑器_实际的政府报批日期_规划许可' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PPA_PlanningPermit'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit编辑器_实际的政府报批日期_安全条件审查' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PPA_SafetyConRev'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit编辑器_实际的政府报批日期_安全设施设计审查' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PPA_SafetyDesignRev'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit编辑器_实际的政府报批日期_消防设计审核' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PPA_FFDesignReview'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_环评' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_EnvAssess'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_节能报告' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_EnergySaving'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_项目备案' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_ProjectRegistr'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_规划许可' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_PlanningPermit'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_安全条件审查' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_SafetyConReview'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_安全设施设计审查' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_SafetyDesginReview'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_消防设计审查' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_FFDesginReview'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_施工许可' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_ConstPermit'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_安全设施竣工验收' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_SafetyFinalAcc'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_消防设施竣工验收' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_FFFinalAcc'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_环保设施竣工验收' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_EnvFinalAcc'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_文档验收' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_ArchiveAccep'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_压力容器取证' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_PressureVesse'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_政府报批需要项以及计划的日期_第三方施工监理' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PS_3rdConstJian'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_实际的政府报批日期_施工日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PA_ConstPermit'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_实际的政府报批日期_安全设施竣工验收' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PA_SafetyFinalACC'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_实际的政府报批日期_消防设施竣工验收' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PA_FFFinalACC'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Permit_实际的政府报批日期_环保设施竣工验收' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'Permit_PA_EnvFinalACC'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'SQIB_压力容器取证' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'SQIB_PressureVessel'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'SQIB_压力管道取证' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'SQIB_PressurePiping'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'SQIB_SQIB' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'SQIB_SQIB'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_项目号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_JobNo'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_项目类型' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_JobType'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_项目状态' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_JobStatus'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_项目名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_JobTitle'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_所属部门' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_BUCode'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_MOC表号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_MOCFormNo'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_网络编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_NetworkNo'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_说明链接' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_NotesLink'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_原始预算' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_OrginalBudget'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_项目账号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_Account'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_PVI预测' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_PVIPrediction'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_成本效益' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CostEffectvitity'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_主导部部门' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_LeadBy'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_项目经理' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_ProjectManager'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_施工经理' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_ConstManager'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_运行代表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_OperationRep'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目基本信息_备注说明' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_Remarks'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_成本信息_变更的预算' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_ChangedBudget'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_成本信息_承诺的PR或PO成本' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CommittedPRPO'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_成本信息_承诺的SSR成本' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CommittedSSRs'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_成本信息_当前实际' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_Actual'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_计划的项目里程碑_第1/2步安全审查日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_MS_SR'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_计划的项目里程碑_项目批准日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_MS_Approval'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_计划的项目里程碑_机械竣工日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_MS_MC'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_计划的项目里程碑_项目关闭日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_MS_Close'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_参与的项目工程师_工艺或配管工程师' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CI_Process'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_参与的项目工程师_设备工程师' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CI_Equipment'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_参与的项目工程师_仪表工程师' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CI_Instrument'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_参与的项目工程师_电气工程师' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CI_Electrical'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_参与的项目工程师_土建工程师' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CI_Civil'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_商务关闭日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_BC_CloseDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_长周期设备采购_开始日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_LP_SchStart'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_长周期设备采购_结束日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_LP_SchEnd'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_长周期设备采购_进度' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_LP_Progress'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_土建施工_开始日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CC_SchStart'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_土建施工_结束日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CC_SchEnd'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_土建施工_进度' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CC_Progress'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_机械电仪施工_开始日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CM_SchStart'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_机械电仪施工_结束日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CM_SchEnd'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_机械电仪施工_进度' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_CM_Progress'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工程师编辑器_项目取消_取消日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'ProjectControl_PC_CancelDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设计输入策划是还是完成' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'DesignPlanIsComplete'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设计输入是否归档' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'DesignInputIsFile'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设计输入文档是否提交' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_EProject', @level2type=N'COLUMN',@level2name=N'DesignDocumentIsConfirm'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned', @level2type=N'COLUMN',@level2name=N'LessonsLearnedId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned', @level2type=N'COLUMN',@level2name=N'Id'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned', @level2type=N'COLUMN',@level2name=N'JobNo'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'发件人' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned', @level2type=N'COLUMN',@level2name=N'PostBy'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'发送日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned', @level2type=N'COLUMN',@level2name=N'EntryDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'应用说明' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned', @level2type=N'COLUMN',@level2name=N'AppliedDiscip'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'阶段' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned', @level2type=N'COLUMN',@level2name=N'Stage'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'关键词' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned', @level2type=N'COLUMN',@level2name=N'Keyword'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'描述' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned', @level2type=N'COLUMN',@level2name=N'Description'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'根本原因' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned', @level2type=N'COLUMN',@level2name=N'RootCause'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'经验教训' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned', @level2type=N'COLUMN',@level2name=N'LessonLearned'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'经验教训编辑器' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_LessonsLearned'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_PM', @level2type=N'COLUMN',@level2name=N'PMId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主表Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_PM', @level2type=N'COLUMN',@level2name=N'EProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'开始日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_PM', @level2type=N'COLUMN',@level2name=N'RevisedStart'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'结束日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_PM', @level2type=N'COLUMN',@level2name=N'RevisedEnd'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'实际进度' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_PM', @level2type=N'COLUMN',@level2name=N'ActualProgress'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目经理编辑器明细表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_PM'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'尾项' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_Punch'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'TDCId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目表ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'EProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'文档类型' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'Type'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'文档专业' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'Disc'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'折合A1页数' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'A1Pages'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'应拷贝收到时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'ReceiveHC'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'PDF收到时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'ReceivePDF'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Native收到时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'ReceiveNative'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'PDF发布时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'PublishPDF'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Native上传时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'PublishNative'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'文档转交至装置时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'ToPlant'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'备注' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC', @level2type=N'COLUMN',@level2name=N'Remarks'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'文档编辑器表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Editor_TDC'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'邮件分类名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Email_Params', @level2type=N'COLUMN',@level2name=N'MailClassName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'邮件分类ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Email_Params', @level2type=N'COLUMN',@level2name=N'MailClassID'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'参数MailClassID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Email_SendTemplate', @level2type=N'COLUMN',@level2name=N'EmailParamsID'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'内容条件说明' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Email_SendTemplate', @level2type=N'COLUMN',@level2name=N'EailTiaoJian'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'邮件标题' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Email_SendTemplate', @level2type=N'COLUMN',@level2name=N'EmailTitle'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'邮件具体内容' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Email_SendTemplate', @level2type=N'COLUMN',@level2name=N'EmailContext'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'备注' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Email_SendTemplate', @level2type=N'COLUMN',@level2name=N'EmailDesc'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'发送人类型 0-发送人 1-抄送人' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Email_ToPeople', @level2type=N'COLUMN',@level2name=N'EMPeopleType'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'File_Template', @level2type=N'COLUMN',@level2name=N'TemplateId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'模板名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'File_Template', @level2type=N'COLUMN',@level2name=N'TemplateName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'上传人' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'File_Template', @level2type=N'COLUMN',@level2name=N'UploadMan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'上传时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'File_Template', @level2type=N'COLUMN',@level2name=N'UploadDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'附件路径' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'File_Template', @level2type=N'COLUMN',@level2name=N'AttachUrl'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'描述' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'File_Template', @level2type=N'COLUMN',@level2name=N'Remark'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'实际人工时Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual', @level2type=N'COLUMN',@level2name=N'ManHoursActualId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'资源计划Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual', @level2type=N'COLUMN',@level2name=N'ResourcePlanId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual', @level2type=N'COLUMN',@level2name=N'EProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'类型' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual', @level2type=N'COLUMN',@level2name=N'Type'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'说明' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual', @level2type=N'COLUMN',@level2name=N'Description'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'专业' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual', @level2type=N'COLUMN',@level2name=N'Discipline'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'专业工程师Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual', @level2type=N'COLUMN',@level2name=N'UserId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'专业工程师姓名' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual', @level2type=N'COLUMN',@level2name=N'UserName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'账号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual', @level2type=N'COLUMN',@level2name=N'Account'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'工时日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual', @level2type=N'COLUMN',@level2name=N'Month'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'工时' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual', @level2type=N'COLUMN',@level2name=N'Hours'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'实际人工时' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Actual'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'工时计划主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Plan', @level2type=N'COLUMN',@level2name=N'ManHoursPlanId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'资源计划ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Plan', @level2type=N'COLUMN',@level2name=N'ResourcePlanId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Plan', @level2type=N'COLUMN',@level2name=N'EProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设计者ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Plan', @level2type=N'COLUMN',@level2name=N'EngineerId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设计者名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Plan', @level2type=N'COLUMN',@level2name=N'EngineerName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'账号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Plan', @level2type=N'COLUMN',@level2name=N'Account'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'专业Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Plan', @level2type=N'COLUMN',@level2name=N'DisciplineId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'专业名称(若是PM,则存T00_Project Management)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Plan', @level2type=N'COLUMN',@level2name=N'Discipline'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'工时' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Plan', @level2type=N'COLUMN',@level2name=N'ManHours'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否关闭(True-关闭,False-未关闭)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Plan', @level2type=N'COLUMN',@level2name=N'AccountDisabled'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'人力资源计划表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_Plan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_PlanDetail', @level2type=N'COLUMN',@level2name=N'ManHoursPlanDetailId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_PlanDetail', @level2type=N'COLUMN',@level2name=N'EProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_PlanDetail', @level2type=N'COLUMN',@level2name=N'DateMonth'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'工时' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_PlanDetail', @level2type=N'COLUMN',@level2name=N'Hour'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'工时计划明细表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_PlanDetail'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_PlanManHours', @level2type=N'COLUMN',@level2name=N'PlanManHoursId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_PlanManHours', @level2type=N'COLUMN',@level2name=N'EprojectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'工时计划ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_PlanManHours', @level2type=N'COLUMN',@level2name=N'ManHoursPlanId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'月份(yyyy-MM)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_PlanManHours', @level2type=N'COLUMN',@level2name=N'ManHoursMonth'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'计划工时表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'ManHours_PlanManHours'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Resource_Plan', @level2type=N'COLUMN',@level2name=N'ResourcePlanId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'项目表ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Resource_Plan', @level2type=N'COLUMN',@level2name=N'EProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'账号(ProjectControl_Account)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Resource_Plan', @level2type=N'COLUMN',@level2name=N'WO'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'次数(增加第二次时,关闭第一次)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Resource_Plan', @level2type=N'COLUMN',@level2name=N'CountNum'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否关闭' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Resource_Plan', @level2type=N'COLUMN',@level2name=N'IsClose'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'资源计划表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Resource_Plan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'人头数' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ActualManHourMonthSet', @level2type=N'COLUMN',@level2name=N'HeadCount'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'按钮权限' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ButtonPower', @level2type=N'COLUMN',@level2name=N'ButtonPowerID'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'岗位ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ButtonPower', @level2type=N'COLUMN',@level2name=N'RoleId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'菜单ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ButtonPower', @level2type=N'COLUMN',@level2name=N'MenuId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'按键对应菜单ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ButtonPower', @level2type=N'COLUMN',@level2name=N'ButtonToMenuId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'按钮权限表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ButtonPower'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'按钮对应的菜单主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ButtonToMenu', @level2type=N'COLUMN',@level2name=N'ButtonToMenuId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'菜单ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ButtonToMenu', @level2type=N'COLUMN',@level2name=N'MenuId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'按钮对应的菜单表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ButtonToMenu'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Const', @level2type=N'COLUMN',@level2name=N'ID'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'常量值' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Const', @level2type=N'COLUMN',@level2name=N'ConstValue'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'常量名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Const', @level2type=N'COLUMN',@level2name=N'ConstText'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'排列序号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Const', @level2type=N'COLUMN',@level2name=N'SortIndex'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'分组id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Const', @level2type=N'COLUMN',@level2name=N'GroupId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'系统常量表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Const'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'错误日志id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ErrLogInfo', @level2type=N'COLUMN',@level2name=N'ErrLogId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'错误类型' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ErrLogInfo', @level2type=N'COLUMN',@level2name=N'ErrType'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'错误信息' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ErrLogInfo', @level2type=N'COLUMN',@level2name=N'ErrMessage'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'错误堆栈' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ErrLogInfo', @level2type=N'COLUMN',@level2name=N'ErrStackTrace'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'出错时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ErrLogInfo', @level2type=N'COLUMN',@level2name=N'ErrTime'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'出错文件' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ErrLogInfo', @level2type=N'COLUMN',@level2name=N'ErrUrl'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'IP地址' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ErrLogInfo', @level2type=N'COLUMN',@level2name=N'ErrIP'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'操作人员' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ErrLogInfo', @level2type=N'COLUMN',@level2name=N'UserName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'错误日志表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_ErrLogInfo'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'日志主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Log', @level2type=N'COLUMN',@level2name=N'LogId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Log', @level2type=N'COLUMN',@level2name=N'UserId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'操作时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Log', @level2type=N'COLUMN',@level2name=N'OperationTime'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'IP地址' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Log', @level2type=N'COLUMN',@level2name=N'Ip'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主机名' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Log', @level2type=N'COLUMN',@level2name=N'HostName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'操作日志' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Log', @level2type=N'COLUMN',@level2name=N'OperationLog'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'系统ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Log', @level2type=N'COLUMN',@level2name=N'SystemId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'日志表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Log'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'菜单主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Menu', @level2type=N'COLUMN',@level2name=N'MenuId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'菜单名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Menu', @level2type=N'COLUMN',@level2name=N'MenuName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'路径' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Menu', @level2type=N'COLUMN',@level2name=N'Url'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'排列顺序' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Menu', @level2type=N'COLUMN',@level2name=N'SortIndex'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'上级菜单' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Menu', @level2type=N'COLUMN',@level2name=N'SuperMenu'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'菜单表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Menu'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Role', @level2type=N'COLUMN',@level2name=N'RoleId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'角色名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Role', @level2type=N'COLUMN',@level2name=N'RoleName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'描述' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Role', @level2type=N'COLUMN',@level2name=N'Def'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否参与审核' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Role', @level2type=N'COLUMN',@level2name=N'IsAuditFlow'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'角色权限主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_RolePower', @level2type=N'COLUMN',@level2name=N'RolePowerId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'角色' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_RolePower', @level2type=N'COLUMN',@level2name=N'RoleId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'菜单' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_RolePower', @level2type=N'COLUMN',@level2name=N'MenuId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Set', @level2type=N'COLUMN',@level2name=N'SetId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'设置名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Set', @level2type=N'COLUMN',@level2name=N'SetName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否自动' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Set', @level2type=N'COLUMN',@level2name=N'IsAuto'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'系统设置表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_Set'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'系统id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_System', @level2type=N'COLUMN',@level2name=N'SystemId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'系统名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_System', @level2type=N'COLUMN',@level2name=N'SystemName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'系统类型(0-综合平台1-项目现场施工管理2-施工综合管理)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_System', @level2type=N'COLUMN',@level2name=N'SystemType'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否启用' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_System', @level2type=N'COLUMN',@level2name=N'IsEnable'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否多项目系统(true-是;false-否)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_System', @level2type=N'COLUMN',@level2name=N'IsMoreProject'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'系统名称表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_System'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User', @level2type=N'COLUMN',@level2name=N'UserId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'登陆账户' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User', @level2type=N'COLUMN',@level2name=N'Account'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'密码' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User', @level2type=N'COLUMN',@level2name=N'Password'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User', @level2type=N'COLUMN',@level2name=N'UserName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'所属角色' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User', @level2type=N'COLUMN',@level2name=N'RoleId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否在岗(1-在岗,0-不在岗)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User', @level2type=N'COLUMN',@level2name=N'IsPost'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否本部用户' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User', @level2type=N'COLUMN',@level2name=N'IsHeadMan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'邮箱密码' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User', @level2type=N'COLUMN',@level2name=N'EmailPassword'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'电子邮箱' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User', @level2type=N'COLUMN',@level2name=N'Email'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'登陆项目id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User', @level2type=N'COLUMN',@level2name=N'LoginProjectId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'手机号码' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User', @level2type=N'COLUMN',@level2name=N'Phone'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Sys_User'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties = 
   Begin PaneConfigurations = 
      Begin PaneConfiguration = 0
         NumPanes = 4
         Configuration = "(H (1[40] 4[20] 2[20] 3) )"
      End
      Begin PaneConfiguration = 1
         NumPanes = 3
         Configuration = "(H (1 [50] 4 [25] 3))"
      End
      Begin PaneConfiguration = 2
         NumPanes = 3
         Configuration = "(H (1 [50] 2 [25] 3))"
      End
      Begin PaneConfiguration = 3
         NumPanes = 3
         Configuration = "(H (4 [30] 2 [40] 3))"
      End
      Begin PaneConfiguration = 4
         NumPanes = 2
         Configuration = "(H (1 [56] 3))"
      End
      Begin PaneConfiguration = 5
         NumPanes = 2
         Configuration = "(H (2 [66] 3))"
      End
      Begin PaneConfiguration = 6
         NumPanes = 2
         Configuration = "(H (4 [50] 3))"
      End
      Begin PaneConfiguration = 7
         NumPanes = 1
         Configuration = "(V (3))"
      End
      Begin PaneConfiguration = 8
         NumPanes = 3
         Configuration = "(H (1[56] 4[18] 2) )"
      End
      Begin PaneConfiguration = 9
         NumPanes = 2
         Configuration = "(H (1 [75] 4))"
      End
      Begin PaneConfiguration = 10
         NumPanes = 2
         Configuration = "(H (1[66] 2) )"
      End
      Begin PaneConfiguration = 11
         NumPanes = 2
         Configuration = "(H (4 [60] 2))"
      End
      Begin PaneConfiguration = 12
         NumPanes = 1
         Configuration = "(H (1) )"
      End
      Begin PaneConfiguration = 13
         NumPanes = 1
         Configuration = "(V (4))"
      End
      Begin PaneConfiguration = 14
         NumPanes = 1
         Configuration = "(V (2))"
      End
      ActivePaneConfig = 0
   End
   Begin DiagramPane = 
      Begin Origin = 
         Top = 0
         Left = 0
      End
      Begin Tables = 
         Begin Table = "ManHours_Actual"
            Begin Extent = 
               Top = 6
               Left = 38
               Bottom = 126
               Right = 215
            End
            DisplayFlags = 280
            TopColumn = 13
         End
         Begin Table = "View_Sys_Users"
            Begin Extent = 
               Top = 6
               Left = 253
               Bottom = 126
               Right = 402
            End
            DisplayFlags = 280
            TopColumn = 0
         End
         Begin Table = "Editor_EProject"
            Begin Extent = 
               Top = 6
               Left = 440
               Bottom = 126
               Right = 733
            End
            DisplayFlags = 280
            TopColumn = 0
         End
      End
   End
   Begin SQLPane = 
   End
   Begin DataPane = 
      Begin ParameterDefaults = ""
      End
      Begin ColumnWidths = 9
         Width = 284
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
      End
   End
   Begin CriteriaPane = 
      Begin ColumnWidths = 11
         Column = 1440
         Alias = 900
         Table = 1170
         Output = 720
         Append = 1400
         NewValue = 1170
         SortType = 1350
         SortOrder = 1410
         GroupBy = 1350
         Filter = 1350
         Or = 1350
         Or = 1350
         Or = 1350
      End
   End
End
' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_ManHours_Actual'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1 , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_ManHours_Actual'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties = 
   Begin PaneConfigurations = 
      Begin PaneConfiguration = 0
         NumPanes = 4
         Configuration = "(H (1[40] 4[20] 2[20] 3) )"
      End
      Begin PaneConfiguration = 1
         NumPanes = 3
         Configuration = "(H (1 [50] 4 [25] 3))"
      End
      Begin PaneConfiguration = 2
         NumPanes = 3
         Configuration = "(H (1 [50] 2 [25] 3))"
      End
      Begin PaneConfiguration = 3
         NumPanes = 3
         Configuration = "(H (4 [30] 2 [40] 3))"
      End
      Begin PaneConfiguration = 4
         NumPanes = 2
         Configuration = "(H (1 [56] 3))"
      End
      Begin PaneConfiguration = 5
         NumPanes = 2
         Configuration = "(H (2 [66] 3))"
      End
      Begin PaneConfiguration = 6
         NumPanes = 2
         Configuration = "(H (4 [50] 3))"
      End
      Begin PaneConfiguration = 7
         NumPanes = 1
         Configuration = "(V (3))"
      End
      Begin PaneConfiguration = 8
         NumPanes = 3
         Configuration = "(H (1[56] 4[18] 2) )"
      End
      Begin PaneConfiguration = 9
         NumPanes = 2
         Configuration = "(H (1 [75] 4))"
      End
      Begin PaneConfiguration = 10
         NumPanes = 2
         Configuration = "(H (1[66] 2) )"
      End
      Begin PaneConfiguration = 11
         NumPanes = 2
         Configuration = "(H (4 [60] 2))"
      End
      Begin PaneConfiguration = 12
         NumPanes = 1
         Configuration = "(H (1) )"
      End
      Begin PaneConfiguration = 13
         NumPanes = 1
         Configuration = "(V (4))"
      End
      Begin PaneConfiguration = 14
         NumPanes = 1
         Configuration = "(V (2))"
      End
      ActivePaneConfig = 0
   End
   Begin DiagramPane = 
      Begin Origin = 
         Top = 0
         Left = 0
      End
      Begin Tables = 
         Begin Table = "M"
            Begin Extent = 
               Top = 6
               Left = 38
               Bottom = 126
               Right = 347
            End
            DisplayFlags = 280
            TopColumn = 0
         End
      End
   End
   Begin SQLPane = 
   End
   Begin DataPane = 
      Begin ParameterDefaults = ""
      End
      Begin ColumnWidths = 9
         Width = 284
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
      End
   End
   Begin CriteriaPane = 
      Begin ColumnWidths = 12
         Column = 1440
         Alias = 900
         Table = 1170
         Output = 720
         Append = 1400
         NewValue = 1170
         SortType = 1350
         SortOrder = 1410
         GroupBy = 1350
         Filter = 1350
         Or = 1350
         Or = 1350
         Or = 1350
      End
   End
End
' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_ManHours_Plan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane2', @value=N'0
         Or = 1350
      End
   End
End
' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_ManHours_Plan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1 , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_ManHours_Plan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties = 
   Begin PaneConfigurations = 
      Begin PaneConfiguration = 0
         NumPanes = 4
         Configuration = "(H (1[40] 4[20] 2[20] 3) )"
      End
      Begin PaneConfiguration = 1
         NumPanes = 3
         Configuration = "(H (1 [50] 4 [25] 3))"
      End
      Begin PaneConfiguration = 2
         NumPanes = 3
         Configuration = "(H (1 [50] 2 [25] 3))"
      End
      Begin PaneConfiguration = 3
         NumPanes = 3
         Configuration = "(H (4 [30] 2 [40] 3))"
      End
      Begin PaneConfiguration = 4
         NumPanes = 2
         Configuration = "(H (1 [56] 3))"
      End
      Begin PaneConfiguration = 5
         NumPanes = 2
         Configuration = "(H (2 [66] 3))"
      End
      Begin PaneConfiguration = 6
         NumPanes = 2
         Configuration = "(H (4 [50] 3))"
      End
      Begin PaneConfiguration = 7
         NumPanes = 1
         Configuration = "(V (3))"
      End
      Begin PaneConfiguration = 8
         NumPanes = 3
         Configuration = "(H (1[56] 4[18] 2) )"
      End
      Begin PaneConfiguration = 9
         NumPanes = 2
         Configuration = "(H (1 [75] 4))"
      End
      Begin PaneConfiguration = 10
         NumPanes = 2
         Configuration = "(H (1[66] 2) )"
      End
      Begin PaneConfiguration = 11
         NumPanes = 2
         Configuration = "(H (4 [60] 2))"
      End
      Begin PaneConfiguration = 12
         NumPanes = 1
         Configuration = "(H (1) )"
      End
      Begin PaneConfiguration = 13
         NumPanes = 1
         Configuration = "(V (4))"
      End
      Begin PaneConfiguration = 14
         NumPanes = 1
         Configuration = "(V (2))"
      End
      ActivePaneConfig = 0
   End
   Begin DiagramPane = 
      Begin Origin = 
         Top = 0
         Left = 0
      End
      Begin Tables = 
         Begin Table = "ManHours_PlanDetail"
            Begin Extent = 
               Top = 6
               Left = 38
               Bottom = 126
               Right = 232
            End
            DisplayFlags = 280
            TopColumn = 0
         End
         Begin Table = "View_Sys_Users"
            Begin Extent = 
               Top = 6
               Left = 270
               Bottom = 126
               Right = 419
            End
            DisplayFlags = 280
            TopColumn = 0
         End
      End
   End
   Begin SQLPane = 
   End
   Begin DataPane = 
      Begin ParameterDefaults = ""
      End
   End
   Begin CriteriaPane = 
      Begin ColumnWidths = 11
         Column = 1440
         Alias = 900
         Table = 1170
         Output = 720
         Append = 1400
         NewValue = 1170
         SortType = 1350
         SortOrder = 1410
         GroupBy = 1350
         Filter = 1350
         Or = 1350
         Or = 1350
         Or = 1350
      End
   End
End
' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_ManHours_PlanDetail'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1 , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_ManHours_PlanDetail'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties = 
   Begin PaneConfigurations = 
      Begin PaneConfiguration = 0
         NumPanes = 4
         Configuration = "(H (1[40] 4[20] 2[20] 3) )"
      End
      Begin PaneConfiguration = 1
         NumPanes = 3
         Configuration = "(H (1 [50] 4 [25] 3))"
      End
      Begin PaneConfiguration = 2
         NumPanes = 3
         Configuration = "(H (1 [50] 2 [25] 3))"
      End
      Begin PaneConfiguration = 3
         NumPanes = 3
         Configuration = "(H (4 [30] 2 [40] 3))"
      End
      Begin PaneConfiguration = 4
         NumPanes = 2
         Configuration = "(H (1 [56] 3))"
      End
      Begin PaneConfiguration = 5
         NumPanes = 2
         Configuration = "(H (2 [66] 3))"
      End
      Begin PaneConfiguration = 6
         NumPanes = 2
         Configuration = "(H (4 [50] 3))"
      End
      Begin PaneConfiguration = 7
         NumPanes = 1
         Configuration = "(V (3))"
      End
      Begin PaneConfiguration = 8
         NumPanes = 3
         Configuration = "(H (1[56] 4[18] 2) )"
      End
      Begin PaneConfiguration = 9
         NumPanes = 2
         Configuration = "(H (1 [75] 4))"
      End
      Begin PaneConfiguration = 10
         NumPanes = 2
         Configuration = "(H (1[66] 2) )"
      End
      Begin PaneConfiguration = 11
         NumPanes = 2
         Configuration = "(H (4 [60] 2))"
      End
      Begin PaneConfiguration = 12
         NumPanes = 1
         Configuration = "(H (1) )"
      End
      Begin PaneConfiguration = 13
         NumPanes = 1
         Configuration = "(V (4))"
      End
      Begin PaneConfiguration = 14
         NumPanes = 1
         Configuration = "(V (2))"
      End
      ActivePaneConfig = 0
   End
   Begin DiagramPane = 
      Begin Origin = 
         Top = 0
         Left = 0
      End
      Begin Tables = 
         Begin Table = "p"
            Begin Extent = 
               Top = 6
               Left = 38
               Bottom = 126
               Right = 206
            End
            DisplayFlags = 280
            TopColumn = 0
         End
         Begin Table = "e"
            Begin Extent = 
               Top = 6
               Left = 244
               Bottom = 126
               Right = 537
            End
            DisplayFlags = 280
            TopColumn = 101
         End
         Begin Table = "u"
            Begin Extent = 
               Top = 6
               Left = 575
               Bottom = 126
               Right = 724
            End
            DisplayFlags = 280
            TopColumn = 0
         End
      End
   End
   Begin SQLPane = 
   End
   Begin DataPane = 
      Begin ParameterDefaults = ""
      End
      Begin ColumnWidths = 9
         Width = 284
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
         Width = 1500
      End
   End
   Begin CriteriaPane = 
      Begin ColumnWidths = 11
         Column = 1440
         Alias = 900
         Table = 1170
         Output = 720
         Append = 1400
         NewValue = 1170
         SortType = 1350
         SortOrder = 1410
         GroupBy = 1350
         Filter = 1350
         Or = 1350
         Or = 1350
         Or = 1350
      End
   End
End
' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_NewManHours_Plan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1 , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_NewManHours_Plan'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties = 
   Begin PaneConfigurations = 
      Begin PaneConfiguration = 0
         NumPanes = 4
         Configuration = "(H (1[57] 4[5] 2[20] 3) )"
      End
      Begin PaneConfiguration = 1
         NumPanes = 3
         Configuration = "(H (1 [50] 4 [25] 3))"
      End
      Begin PaneConfiguration = 2
         NumPanes = 3
         Configuration = "(H (1 [50] 2 [25] 3))"
      End
      Begin PaneConfiguration = 3
         NumPanes = 3
         Configuration = "(H (4 [30] 2 [40] 3))"
      End
      Begin PaneConfiguration = 4
         NumPanes = 2
         Configuration = "(H (1 [56] 3))"
      End
      Begin PaneConfiguration = 5
         NumPanes = 2
         Configuration = "(H (2 [66] 3))"
      End
      Begin PaneConfiguration = 6
         NumPanes = 2
         Configuration = "(H (4 [50] 3))"
      End
      Begin PaneConfiguration = 7
         NumPanes = 1
         Configuration = "(V (3))"
      End
      Begin PaneConfiguration = 8
         NumPanes = 3
         Configuration = "(H (1[56] 4[18] 2) )"
      End
      Begin PaneConfiguration = 9
         NumPanes = 2
         Configuration = "(H (1 [75] 4))"
      End
      Begin PaneConfiguration = 10
         NumPanes = 2
         Configuration = "(H (1[66] 2) )"
      End
      Begin PaneConfiguration = 11
         NumPanes = 2
         Configuration = "(H (4 [60] 2))"
      End
      Begin PaneConfiguration = 12
         NumPanes = 1
         Configuration = "(H (1) )"
      End
      Begin PaneConfiguration = 13
         NumPanes = 1
         Configuration = "(V (4))"
      End
      Begin PaneConfiguration = 14
         NumPanes = 1
         Configuration = "(V (2))"
      End
      ActivePaneConfig = 0
   End
   Begin DiagramPane = 
      Begin Origin = 
         Top = 0
         Left = 0
      End
      Begin Tables = 
         Begin Table = "Resource_PlanDetail"
            Begin Extent = 
               Top = 6
               Left = 38
               Bottom = 270
               Right = 229
            End
            DisplayFlags = 280
            TopColumn = 6
         End
         Begin Table = "Base_DisciplinesWBS"
            Begin Extent = 
               Top = 6
               Left = 267
               Bottom = 266
               Right = 453
            End
            DisplayFlags = 280
            TopColumn = 0
         End
      End
   End
   Begin SQLPane = 
   End
   Begin DataPane = 
      Begin ParameterDefaults = ""
      End
   End
   Begin CriteriaPane = 
      Begin ColumnWidths = 11
         Column = 1440
         Alias = 900
         Table = 1170
         Output = 720
         Append = 1400
         NewValue = 1170
         SortType = 1350
         SortOrder = 1410
         GroupBy = 1350
         Filter = 1350
         Or = 1350
         Or = 1350
         Or = 1350
      End
   End
End
' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_Resource_PlanDetai'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1 , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_Resource_PlanDetai'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties = 
   Begin PaneConfigurations = 
      Begin PaneConfiguration = 0
         NumPanes = 4
         Configuration = "(H (1[40] 4[20] 2[20] 3) )"
      End
      Begin PaneConfiguration = 1
         NumPanes = 3
         Configuration = "(H (1 [50] 4 [25] 3))"
      End
      Begin PaneConfiguration = 2
         NumPanes = 3
         Configuration = "(H (1 [50] 2 [25] 3))"
      End
      Begin PaneConfiguration = 3
         NumPanes = 3
         Configuration = "(H (4 [30] 2 [40] 3))"
      End
      Begin PaneConfiguration = 4
         NumPanes = 2
         Configuration = "(H (1 [56] 3))"
      End
      Begin PaneConfiguration = 5
         NumPanes = 2
         Configuration = "(H (2 [66] 3))"
      End
      Begin PaneConfiguration = 6
         NumPanes = 2
         Configuration = "(H (4 [50] 3))"
      End
      Begin PaneConfiguration = 7
         NumPanes = 1
         Configuration = "(V (3))"
      End
      Begin PaneConfiguration = 8
         NumPanes = 3
         Configuration = "(H (1[56] 4[18] 2) )"
      End
      Begin PaneConfiguration = 9
         NumPanes = 2
         Configuration = "(H (1 [75] 4))"
      End
      Begin PaneConfiguration = 10
         NumPanes = 2
         Configuration = "(H (1[66] 2) )"
      End
      Begin PaneConfiguration = 11
         NumPanes = 2
         Configuration = "(H (4 [60] 2))"
      End
      Begin PaneConfiguration = 12
         NumPanes = 1
         Configuration = "(H (1) )"
      End
      Begin PaneConfiguration = 13
         NumPanes = 1
         Configuration = "(V (4))"
      End
      Begin PaneConfiguration = 14
         NumPanes = 1
         Configuration = "(V (2))"
      End
      ActivePaneConfig = 0
   End
   Begin DiagramPane = 
      Begin Origin = 
         Top = 0
         Left = 0
      End
      Begin Tables = 
         Begin Table = "T"
            Begin Extent = 
               Top = 6
               Left = 38
               Bottom = 126
               Right = 196
            End
            DisplayFlags = 280
            TopColumn = 0
         End
      End
   End
   Begin SQLPane = 
   End
   Begin DataPane = 
      Begin ParameterDefaults = ""
      End
   End
   Begin CriteriaPane = 
      Begin ColumnWidths = 12
         Column = 1440
         Alias = 900
         Table = 1170
         Output = 720
         Append = 1400
         NewValue = 1170
         SortType = 1350
         SortOrder = 1410
         GroupBy = 1350
         Filter = 1350
         Or = 1350
         Or = 1350
         Or = 1350
      End
   End
End
' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_ResourceDisc'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1 , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_ResourceDisc'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties = 
   Begin PaneConfigurations = 
      Begin PaneConfiguration = 0
         NumPanes = 4
         Configuration = "(H (1[40] 4[20] 2[20] 3) )"
      End
      Begin PaneConfiguration = 1
         NumPanes = 3
         Configuration = "(H (1 [50] 4 [25] 3))"
      End
      Begin PaneConfiguration = 2
         NumPanes = 3
         Configuration = "(H (1 [50] 2 [25] 3))"
      End
      Begin PaneConfiguration = 3
         NumPanes = 3
         Configuration = "(H (4 [30] 2 [40] 3))"
      End
      Begin PaneConfiguration = 4
         NumPanes = 2
         Configuration = "(H (1 [56] 3))"
      End
      Begin PaneConfiguration = 5
         NumPanes = 2
         Configuration = "(H (2 [66] 3))"
      End
      Begin PaneConfiguration = 6
         NumPanes = 2
         Configuration = "(H (4 [50] 3))"
      End
      Begin PaneConfiguration = 7
         NumPanes = 1
         Configuration = "(V (3))"
      End
      Begin PaneConfiguration = 8
         NumPanes = 3
         Configuration = "(H (1[56] 4[18] 2) )"
      End
      Begin PaneConfiguration = 9
         NumPanes = 2
         Configuration = "(H (1 [75] 4))"
      End
      Begin PaneConfiguration = 10
         NumPanes = 2
         Configuration = "(H (1[66] 2) )"
      End
      Begin PaneConfiguration = 11
         NumPanes = 2
         Configuration = "(H (4 [60] 2))"
      End
      Begin PaneConfiguration = 12
         NumPanes = 1
         Configuration = "(H (1) )"
      End
      Begin PaneConfiguration = 13
         NumPanes = 1
         Configuration = "(V (4))"
      End
      Begin PaneConfiguration = 14
         NumPanes = 1
         Configuration = "(V (2))"
      End
      ActivePaneConfig = 0
   End
   Begin DiagramPane = 
      Begin Origin = 
         Top = 0
         Left = 0
      End
      Begin Tables = 
         Begin Table = "Resource_PlanDetail"
            Begin Extent = 
               Top = 6
               Left = 38
               Bottom = 126
               Right = 229
            End
            DisplayFlags = 280
            TopColumn = 0
         End
         Begin Table = "Base_DisciplinesWBS"
            Begin Extent = 
               Top = 6
               Left = 267
               Bottom = 126
               Right = 453
            End
            DisplayFlags = 280
            TopColumn = 0
         End
      End
   End
   Begin SQLPane = 
   End
   Begin DataPane = 
      Begin ParameterDefaults = ""
      End
   End
   Begin CriteriaPane = 
      Begin ColumnWidths = 11
         Column = 1440
         Alias = 900
         Table = 1170
         Output = 720
         Append = 1400
         NewValue = 1170
         SortType = 1350
         SortOrder = 1410
         GroupBy = 1350
         Filter = 1350
         Or = 1350
         Or = 1350
         Or = 1350
      End
   End
End
' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_ResourcePlanDetailWBS'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1 , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_ResourcePlanDetailWBS'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00]
Begin DesignProperties = 
   Begin PaneConfigurations = 
      Begin PaneConfiguration = 0
         NumPanes = 4
         Configuration = "(H (1[40] 4[20] 2[20] 3) )"
      End
      Begin PaneConfiguration = 1
         NumPanes = 3
         Configuration = "(H (1 [50] 4 [25] 3))"
      End
      Begin PaneConfiguration = 2
         NumPanes = 3
         Configuration = "(H (1 [50] 2 [25] 3))"
      End
      Begin PaneConfiguration = 3
         NumPanes = 3
         Configuration = "(H (4 [30] 2 [40] 3))"
      End
      Begin PaneConfiguration = 4
         NumPanes = 2
         Configuration = "(H (1 [56] 3))"
      End
      Begin PaneConfiguration = 5
         NumPanes = 2
         Configuration = "(H (2 [66] 3))"
      End
      Begin PaneConfiguration = 6
         NumPanes = 2
         Configuration = "(H (4 [50] 3))"
      End
      Begin PaneConfiguration = 7
         NumPanes = 1
         Configuration = "(V (3))"
      End
      Begin PaneConfiguration = 8
         NumPanes = 3
         Configuration = "(H (1[56] 4[18] 2) )"
      End
      Begin PaneConfiguration = 9
         NumPanes = 2
         Configuration = "(H (1 [75] 4))"
      End
      Begin PaneConfiguration = 10
         NumPanes = 2
         Configuration = "(H (1[66] 2) )"
      End
      Begin PaneConfiguration = 11
         NumPanes = 2
         Configuration = "(H (4 [60] 2))"
      End
      Begin PaneConfiguration = 12
         NumPanes = 1
         Configuration = "(H (1) )"
      End
      Begin PaneConfiguration = 13
         NumPanes = 1
         Configuration = "(V (4))"
      End
      Begin PaneConfiguration = 14
         NumPanes = 1
         Configuration = "(V (2))"
      End
      ActivePaneConfig = 0
   End
   Begin DiagramPane = 
      Begin Origin = 
         Top = 0
         Left = 0
      End
      Begin Tables = 
         Begin Table = "u"
            Begin Extent = 
               Top = 6
               Left = 38
               Bottom = 126
               Right = 197
            End
            DisplayFlags = 280
            TopColumn = 0
         End
         Begin Table = "depart"
            Begin Extent = 
               Top = 6
               Left = 235
               Bottom = 126
               Right = 384
            End
            DisplayFlags = 280
            TopColumn = 0
         End
         Begin Table = "rol"
            Begin Extent = 
               Top = 126
               Left = 38
               Bottom = 246
               Right = 183
            End
            DisplayFlags = 280
            TopColumn = 0
         End
      End
   End
   Begin SQLPane = 
   End
   Begin DataPane = 
      Begin ParameterDefaults = ""
      End
   End
   Begin CriteriaPane = 
      Begin ColumnWidths = 11
         Column = 1440
         Alias = 900
         Table = 1170
         Output = 720
         Append = 1400
         NewValue = 1170
         SortType = 1350
         SortOrder = 1410
         GroupBy = 1350
         Filter = 1350
         Or = 1350
         Or = 1350
         Or = 1350
      End
   End
End
' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_Sys_Users'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPaneCount', @value=1 , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'VIEW',@level1name=N'View_Sys_Users'
GO
USE [master]
GO
ALTER DATABASE [EProjectDB] SET  READ_WRITE 
GO