Wil je absoluut het bestandspad in de eigenschappen hebben, of zou het voldoende zijn om deze informatie in een annotatie (voor een tekening) te hebben?
Op dit moment, behalve met een macro, zie ik niet hoe ik deze informatie in de eigenschappen kan toevoegen. Als u echter de macro wilt:
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim config As SldWorks.Configuration
Dim cusPropMgr As SldWorks.CustomPropertyManager
Dim custPropType As Long
Dim FieldType As Integer
Dim customProp As CustomPropertyManager
Dim PathPlan As String
Sub main()
FieldType = 30
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
Set config = swModel.GetActiveConfiguration
Dim swCustProp As CustomPropertyManager
Dim swModelDocExt As ModelDocExtension
Dim bool As Boolean
Set swModelDocExt = swModel.Extension
Set swCustProp = swModelDocExt.CustomPropertyManager("")
PathPlan = swModel.GetPathName
bool = swCustProp.Add3("Chemin Fichier", FieldType, PathPlan, swCustomPropertyAddOption_e.swCustomPropertyDeleteAndAdd)
End Sub
Als u deze informatie aan een notitie in een tekening wilt toevoegen, kunt u ook een eigenschap aan een notitie koppelen. (Zie pj)
Waarom gebruikt u niet de tool "SmartProperties" van myCADtools? Deze tool maakt het onder andere mogelijk om eigenschapswaarden samen te voegen (een functie die de SW-eigenschapseditor niet toestaat).
Juist omdat aanhalingstekens niet werken, moeten we " In plaats daarvan, en dit geldt voor alle tekst die aanhalingstekens bevat in de attribuutwaarde in XML-bestanden, wat het geval is bij het .prtprp-bestand, worden aanhalingstekens gebruikt om attributen te omringen.
Bedankt voor deze informatie, maar ik ben verrast, in de lijst met eigendommen heb ik de indruk dat u de namen van eigendommen in het Engels of in het Frans kunt invoeren...?
Ik heb nog een laatste klein probleempje, ik wil graag de naam van het bestand met de extensie ".sldprt" weergeven, maar ik kan de juiste syntaxis niet vinden....?
Ik heb niet getest op Engels of Frans, van mijn kant heb ik de eigenschappenpaletten lange tijd niet meer gebruikt, maar in die tijd was het systematisch in het Engels.
Voor de toevoeging van de extensie kon ik geen overeenkomstige eigenschap vinden, maar het is mogelijk door een teksteigenschap te maken die de gewenste waarde bevat volgens het geladen eigenschappenpalet (.prtprp- of .asmprp-bestand) en deze vervolgens aan te eenschakelen met de SW-eigenschappen zoals in het onderstaande voorbeeld:
Sorry dat het niet werkt alsof het "extensie" niet als een systeemvariabele beschouwt.
Hoe doe je dat?
Een andere vraag, wat is een andere oplossing voor het invullen van de § attributen?
Tegenwoordig werken we met een "in-house" macro, waarin we de attributen invullen, aan de andere kant moeten we het onderdeel of de assemblage openen die we willen vullen.
Om deze reden leek het eigenschappenpalet interessant omdat het het mogelijk maakte om de onderdeelattributen direct in de assemblage in te vullen (comfort)...
Test gedaan door het onderdeel in SW te openen en ook direct door het onderdeel in de assemblage te bewerken.
Heb je Mode="Text" aan het einde van de regel gezet die de eigenschap "Extension" definieert?
Op de vraag " wat is een andere oplossing voor het invullen van de § attributen? ", is het door een zelfgemaakt programma waarin ik SW-eigenschappen en vele andere dingen beheer.