---- Справочник_типов_УРЗА - FOR DELETE  ----
  -- при удалении записи из Справочника_типов_УРЗА удаляем записи из Спр_состава_УРЗА, где код удаляемой записи фигурирует как Код_типа_устройства или как Код_типа_подустройства
  -- при удалении записи из Справочника_типов_УРЗА удаляем записи из Спр_параметров_УРЗА
  -- при удалении записи из Справочника_типов_УРЗА удаляем записи из Спр_уставок_УРЗА
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[OnDefenceTypeDelete]') and xtype = N'TR')
drop trigger [dbo].[OnDefenceTypeDelete]
GO

CREATE TRIGGER OnDefenceTypeDelete ON [dbo].[Справочник_типов_УРЗА] 
FOR DELETE 
AS
  if (SELECT Count(*) FROM DELETED) > 0 
  begin
    DELETE FROM Спр_состава_УРЗА WHERE Код_типа_устройства IN (SELECT Код_типа_УРЗА FROM DELETED) OR Код_типа_подустройства IN (SELECT Код_типа_УРЗА FROM DELETED)
    DELETE FROM Спр_параметров_УРЗА WHERE Код_типа_УРЗА in (SELECT Код_типа_УРЗА FROM DELETED)
    DELETE FROM Спр_уставок_УРЗА WHERE Код_типа_УРЗА in (SELECT Код_типа_УРЗА FROM DELETED)
  end