Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - ilnurikK

Страницы: [1]
1
Решил проблему через DataSet

2
Добрый день!

Взял скрипт из  примера (чуток его изменил), который вызывается по клику кнопки:
Код: (delphi)
//
// Этот скрипт вызывается когда пользователь кликнул
// кнопку "ЗАДЕЙСТВОВАТЬ"
//

var
  aIndex: Integer;
  aQuery: string;
  tblTempRecipes: TM_Table;
begin
  aIndex := tblRecipes.RowIndex;  // получаем индекс выделенной строки в таблице рецептов
  if aIndex = -1 then             // если строка не выбрана
  begin
    ShowMessageClient(GetClientName, 'Рецепт не выбран!', 'Сначала выберите рецепт который нужно задействовать.');
    Exit;
  end;

  IDValue.Value := tblRecipes.GetCell(0, aIndex).Text;
  // формируем запрос из таблицы "recipes"
  aQuery := 'SELECT * FROM `recipes` WHERE `id`=' + QuotedStr(tblRecipes.GetCell(0, aIndex).Text);
  tblTempRecipes.RunSQL(aQuery, tsSaveFixRow);

  // записываем значения (из выделенной строки таблицы рецептов) в переменные
  txtRecipeName.Text := tblTempRecipes.GetCell(1, 1).Text;
  vrK1.Value := StrToInt(tblTempRecipes.GetCell(3, 1).Text);
  vrK2.Value := StrToInt(tblTempRecipes.GetCell(4, 1).Text);
  vrK3.Value := StrToInt(tblTempRecipes.GetCell(5, 1).Text);
  txtRecipeName.Hint := tblTempRecipes.GetCell(6, 1).Text;
end.
tblTempRecipes временная таблица, в которую хочу записать результат запроса, т потом вытащить из этой таблицы данные. В данном варианте скрипт не отрабатывает. Если же создаешь элемент Таблица на мнемосхеме с именем tblTempRecipesб то по клику в эту таблицу читаются данные. Почему при определении tblTempRecipes: TM_Table; не работает?
И еще, если же создаешь элемент Таблица на мнемосхеме, то данные   vrK1.Valu,  vrK2.Value,  vrK3.Value заполняются только после нескольких нажатий. То есть не с первого раза.

3
Ваши вопросы / Виртальная клавиатура
« : 17 Октября 2025, 12:53:39 »
Добрый день! Есть ли в Simple Scada виртуальная клавиатура? ПК сенсорный

4
Ваши вопросы / Инициализация таблицы
« : 01 Октября 2025, 14:39:46 »
Добрый день! Необходимо проинициализировать ячейки таблицы после запуск и выполнить скрипт 1 раз.
Создал таблицу с 4 колонками (4 строки). Каждой ячейке привязал доп.переменную, из которой берется начальное значение для инициализации.
Создал скрипт Проект полностью запущен:
Код: (delphi)
var
  i : integer;
begin
    for i := 0 to Table1.RowCount do
       if GetBit(Table1.VariableEx.AsInt, i) then
        begin
          Table1.GetCell(4, i).Text := 'Вкл';
          Table1.GetCell(4, i).Color := clGreen;
        end
        else
        begin
          Table1.GetCell(4, i).Text := 'Выкл';
          Table1.GetCell(4, i).Color := clRed;
        end;
И этот скрипт почему то не инициализирует таблицу.
В чем может быть проблема?
end.

Страницы: [1]