In een assembly probeer ik de waarde "Onderdeelnummer weergegeven bij gebruik in een stuklijst:" op te halen van het onderdeel dat ik heb geselecteerd. Ik krijg al de naam van de configuratie van het geselecteerde onderdeel met de onderstaande code, maar ik droog een beetje voor het onderdeelnummer dat in de nomenclatuur wordt weergegeven. Heeft iemand de oplossing?
Dim swApp als SldWorks.SldWorks Zon swSelMgr As SldWorks.selectionMgr Dim swModel als SldWorks.ModelDoc Dim ConfigMgr als ConfigurationManager Dim Component Als SldWorks.Component2
Sub hoofd()
Stel swApp = Toepassing.SldWorks in Stel swModel = swApp.ActiveDoc in Stel swSelMgr = swModel.SelectionManager in Set ConfigMgr = swModel.ConfigurationManager
' Toon Config1 en maak er de actieve configuratie van Debug.Print "ConfigName SelectedComponent =" & Component.ReferencedConfiguration Debug.Print "ConfigName SelectedComponent = " & ConfigMgr.ActiveConfiguration.UseAlternateNameInBOM
Ik heb de oplossing gevonden met GetConfigurationParams.
Voorbeeld:
Dim ActiveConfig als tekenreeks Dim bRet als Booleaanse Dim ConfigMgr als ConfigurationManager Dim Component Als SldWorks.Component2 Dim ParamConfigValue als variant Dim swApp als SldWorks.SldWorks Zon swSelMgr As SldWorks.selectionMgr Dim swModel als SldWorks.ModelDoc
Sub hoofd()
Stel swApp = Toepassing.SldWorks in Stel swModel = swApp.ActiveDoc in Stel swSelMgr = swModel.SelectionManager in Set ConfigMgr = swModel.ConfigurationManager
' Actieve configuratie-ID en naamherstel 'IDconfig = swModel.ConfigurationManager.ActiveConfiguration.GetID ActiveConfig = swModel.ConfigurationManager.ActiveConfiguration.Name bRet = ConfigMgr.GetConfigurationParams(ActiveConfig, "DEEL $NUMERO", ParamConfigValue) 'Debug.Print' Config ID ingeschakeld bij het openen: " & IDconfig Debug.Print "Config naam actief bij openen: " & ActiveConfig Debug.Print "Nummer gebruikt in stuklijsten: " & ParamConfigValue(1) 'ParamConfigValue 1 komt overeen met onderdeelnummer dat wordt gebruikt in stuklijst
Ik heb de oplossing gevonden met GetConfigurationParams.
Voorbeeld:
Dim ActiveConfig als tekenreeks Dim bRet als Booleaanse Dim ConfigMgr als ConfigurationManager Dim Component Als SldWorks.Component2 Dim ParamConfigValue als variant Dim swApp als SldWorks.SldWorks Zon swSelMgr As SldWorks.selectionMgr Dim swModel als SldWorks.ModelDoc
Sub hoofd()
Stel swApp = Toepassing.SldWorks in Stel swModel = swApp.ActiveDoc in Stel swSelMgr = swModel.SelectionManager in Set ConfigMgr = swModel.ConfigurationManager
' Actieve configuratie-ID en naamherstel 'IDconfig = swModel.ConfigurationManager.ActiveConfiguration.GetID ActiveConfig = swModel.ConfigurationManager.ActiveConfiguration.Name bRet = ConfigMgr.GetConfigurationParams(ActiveConfig, "DEEL $NUMERO", ParamConfigValue) 'Debug.Print' Config ID ingeschakeld bij het openen: " & IDconfig Debug.Print "Config naam actief bij openen: " & ActiveConfig Debug.Print "Nummer gebruikt in stuklijsten: " & ParamConfigValue(1) 'ParamConfigValue 1 komt overeen met onderdeelnummer dat wordt gebruikt in stuklijst