717 lines
23 KiB
Transact-SQL
717 lines
23 KiB
Transact-SQL
/****** Object: StoredProcedure [dbo].[getTransitionsFromProc] Script Date: 10/21/2011 15:19:55 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER OFF
|
|
GO
|
|
|
|
/*
|
|
getTransitionsFromProc 10
|
|
*/
|
|
create PROCEDURE [dbo].[getTransitionsFromProc]
|
|
(
|
|
@ItemID int
|
|
)
|
|
|
|
WITH EXECUTE AS OWNER
|
|
AS
|
|
SELECT tt.[TransitionID]
|
|
,[FromID]
|
|
,[ToID]
|
|
,[RangeID]
|
|
,[IsRange]
|
|
,[TranType]
|
|
,tt.[Config]
|
|
,tt.[DTS]
|
|
,tt.[UserID]
|
|
,tt.[LastChanged]
|
|
,(SELECT COUNT(*) FROM [ZTransitions] WHERE [ZTransitions].[TransitionID]=[tt].[TransitionID]) [ZTransitionCount]
|
|
,cc.text ContentText
|
|
FROM [Transitions] tt
|
|
inner join contents cc on tt.fromid = cc.contentid
|
|
WHERE transitionid in (select transitionid from vefn_FindExternalFromTransitions(@ItemID))
|
|
RETURN
|
|
|
|
/****** Object: StoredProcedure [dbo].[getTransitionsToProc] Script Date: 10/21/2011 15:24:11 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER OFF
|
|
GO
|
|
|
|
/*
|
|
getTransitionsToProc 10
|
|
*/
|
|
CREATE PROCEDURE [dbo].[getTransitionsToProc]
|
|
(
|
|
@ItemID int
|
|
)
|
|
|
|
WITH EXECUTE AS OWNER
|
|
AS
|
|
SELECT tt.[TransitionID]
|
|
,[FromID]
|
|
,[ToID]
|
|
,[RangeID]
|
|
,[IsRange]
|
|
,[TranType]
|
|
,tt.[Config]
|
|
,tt.[DTS]
|
|
,tt.[UserID]
|
|
,tt.[LastChanged]
|
|
,(SELECT COUNT(*) FROM [ZTransitions] WHERE [ZTransitions].[TransitionID]=[tt].[TransitionID]) [ZTransitionCount]
|
|
,cc.text ContentText
|
|
FROM [Transitions] tt
|
|
inner join contents cc on tt.fromid = cc.contentid
|
|
WHERE transitionid in (select transitionid from vefn_FindExternalTransitions(@ItemID))
|
|
RETURN
|
|
|
|
/****** Object: UserDefinedFunction [dbo].[vefn_FindExternalFromTransitions] Script Date: 10/21/2011 15:27:17 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
/*
|
|
Select * from vefn_FindExternalFromTransitions(185)
|
|
*/
|
|
|
|
create FUNCTION [dbo].[vefn_FindExternalFromTransitions](@ItemID int)
|
|
RETURNS @Children TABLE
|
|
(
|
|
[FromItemID] int,
|
|
[TransitionID] [int] NOT NULL,
|
|
[FromID] [int] NOT NULL,
|
|
[ToID] [int] NOT NULL,
|
|
[RangeID] [int] NOT NULL,
|
|
[Config] [nvarchar](max) NULL
|
|
)
|
|
WITH EXECUTE AS OWNER
|
|
AS
|
|
BEGIN
|
|
with Itemz([Level], [Ordinal], [ItemID], [PreviousID], [FromType], [ContentID], [DTS], [UserID], [LastChanged],[pContentID], [pDTS],[pUserID],[pLastChanged]) as (
|
|
Select 0 [Level], 0 [Ordinal], [ItemID], [PreviousID],0 [FromType],[ContentID],[DTS],[UserID],[LastChanged]
|
|
,0 [pContentID],[DTS] [pDTS], [UserID] [pUserID], [LastChanged] [pLastChanged]
|
|
FROM [Items]
|
|
where [ItemID]=@ItemID
|
|
Union All
|
|
-- Children
|
|
select [Level] + 1,0, I.[ItemID], I.[PreviousID], P.[FromType],I.[ContentID],I.[DTS],I.[UserID],I.[LastChanged]
|
|
,P.[ContentID] [pContentID],P.[DTS] [pDTS],P.[UserID] [pUserID],P.[LastChanged] [pLastChanged]
|
|
from Itemz Z
|
|
join Parts P on P.ContentID = Z.ContentID
|
|
join Items I on I.ItemID = P.ItemID
|
|
-- Siblings
|
|
Union All
|
|
select [Level] ,Z.[Ordinal] +1, I.[ItemID], I.[PreviousID], [FromType],I.[ContentID],I.[DTS],I.[UserID],I.[LastChanged]
|
|
,null,null,null,null
|
|
from Itemz Z
|
|
join Items I on I.PreviousID = Z.ItemID
|
|
where Z.[Level] > 0
|
|
)
|
|
insert into @Children
|
|
select ItemID [FromItemID], TT.[TransitionID], TT.[FromID], TT.[ToID], TT.[RangeID], TT.[Config]
|
|
from Transitions TT
|
|
join Items II on II.ContentID=TT.FromID
|
|
where (ToID not in(select ItemID from Itemz) OR RangeID not in(select ItemID from Itemz))
|
|
AND FromID in(Select ContentID from ItemZ)
|
|
RETURN
|
|
END
|
|
GO
|
|
|
|
/****** Object: StoredProcedure [dbo].[getLibDocsForProc] Script Date: 10/21/2011 15:28:43 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER OFF
|
|
GO
|
|
|
|
/*
|
|
getLibDocsForProc 10
|
|
*/
|
|
CREATE PROCEDURE [dbo].[getLibDocsForProc]
|
|
(
|
|
@ItemID int
|
|
)
|
|
|
|
WITH EXECUTE AS OWNER
|
|
AS
|
|
SELECT dd.[DocID]
|
|
,[LibTitle]
|
|
,[DocContent]
|
|
,[DocAscii]
|
|
,[Config]
|
|
,dd.[DTS]
|
|
,dd.[UserID]
|
|
,dd.[LastChanged]
|
|
,[FileExtension],
|
|
(SELECT COUNT(*) FROM [DROUsages] WHERE [DROUsages].[DocID]=[dd].[DocID]) [DROUsageCount],
|
|
(SELECT COUNT(*) FROM [Entries] WHERE [Entries].[DocID]=[dd].[DocID]) [EntryCount],
|
|
(SELECT COUNT(*) FROM [Pdfs] WHERE [Pdfs].[DocID]=[dd].[DocID]) [PdfCount]
|
|
|
|
FROM [Documents] dd
|
|
INNER JOIN [Entries] ee on dd.docid = ee.docid
|
|
INNER JOIN vefn_ChildItems(@ItemID) cc on cc.contentid = ee.contentid
|
|
RETURN
|
|
|
|
/****** Object: StoredProcedure [dbo].[getRoUsagesForProc] Script Date: 10/21/2011 15:31:51 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER OFF
|
|
GO
|
|
|
|
create PROCEDURE [dbo].[getRoUsagesForProc]
|
|
(
|
|
@ItemID int
|
|
)
|
|
|
|
WITH EXECUTE AS OWNER
|
|
AS
|
|
SELECT
|
|
[ROUsageID],
|
|
rr.[ContentID],
|
|
[ROID],
|
|
[Config],
|
|
[DTS],
|
|
[UserID],
|
|
[LastChanged],
|
|
[RODbID]
|
|
FROM [RoUsages] rr
|
|
INNER JOIN vefn_ChildItems(@ItemID) cc on cc.contentid = rr.contentid
|
|
RETURN
|
|
|
|
/****** Object: UserDefinedFunction [dbo].[vefn_CheckXML] Script Date: 10/25/2011 18:36:53 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
/*
|
|
declare @NewXML xml
|
|
select @NewXML = consistencychecks from checks where checkid = 48
|
|
set @NewXML = cast(replace(cast(@NewXML as varchar(max)),'2011-08-24T11:20:57.027','2011-12-25T00:00:00.000') as xml)
|
|
set @NewXML = cast(replace(cast(@NewXML as varchar(max)),'88%','88.12345%') as xml)
|
|
set @NewXML = cast(replace(cast(@NewXML as varchar(max)),'="6%','="6.12345%') as xml)
|
|
set @NewXML = cast(replace(cast(@NewXML as varchar(max)),'23%','23.12345%') as xml)
|
|
set @NewXML = cast(replace(cast(@NewXML as varchar(max)),'90%','90.12345%') as xml)
|
|
set @NewXML = cast(replace(cast(@NewXML as varchar(max)),', Step 13',', Step 14') as xml)r
|
|
declare @OldXML xml
|
|
select @OldXML = consistencychecks from checks where checkid = 1
|
|
--select .dbo.vefn_CheckXML(@NewXML, @OldXML)
|
|
select ii.*,ss.*,.dbo.vefn_CheckXML(@NewXML, consistencychecks) chkxml from checks cc
|
|
inner join revisions rr on cc.revisionid = rr.revisionid
|
|
inner join items ii on rr.itemid = ii.itemid
|
|
inner join stages ss on cc.stageid = ss.stageid
|
|
*/
|
|
CREATE function [dbo].[vefn_CheckXML](@NewXML xml, @OldXML xml)
|
|
returns xml
|
|
begin
|
|
declare @ChkXML xml
|
|
set @ChkXML =
|
|
(
|
|
select
|
|
(
|
|
select * from
|
|
(
|
|
select ah.ROID,OldROValue,ROValue from
|
|
(
|
|
select r1.value('@ROID','varchar(20)') roid,r1.value('@ROValue','varchar(max)') oldrovalue
|
|
from @OldXML.nodes('//ROCheck') as t1(r1)
|
|
) ah
|
|
inner join
|
|
(
|
|
select distinct r2.value('@ROID','varchar(20)') roid,r2.value('@ROValue','varchar(max)') rovalue
|
|
from @NewXML.nodes('//ROCheck') as t2(r2)
|
|
) ds
|
|
on ah.roid = ds.roid
|
|
and oldrovalue != rovalue
|
|
) ROCheck
|
|
for xml auto,root('ROChecks'),type
|
|
)
|
|
,
|
|
(
|
|
select * from
|
|
(
|
|
select ah.TransitionID,OldTransitionValue,TransitionValue from
|
|
(
|
|
select r1.value('@TransitionID','int') TransitionID,r1.value('@TransitionValue','varchar(max)') OldTransitionValue
|
|
from @OldXML.nodes('//TransitionCheck') as t1(r1)
|
|
) ah
|
|
inner join
|
|
(
|
|
select distinct r2.value('@TransitionID','int') TransitionID,r2.value('@TransitionValue','varchar(max)') TransitionValue
|
|
from @NewXML.nodes('//TransitionCheck') as t2(r2)
|
|
) ds
|
|
on ah.TransitionID = ds.TransitionID
|
|
and OldTransitionValue != TransitionValue
|
|
) TransitionCheck
|
|
for xml auto,root('TransitionChecks'),type
|
|
)
|
|
,
|
|
(
|
|
select * from
|
|
(
|
|
select ah.DocID,OldDocDate,DocDate from
|
|
(
|
|
select r1.value('@DocID','int') docid,r1.value('@DocDate','datetime') olddocdate
|
|
from @OldXML.nodes('//LibDocCheck') as t1(r1)
|
|
) ah
|
|
inner join
|
|
(
|
|
select distinct r2.value('@DocID','int') docid,r2.value('@DocDate','datetime') docdate
|
|
from @NewXML.nodes('//LibDocCheck') as t2(r2)
|
|
) ds
|
|
on ah.docid = ds.docid
|
|
and olddocdate != docdate
|
|
) LibDocCheck
|
|
for xml auto,root('LibDocChecks'),type
|
|
)
|
|
for xml path(''),ROOT ('ConsistencyChecks'),type
|
|
)
|
|
return @ChkXML
|
|
end
|
|
go
|
|
|
|
/****** Object: UserDefinedFunction [dbo].[vefn_CheckAllXML] Script Date: 10/21/2011 15:00:56 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
/*
|
|
select [dbo].[vefn_CheckAllXML](1)
|
|
*/
|
|
CREATE function [dbo].[vefn_CheckAllXML](@DocVersionID int)
|
|
returns xml
|
|
begin
|
|
declare @ChkXML xml
|
|
set @ChkXML =
|
|
(
|
|
select
|
|
(--ro inconsistencies accross set
|
|
select ItemID,ROID,ROValue from
|
|
(
|
|
select rr.itemid,r1.value('@ROID','varchar(max)') roid,r1.value('@ROValue','varchar(max)') rovalue
|
|
from checks cc
|
|
inner join revisions rr on cc.revisionid = rr.revisionid
|
|
cross apply cc.consistencychecks.nodes('//ROCheck') t1(r1)
|
|
where cc.checkid in
|
|
--latest checkid with approved stage for each itemid
|
|
(
|
|
select max(cc.checkid) checkid
|
|
from checks cc
|
|
inner join stages ss on cc.stageid = ss.stageid
|
|
inner join revisions rr on cc.revisionid = rr.revisionid
|
|
where ss.isapproved = 1
|
|
group by rr.itemid
|
|
)
|
|
and rr.itemid in (select itemid from vefn_siblingitems((select itemid from docversions where versionid = @docversionid),0))
|
|
) ROCheck
|
|
where roid in
|
|
(
|
|
--get roids that has more than 1 rovalue from distinct roid and rovalue from checks for latest checkid with approved stage for each itemid
|
|
select roid from
|
|
(
|
|
--distinct roid and rovalue from checks for latest checkid with approved stage for each itemid
|
|
select distinct r1.value('@ROID','varchar(max)') roid,r1.value('@ROValue','varchar(max)') rovalue
|
|
from checks cc
|
|
cross apply cc.consistencychecks.nodes('//ROCheck') t1(r1)
|
|
where cc.checkid in
|
|
--latest checkid with approved stage for each itemid
|
|
(
|
|
select max(cc.checkid) checkid
|
|
from checks cc
|
|
inner join stages ss on cc.stageid = ss.stageid
|
|
inner join revisions rr on cc.revisionid = rr.revisionid
|
|
where ss.isapproved = 1
|
|
group by rr.itemid
|
|
)
|
|
) t1
|
|
group by roid having count(*) > 1
|
|
)
|
|
order by itemid
|
|
for xml auto,root('ROChecks'),type
|
|
),
|
|
--jcb
|
|
(--transition inconsistencies accross set
|
|
select ItemID,TransitionID,TransitionValue from
|
|
(
|
|
select rr.itemid,r1.value('@TransitionID','int') transitionid,r1.value('@TransitionValue','varchar(max)') transitionvalue
|
|
from checks cc
|
|
inner join revisions rr on cc.revisionid = rr.revisionid
|
|
cross apply cc.consistencychecks.nodes('//TransitionCheck') t1(r1)
|
|
where cc.checkid in
|
|
--latest checkid with approved stage for each itemid
|
|
(
|
|
select max(cc.checkid) checkid
|
|
from checks cc
|
|
inner join stages ss on cc.stageid = ss.stageid
|
|
inner join revisions rr on cc.revisionid = rr.revisionid
|
|
where ss.isapproved = 1
|
|
group by rr.itemid
|
|
)
|
|
and rr.itemid in (select itemid from vefn_siblingitems((select itemid from docversions where versionid = @docversionid),0))
|
|
) TransitionCheck
|
|
where transitionid in
|
|
(
|
|
--get transitionids that has more than 1 transitionvalue from distinct transitionid and transitionvalue from checks for latest checkid with approved stage for each itemid
|
|
select transitionid from
|
|
(
|
|
--distinct docid and docdate from checks for latest checkid with approved stage for each itemid
|
|
select distinct r1.value('@TransitionID','int') transitionid,r1.value('@TransitionValue','varchar(max)') transitionvalue
|
|
from checks cc
|
|
cross apply cc.consistencychecks.nodes('//TransitionCheck') t1(r1)
|
|
where cc.checkid in
|
|
--latest checkid with approved stage for each itemid
|
|
(
|
|
select max(cc.checkid) checkid
|
|
from checks cc
|
|
inner join stages ss on cc.stageid = ss.stageid
|
|
inner join revisions rr on cc.revisionid = rr.revisionid
|
|
where ss.isapproved = 1
|
|
group by rr.itemid
|
|
)
|
|
) t1
|
|
group by transitionid having count(*) > 1
|
|
)
|
|
order by itemid
|
|
for xml auto,root('TransitionChecks'),type
|
|
),
|
|
--end jcb
|
|
(--libdoc inconsistencies accross set
|
|
select ItemID,DocID,DocDate from
|
|
(
|
|
select rr.itemid,r1.value('@DocID','int') docid,r1.value('@DocDate','datetime') docdate
|
|
from checks cc
|
|
inner join revisions rr on cc.revisionid = rr.revisionid
|
|
cross apply cc.consistencychecks.nodes('//LibDocCheck') t1(r1)
|
|
where cc.checkid in
|
|
--latest checkid with approved stage for each itemid
|
|
(
|
|
select max(cc.checkid) checkid
|
|
from checks cc
|
|
inner join stages ss on cc.stageid = ss.stageid
|
|
inner join revisions rr on cc.revisionid = rr.revisionid
|
|
where ss.isapproved = 1
|
|
group by rr.itemid
|
|
)
|
|
and rr.itemid in (select itemid from vefn_siblingitems((select itemid from docversions where versionid = @docversionid),0))
|
|
) LibDocCheck
|
|
where docid in
|
|
(
|
|
--get docids that has more than 1 docdate from distinct docid and docdate from checks for latest checkid with approved stage for each itemid
|
|
select docid from
|
|
(
|
|
--distinct docid and docdate from checks for latest checkid with approved stage for each itemid
|
|
select distinct r1.value('@DocID','int') docid,r1.value('@DocDate','datetime') docdate
|
|
from checks cc
|
|
cross apply cc.consistencychecks.nodes('//LibDocCheck') t1(r1)
|
|
where cc.checkid in
|
|
--latest checkid with approved stage for each itemid
|
|
(
|
|
select max(cc.checkid) checkid
|
|
from checks cc
|
|
inner join stages ss on cc.stageid = ss.stageid
|
|
inner join revisions rr on cc.revisionid = rr.revisionid
|
|
where ss.isapproved = 1
|
|
group by rr.itemid
|
|
)
|
|
) t1
|
|
group by docid having count(*) > 1
|
|
)
|
|
order by itemid
|
|
for xml auto,root('LibDocChecks'),type
|
|
)
|
|
for xml path(''),ROOT ('ConsistencyChecks'),type
|
|
)
|
|
return @ChkXML
|
|
end
|
|
go
|
|
|
|
/****** Object: UserDefinedFunction [dbo].[vefn_CheckAllXMLByItemID] Script Date: 10/21/2011 15:01:32 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
/*
|
|
declare @myxml xml
|
|
set @myxml = (select dbo.vefn_checkallxml(1))
|
|
select dbo.vefn_checkallxmlbyitemid(1,@myxml)
|
|
*/
|
|
CREATE function [dbo].[vefn_CheckAllXMLByItemID](@ItemID int,@MyXml xml)
|
|
returns xml
|
|
begin
|
|
declare @ChkXML xml
|
|
declare @ROCheck table
|
|
(
|
|
ItemID int,
|
|
ROID varchar(max),
|
|
ROValue varchar(max)
|
|
)
|
|
insert into @ROCheck
|
|
select r2.value('@ItemID','int'),r2.value('@ROID','varchar(max)'),r2.value('@ROValue','varchar(max)')
|
|
from @MyXml.nodes('//ROCheck') t2(r2)
|
|
--jcb
|
|
declare @TransitionCheck table
|
|
(
|
|
ItemID int,
|
|
TransitionID int,
|
|
TransitionValue varchar(max)
|
|
)
|
|
insert into @TransitionCheck
|
|
select r2.value('@ItemID','int'),r2.value('@TransitionID','int'),r2.value('@TransitionValue','varchar(max)')
|
|
from @MyXml.nodes('//TransitionCheck') t2(r2)
|
|
--end jcb
|
|
declare @LibDocCheck table
|
|
(
|
|
ItemID int,
|
|
DocID int,
|
|
DocDate datetime
|
|
)
|
|
insert into @LibDocCheck
|
|
select r2.value('@ItemID','int'),r2.value('@DocID','int'),r2.value('@DocDate','datetime')
|
|
from @MyXml.nodes('//LibDocCheck') t2(r2)
|
|
set @ChkXML =
|
|
(
|
|
select
|
|
(select * from @ROCheck ROCheck where itemid = @ItemID for xml auto, root('ROChecks'),type),
|
|
(select * from @TransitionCheck TransitionCheck where itemid = @ItemID for xml auto, root('TransitionChecks'),type),
|
|
(select * from @LibDocCheck LibDocCheck where itemid = @ItemID for xml auto, root('LibDocChecks'),type)
|
|
for xml path(''),ROOT ('ConsistencyChecks'),type
|
|
)
|
|
return @ChkXML
|
|
end
|
|
go
|
|
|
|
/****** Object: StoredProcedure [dbo].[vesp_GetConsistencyCheckProcedures] Script Date: 10/25/2011 18:38:25 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
/*
|
|
declare @myxml xml
|
|
select @myxml = consistencychecks from checks where checkid = 2
|
|
declare @docversionid int
|
|
set @docversionid = 1
|
|
exec vesp_GetConsistencyCheckProcedures @docversionid, @myxml
|
|
*/
|
|
CREATE PROCEDURE [dbo].[vesp_GetConsistencyCheckProcedures]
|
|
(
|
|
@DocVersionID int,
|
|
@MyXml xml
|
|
)
|
|
AS BEGIN
|
|
--to be removed
|
|
-- set @myxml = cast(replace(cast(@myxml as varchar(max)),'2011-08-24T11:20:57.027','2011-12-25T00:00:00.000') as xml)
|
|
-- set @myxml = cast(replace(cast(@myxml as varchar(max)),'88%','88.12345%') as xml)
|
|
-- set @myxml = cast(replace(cast(@myxml as varchar(max)),'="6%','="6.12345%') as xml)
|
|
-- set @myxml = cast(replace(cast(@myxml as varchar(max)),'23%','23.12345%') as xml)
|
|
-- set @myxml = cast(replace(cast(@myxml as varchar(max)),'90%','90.12345%') as xml)
|
|
-- set @myxml = cast(replace(cast(@myxml as varchar(max)),', Step 13',', Step 14') as xml)
|
|
--end to be removed
|
|
DECLARE @Items TABLE
|
|
(
|
|
ID int identity(1,1),
|
|
ItemID int
|
|
)
|
|
INSERT INTO @Items (itemid)
|
|
select roc.value('@ItemID','int') itemid
|
|
from @myxml.nodes('//ConsistencyChecks') t1(roc)
|
|
declare @LatestApproved TABLE
|
|
(
|
|
ItemID int PRIMARY KEY,
|
|
CheckID int
|
|
)
|
|
insert into @LatestApproved
|
|
select rr.itemid,max(checkid) checkid
|
|
from revisions rr
|
|
inner join checks cc on rr.revisionid = cc.revisionid
|
|
inner join stages ss on cc.stageid = ss.stageid
|
|
where ss.isapproved = 1
|
|
and rr.itemid in
|
|
(select itemid from vefn_siblingitems((select itemid from docversions where versionid = @docversionid),0))
|
|
group by rr.itemid
|
|
|
|
SELECT
|
|
ii.[ItemID]
|
|
,ii.[PreviousID]
|
|
,ii.[ContentID]
|
|
,ii.[DTS]
|
|
,ii.[UserID]
|
|
,ii.[LastChanged]
|
|
,CC.[Number]
|
|
,CC.[Text]
|
|
,CC.[Type]
|
|
,CC.[FormatID]
|
|
,CC.[Config]
|
|
,CC.[DTS] [cDTS]
|
|
,CC.[UserID] [cUserID]
|
|
,CC.[LastChanged] [cLastChanged]
|
|
,(SELECT COUNT(*) FROM [Annotations] WHERE [Annotations].[ItemID]=ii.[ItemID]) [AnnotationCount]
|
|
,(SELECT COUNT(*) FROM [DocVersions] WHERE [DocVersions].[ItemID]=ii.[ItemID]) [DocVersionCount]
|
|
,(SELECT COUNT(*) FROM [Items] [Next] WHERE [Next].[PreviousID]=ii.[ItemID]) [NextCount]
|
|
,(SELECT COUNT(*) FROM [Parts] WHERE [Parts].[ItemID]=ii.[ItemID]) [PartCount]
|
|
,(SELECT COUNT(*) FROM [Transitions] WHERE [Transitions].[RangeID]=ii.[ItemID]) [Transition_RangeIDCount]
|
|
,(SELECT COUNT(*) FROM [Transitions] WHERE [Transitions].[ToID]=ii.[ItemID]) [Transition_ToIDCount]
|
|
,(SELECT COUNT(*) FROM [Details] WHERE [Details].[ContentID]=CC.[ContentID]) [DetailCount]
|
|
,(SELECT COUNT(*) FROM [Entries] WHERE [Entries].[ContentID]=CC.[ContentID]) [EntryCount]
|
|
,(SELECT COUNT(*) FROM [Grids] WHERE [Grids].[ContentID]=CC.[ContentID]) [GridCount]
|
|
,(SELECT COUNT(*) FROM [Images] WHERE [Images].[ContentID]=CC.[ContentID]) [ImageCount]
|
|
,(SELECT COUNT(*) FROM [Items] WHERE [Items].[ContentID]=CC.[ContentID]) [ItemCount]
|
|
,(SELECT COUNT(*) FROM [Parts] WHERE [Parts].[ContentID]=CC.[ContentID]) [cPartCount]
|
|
,(SELECT COUNT(*) FROM [RoUsages] WHERE [RoUsages].[ContentID]=CC.[ContentID]) [RoUsageCount]
|
|
,(SELECT COUNT(*) FROM [Transitions] WHERE [Transitions].[FromID]=CC.[ContentID]) [TransitionCount]
|
|
,(SELECT COUNT(*) FROM [ZContents] WHERE [ZContents].[ContentID]=CC.[ContentID]) [ZContentCount]
|
|
,ribeye.ChkXml
|
|
FROM [Items] ii
|
|
INNER JOIN [Contents] cc ON ii.[ContentID] = cc.[ContentID]
|
|
inner join
|
|
(
|
|
select la.itemid,.dbo.vefn_checkxml(@myxml,cc.consistencychecks) chkxml
|
|
from checks cc
|
|
inner join @LatestApproved la on cc.checkid = la.checkid
|
|
) ribeye on ii.itemid = ribeye.itemid
|
|
left join @items iii on ii.itemid = iii.itemid
|
|
where chkxml.exist('//ROChecks') | chkxml.exist('//TransitionChecks') | chkxml.exist('//LibDocChecks') > 0 or
|
|
ii.ItemID in (select ItemID from @Items)
|
|
order by isnull(iii.id,999999)
|
|
END
|
|
GO
|
|
|
|
/****** Object: StoredProcedure [dbo].[vesp_GetAllConsistencyIssues] Script Date: 10/21/2011 15:03:40 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
/*
|
|
[dbo].[vesp_GetAllConsistencyIssues] 1
|
|
|
|
*/
|
|
CREATE PROCEDURE [dbo].[vesp_GetAllConsistencyIssues]
|
|
(
|
|
@DocVersionID int
|
|
)
|
|
AS BEGIN
|
|
declare @myxml xml
|
|
set @myxml = (select dbo.vefn_checkallxml(@DocVersionID))
|
|
DECLARE @Items TABLE
|
|
(
|
|
ItemID int PRIMARY KEY
|
|
)
|
|
INSERT INTO @Items
|
|
select r1.value('@ItemID','int') itemid
|
|
from @myxml.nodes('//ROCheck') t1(r1)
|
|
union
|
|
select r1.value('@ItemID','int') itemid
|
|
from @myxml.nodes('//TransitionCheck') t1(r1)
|
|
union
|
|
select r1.value('@ItemID','int') itemid
|
|
from @myxml.nodes('//LibDocCheck') t1(r1)
|
|
SELECT
|
|
ii.[ItemID]
|
|
,ii.[PreviousID]
|
|
,ii.[ContentID]
|
|
,ii.[DTS]
|
|
,ii.[UserID]
|
|
,ii.[LastChanged]
|
|
,CC.[Number]
|
|
,CC.[Text]
|
|
,CC.[Type]
|
|
,CC.[FormatID]
|
|
,CC.[Config]
|
|
,CC.[DTS] [cDTS]
|
|
,CC.[UserID] [cUserID]
|
|
,CC.[LastChanged] [cLastChanged]
|
|
,(SELECT COUNT(*) FROM [Annotations] WHERE [Annotations].[ItemID]=ii.[ItemID]) [AnnotationCount]
|
|
,(SELECT COUNT(*) FROM [DocVersions] WHERE [DocVersions].[ItemID]=ii.[ItemID]) [DocVersionCount]
|
|
,(SELECT COUNT(*) FROM [Items] [Next] WHERE [Next].[PreviousID]=ii.[ItemID]) [NextCount]
|
|
,(SELECT COUNT(*) FROM [Parts] WHERE [Parts].[ItemID]=ii.[ItemID]) [PartCount]
|
|
,(SELECT COUNT(*) FROM [Transitions] WHERE [Transitions].[RangeID]=ii.[ItemID]) [Transition_RangeIDCount]
|
|
,(SELECT COUNT(*) FROM [Transitions] WHERE [Transitions].[ToID]=ii.[ItemID]) [Transition_ToIDCount]
|
|
,(SELECT COUNT(*) FROM [Details] WHERE [Details].[ContentID]=CC.[ContentID]) [DetailCount]
|
|
,(SELECT COUNT(*) FROM [Entries] WHERE [Entries].[ContentID]=CC.[ContentID]) [EntryCount]
|
|
,(SELECT COUNT(*) FROM [Grids] WHERE [Grids].[ContentID]=CC.[ContentID]) [GridCount]
|
|
,(SELECT COUNT(*) FROM [Images] WHERE [Images].[ContentID]=CC.[ContentID]) [ImageCount]
|
|
,(SELECT COUNT(*) FROM [Items] WHERE [Items].[ContentID]=CC.[ContentID]) [ItemCount]
|
|
,(SELECT COUNT(*) FROM [Parts] WHERE [Parts].[ContentID]=CC.[ContentID]) [cPartCount]
|
|
,(SELECT COUNT(*) FROM [RoUsages] WHERE [RoUsages].[ContentID]=CC.[ContentID]) [RoUsageCount]
|
|
,(SELECT COUNT(*) FROM [Transitions] WHERE [Transitions].[FromID]=CC.[ContentID]) [TransitionCount]
|
|
,(SELECT COUNT(*) FROM [ZContents] WHERE [ZContents].[ContentID]=CC.[ContentID]) [ZContentCount]
|
|
,(select dbo.vefn_CheckAllXMLByItemID(ii.itemid,@myxml)) ChkXml
|
|
FROM [Items] ii
|
|
INNER JOIN [Contents] cc ON ii.[ContentID] = cc.[ContentID]
|
|
where ii.ItemID in (select ItemID from @Items)
|
|
-- order by ii.itemid
|
|
END
|
|
go
|
|
|
|
/****** Object: StoredProcedure [dbo].[getRevisionByItemIDandRevisionNumber] Script Date: 11/23/2011 15:58:01 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
CREATE PROCEDURE [dbo].[getRevisionByItemIDandRevisionNumber]
|
|
|
|
(
|
|
@ItemID int,
|
|
@RevisionNumber nvarchar(50)
|
|
)
|
|
WITH EXECUTE AS OWNER
|
|
AS
|
|
declare @RevisionID int
|
|
set @RevisionID = (select revisionid from revisions where itemid = @itemid and revisionnumber = @RevisionNumber)
|
|
SELECT
|
|
[RevisionID],
|
|
[ItemID],
|
|
[TypeID],
|
|
[RevisionNumber],
|
|
[RevisionDate],
|
|
[Notes],
|
|
[Config],
|
|
[DTS],
|
|
[UserID],
|
|
[LastChanged],
|
|
(SELECT COUNT(*) FROM [Checks] WHERE [Checks].[RevisionID]=[Revisions].[RevisionID]) [CheckCount],
|
|
(SELECT COUNT(*) FROM [Versions] WHERE [Versions].[RevisionID]=[Revisions].[RevisionID]) [VersionCount]
|
|
FROM [Revisions]
|
|
WHERE [RevisionID]=@RevisionID
|
|
|
|
SELECT
|
|
[Checks].[CheckID],
|
|
[Checks].[RevisionID],
|
|
[Checks].[StageID],
|
|
[Checks].[ConsistencyChecks],
|
|
[Checks].[DTS],
|
|
[Checks].[UserID],
|
|
[Checks].[LastChanged],
|
|
[Stages].[Name] [Stage_Name],
|
|
[Stages].[Description] [Stage_Description],
|
|
[Stages].[IsApproved] [Stage_IsApproved],
|
|
[Stages].[DTS] [Stage_DTS],
|
|
[Stages].[UserID] [Stage_UserID]
|
|
FROM [Checks]
|
|
JOIN [Stages] ON
|
|
[Stages].[StageID]=[Checks].[StageID]
|
|
WHERE
|
|
[Checks].[RevisionID]=@RevisionID
|
|
|
|
|
|
SELECT
|
|
[Versions].[VersionID],
|
|
[Versions].[RevisionID],
|
|
[Versions].[StageID],
|
|
[Versions].[DTS],
|
|
[Versions].[UserID],
|
|
[Versions].[LastChanged],
|
|
[Versions].[PDF],
|
|
[Versions].[SummaryPDF],
|
|
[Stages].[Name] [Stage_Name],
|
|
[Stages].[Description] [Stage_Description],
|
|
[Stages].[IsApproved] [Stage_IsApproved],
|
|
[Stages].[DTS] [Stage_DTS],
|
|
[Stages].[UserID] [Stage_UserID]
|
|
FROM [Versions]
|
|
JOIN [Stages] ON
|
|
[Stages].[StageID]=[Versions].[StageID]
|
|
WHERE
|
|
[Versions].[RevisionID]=@RevisionID
|
|
|
|
RETURN
|
|
go
|