PDA

Просмотр полной версии : CoDeSys. Как удалить из списка объявления неиспользуемые переменные?



Anton441
09.06.2014, 10:57
В процессе создания проекта в CoDeSys зачастую в списке объявления переменных оказываются переменные, которые больше не используются в проекте. Можно ли каким-либо образом найти такие переменные и удалить их автоматически?

capzap
09.06.2014, 10:59
В чем подвох?

amn
09.06.2014, 11:16
Найти можно так: Project -> Check -> Unused Variables. А вот как автоматически их удалить это только уважаемый capzap знает :)

capzap
09.06.2014, 14:31
А вот как автоматически их удалить это только уважаемый capzap знает :)
По поводу автоудаления
Выражаясь,как в проморолике на ТНТ,на фразу я за Батруху,мой ответ: тебе не понравится

Могу предложить направление экспортировать проект,затем любыми доступными средствами парсить файл, находить какие переменные есть в объявлениях,а в теле нет и удалять их или менять на коммент.

Anton441
09.06.2014, 19:23
Найти можно так: Project -> Check -> Unused Variables. А вот как автоматически их удалить это только уважаемый capzap знает :)

У меня CoDeSys V3.5 SP3 Path 5 на русском языке.
Как их хотя бы найти? Вы предлагаете так:
Проект -> Проверка -> Неиспользуемые переменные.

У меня такого нет. Можно поподробнее?

Мне казалось, что можно "нажать одну кнопку" и не нужно рыться в проекте выявляя объявленные, но не используемые переменные.

amn
09.06.2014, 19:53
Извините, не глянул раздел. Как в 3 КДС не подскажу, не работал в нем. Если не найдете, где у него эта закладка, то есть способ который Вам не понравится еще больше, чем тот, что предложил capzap: в каждом ФБ вручную удалять поочереди объявленные переменные и пробовать компилировать, если ошибок не будет, значит удалили ненужную переменную, если ошибки появились, значит переменная нужна и надо ее вернуть.

liboyl
09.06.2014, 20:00
Доброго времени суток! Откройте закладку Список перекрёстных ссылок , выбирая по очереди переменные можно найти не используем13229ые

Scream
09.06.2014, 23:38
не знаю как в 3, но в 2.3 после Проект -> Проверка -> Неиспользуемые переменные в консоли (снизу) описываются эти переменные и в круглых скобках цифра строки в которой эта переменная описана.

Anton441
10.06.2014, 00:01
Извините, не глянул раздел. Как в 3 КДС не подскажу, не работал в нем. Если не найдете, где у него эта закладка, то есть способ который Вам не понравится еще больше, чем тот, что предложил capzap: в каждом ФБ вручную удалять поочереди объявленные переменные и пробовать компилировать, если ошибок не будет, значит удалили ненужную переменную, если ошибки появились, значит переменная нужна и надо ее вернуть.

Именно так и делаю. Довольно рутинно.

Anton441
10.06.2014, 00:10
Доброго времени суток! Откройте закладку Список перекрёстных ссылок , выбирая по очереди переменные можно найти не используем13229ые

Спасибо за подсказку.
Открыл СПИСОК ПЕРЕКРЁСТНЫХ ССЫЛОК. Там, перебирая поочерёдно, нашёл все переменные, которые используются только один раз - только объявление. Поочерёдно удалил их. Компилировал только в конце - ошибок нет.

Дополню. Не все переменные, которые только объявлены не применяются в проекте. Например функциональные блоки могут иметь только одну запись - только объявление.
В общем указанный выше метод не панацея. Обратить следует внимание на переменные с одной записью в списке перекрёстных ссылок. После каждого удаления таких переменных следует выполнить контрольную компиляцию на предмет ошибок.

kgsh82
10.06.2014, 18:48
Проект - Установки проекта - Статический анализ

Сообщает только при загрузке в контроллер

zendo057
11.06.2014, 18:19
А я делаю так.проект,компилировать все. Там и не использованные переменные и память и много всего.А затем удаляю ручками.

Anton441
16.06.2014, 20:53
Проект - Установки проекта - Статический анализ

Сообщает только при загрузке в контроллер

Сделал всё как Вы советовали.
Отлично! Всё получилось.
Поставил галочку в Проект - Установки проекта - Статический анализ - Неиспользуемые переменные и при загрузке в контроллер появились ошибки, в которых чётко были прописаны неиспользуемые переменные.
Осталось удалить их ручками.