Подскажите, если кто сталкивался с подобным.
Мне необходимо сохранить VI со всеми SubVI, которые она включает, т.е. всю иерархию.
Делаю Save As.., выбираю пункт Duplicate hierarchy to new location
И ву а ля ... в указанной папке оказывается сохранены не все SubVI
Часть SubVI я перетянул из другого проекта и именно они не сохранились.
Пробовал сохранить с понижением версии, результат аналогичен.
Такое впечатление, что LabVIEW их воспринимает как родные и не считает нужным их сохранять в иерархии.
Возможно кто-то знает, как LV вообще отличает "родные" SubVI от "инвазивных"?
Может там есть какие-то флаги или атрибуты у файла, которые достаточно установить, чтобы данные SubVI начали сохраняться вместе с VI.
Сам я найти ничего подобного не смог
Сохранение с иерархией
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Сохранение с иерархией
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: Сохранение с иерархией
Попробуйте создать новый проект, а в него добавить виайку которую хотите сохранить со всеми сабвиайками. А затем, сохраните проект или как Save As, или в предыдущую версию (второй вариант точно должен работать, т.к. даже виайки с vi.lib и instr.lib будет "запихать" в новую локацию).
Мы делили апельсин - много наших полегло...
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 88 раз
Re: Сохранение с иерархией
Нужно было мне полностью задачу описать.Kosist писал(а):Попробуйте создать новый проект, а в него добавить виайку которую хотите сохранить со всеми сабвиайками. А затем, сохраните проект или как Save As, или в предыдущую версию (второй вариант точно должен работать, т.к. даже виайки с vi.lib и instr.lib будет "запихать" в новую локацию).
У меня есть проект, в котором много всего.
Мне нужно передать только одну VI - часть программы.
Для того, что бы людей не заваливать парой сотен SubVI я и хотел вычленить только необходимое.
А как Вы предлагаете, мне нужно вручную отследить все зависимости и пересобрать проект заново, только с нужными SubVI.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: Сохранение с иерархией
Нет - Вы просто добавите в новый проект одну нужную виайку; а все зависимости добавит в dependencies.IvanLis писал(а): А как Вы предлагаете, мне нужно вручную отследить все зависимости и пересобрать проект заново, только с нужными SubVI.
- я не имел ввиду, что нужно добавлять сабвиайки в проект; пардон за формулировкувиайку которую хотите сохранить со всеми сабвиайками
Мы делили апельсин - много наших полегло...
-
ladik
- developer
- Сообщения: 275
- Зарегистрирован: 18 ноя 2014, 11:45
- Награды: 1
- Версия LabVIEW: 2015, 2019
- Откуда: Екатеринбург
- Благодарил (а): 4 раза
- Поблагодарили: 3 раза
- Контактная информация:
Re: Сохранение с иерархией
Мы для подобных задач делаем Build Specification -> Source Distribution. Имеется Tree.vi, в котором лежат все VI верхнего уровня, которые нужно "расшарить". Во вкладке Source Files (Build Specification) указываем этот VI, тип билда папка или .llb. В итоге на выходе получаем папку/либу со всеми зависимостями Tree.vi. К файлам зависимостей в таком случае относятся все subVI, которые также должны быть в проекте. Ну и дерево Dependencies должно быть чистым, либо иметь только системные зависимости, например vi.lib.
Дорогу осилит идущий.
-
- doctor
- Сообщения: 2211
- Зарегистрирован: 28 июн 2012, 09:32
- Награды: 3
- Версия LabVIEW: 2009..2020
- Откуда: город семи холмов
- Благодарил (а): 27 раз
- Поблагодарили: 27 раз
Re: Сохранение с иерархией
Для полностью рабочего проекта "Duplicate hierarchy to new location" полностью справляется. Однако, если есть VI, которые используются в разных проектах, жди проблем. Источник проблемы в том, что каждая VI скомпилирована (и имеет зависимости в текущем проекте). Но! При использовании ее в другом проекте, похоже, линковка динамическая. Мало открыть внешнюю VI и сохранить, надо ее еще и перекомпилировать (Ctrl+кнопка Run) и все входящие в нее VI. Либо Mass Compile (хотя и он в нижеприведенном случае не помог).
У меня был запущенный случай с проектом, когда из 2013 надо было вернуться на 2012, но т.к. 2013 не было, пришлось делать это через 2017. А он все зависимости не мог построить. В результате все запускается и работает, но сохранение проекта в 2012 версию повисает. Пришлось сохранять головную VI, иерархия которой перенеслась частично, и по-файлово через Hierarhy делать сохранение недостающего.
У меня был запущенный случай с проектом, когда из 2013 надо было вернуться на 2012, но т.к. 2013 не было, пришлось делать это через 2017. А он все зависимости не мог построить. В результате все запускается и работает, но сохранение проекта в 2012 версию повисает. Пришлось сохранять головную VI, иерархия которой перенеслась частично, и по-файлово через Hierarhy делать сохранение недостающего.