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

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

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

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


Сообщения - Миханик

Страницы: [1] 2 3 ... 13
1
OPC UA/DA сервер arOPC / Re: arOPC+SimpleScada+SEGNETICS MATRIX
« : 03 Февраля 2025, 03:12:30 »
Всё работает с Segneticsом - и с Matrix и с SMH4.

2
Рассмотрите, пожалуйста, добавление новых пунктов у объекта Field свойство "Положение подписи":
  - слева сверху;
  - справа сверху;
  - слева снизу;
  - справа снизу.

3
А почему у элемента Таблица нет горизонтального скролла? Можно ли его добавить?
Постараемся добавить в будущих обновлениях.
Добрый день. Просто напоминаю - вдруг подзабыли  :). Очень нужен, а то пол таблицы не видно.

Ну добавьте уже, пожалуйста, горизонтальную прокрутку для Таблицы. С 2019 года жду  :(

4
Есть ли возможность полностью (не разово) управлять звуком при превышении граничных значений?

Скачайте NirCmd -это небольшая утилита командной строки, которая позволяет вам выполнять некоторые полезные задачи без отображение любого пользовательского интерфейса.
Например:
Код: (delphi)
// Упрпавляем включением/выключением звука на Client1
RunApplication('Client1', 'D:\nircmd.exe', 'mutesysvolume 0'); // включаем звук
RunApplication('Client1', 'D:\nircmd.exe', 'mutesysvolume 1'); // отключаем звук

5
Подскажите, формирую таблицу вот таким скриптом Table1.RunSQL(aQuery, tsAll); А как узнать, что таблица сформирована и с ней можно работать?
К сожалению узнать о выполнении SQL-запроса отправленного от таблицы - нельзя. Постараемся добавить таблице отдельное событие на этот случай.
UPD: в версиях 2.4.0.3 и выше у таблицы есть событие OnDoneSQL для отслеживания выполнения SQL-запросов
Большое спасибо за оперативность. Теперь всё работает как надо!

6
Здравствуйте.
Подскажите, формирую таблицу вот таким скриптом Table1.RunSQL(aQuery, tsAll);
А как узнать, что таблица сформирована и с ней можно работать?
Вопрос к тому, что я формирую таблицу и потом сразу вызываю скрипт обработки данных в таблице (подсвечиваю нужные ячейки). Но ячейки подсвечиваются не всегда, вот я и думаю, что может скрипт обработки выполняется раньше, чем успевает заполниться таблица.

7
Сделайте пожалуйста импорт/экспорт сообщений в эксель.
Поддержу. Сам недавно правил под 1000 сообщений. Целый день убил.

8
... крупного обновления клиентов скады и внедрения системы шаблонов.
Ооо, это тоже очень ждем. В этом году успеете добавить?

9
Подскажите, пожалуйста в чем может быть проблема.
Имеется таблица Table_term, показывающая температуру по дням из БД.
В сервере периодически возникает ошибка: "Ошибка в скрипте Global в строке 162. Access violation at address 00F425D1 in module 'Server.exe'. Read of address 000000BD"
Строка 162 - это: aVal := aCell.Variable.AsSingle;    // получим значение в ячейке

Код: (delphi)
// Раскраска ячеек таблицы в зависимости от значения температуры термоподвески
procedure TableColorCell();
var
  iRow, iCol : integer;
  aCell: TM_TableCell;
  aVal : Single;
begin
  if Table_term.RowCount > 0 then
    for iRow := 1 to (Table_term.RowCount-1) do        // Цикл со второй строки таблицы до конца
      for iCol := 2 to (Table_term.ColumnsCount-1) do  // Цикл с третьего столбца таблицы до конца
      begin
        aCell := Table_term.GetCell(iCol, iRow);       // Получим нужную ячейку
        if aCell <> nil then
        begin
          aVal := aCell.Variable.AsSingle;    // получим значение в ячейке

          if aVal >= Tmax_warning then        // Если значение больше предупредительной уставки, то
            if aVal >= Tmax_alarm then        // Если значение больше аварийной уставки, то
              aCell.Color := clIndianRed      // Раскрашиваем фон ячейки в красный цвет
            else
              aCell.Color := RGB(255,255,128) // Раскрашиваем фон ячейки в желтый цвет
          else
            aCell.Color := clWhite;           // Раскрашиваем фон ячейки в белый цвет, если значение в норме
        end;
      end;
end;

10
А почему у элемента Таблица нет горизонтального скролла? Можно ли его добавить?
Постараемся добавить в будущих обновлениях.
Добрый день. Просто напоминаю - вдруг подзабыли  :). Очень нужен, а то пол таблицы не видно.

11
Таким способом я уже пробовал - не работает: выводит дату и время, а всё что дальше нечитабельно.

Функцию Function Get_str_state переделал на:
Код: (delphi)
Function Get_str_state(state : integer) : string;
begin
  case state of
    0 : Get_str_state := 'местный';
    1 : Get_str_state := 'отключен';
    2 : Get_str_state := 'включен';
    3 : Get_str_state := 'авария';
  end;
end;

12
Подскажите, пожалуйста, никак не могу победить отправку Телеграм-сообщения в читабельном виде в версии 2.3.6.12.
Если вставляю в начало строки UTF8String(DateTimeToStr(Now)), то вместо сообщения кракозябры.
Код: (delphi)
// Функция возвращает статус объекта в текстовом виде
Function Get_str_state(state : integer) : UTF8String;

// Посылка аварийного Телеграм сообщения об аварии в Детском тубдиспансере
Procedure SendMess_Alarm();
var
  TubBlgChild : UTF8String;
begin
  TubBlgChild := '';
  TubBlgChild := //UTF8String(DateTimeToStr(Now)) + chr(10) +
                 'Авария на объекте: *Тубдиспансер детский*' + chr(10) + '`' +
                 'Темпер-ра ЭК1 : ' + TubBlgChild_DT1.AsUTF8String + ',' + chr(10) +
                 'Темпер-ра ЭК2 : ' + TubBlgChild_DT2.AsUTF8String + ',' + chr(10) +
                 'Темпер-ра ГВС : ' + TubBlgChild_DT3.AsUTF8String + ',' + chr(10) + '`' +
                 'Состояние оборудования:' + chr(10) + '`' +
                 '  Контур ГВС:' + chr(10) +
                 '    - СН3 = ' + Get_str_state(TubBlgChild_CH3_state.AsInt) + chr(10) +
                 '    - СН4 = ' + Get_str_state(TubBlgChild_CH4_state.AsInt) + chr(10) +
                 '  Котловой контур:' + chr(10) +
                 '    - СН1 = ' + Get_str_state(TubBlgChild_CH1_state.AsInt) + chr(10) +
                 '    - СН2 = ' + Get_str_state(TubBlgChild_CH2_state.AsInt) + chr(10) +
                 '    - ЭК1 = ' + Get_str_state(TubBlgChild_EK1_state.AsInt) + chr(10) +
                 '    - ЭК2 = ' + Get_str_state(TubBlgChild_EK2_state.AsInt) + '`' ;

  // Отправка Телеграм сообщений
  SendTelegram(TubBlgChild, Alarm_SendMess_Recipient_ID.AsStr, tpmMarkdown);
end;

13
Значит у Вас в коде отправки сообщения смешиваются разные типы строк, например UTF8String + string, что недопустимо.

Спасибо за помощь, перевел строку сообщения в UTF8String и всё заработало. Эта проблема возникла из-за того, что в сообщении присутствовали символы перевода строки: chr(10).

14
Добрый день.
Сегодня попробовал перейти на версию 2.3.6.7. В ней русский текст телеграм-сообщений отправляется арбой-кадаброй (скрин).
Вернулся к версии 2.3.6.3 - там всё норм.

15
Сейчас всё заработало, а утром с трех объектов сообщения не пришли, хотя никаких изменений по проектам не делались. Возможно оператор был виноват оператор связи.

Страницы: [1] 2 3 ... 13