Сообщество программистов Autodesk в СНГ

ADN Club => Revit API => Тема начата: user32 от 13-11-2019, 16:55:38

Название: Спецификация. Получение расчетного параметра
Отправлено: user32 от 13-11-2019, 16:55:38
Здравствуйте!
Пытаюсь получить параметры, которые участвуют в сортировке в спецификации.
Следующий метод возвращает наименования параметров, но только не расчетных. При попытке получить расчетные параметры, вылетает ошибка.
Возможно ли их как то вообще получить?
Код - C# [Выбрать]
  1. public void GetParamTest()
  2. {
  3.         UIDocument uidoc = this.ActiveUIDocument;
  4.         Document doc = uidoc.Document;
  5.         var activeDoc = doc.ActiveView as ViewSchedule;
  6.        
  7.         var getOrPar = activeDoc.GetOrderedParameters();
  8.         string tt = null;
  9.         var gss = activeDoc.Definition.GetSortGroupFields();
  10.         foreach (var e in gss)
  11.         {
  12.                 try
  13.                 {
  14.                         tt+= activeDoc.Definition.GetField(e.FieldId).GetSchedulableField().GetName(doc) + "\n";
  15.                        
  16.                 } catch (Exception ex)
  17.                 {
  18.                         tt+= ex.Message + "\n";
  19.                 }
  20.         }
  21.        
  22. }
  23.  

 
Название: Re: Спецификация. Получение расчетного параметра
Отправлено: Александр Игнатович от 13-11-2019, 16:59:48
Вообще, получив поле методом Definition.GetField проверяем свойство
Цитировать
ScheduleField.HasSchedulableField

В справке в описании так же видим:
Цитировать
Identifies if this ScheduleField object has access to a SchedulableField. Calculated and combined parameter fields will not have the access.
Название: Re: Спецификация. Получение расчетного параметра
Отправлено: user32 от 13-11-2019, 17:24:23
Ааа, понял. Видимо не увидел. Спасибо