По инструкции на академии добавил правило поиска дублей в контрагенте по полю ИНН.
Правило корректно отрабатывает при глобальном поиске, но не работает при сохранении карточки контрагента. Ошибок в логе поиска нет. Буду благодарен за идеи...
Код процедуры поиска:
IF NOT OBJECT_ID('[dbo].[tsp_FindAccountDuplicateByInn]') IS NULL
BEGIN
    DROP PROCEDURE [dbo].[tsp_FindAccountDuplicateByInn];
END;
GO
CREATE PROCEDURE [dbo].[tsp_FindAccountDuplicateByInn] (
    @parsedConfig CreatingObjectInfo READONLY,
    @sysAdminUnit UNIQUEIDENTIFIER,
    @ruleId UNIQUEIDENTIFIER
)
AS
BEGIN
    DECLARE @parsedConfigRowsCount INT = (SELECT COUNT(*) FROM @parsedConfig);
    CREATE TABLE #searchAccount (
        [SxINN] INT,
        [SortDate] DATETIME
    );
    IF @parsedConfigRowsCount = 0
    BEGIN
        INSERT INTO #searchAccount ([SxInn], [SortDate])
        SELECT
            [SxInn],
            MAX([ModifiedOn])
        FROM [Account]
         GROUP BY [SxInn]
         HAVING COUNT(*) > 1;
    END;
    
     INSERT INTO [AccountDuplicateSearchResult] ([AccountId], [GroupId], [RuleId], [SysAdminUnitId])
    SELECT
         [vr].[Id],
         DENSE_RANK() OVER (ORDER BY [vr].[SortDate] DESC, [vr].[SxInn]),
         @ruleId RuleId,
         @sysAdminUnit
    FROM (
         SELECT
             [v].[Id],
             [v].[SxInn],
             [r].[SortDate]
         FROM [Account] [v], #searchAccount r
         WHERE [v].[SxInn] = [r].[SxInn]
         GROUP BY [v].[SxInn], [r].[SortDate], [v].[Id]
    ) [vr];
END;
GO