Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DECLARE @SavedHtmlNameAOId INT = 72;
- DECLARE @ActionOption_CustomQualifier TABLE
- (
- AO_Id int,
- CQ_Map varchar(max)
- );
- INSERT INTO
- @ActionOption_CustomQualifier
- SELECT
- AO.Id, CQ.Map FROM ActionOption AO
- LEFT JOIN
- CustomQualifier CQ
- ON CQ.ActionOptionId = AO.ActionOptionParentId;
- SELECT
- A.Description, A.Name, A.[Order],
- AT.id AS 'ActionTypeId',
- (
- SELECT
- CriteriaInstanceNumber,
- CASE WHEN AOV.ActionOptionId = @SavedHtmlNameAOId AND ISNUMERIC(AOV.Value) = 1 THEN
- (SELECT TOP 1 Name FROM Template t WHERE t.id = CONVERT(INT, AOV.[Value])) + '_saved'
- ELSE
- AOV.Value
- END AS 'Value',
- CASE WHEN (SELECT CQ_MAP FROM @ActionOption_CustomQualifier WHERE AO_Id = AO.id) IS NULL THEN
- AO.id
- ELSE
- (SELECT TOP 1
- id
- FROM
- ActionOption
- WHERE
- Name COLLATE DATABASE_DEFAULT =
- (
- SELECT [Key]
- FROM OPENJSON((
- SELECT
- CQ_MAP
- FROM
- @ActionOption_CustomQualifier
- WHERE
- AO_Id = AO.id
- ), '$')
- WHERE
- Value = AO.Name
- ) COLLATE DATABASE_DEFAULT
- )
- END AS 'ActionOptionId',
- CASE WHEN (SELECT CQ_MAP FROM @ActionOption_CustomQualifier WHERE AO_Id = AO.id) IS NULL THEN
- CAST(0 AS BIT)
- ELSE
- CAST(1 AS BIT)
- END AS 'IsCustom'
- FROM
- dbo.ActionOptionValue AOV
- LEFT JOIN
- dbo.ActionOption AO
- ON AOV.ActionOptionId = AO.id
- WHERE A.id = AOV.ActionId
- FOR JSON PATH, INCLUDE_NULL_VALUES
- ) AS 'ActionOptionValues'
- FROM
- Action A
- LEFT JOIN
- ActionType AT
- ON A.ActionTypeId = AT.id
- WHERE
- A.id IN (
- SELECT
- CONVERT(INT, value)
- FROM
- STRING_SPLIT(@Ids, ',')
- )
- FOR JSON PATH, ROOT('Actions'), INCLUDE_NULL_VALUES;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement