212 lines
5.8 KiB
Plaintext
212 lines
5.8 KiB
Plaintext
set ANSI_NULLS ON
|
|
set QUOTED_IDENTIFIER ON
|
|
go
|
|
|
|
|
|
/*
|
|
getContentAuditsChronologyByItemID 146,146,0
|
|
getContentAuditsChronologyByItemID 146,146,1
|
|
*/
|
|
ALTER PROCEDURE [dbo].[getContentAuditsChronologyByItemID]
|
|
(
|
|
@ProcedureItemID int,
|
|
@SelectedItemID int,
|
|
@IncludeDeletedChildren int
|
|
)
|
|
|
|
WITH EXECUTE AS OWNER
|
|
AS
|
|
begin
|
|
select [AuditID],[ContentID],[Number],[Text],[Type],[FormatID],[Config],[DTS],[UserID],[DeleteStatus],[DeleteDTS],[ActionWhat],[ActionWhen],[Path]
|
|
from
|
|
(
|
|
select
|
|
case
|
|
when lastauditid is null then 'Added'
|
|
when r.deletestatus > 0 then 'Deleted'
|
|
when lastauditid = -1 then 'Changed'
|
|
when DeletedAuditID is not null then 'Restored'
|
|
else 'Changed'
|
|
end actionwhat
|
|
,case
|
|
when lastauditid is null then dts
|
|
when r.deletestatus > 0 then deletedts
|
|
when lastauditid = -1 then dts
|
|
when DeletedAuditID is not null then deletedts
|
|
else dts
|
|
end actionwhen
|
|
,*
|
|
from vefn_tblchilditems (@ProcedureItemID,@SelectedItemID,@IncludeDeletedChildren) t
|
|
inner join vefn_chronologyreport() r
|
|
on t.icontentid = r.contentid
|
|
where dts > procdts
|
|
) ah
|
|
order by contentid,actionwhen
|
|
RETURN
|
|
end
|
|
go
|
|
set ANSI_NULLS ON
|
|
set QUOTED_IDENTIFIER ON
|
|
go
|
|
|
|
|
|
|
|
|
|
/*
|
|
select * from [vefn_tblChildItems] (146,146,0) order by ordinalpath
|
|
*/
|
|
ALTER FUNCTION [dbo].[vefn_tblChildItems](@ProcItemID int, @ItemID int, @IncludeDeletedChildren int)
|
|
RETURNS @Children TABLE
|
|
(
|
|
ItemID int PRIMARY KEY,
|
|
IContentID int,
|
|
IDeleteStatus int,
|
|
ProcDTS datetime,
|
|
Path nvarchar(max),
|
|
OrdinalPath nvarchar(max)
|
|
)
|
|
WITH EXECUTE AS OWNER
|
|
AS
|
|
BEGIN
|
|
declare @path nvarchar(max)
|
|
declare @ppath nvarchar(max)
|
|
declare @ordinalpath nvarchar(max)
|
|
declare @pordinalpath nvarchar(max)
|
|
declare @ordinal int
|
|
declare @pitemid int
|
|
select @path = path,@ordinalpath = ordinalpath,@ordinal = ordinal,@pitemid = parentid from vefn_siblingandchildrenitems(null) where itemid = @ItemID
|
|
if @pitemid = 0 begin
|
|
set @pordinalpath = ''
|
|
set @ppath = ''
|
|
end
|
|
else begin
|
|
select @ppath = path,@pordinalpath = ordinalpath from vefn_siblingandchildrenitems(null) where itemid = @pitemID
|
|
end
|
|
declare @procdts datetime
|
|
select @procdts = dts from items where itemid = @ProcItemID
|
|
Declare @Delim char(1)
|
|
Set @Delim=char(7)
|
|
Declare @DelimNumber char(1)
|
|
Set @DelimNumber=char(17)
|
|
Declare @DelimStep char(1)
|
|
Set @DelimStep='.'
|
|
begin
|
|
with Itemz([Level], [ItemID], [ContentID], DeleteStatus, ProcDTS, PPath, [Path], [POrdinalPath], [OrdinalPath], [FromType], [Ordinal]) as (
|
|
Select 0 [Level], [ItemID], I.[ContentID], I.DeleteStatus, @procdts procdts,
|
|
@ppath [PPath],
|
|
@path [Path],
|
|
@pordinalpath [POrdinalPath],
|
|
@ordinalpath [OrdinalPath],
|
|
0 [FromType],@ordinal [Ordinal]
|
|
FROM [tblItems] I
|
|
--inner join tblContents C on C.ContentID=I.ContentID
|
|
where I.[ItemID]=@ItemID
|
|
Union All
|
|
-- Children
|
|
select [Level] + 1, I.[ItemID], I.[ContentID], I.DeleteStatus, @procdts procdts,
|
|
PATH + --''
|
|
case C.Type/10000
|
|
when 2 then
|
|
case P.FromType
|
|
when 3 then @DelimStep + 'Caution'
|
|
when 4 then @DelimStep + 'Note'
|
|
else '' end
|
|
else '' end
|
|
PPath,
|
|
Path + case C.Type/10000
|
|
when 0 then @Delim +C.Number + @DelimNumber + C.Text
|
|
when 1 then @Delim +C.Number + @DelimNumber + C.Text
|
|
else
|
|
case P.FromType
|
|
--when 1 then 'PRC' + @Delim + cast(1 as varchar(3))
|
|
--when 2 then 'SEC' + @Delim + cast(1 as varchar(3))
|
|
when 3 then @DelimStep +'Caution' + @DelimStep + cast(1 as varchar(3))
|
|
when 4 then @DelimStep +'Note' + @DelimStep + cast(1 as varchar(3))
|
|
when 5 then @DelimStep +'RNO' + @DelimStep
|
|
when 7 then @DelimStep +'Table' + @DelimStep
|
|
else case when Z.FromType < 3 then @Delim else @DelimStep end +
|
|
case when I.deletestatus != 0 then 'Old ' else '' end + cast(1 as varchar(3))
|
|
end end Path,
|
|
OrdinalPath + '.' + Right('000' + Cast(P.FromType as varchar(4)), 4) + '-' ,
|
|
OrdinalPath + '.' + Right('000' + Cast(P.FromType as varchar(4)), 4) + '-00001',
|
|
P.[FromType],0
|
|
from Itemz Z
|
|
join tblParts P on P.ContentID = Z.ContentID
|
|
join tblItems I on I.ItemID = P.ItemID
|
|
inner join tblContents C on C.ContentID=I.ContentID
|
|
where @IncludeDeletedChildren = 1 or z.DeleteStatus = 0
|
|
-- Siblings
|
|
Union All
|
|
select [Level] , I.[ItemID], I.[ContentID], I.DeleteStatus, @procdts procdts,
|
|
PPath,
|
|
--'1' +
|
|
PPath + case C.Type/10000
|
|
when 0 then @Delim + C.Number + @DelimNumber + C.Text
|
|
when 1 then @Delim + C.Number + @DelimNumber + C.Text
|
|
else case when Path like '%.%' then @DelimStep else @Delim end +
|
|
case when I.deletestatus != 0 then 'Old ' else '' end + cast(Ordinal + 2 as varchar(3))
|
|
end Path,
|
|
POrdinalPath,
|
|
POrdinalPath + right('00000' + cast(Z.[Ordinal] + 2 as varchar(5)), 5),
|
|
FromType,Z.[Ordinal] +1
|
|
from Itemz Z
|
|
join tblItems I on I.PreviousID = Z.ItemID
|
|
inner join tblContents C on C.ContentID=I.ContentID
|
|
where Z.[Level] > 0
|
|
)
|
|
insert into @Children select ItemID, ContentID, DeleteStatus, ProcDTS, Path, OrdinalPath from Itemz
|
|
RETURN
|
|
END
|
|
end
|
|
|
|
|
|
go
|
|
|
|
set ANSI_NULLS ON
|
|
set QUOTED_IDENTIFIER ON
|
|
go
|
|
|
|
|
|
/*
|
|
getContentAuditsChronologyByItemID 146,146,0
|
|
getContentAuditsChronologyByItemID 146,146,1
|
|
*/
|
|
ALTER PROCEDURE [dbo].[getContentAuditsChronologyByItemID]
|
|
(
|
|
@ProcedureItemID int,
|
|
@SelectedItemID int,
|
|
@IncludeDeletedChildren int
|
|
)
|
|
|
|
WITH EXECUTE AS OWNER
|
|
AS
|
|
begin
|
|
select [AuditID],[ContentID],[Number],[Text],[Type],[FormatID],[Config],[DTS],[UserID],[DeleteStatus],[DeleteDTS],[ActionWhat],[ActionWhen]
|
|
from
|
|
(
|
|
select
|
|
case
|
|
when lastauditid is null then 'Added'
|
|
when r.deletestatus > 0 then 'Deleted'
|
|
when lastauditid = -1 then 'Changed'
|
|
when DeletedAuditID is not null then 'Restored'
|
|
else 'Changed'
|
|
end actionwhat
|
|
,case
|
|
when lastauditid is null then dts
|
|
when r.deletestatus > 0 then deletedts
|
|
when lastauditid = -1 then dts
|
|
when DeletedAuditID is not null then deletedts
|
|
else dts
|
|
end actionwhen
|
|
,*
|
|
from vefn_tblchilditems (@ProcedureItemID,@SelectedItemID,@IncludeDeletedChildren) t
|
|
inner join vefn_chronologyreport() r
|
|
on t.icontentid = r.contentid
|
|
where dts > procdts
|
|
) ah
|
|
order by contentid,actionwhen
|
|
RETURN
|
|
end
|
|
go
|