I want to traverse thru each configuration and pull the "description" property from the configuration specific tab and use it in the user specified name in the bill of materials. The code i have works for the active configuration but doesn't change as goes thru the configs. It always keeps the same description property. This is what it looks like and the bottom pic is what i want. I have attached files for reference.
It should look like this
I was able to figure this out.
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim cusPropMgr As SldWorks.CustomPropertyManager
Dim config As SldWorks.Configuration
Dim CP As String
Dim valout As String
Dim bool As Boolean
Dim qw As String
Sub main()
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
Set config = swModel.GetActiveConfiguration
Set cusPropMgr = config.CustomPropertyManager
'get custom property CP
sConfigNameArr = swModel.GetConfigurationNames
For Each sconfigname In sConfigNameArr
Set swModelDocExt = swModel.Extension
Dim swConfig As SldWorks.Configuration
Set swConfig = swModel.GetActiveConfiguration
Set swCustProp = swModel.Extension.CustomPropertyManager(sconfigname)
Set sConfig = swModel.GetConfigurationByName(sconfigname)
If sconfigname = "Default" Then Set swCustProp = swModel.Extension.CustomPropertyManager("")
bool = swCustProp.Get4("Description", False, CP, valout)
sConfig.BOMPartNoSource = swBOMPartNumber_UserSpecified
sConfig.AlternateName = sconfigname
sConfig.UseAlternateNameInBOM = True
sConfig.AlternateName = CP
Next
End Sub