Версия Лоджика 2.7.350.0. Интересный косяк нашел. В демонстрации достаточно легко из него вышел. Но это не всегда так получается
Видео https://disk.yandex.ru/i/URe42GeaACSM6Q
Инженер по продукту | ПР и Owen Logic
email: k.korolev@owen.ru
Коллеги , обнаружил такую штуку. При выводе сетевой переменной на экран ПР205 , она ограничена в поле значением 65535. Так как переменная 16 разрядная это нормально. Но если перейти в режим онлайн отладки , можно увидеть что в сетевую переменную можно записать число больше 65535. Сетевая переменная в программе ведет себя как 32 разрядная. Соответственно после превышения границы за 65535 на экране цифры одни , а в программе другие. Тоже самое происходит и в симуляции.
net var.PNG
Это просто неправильная работа - баг.
Главное, при привязке переменной к полю на экране, правила все соблюдаются , если сетевая то мин макс автоматом для 16 разрядов, если обычная переменная , то лимиты на 32 разряда.
При этом лимиты работают на экране , а в самой программе переменная живет своей неограниченной жизнью.
Мда,... можно наворотить таких дел ...
Последний раз редактировалось Asu$Nick; 29.06.2024 в 23:05.
В режиме мастер и ПР200 поддерживало 32-х разрядные сетевые переменные.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
Ну если бы я выбрал два регистра на 32 бита , то вопросов и нет. В данном случае одинарные регистры.
var.PNG
Так не работает ограничение на экране!!! Если поставить 3000 условно, лимит поля на экране, переменную должно обрезать и в программе тоже!!!
Значения в программе и на экране должны быть одинаковыми. Вот на скриншоте счетчик литров расходомера.
Оператор регистрирует показания время от времени. Информация в данном случае является достоверной!!!???
Вы считаете это фичей!!!???
3000.PNG
Последний раз редактировалось Asu$Nick; 30.06.2024 в 10:06.