connect_1.value := generation.value;
begin
if generation .Value < 100 then
generation .Value := generation .Value + 1
else
generation .Value := 0;
end.
begin
test_int.Value := test_int.Value + 1;
if test_int.AsInt > 100 then test_int.Value := 0;
end.
Походу внутренние переменные скады архивируются, а связанные с ОРС нет.Архивируются все переменные у которых включена архивация, кроме переменных типа string и массивов. В этом плане две версии системы архивации работают абсолютно одинаково. У Вас связь с OPC-сервером была в момент теста? Если нет, то внешние переменные с этого сервера не будут архивироваться. В старых версиях скады архивировалась прямая линия и нулевое значение при отсутствии связи. В этом нет смысла, поэтому в новых версиях архивация начинается после установки соединения с OPC-сервером.
1. в настройках выбрал версию 2.Таблицы не создались. Но через пункт "Создать..." все создалосьВерно, таблицы и БД не создаются когда Вы меняете систему архивации, данная опция только выбирает систему архивации, никаких других действий не выполняется. Создавать таблицы через редактор, или выполнять какие-либо другие действия не обязательно, сервер автоматически создаст БД и таблицы при запуске проекта, если они не созданы.
В настройках для базы данных выбираем "Очистить все таблицы". Но тут ... что-то не очищается.Что конкретно происходит? Какое-то сообщение при этом выводится? Если да, то нужно знать какое, чтобы понять причину. Какая используется СУБД (нужно знать название СУБД и её версию).
connect_1 стоит на архивирование, но в архиве данных нетВ первую очередь нужно проверять журнал сервера скады (https://simple-scada.com/help/manual/server-journal.html) на наличие ошибок работы с БД, ошибок в скриптах, сбоев работе с OPC-серверами и т.д. Если они есть, то нужно их устранить. Если connect_1 - внешняя переменная, то проверьте связь с OPC-сервером.
Переделываю все на старый скрипт - опять все работает. В общем получается как-то странно. То ли старые переменные не подхватываются, то ли старые скрипты.Для таких чудес всегда есть примитивная причина. Скада являясь скомпилированной программой при каждом запуске будет выполнять абсолютно одинаковые действия и разный результат можно получить только при наличии ошибок в скриптах и т.п. Наличие явных ошибок можно проверить через журнал сервера во время работы проекта. Другой вариант - скрипты написаны так, что допускают разный результат (например не учитывается их последовательность, неправильно обрабатывается результат асинхронных функций и т.п.). Если разобраться не получается, то пришлите проект для проверки на support@simple-scada.com. Также не забывайте перезапускать проект на сервере после внесения изменений, т.к. часто пользователи работают со старой версией проекта (забыв перезапустить проект после изменения) и делают неправильные выводы.
Кроме таблиц самой скады, создали свои таблицы. Могут ли они помешать?Скада никогда не обращается сама к другим таблицам и никогда не узнает об их существовании, если не обращаться к ним через скрипты. Поэтому наличие других таблиц в БД никак не может влиять на работу скады.