Удаление рабочих наборов

Главная Форумы Задать вопрос Удаление рабочих наборов

В этой теме 3 ответа, 3 участника, последнее обновление  Alex Babinoff 3 дн., 11 час. назад.

Просмотр 4 сообщений - с 1 по 4 (из 4 всего)
  • Автор
    Сообщения
  • #8420 Score: 0

    Юра Мирза
    Участник

    Здравствуйте.

    Помогите пожалуйста найти решение по пакетному удалению существующих рабочих наборов в проекте.

    Пробовал самостоятельно, но не смог найти нод по удалению рабочих наборов (либо не правильно их использовал, языком Phyton к сожалению пока не владею)

    Версия Revit-2016, Dynamo 1.3.2

    #8423 Score: 0

    Legantmar
    Хранитель
    449 pts

    ты пытаешься удалить Id номера, это не корректно.
    преобразуй сначала Id номера в элементы, например, с помощью нода Select.ByElementId (имей ввиду на вход нужно подавать данные в формате String), а затем пробуй удалить полученные элементы.

    #8429 Score: 0

    Юра Мирза
    Участник

    Legantmar, спасибо за совет!

    Решения так и не удалось найти, как я понял нод Python Script – Workset Names & Ids на выход подаёт рабочие наборы, их имена и id, При попытке подать рабочие наборы в нод Element.Id возникает ошибка:

    Предупреждение:Невозможно найти функцию %get_Id в System.Object, которая использует __array

    При преобразовании элементов в формат string, нод Element.Del(Phyton) выдаёт ошибку:

    Предупреждение:IronPythonEvaluator.EvaluateIronPythonScript операция не выполнена.
    Traceback (most recent call last):
    File “<string>”, line 12, in <module>
    AttributeError: ‘str’ object has no attribute ‘Id’

    Возможно перевод с формат string выполнил не корректно.

    Ещё попробовал получить рабочие наборы через нод Workset.GetAll(Archi-lab_Grimshaw),

    данные из этого нода уже определяются нодом Element.Id но элементы, через нод Select.ByElementId не выбираются.

    Ещё обратил внимание на разный тип данных на выходе из нода Python Script – Workset Names & Ids и Workset.GetAll

    #8432 Score: 0

    Alex Babinoff
    Модератор
    13 pts

    Похоже проблема чуть глубже.

    Судя вот по этой ветке форума: https://forums.autodesk.com/t5/revit-ideas/delete-worksets-from-revit-api/idi-p/7575512

    В 2017 метода для удаления рабочих наборов всё ещё не было. Проблема в том что рабочий набор это не обычный класс, и его айдишники даже имеют свой уникальный класс WorksetId, который не подходит к методу удаления, который в свою очередь требует ElementId. Возможно это какое то умышленное ограничение функционала Revit API, также как запрет на работу с контекстными моделями.

Просмотр 4 сообщений - с 1 по 4 (из 4 всего)

Для ответа в этой теме необходимо авторизоваться.