spAddUpdate_EmailListConditionBlock

Parameters

Parameter Parameter Type Mode Description
@PKID int INOUT
@Name nvarchar(50) IN
@Deleted bit IN
@ConditionBlockConditions xml IN
@ConditionBlockEmailConditions xml IN

Definition

Copy


            CREATE PROCEDURE [dbo].[spAddUpdate_EmailListConditionBlock]
            (
                @PKID int output,
                @Name nvarchar(50),
                @Deleted bit,
                @ConditionBlockConditions XML,
                @ConditionBlockEmailConditions XML
            )
            AS
            BEGIN

                EXEC [dbo].[spAddUpdate_ConditionBlock]
                    @PKID output,
                    @Name,
                    @Deleted,
                    @ConditionBlockConditions;

                -- ConditionList already has cascade deleted during spAddUpdate_ConditionBlock
                -- while reconstructing the ConditionBlockConditions
                INSERT [dbo].[ConditionList]
                    ([ConditionBlockConditionID], [EmailListID])
                SELECT
                    cbc.[ID],
                    cbec.el.value('@ID', 'int')
                FROM @ConditionBlockEmailConditions.nodes('/ConditionBlockEmailConditions/Condition/EmailList') cbec(el)
                INNER JOIN [dbo].[ConditionBlockCondition] cbc
                    ON cbec.el.value('../@ID', 'int') = cbc.[ConditionID]
                WHERE cbc.[ConditionBlockID] = @PKID
            END