Здравствуйте.
Способ 1. Создать универсальный скрипт для компонентов Текст с таким кодом:
var
aText: TM_Text;
begin
if not (Sender is TM_Text) then Exit;
aText := Sender as TM_Text;
aText.Text := IntToStr(aText.AsInt64 div 64);
end.
Далее можно создать на мнемосхеме любое количество компонентов Текст и связать каждый такой компонент со своей переменной. Всем компонентам на событие OnDataChange назначить универсальный скрипт. В результате каждый компонент будет отображать значение привязанной к нему переменной деленное на 64.
Способ 2. Перейти в меню "Переменные - Редактировать", создать новую внутреннюю переменную с типом Int64, например с именем vrDiv. Далее создать скрипт с типом события "изменились переменные" (https://simple-scada.com/help/script/changemulvar.html) и добавить в него переменную по изменению которой нужно выполнять пересчет. И написать такой код:
begin
vrDiv.Value := Variable.AsInt64 div 64;
end.
В результате переменная vrDiv будет содержать пересчитанное значение и её можно вывести куда угодно, например в компонент Поле.
День добрый. Продолжу тему.
Теперь надо сделать наоборот. Если этот код работает:
begin
vrDiv.Value := Variable.AsSingle / 64;
end.
то
begin
Variable.Value :=vrDiv .AsSingle * 64;
end.
не работает. Хотя компилятор не ругается.
Пардон за глупые вопросы. Информатику проходил в 91 году.