А покажите тот скрипт?
Так бывает если у вас перед тем была строчка with Sender as TM_Object
тогда вместо названия Поле. надо писать сразу свойство того поля, что запустило скрипт.
По вашему случаю, я бы пользовался тегами объектов.
Это не сильно правильно, но работает.
делаете по полю для каждого параметра, тег для каждого поля соответствует № агрегата. На их изменение делаете некий скрипт.
В скрипте определяете процедуру, которой передаете все переменные данного агрегата в зависимости от тега. Я скину то шото похожее, надеюсь разберетесь

procedure DiffTemp(VarIn1, VarIn2, VarOut :TM_Variable);
begin
if VarIn1.IsGoodQuality = true and VarIn2.IsGoodQuality = true then begin
VarOut.Value := VarIn2.Value - VarIn1.Value;
end;
end;
begin
case Sender.Tag of
1: begin
DiffTemp(Temp11,Temp12,DT_1);
end;
2: begin
DiffTemp(Temp21,Temp22,DT_2);
end;
3: ...
...
end;
end.
В вашем случае процерура будет посложнее, но в общем как-то так.