Добавление данных в спецификацию

Автор Тема: Добавление данных в спецификацию  (Прочитано 662 раз)

0 Пользователей и 3 Гостей просматривают эту тему.

Оффлайн BazingaАвтор темы

  • ADN Club
  • **
  • Сообщений: 98
  • Карма: 4
Такая ситуация: есть 3 ПК. На двух ПК при добавлении данных в спецификацию (вставляется строка и вносятся данные), они отображаются. На 1 ПК появляется только пустая строка. Проект на 3 ПК один и тот же. Почему так может происходить?

код для вставки стандартный
Код - C# [Выбрать]
  1.  element.LookupParameter(parameter_of_element).Set(param.Value);

Оффлайн Александр Игнатович

  • Administrator
  • *****
  • Сообщений: 823
  • Карма: 257
  • Skype: alexandr.ignatovich.itc
Re: Добавление данных в спецификацию
« Ответ #1 : 31-07-2020, 15:45:15 »
Вероятно, причина где-то за пределами кода, взаимодействующего непосредственно с API Revit, может где-то в региональных настройках различия

Оффлайн BazingaАвтор темы

  • ADN Club
  • **
  • Сообщений: 98
  • Карма: 4
Re: Добавление данных в спецификацию
« Ответ #2 : 31-07-2020, 16:04:43 »
Александр Игнатович, Вот ещё понять бы, где сидит это различие. В настройках Revit или в настройках ОС?

Оффлайн Александр Игнатович

  • Administrator
  • *****
  • Сообщений: 823
  • Карма: 257
  • Skype: alexandr.ignatovich.itc
Re: Добавление данных в спецификацию
« Ответ #3 : 31-07-2020, 16:49:12 »
По одной строчке кода в топике сказать сложно ;D

Скорее всего, проблема не связана с Revit. Что ещё делает код?

Оффлайн BazingaАвтор темы

  • ADN Club
  • **
  • Сообщений: 98
  • Карма: 4
Re: Добавление данных в спецификацию
« Ответ #4 : 31-07-2020, 17:37:18 »
Александр Игнатович, по сути от вставляет строку в таблицу, и потом в этой таблице пишет данные. Усё:D

Строка вставляется, потом находится, данные на вход подаются. Магия какая-то..

вставили строку в таблицу
Код - C# [Выбрать]
  1. tableData.InsertRow(tableData.NumberOfRows);

находим нужный элемент
Код - C# [Выбрать]
  1.             Element el = null;
  2.             int max = 0;
  3.  
  4.             foreach(Element _el in list)
  5.             {
  6.                 if(_el.Id.IntegerValue > max)
  7.                 {
  8.                     el = _el;
  9.                     max = _el.Id.IntegerValue;
  10.                 }
  11.             }
  12.             return el;

Вставка значений
Код - C# [Выбрать]
  1. if (element.LookupParameter(parameter_of_element) != null)
  2.                             {
  3.  
  4.                                 element.LookupParameter(parameter_of_element).Set(param.Value);
  5.  
  6.                                 //element.LookupParameter(parameter_of_element).SetValueString(param.Value);
  7.                             }