Добрый день!
Есть таблица MySql, которую SCADA заполняет переменными. Эта таблица отображается в SCADA через метод RunSQL компонента таблица. Необходимо корректировать значения некоторых полей вручную из скады.
Пробовал подвязать такой скрипт на событие oncelldatachange таблицы
var aID, aValue, aField, aQuery:string;
AisString:boolean;
begin
aID:=Table17.GetCell(0, Cell.Row).Text;
aValue:= Table17.GetCell(Cell.Col, Cell.Row).Text;
AisString:= false;
case Cell.Col of
0: exit;
1: aField:='cam'; //
2: aField:='poc';
3: aField:='vol';
4: begin aField:='sta'; AisString:= true; end;
5: begin aField:='end'; AisString:= true; end;
6: begin aField:='ope'; AisString:= true; end;
7: aField:='drd';
8: aField:='drh';
9: aField:='drs';
10: aField:='tck';
11: begin aField:='wid'; AisString:= true; end;
12: begin aField:='por'; AisString:= true; end;
13: begin aField:='typ'; AisString:= true; end;
14: aField:='wms';
15: aField:='wmf';
16: aField:='ene';
17: aField:='qen';
18: aField:='war';
19: aField:='qwa';
20: aField:='zag';
21: aField:='pro';
end;
if AisString then aQuery:= 'UPDATE `test` SET `'+aField+'`='+Quotedstr(aValue) +' WHERE `id`=' +aID+';'
else aQuery:= 'UPDATE `test` SET `'+aField+'`='+aValue +' WHERE `id`=' +aID+';';
RunSQL(aQuery, nil, 134);
end.
, но скрипт не выполняется вероятно из-за того, что не изменялись переменные, связанные с таблицей. Есть ли какая-нибудь возможность выполнить UPDATE поля таблицы БД при изменении соответствующего поля таблицы в SCADA?