Create schedule CSV error Revit 2023

I created a CSV file in excel to import into revit 2023 (works fine in revit 2022). I am trying to create a key schedule that will be used across multiple projects.

I tried 2 ways. First way, I used Key Name as first header and a comma to separate the other headers (project parameters). Followed the same for the other rows, separating key name data and parameters data with a comma per row. The second option was to have each header (Key Name being the first) in a separate column with the appropriate data in the rows below it.

The parameters with exact naming were created in the model under the right category. However, no matter what I try I always get an error.

The error shown below (copied from the error log)

IronPython Traceback:
Traceback (most recent call last):
File “C:\Program Files\pyRevit-Master\extensions\pyRevitTools.extension\pyRevit.tab\Drawing Set.panel\views.stack\Schedules.pulldown\Create Schedule from CSV.pushbutton\script.py”, line 344, in
File “C:\Program Files\pyRevit-Master\extensions\pyRevitTools.extension\pyRevit.tab\Drawing Set.panel\views.stack\Schedules.pulldown\Create Schedule from CSV.pushbutton\script.py”, line 321, in read_csv_typed_data
AttributeError: ‘Autodesk.Revit.DB’ object has no attribute ‘ParameterType’

Script Executor Traceback:
System.MissingMemberException: ‘Autodesk.Revit.DB’ object has no attribute ‘ParameterType’
at Microsoft.Scripting.Interpreter.ThrowInstruction.Run(InterpretedFrame frame)
at Microsoft.Scripting.Interpreter.Interpreter.HandleException(InterpretedFrame frame, Exception exception)
at Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame frame)
at Microsoft.Scripting.Interpreter.LightLambda.Run2[T0,T1,TRet](T0 arg0, T1 arg1)
at System.Dynamic.UpdateDelegates.UpdateAndExecute3[T0,T1,T2,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2)
at Microsoft.Scripting.Interpreter.DynamicInstruction`4.Run(InterpretedFrame frame)
at Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame frame)
at Microsoft.Scripting.Interpreter.LightLambda.Run2[T0,T1,TRet](T0 arg0, T1 arg1)
at IronPython.Compiler.PythonScriptCode.RunWorker(CodeContext ctx)
at PyRevitLabs.PyRevit.Runtime.IronPythonEngine.Execute(ScriptRuntime& runtime)

ParameterType enumeration has been deprecated and replaced with the ForgeTypeId Class. Did a quick search and found some info here: https://thebuildingcoder.typepad.com/files/revit_platform_api_changes_and_additions_2022.pdf

If you intend to use this script in older versions as well as 2023, you might have to put a check for the revit version in your script to handle both cases.

1 Like