I am trying to create a short VBA Script to use the RAM DA for writing the list of "lSectionID" for concrete beams into an excel sheet.
I created the identical model with steel members to check my script and it works fine for steel beams, however for the concrete model it doesn't work.
Is there any reason why:
don't work for the concrete beams but work for steel beam?
I confirmed that these properties appear to be working fine in a simple VBA example in v16.00. Perhaps the problem is specific to your model. Have you created and assigned concrete sections to all beams?
Here's a snippet of my code.
Set IModel = RAMDataAcc1.GetDispInterfacePointerByEnum(IModel_INT)Set IStories = IModel.GetStoriesFor i = 0 To IStories.GetCount - 1 Set IStory = IStories.GetAt(i) Set IBeams = IStory.GetBeams IBeams.Filter eBeamFilter_Material, EConcreteMat For j = 0 To IBeams.GetCount - 1 Set IBeam = IBeams.GetAt(j) Cells(j + 2, 1) = IBeam.lUID Cells(j + 2, 2) = IBeam.lLabel Cells(j + 2, 3) = IBeam.lSectionID Cells(j + 2, 4) = IBeam.lMaterialID Next Next
Thanks Eric. I had filtered the steel beams and that was why it didn't show the concrete beams info.
I also have a question regarding the concrete beam design. I checked the RAM DA Developer's Guide and couldn't find anything for getting the output from the concrete beam design like the rebar/stirrup number and size. Is there any way to get that information in a tabular format?.
There are methods to get at rebar information in DataAccess. For example the IConcreteBeamState1 interface has a GetBeamBarSets method. However, this method (and others for beam lines) is not compatible with VBA.
Are those methods compatible with C++ or python?
Does this method set an identical bar layout for all of the spans of a beam line or the bar layout can be set span by span?
Yes, the method can be used with C++. I have never attempted to use DA with python.The method description in the DA manual (installs with RAM Structural System in the manuals folder) indicates the method is by beam line. Review the SBM_BAR_SET structure to see what information is available. The manual also discusses why some methods are not compatible with VBA, which might provide some insight into whether the limitation exists with python or not.