Курсовая работа: Разработка физической модели базы данных "Учёт характеристик сигналов телемеханики"

END

ELSE

BEGIN

DECLARE @ID_DataType INT

EXEC @ID_DataType = FindDataTypeWithInsUpd @NameDataType

UPDATE TITRSignals SET NameSignal = @NameSignal, MEKAdress = @MEKAdress,

MaxEnginGrade = @MaxEnginGrade, MinEnginGrade = MinEnginGrade, MaxPhysicGrade = @MaxPhysicGrade,MinPhysicGrade = @MinPhysicGrade, Comment = @Comment, ID_DataType = @ID_DataType,

ID_Request = @ID_Request

WHERE MEKAdress = @MEKAdress AND @ID_PLC = ID_PLC AND

IsDeleted = 0 AND IsTISignal = @IsTISignal

END

Процедура InsertTITRSignal использует подпрограмму FindPLCWithInsUp, которая возвращает ID ПЛК с заданным номерам, принадлежащий определённому РНУ. Если РНУ или ПЛК не существует, то он создаются. Тоже самое делает и FindDataTypeWithInsUpd, только с типом данных. В этом заключается одно из преимуществ подхода, избранного для автоматизации бизнес-процесса. Все словари заполняются автоматически. Также предусмотрены триггеры очистки словарей от данных, которые не используются в данный момент ни одной записью дочерних отношений.

Для иллюстрации всего вышесказанного приведём код одной из процедур:

CREATE PROCEDURE FindDataTypeWithInsUpd

@NameDataType VARCHAR(20)

AS

BEGIN

DECLARE @ID_DataType INT

SELECT @ID_DataType = ID_DataType

FROM DataTypes

WHERE NameDataType = @NameDataType

IF @ID_DataType IS NULL BEGIN

INSERT INTO DataTypes (NameDataType) VALUES

(@NameDataType)

SET @ID_DataType = @@IDENTITY

END

RETURN @ID_DataType

END

При вводе данных по характеристикам сигналов может возникнуть такая ситуация, что какой-либо сигналов обновляется по заявке, имеющей дату составления более раннюю, чем заявка, по которой редактировался сигнал, уже хранящийся в базе данных. Разумеется, такое изменение не может быть внесено. В таком случае процедура UpdateTITRSignal откатывает всю транзакцию и даёт пользователю возможность исправить ошибку в базе данных SCADA RealFlex, в которую данные неправильные изменения уже были внесены, а затем повторить всё заново. Конечно, такое развитие событий маловероятно, но предусмотреть его всё-таки стоит.

К-во Просмотров: 426
Бесплатно скачать Курсовая работа: Разработка физической модели базы данных "Учёт характеристик сигналов телемеханики"