Привет У меня есть макрос, который создает несколько листов и имеет имя, номер, категорию листов.Последний - мой собственный параметр проекта.
Я могу успешно создать листы с именем и номером, но у меня возникают трудности с добавлением значения из файла CSV в параметр проекта "Категория SD_Sheet".Ниже приведены некоторые примеры кода, помогающие объяснить.
Public Module mSheetCreator
Public Structure structSheet
Public sheetNum As String
Public sheetName As String
Public sortCategory As String
End Structure
Затем у меня есть функция, которая читает файл CSV и выполняет следующее:
Try
currentRow = MyReader.ReadFields()
'create temp sheet
Dim curSheet As New structSheet
curSheet.sheetNum = currentRow(0)
cursheet.sheetName = currentRow(1)
curSheet.sortCategory = currentRow(4)
'add sheet to list
sheetList.Add(curSheet)
Затем у меня есть транзакция, которая выполняетследующее:
For Each curSheet As structSheet In sheetList
Try
If sheetType = "Placeholder Sheet" Then
m_vs = ViewSheet.CreatePlaceholder(curDoc)
Else
m_vs = ViewSheet.Create(curDoc, tblock.Id)
m_vs.Parameter("SD_Sheet Category").Set(CStr(curSheet.sortCategory))
End If
m_vs.Name = curSheet.sheetName
m_vs.SheetNumber = curSheet.sheetNum
Проблема заключается в следующем коде:
m_vs.Parameter("SD_Sheet Category").Set(CStr(curSheet.sortCategory))
Я получаю предупреждение о том, что это неявное преобразование из 'String' в 'Autodesk.Revit.DB.BuiltInParameter '" как только я создаю решение
Когда я запускаю код в Revit, он выдает ошибку:
" Преобразование из строки "Категория SD_Sheet"для ввода 'Integer' недопустимо"
Он создает листы, но игнорирует всю информацию в файле CSV. Я знаю, что остальная часть кода работает, так как я удалил этот конкретныйстрока кода, чтобы я знал, что это не проблема
Есть предложения ??