219 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			MySQL
		
	
	
	
		
		
			
		
	
	
			219 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			MySQL
		
	
	
	
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								CREATE TABLE [dbo].[WBS_MilePost](
							 | 
						|||
| 
								 | 
							
									[MilePostId] [nvarchar](50) NOT NULL,
							 | 
						|||
| 
								 | 
							
									[ProjectId] [nvarchar](50) NULL,
							 | 
						|||
| 
								 | 
							
									[CnProfessionId] [int] NULL,
							 | 
						|||
| 
								 | 
							
									[MilePostName] [nvarchar](100) NULL,
							 | 
						|||
| 
								 | 
							
									[PlanDate] [datetime] NULL,
							 | 
						|||
| 
								 | 
							
									[RealDate] [datetime] NULL,
							 | 
						|||
| 
								 | 
							
									[CompileMan] [nvarchar](50) NULL,
							 | 
						|||
| 
								 | 
							
									[CompileDate] [datetime] NULL,
							 | 
						|||
| 
								 | 
							
									[Remark] [nvarchar](200) NULL,
							 | 
						|||
| 
								 | 
							
								 CONSTRAINT [PK_WBS_MilePost] PRIMARY KEY CLUSTERED 
							 | 
						|||
| 
								 | 
							
								(
							 | 
						|||
| 
								 | 
							
									[MilePostId] 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
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								ALTER TABLE [dbo].[WBS_MilePost]  WITH CHECK ADD  CONSTRAINT [FK_WBS_MilePost_Base_Project] FOREIGN KEY([ProjectId])
							 | 
						|||
| 
								 | 
							
								REFERENCES [dbo].[Base_Project] ([ProjectId])
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								ALTER TABLE [dbo].[WBS_MilePost] CHECK CONSTRAINT [FK_WBS_MilePost_Base_Project]
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								ALTER TABLE [dbo].[WBS_MilePost]  WITH CHECK ADD  CONSTRAINT [FK_WBS_MilePost_Sys_User] FOREIGN KEY([CompileMan])
							 | 
						|||
| 
								 | 
							
								REFERENCES [dbo].[Sys_User] ([UserId])
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								ALTER TABLE [dbo].[WBS_MilePost] CHECK CONSTRAINT [FK_WBS_MilePost_Sys_User]
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								ALTER TABLE [dbo].[WBS_MilePost]  WITH CHECK ADD  CONSTRAINT [FK_WBS_MilePost_WBS_CnProfessionInit] FOREIGN KEY([CnProfessionId])
							 | 
						|||
| 
								 | 
							
								REFERENCES [dbo].[WBS_CnProfessionInit] ([CnProfessionId])
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								ALTER TABLE [dbo].[WBS_MilePost] CHECK CONSTRAINT [FK_WBS_MilePost_WBS_CnProfessionInit]
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_MilePost', @level2type=N'COLUMN',@level2name=N'MilePostId'
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD><EFBFBD>ĿId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_MilePost', @level2type=N'COLUMN',@level2name=N'ProjectId'
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'רҵId' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_MilePost', @level2type=N'COLUMN',@level2name=N'CnProfessionId'
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD><EFBFBD><EFBFBD>̱<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_MilePost', @level2type=N'COLUMN',@level2name=N'MilePostName'
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_MilePost', @level2type=N'COLUMN',@level2name=N'PlanDate'
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_MilePost', @level2type=N'COLUMN',@level2name=N'RealDate'
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_MilePost', @level2type=N'COLUMN',@level2name=N'CompileMan'
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_MilePost', @level2type=N'COLUMN',@level2name=N'CompileDate'
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD><EFBFBD>ע' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_MilePost', @level2type=N'COLUMN',@level2name=N'Remark'
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD><EFBFBD><EFBFBD>̱<EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WBS_MilePost'
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								alter table [dbo].[WBS_CostControlDetail] add StartDate datetime null
							 | 
						|||
| 
								 | 
							
								alter table [dbo].[WBS_CostControlDetail] add EndDate datetime null
							 | 
						|||
| 
								 | 
							
								alter table [dbo].[WBS_CostControlDetailHistory] add StartDate datetime null
							 | 
						|||
| 
								 | 
							
								alter table [dbo].[WBS_CostControlDetailHistory] add EndDate datetime null
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								alter table [dbo].[WBS_CostControlParentDetail] add StartDate datetime null
							 | 
						|||
| 
								 | 
							
								alter table [dbo].[WBS_CostControlParentDetail] add EndDate datetime null
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								ALTER VIEW [dbo].[View_WBS_CostControlParentDetail]
							 | 
						|||
| 
								 | 
							
								AS
							 | 
						|||
| 
								 | 
							
								/********<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ********/
							 | 
						|||
| 
								 | 
							
								SELECT detail.CostControlParentDetailId, 
							 | 
						|||
| 
								 | 
							
								detail.ParentId, 
							 | 
						|||
| 
								 | 
							
								detail.Months, 
							 | 
						|||
| 
								 | 
							
								detail.StartDate,
							 | 
						|||
| 
								 | 
							
								detail.EndDate,
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(ThisPlanValue,0)) from WBS_CostControlParentDetail 
							 | 
						|||
| 
								 | 
							
								where ParentId=detail.ParentId and Months=detail.Months)) as ThisPlanValue,    --<EFBFBD><EFBFBD><EFBFBD>¼ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(d.ThisRealCost,0)) from WBS_CostControlParentDetail d
							 | 
						|||
| 
								 | 
							
								where d.ParentId=detail.ParentId and Months=detail.Months)) as ThisRealCost,  --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>ʳɱ<EFBFBD> 
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(ThisPlanCost,0)) from WBS_CostControlParentDetail 
							 | 
						|||
| 
								 | 
							
								where ParentId=detail.ParentId and Months=detail.Months)) as ThisPlanCost,  --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(ThisPlanValue,0)) from WBS_CostControlParentDetail 
							 | 
						|||
| 
								 | 
							
								where ParentId=detail.ParentId and Months<=detail.Months)) as TotalPlanValue,  --<EFBFBD>ۼƼƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(d.ThisRealCost,0)) from WBS_CostControlParentDetail d
							 | 
						|||
| 
								 | 
							
								where d.ParentId=detail.ParentId and Months<=detail.Months)) as TotalRealCost,  --<EFBFBD>ۼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɳɱ<EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(ThisPlanCost,0)) from WBS_CostControlParentDetail 
							 | 
						|||
| 
								 | 
							
								where ParentId=detail.ParentId and Months<=detail.Months)) as TotalPlanCost  --<EFBFBD>ۼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								FROM dbo.WBS_CostControlParentDetail AS detail
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								ALTER VIEW [dbo].[View_WBS_CostControlDetail]
							 | 
						|||
| 
								 | 
							
								AS
							 | 
						|||
| 
								 | 
							
								/********<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ********/
							 | 
						|||
| 
								 | 
							
								SELECT detail.CostControlDetailId, 
							 | 
						|||
| 
								 | 
							
								detail.CostControlId, 
							 | 
						|||
| 
								 | 
							
								detail.Months, 
							 | 
						|||
| 
								 | 
							
								detail.StartDate,
							 | 
						|||
| 
								 | 
							
								detail.EndDate,
							 | 
						|||
| 
								 | 
							
								c.CostControlCode, 
							 | 
						|||
| 
								 | 
							
								c.CostControlName,
							 | 
						|||
| 
								 | 
							
								c.WbsSetId, 
							 | 
						|||
| 
								 | 
							
								c.ProjectId,
							 | 
						|||
| 
								 | 
							
								c.Unit,   --<EFBFBD><EFBFBD>λ
							 | 
						|||
| 
								 | 
							
								c.TotalNum,   --<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(PlanNum,0)) from WBS_CostControlDetail where CostControlId=detail.CostControlId and Months<=detail.Months and StartDate is null)) as TotalPlanNum,  --<EFBFBD>ۼƼƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(ThisNum,0)) from WBS_CostControlDetail where CostControlId=detail.CostControlId and Months<=detail.Months)) as TotalThisNum,  --<EFBFBD>ۼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(d.PlanNum,0)) from WBS_CostControlDetail d
							 | 
						|||
| 
								 | 
							
								 where d.CostControlId=detail.CostControlId and Months=detail.Months and StartDate is null)) as PlanNum,  --<EFBFBD><EFBFBD><EFBFBD>¼ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(d.ThisNum,0)) from WBS_CostControlDetail d
							 | 
						|||
| 
								 | 
							
								 where d.CostControlId=detail.CostControlId and Months=detail.Months)) as ThisNum,  --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								c.RealPrice,    --<EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								c.PlanPrice,   --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD>㵥<EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(d.PlanNum,0)*ISNULL(c1.PlanPrice,0)) from WBS_CostControlDetail d
							 | 
						|||
| 
								 | 
							
								LEFT JOIN WBS_CostControl AS c1 ON c1.CostControlId=d.CostControlId
							 | 
						|||
| 
								 | 
							
								 where d.CostControlId=detail.CostControlId and Months=detail.Months and StartDate is null)) as ThisPlanValue,  --<EFBFBD><EFBFBD><EFBFBD>¼ƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(d.ThisNum,0)*ISNULL(c1.RealPrice,0)) from WBS_CostControlDetail d
							 | 
						|||
| 
								 | 
							
								LEFT JOIN WBS_CostControl AS c1 ON c1.CostControlId=d.CostControlId
							 | 
						|||
| 
								 | 
							
								 where d.CostControlId=detail.CostControlId and Months=detail.Months)) as ThisRealCost,  --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>ʳɱ<EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(ThisNum,0)*ISNULL(c1.PlanPrice,0)) from WBS_CostControlDetail d
							 | 
						|||
| 
								 | 
							
								LEFT JOIN WBS_CostControl AS c1 ON c1.CostControlId=d.CostControlId
							 | 
						|||
| 
								 | 
							
								where d.CostControlId=detail.CostControlId and Months=detail.Months)) as ThisPlanCost,  --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(d.PlanNum,0)*ISNULL(c1.PlanPrice,0)) from WBS_CostControlDetail d
							 | 
						|||
| 
								 | 
							
								LEFT JOIN WBS_CostControl AS c1 ON c1.CostControlId=d.CostControlId
							 | 
						|||
| 
								 | 
							
								where d.CostControlId=detail.CostControlId and Months<=detail.Months and StartDate is null)) as TotalPlanValue,  --<EFBFBD>ۼƼƻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(d.ThisNum,0)*ISNULL(c1.RealPrice,0)) from WBS_CostControlDetail d
							 | 
						|||
| 
								 | 
							
								LEFT JOIN WBS_CostControl AS c1 ON c1.CostControlId=d.CostControlId
							 | 
						|||
| 
								 | 
							
								where d.CostControlId=detail.CostControlId and Months<=detail.Months)) as TotalRealCost,  --<EFBFBD>ۼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɳɱ<EFBFBD>
							 | 
						|||
| 
								 | 
							
								CONVERT(FLOAT,(select sum(ISNULL(ThisNum,0)*ISNULL(c1.PlanPrice,0)) from WBS_CostControlDetail d
							 | 
						|||
| 
								 | 
							
								LEFT JOIN WBS_CostControl AS c1 ON c1.CostControlId=d.CostControlId
							 | 
						|||
| 
								 | 
							
								where d.CostControlId=detail.CostControlId and Months<=detail.Months)) as TotalPlanCost  --<EFBFBD>ۼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><EFBFBD>
							 | 
						|||
| 
								 | 
							
								FROM dbo.WBS_CostControlDetail AS detail
							 | 
						|||
| 
								 | 
							
								LEFT JOIN WBS_CostControl AS c ON c.CostControlId=detail.CostControlId
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								ALTER VIEW [dbo].[View_WBS_CostControlDetailStatistics]
							 | 
						|||
| 
								 | 
							
								AS
							 | 
						|||
| 
								 | 
							
								select InstallationId as Id,null as SupId ,InstallationName as Name,'Installation' as WBSType,null as OldCnProfessionId,null as OldUnitProjectCode,null as OldWbsSetCode,
							 | 
						|||
| 
								 | 
							
								ProjectId from dbo.Project_Installation where SuperInstallationId is null
							 | 
						|||
| 
								 | 
							
								Union
							 | 
						|||
| 
								 | 
							
								select InstallationId as Id,SuperInstallationId as SupId ,InstallationName as Name,'Installation' as WBSType,null as OldCnProfessionId,null as OldUnitProjectCode,null as OldWbsSetCode,
							 | 
						|||
| 
								 | 
							
								ProjectId from dbo.Project_Installation where SuperInstallationId is not null
							 | 
						|||
| 
								 | 
							
								Union
							 | 
						|||
| 
								 | 
							
								select CnProfessionId as Id , InstallationId as SupId,CnProfessionName as Name,'CnProfession' as WBSType,OldId as OldCnProfessionId,null as OldUnitProjectCode,null as OldWbsSetCode,
							 | 
						|||
| 
								 | 
							
								ProjectId from dbo.WBS_CnProfession where IsApprove=1
							 | 
						|||
| 
								 | 
							
								Union all
							 | 
						|||
| 
								 | 
							
								select UnitProjectId as Id, isnull(CnProfessionId,InstallationId) as SupId,UnitProjectName as Name,'UnitProject' as WBSType,
							 | 
						|||
| 
								 | 
							
								(case when u.CnProfessionId is null then (select CnProfessionId from WBS_CnProfessionInit where CnProfessionName=(select InstallationName from Project_Installation where InstallationId=u.InstallationId)) else (select OldId from WBS_CnProfession c where c.CnProfessionId=u.CnProfessionId) end) as OldCnProfessionId,UnitProjectCode as OldUnitProjectCode,null as OldWbsSetCode, 
							 | 
						|||
| 
								 | 
							
								ProjectId from dbo.Wbs_UnitProject u where IsApprove=1
							 | 
						|||
| 
								 | 
							
								Union all
							 | 
						|||
| 
								 | 
							
								select WbsSetId as id,UnitProjectId as SupId, WbsSetName as Name,'WbsSet' as WBSType,
							 | 
						|||
| 
								 | 
							
								(case when w.CnProfessionId is null then (select CnProfessionId from WBS_CnProfessionInit where CnProfessionName=(select InstallationName from Project_Installation where InstallationId=w.InstallationId)) else (select OldId from WBS_CnProfession c where c.CnProfessionId=w.CnProfessionId) end) as OldCnProfessionId,(select UnitProjectCode from Wbs_UnitProject c where c.UnitProjectId=w.UnitProjectId) as OldUnitProjectCode,
							 | 
						|||
| 
								 | 
							
								WbsSetCode as OldWbsSetCode,
							 | 
						|||
| 
								 | 
							
								ProjectId from dbo.Wbs_WbsSet w where IsApprove=1 and SuperWbsSetId is null
							 | 
						|||
| 
								 | 
							
								Union all
							 | 
						|||
| 
								 | 
							
								select WbsSetId as id,SuperWbsSetId as SupId, WbsSetName as Name,'WbsSet' as WBSType,
							 | 
						|||
| 
								 | 
							
								(case when w.CnProfessionId is null then (select CnProfessionId from WBS_CnProfessionInit where CnProfessionName=(select InstallationName from Project_Installation where InstallationId=w.InstallationId)) else (select OldId from WBS_CnProfession c where c.CnProfessionId=w.CnProfessionId) end) as OldCnProfessionId,(select UnitProjectCode from Wbs_UnitProject c where c.UnitProjectId=w.UnitProjectId) as OldUnitProjectCode,
							 | 
						|||
| 
								 | 
							
								(select WbsSetCode from Wbs_WbsSet ws where ws.WbsSetId=w.SuperWbsSetId) as OldWbsSetCode,
							 | 
						|||
| 
								 | 
							
								ProjectId from dbo.Wbs_WbsSet w where IsApprove=1 and SuperWbsSetId is not null
							 | 
						|||
| 
								 | 
							
								Union all
							 | 
						|||
| 
								 | 
							
								select c.CostControlId as id,c.WbsSetId as SupId,c.CostControlName as Name,'CostControl' as WBSType,
							 | 
						|||
| 
								 | 
							
								(case when ws.CnProfessionId is null then (select CnProfessionId from WBS_CnProfessionInit where CnProfessionName=(select InstallationName from Project_Installation where InstallationId=ws.InstallationId)) else (select OldId from WBS_CnProfession cn where cn.CnProfessionId=(select top 1 CnProfessionId from Wbs_WbsSet w where w.WbsSetId=c.WbsSetId)) end) as OldCnProfessionId,
							 | 
						|||
| 
								 | 
							
								(select UnitProjectCode from Wbs_UnitProject u where u.UnitProjectId=(select top 1  UnitProjectId from Wbs_WbsSet w where w.WbsSetId=c.WbsSetId)) as OldUnitProjectCode,
							 | 
						|||
| 
								 | 
							
								(select WbsSetCode from Wbs_WbsSet u where u.WbsSetId=(select top 1 w.SuperWbsSetId from Wbs_WbsSet w where w.WbsSetId=c.WbsSetId)) as OldWbsSetCode,
							 | 
						|||
| 
								 | 
							
								c.ProjectId from dbo.WBS_CostControl c 
							 | 
						|||
| 
								 | 
							
								left join dbo.Wbs_WbsSet ws on ws.WbsSetId=c.WbsSetId
							 | 
						|||
| 
								 | 
							
								where c.TotalNum is not null 
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								GO
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 |