Uid уже существует. Как такое может быть?
16 апреля 2020 11:54
Как бороться с такой ситуацией?
![]()
На DEV среде был создан web service. Сделан экспорт этого сервиса стандартными средствами bmp. Далее сделан импорт этого сервиса на тестовую среду стандартными средствами bmp. Но при попытке изменить данные и сохранить сервис получаю такую ошибку.
Нравится
1 комментарий
21 апреля 2020 22:12
Судя по тексту сообщения, оно генерируется триггером TRSysSchemaIU на таблице SysSchema. В нём проверяется:
DECLARE @UId uniqueidentifier DECLARE @SysWorkspaceName nvarchar(250) SELECT TOP 1 @UId = [SysSchema].[UId], @SysWorkspaceName = [SysWorkspace].[Name] FROM [dbo].[SysSchema] INNER JOIN [dbo].[SysPackage] ON [SysPackage].[Id] = [SysSchema].[SysPackageId] INNER JOIN [dbo].[SysWorkspace] ON [SysWorkspace].[Id] = [SysPackage].[SysWorkspaceId] INNER JOIN [INSERTED] [Inserted] ON [Inserted].[UId] = [SysSchema].[UId] INNER JOIN [dbo].[SysPackage] [InsertedSysPackage] ON [InsertedSysPackage].[Id] = [Inserted].[SysPackageId] WHERE [InsertedSysPackage].[SysWorkspaceId] = [SysPackage].[SysWorkspaceId] AND [Inserted].[Id] <> [SysSchema].[Id] ORDER BY [SysSchema].[UId], [SysWorkspace].[Name] IF (@UId IS NOT NULL) AND (@SysWorkspaceName IS NOT NULL) BEGIN DECLARE @ExceptionMessage nvarchar(250) SET @ExceptionMessage = N'@Terrasoft.Core,SysSchemaSchema.Exception.DuplicateUIdInWorkspace~{' + CAST(@UId AS VARCHAR(38)) + '}~' + @SysWorkspaceName RAISERROR (@ExceptionMessage, 16, 1) ROLLBACK TRANSACTION END
То есть у Вас в системе откуда-то взялась схема с другим Id, но таким же UId и рабочим пространством. Связана ли она с той, что только что добавили, кто и когда её внёс, можно посмотреть, отправив такой же запрос, но со всеми полями.
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать