bluebunny72 icon

Friendly error message for FK

bluebunny72 | PRO | 01/09/18 06:42:37 PM UTC | 0 ⭐ | 465 👁️ | Never ⏰ | []
T-SQL |

960 B

|

None

|

0 👍

/

0 👎

IF NOT EXISTS (SELECT TOP 1 1 FROM ObjectMainMessages WHERE ObjectName = 'FK_item_ILC_InfoCard' AND MessageType = 18)
    BEGIN
        DECLARE @NextMessageNo  int
        DECLARE @NextMessageNoNext  int
 
        SELECT @NextMessageNo   = ISNULL(MAX(messageno),799999) 
        FROM ApplicationMessages 
        WHERE MessageNo BETWEEN 800000 AND 999999
 
        SET @NextMessageNo = @NextMessageNo + 1
        SET @NextMessageNoNext = @NextMessageNo + 1
 
        ---add main message 404 = Cannot delete record. At least one &1 exists for this &2.
        EXEC AddObjectMainMessageSp 'FK_item_ILC_InfoCard', 18, 404, 16, 'Item to InfoCard FK violation', 0 
 
        --add the substitution text
        EXEC AddApplicationMessageSp @NextMessageNo, 'Item', N'1033'
        EXEC AddApplicationMessageSp @NextMessageNoNext, 'InfoCard', N'1033'
 
        --add substitution text to main message
        EXEC AddObjectBuildMessageSp 'FK_item_ILC_InfoCard', 18, 1, @NextMessageNo
        EXEC AddObjectBuildMessageSp 'FK_item_ILC_InfoCard', 18, 2, @NextMessageNoNext
    END

Comments