Попробуйте так: Регистрация аварий_9.owl
Регистрация аварий_9.PNG
После сброса всех аварий активные восстановятся!
Попробуйте так: Регистрация аварий_9.owl
Регистрация аварий_9.PNG
После сброса всех аварий активные восстановятся!
Последний раз редактировалось Сергей0308; 02.07.2019 в 06:37.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
Спасибо! Завтра засяду снова за ПО и попробую
Вот ещё к Вам вопрос возник, а не проще переход на экран аварий как-то так сделать?
Зачем у Вас так заморочено? Чтобы с экрана аварии нельзя было никуда перейти?
Регистрация аварий_10.PNG
Регистрация аварий_10.owl
И уже не в первый раз замечаю, при смене целевой платформы клеммы проваливаются вовнутрь и назад их достать не получается:
Провал клемм.PNG
Последний раз редактировалось Сергей0308; 02.07.2019 в 21:20.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
Пока не вникал в Ваш вариант, там особенность в том, что сброс происходит по факту перехода, при других вариантах возможны пропуски при значительных временах цикла, например, если переход организован по входу. Возможно Ваш вариант тоже будет работать.
Это на какой версии? Повторяемость 100% или в случайном порядке?
С уважением, Ревака Юрий.
Инженер группы технической поддержки компании "ОВЕН"
e-mail: yu.revaka@owen.ru
Шаблон описания ошибки ПР или OL http://ftp-ow.owen.ru/softupdate/OWE...s/Shablon.docx
Видео уроки по ПР200 и OWEN Logic http://edu.owen.ru/series/pr200_rev/
Другие видеоролики по тематике ПР https://www.youtube.com/channel/UCj4...H5H3d_t6iDlQOQ
У меня последняя актуальная версия ОЛ, несколько раз на разных проектах менял целевую платформу и всегда с косяками, раньше, на более ранних версиях ОЛ, подобное было намного реже, но тоже у меня встречалось на макросах!
Проверил на железе свой переход на экран аварии, нормально всё фунциклирует, проблем не заметил!
Последний раз редактировалось Сергей0308; 03.07.2019 в 00:11.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
Сергей0308 Огромное Вам спасибо! вы меня снова выручили! теперь у меня обработка аварий работает идеально! я добавил только обработку короткого и долгого нажатия кнопки сброса аварий, чтобы ей или по одной аварии удалять, или удержав - все. и сделал блок обработки звука аварии, чтобы при сбросе хотя бы одной аварии звук снимался, а лампочка F2 осталась горящей. было бы конечно хорошо первым нажатием на сброс снимать "звук" а только со второго нажатия сбрасывать аварии, но что-то неохота мудрить.нет, эта штука все равно меня загрызла и я все-таки сделал полный функционал. теперь у меня первое нажатие физической кнопки сброса снимает звук, все последующие сбрасывают аварии по одной, а долгое удержание - все аварии. а если появляется новая активная авария. то звук включается снова.
Последний раз редактировалось bayk; 03.07.2019 в 01:53.
Повторяемость 100% если комментарии находятся за рабочим полем "чертежа". и справедливо это абсолютно для всех версий ОЛ, поскольку, эта проблема, я так думаю, аналогична проблеме с "влезанием" входов на рабочую зону при добавлении входа/выхода в макрос, при учете, естественно, что существует комментарий за пределами рабочего поля.
Я так понимаю, что проблема в попытке ОЛ обработать "сомнительные" по ее мнению координаты комментариев, которые ОЛ приравнивает к координатам рабочих элементов и соответственно при запросе изнутри себя об изменении рабочего поля пытается расширить рабочее поле, чтобы оно включало все объекты, включая комментарии. в итоге такой глюк.
а вот вариант перехода на экран в таком виде принципе правильная идея! поскольку переход на экран аварий будет происходить всегда, если появилась новая авария, а если новых аварий нет, то можно переходом по кнопке вернуться на главный экран и продолжать работу не сбрасывая список аварий (из них не все активными могут быть по входу), а вот увеличение их количества должно обратить на себя внимание повторным переходом на экран аварий!
но это все справедливо исключительно в варианте сергея со всем его функционалом (в виде пошагового сброса и поочередным выводом при одновременном появлении.
Последний раз редактировалось bayk; 03.07.2019 в 01:49.
Вот так звук не будет снова звенеть когда сбрасываются все аварии при наличии активных, остальное, вроде всё как хотели:
Регистрация аварий_11.PNG
Регистрация аварий_11.owl
Последний раз редактировалось Сергей0308; 03.07.2019 в 02:58.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
Сергей0308 я посимулировал ваш последний вариант. все хорошо, но если есть несколько неквитированных или активных аварий, то при появлении новой звук не включается повторно, пока не будут все аварии сборшены.
я осмелился немного доработать этот красивы код (у меня значительно все вышло замудренее).
2019-07-03_11-22-20.jpg
Итого я добавил: звук повторно включается если появляется новая активная авария и после сброса всех аварий, если остались активные.
Последний раз редактировалось bayk; 03.07.2019 в 12:04.
Да, действительно, я не так хотел, маленько поспешил, не подумал, вот поправил, теперь вроде так, как хотел:
Регистрация аварий_13.owl
Регистрация аварий_13.PNG
И насколько понял у Вас аварии приходят по сети битовой маской, вот два регистра свёл в одну переменную и добавил включение(задействование) каждой из 32 аварий(AL 0-31), настройка на 1-ом экране:
Регистрация аварий_14_2.PNG
Регистрация аварий_14.PNG
Регистрация аварий_14.owl
Можно и так сделать:
Регистрация аварий_14_3.PNG
Только обозначать номера аварий(бит) для каждого регистра лучше в 16-ричной системе счисления, чтобы меньше места занимало(строк)!
Вот практически готовая программа на 32 аварии, аварии приходят по сети(как у Вас) двумя регистрами, битовой маской аварий! Можно любую аварию включить или выключить(задействовать - не задействовать), настройка на первом экране, сделал по второму варианту:
Регистрация аварий_15_2.PNG
По умолчанию все аварии включены(задействованы)! Заодно на практике применил свой метод, что ранее публиковал, для уменьшения количества используемой энергонезависимой памяти в 8 раз когда требуются булевы энергонезависимые переменные, а то Юрий Ревака меня всего за этот метод заругал: https://www.owen.ru/forum/showthread.php?t=26681&page=4
Короче, этот метод имеет смысл если количество булевых энергонезависимых переменных более четырёх, надеюсь понятно объяснил!
Регистрация аварий_15.PNG
Регистрация аварий_15_3.PNG
Регистрация аварий_15.owl
И пожалуй Вы правы, спрятал блок комментариев на холсте программы, точнее, чтобы он не выступал из него и о чудо, при смене целевой платформы клеммы не провалились во внутрь, теперь хоть знаю как бороться с провалами!
Последний раз редактировалось Сергей0308; 10.07.2019 в 00:57.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.