Bonjour à tous
Etant donné la réactivité de tout le monde sur ce forum j’en profite pour poser une question et ne pas rester bloquer des heures …
J’essaye actuellement de récupérer la masse des pièces via le Document Manager mais je rencontre un léger souci !
Pour pouvoir expliquer un peu plus en détail, voici le code :
Const key As String = "CLEF_DOCUMENT_MANAGER"
Dim swDmClassFactory As SwDocumentMgr.swDmClassFactory
Dim swDmApp As SwDocumentMgr.SwDMApplication
Dim docType As SwDmDocumentType
Dim FilePath As String
Dim allowReadOnly As Boolean
Dim result As SwDmDocumentOpenError
Dim DocProp As SwDMDocument
Dim Config As SwDMConfiguration
Dim GestConfig As SwDMConfigurationMgr
Dim bret As SwDmMassPropError
Sub Test()
Set swDmClassFactory = CreateObject("SwDocumentMgr.SwDMClassFactory")
If Not swDmClassFactory Is Nothing Then
Set swDmApp = swDmClassFactory.GetApplication(key)
FilePath = "CHEMIN_PRT"
Set DocProp = swDmApp.GetDocument(FilePath, swDmDocumentPart, False, result)
Set GestConfig = DocProp.ConfigurationManager
Set Config=GestConfig.GetConfigurationByName(GestConfig.GetActiveConfigurationName)
valeurs = Config.GetMassProperties(bret)
Debug.Print "Masse : " & valeurs(5)
DocProp.CloseDoc
Else
MsgBox "Erreur"
End If
End Sub
Le problème est le suivant : pour certaines pièces (sans que j’arrive à trouver de points communs entre celles qui ne marchent pas) le array ‹ valeurs › est rempli de 0 alors que je n’ai aucune erreur sur les valeurs de ‹ result › et ‹ bret ›. Et quand j’ouvre le document sur SW et que je regarde la masse elle n’est pas nulle, donc je ne comprends pas d’où vient le problème
Je précise que j’ai bien vérifié que la version de la pièce est également correcte comme indiqué dans l’aide de l’API : GetMassProperties Method (ISwDMConfiguration) - 2022 - SOLIDWORKS API Help
Quelqu’un aurait-il une piste à tout hasard?
Merci d’avance