Официальный форум Simple-Scada.
var a: int64;begin a := $20000000000003; x1.Value := a; Text1.Text := 'Int64 =' + IntToHex(a,8); // Text1 = '00000003' Text2.Text := 'AsInt64 =' + IntToHex(x1.AsInt64,8); // Text2 = '00000004' ! a := $20000000000001; x1.Value := a; Text3.Text := 'Int64 =' + IntToHex(a,8); // Text3 = '00000001' Text4.Text := 'AsInt64 =' + IntToHex(x1.AsInt64,8); // Text4 = '00000000' !end.
Разумнее хранить данные в формате типа объявления тега и использовать методы для преобразования к другим типам.Но точно ответить могут только авторы.
procedure XXX_OnDataChange(Sender: TM_control);type word4 = record a,b,c,d: word; end;var t:word4; pt: ^word4 = @t;begin PInt64(pt)^ := TM_Text(Sender).Variable.Value; // Вызывающий процедуру тег должен иметь тип Int64 !!! PSUS_1.Text := FloatToStr(t.a * 0.05, 2); PSIS_1.Text := FloatToStr(t.b * 0.1, 1); // и т.д