Добрый день!
Задачу поставили но столкнулся с непоняткой.
Есть таблица. Скрипт на полный запуск проекта заполняет через Таблица_в_СКАДЕ.RunSQL('SELECT * FROM `Таблица_в_БД`', tsSaveFixRow) данными Таблица_в_СКАДЕ.
Иногда значения в таблице нужно перезаписать полностью и по принципу заполнения рецептов это в ручную можно долго и нудно сделать.
Но если использовать элемент список вроде все просто. Без привязки к внутренней/внешней переменной.
Согласно индексу выбранной строки делаем соответствующий SQL запрос через IF. Пусть это будет универсальный скрипт.
var
I: Integer;
aQuery: string;
begin
I := ComboBox1.ItemIndex; // получить индекс выбранной строки списка
if I = 0 then
tblWaysLimits_f.RunSQL('SELECT * FROM '+ Chr(96) + UpdateInfoLimits_f.AsStr + Chr(96), tsSaveFixRow);
if I = 1 then
tblWaysLimits_f.RunSQL('SELECT * FROM '+ Chr(96) + UpdateInfoLimits_f.AsStr + '_1' + Chr(96), tsSaveFixRow);
if I = 2 then
ShowMessageClient(GetClientName, 'Alarm!', '2');
if I = 3 then
ShowMessageClient(GetClientName, 'Alarm!', '3');
end.
И вот тут начинаются вопросы.
1. данный универсальный скрипт нужно вешать на какую реакцию? по нажатию, но тогда индекс строки будет равен той которая выбрана именно сейчас. Если выбираем 2 строку, то только со второго нажатия получиться. Правда не получилось на тест-серваке (клон боевого) повторить.
2. если текст скрипта перенести в секундный, то вроде работает. Но
2.1. если у клиента нет имени работает
2.2. если установить имя в настройках не работает на половину. Скрипт вверху запросы делает, а вот вывод сообщений нет.
Правда еще "игрался" с пользователями. Но вроде они ни на что не влияют.
Да версия у нас сейчас 2.3.6.8.
3. Пытался с привязкой к внутренней переменной повторить, но запутался.
Резюме. В целом задача сводиться к следующему:
На одном конкретном клиенте (имя известно и только на нем) конкретный пользователь (имя известно и только он) через список (конкретный и автоматически формирующейся в зависимости от условий выбора, проверено работает так как надо) может изменить через SQL-запрос значения в массиве данных (таблицы), если надо и загрузить начальный массив или модернизированный куда надо. Вот. Надеюсь понятно написал.
Пока просто проверьте у себя с сообщениями.
И может как работать со списком более подробно опишите.
Жду вопросов и предложений.