Controleer prop. Vergeleken met systeemwaarden bij het sluiten

Hallo

Ik zou graag willen weten of het mogelijk is om bij het sluiten van een Solidworks 2015 bestand (via VBA) de waarde van bepaalde custom properties te controleren ten opzichte van de "system" waarden van Solidworks. En die op alle configuraties.

Inderdaad, ik gebruik "prop tab builder", maar als waarden worden gewijzigd en ik de eigenschappen niet bijwerk, sluit ik het bestand met foutieve aangepaste eigenschappen.

Ik wil bijvoorbeeld:

- het PP "Materiaal" wordt geverifieerd met de Solidworks-materiaalgegevens van elke configuratie.

- het "Unit Weight" PP wordt geverifieerd met de Solidworks-massagegevens van elke configuratie.

- idem voor bepaalde afmetingen (gekoppeld aan afmetingen), volume, etc, etc, etc

In geval van een fout, waarschuw voor sluiting.

 

Bedankt voor je hulp

 

 

 

Wat is "prop tab builder"?

Een hulpprogramma?

Hallo

Dit is de "Solidworks eigenschappen form editor" waarmee u (aan de linkerkant van het SW-venster) op een meer ergonomische manier kunt instellen dan "Bestand --> Eigenschappen... "

 Cdt

Hallo

In plaats van te proberen elke waarde of dimensie te controleren die zal veranderen afhankelijk van de bestanden.

Waarom zou u niet geforceerd herbouwen voordat u opslaat?

2 likes

Hallo

Om de aangepaste eigenschappen van een onderdeel op te halen, zijn de opdrachten als volgt:

'Naameigenschappen ophalen
ListProp = Deel.GetCustomInfoNames2("")

'De waarde van een woning aflezen:
ValProp = Part.GetCustomInfoValue("", "Nom_Propriété")

Om de materiaalnaam op te halen uit de solidworks-eigenschappen:

http://help.solidworks.com/2015/english/api/sldworksapi/get_material_example_vb.htm

Wat betreft het opvragen van afmetingen, is het mogelijk om sensoren te gebruiken. Om de waarde in VBA op te halen: http://help.solidworks.com/2015/english/api/sldworksapi/Get_and_Set_Sensor_Example_VB.htm

Met ifs en Msgboxen moet het kunnen.

Wat het materiaal betreft, is het absoluut noodzakelijk dat de namen identiek zijn om het te laten werken. Het zou gemakkelijker zijn om de SOLIDWORKS-waarden rechtstreeks te gebruiken. Kijk of het echt nodig is om de SW-waarden te kopiëren naar de PP's bij het sluiten (persoonlijk doe ik het zo).

Ik heb een macro gemaakt die is toegewezen aan de S-toets die inzoomt, herbouwt, in ISO-weergave zet, de boom verzamelt, eigenschappen invult en opslaat. Als u het bestand gebruikt in plaats van Ctrl+S, bent u er zeker van dat uw bestand altijd up-to-date is (in plaats van de macro te starten bij het sluiten).

Hallo, als u het heeft over de reconstructie van het type "Ctrl+Q", kunt u hiermee alleen de constructieboom opnieuw genereren en niet de aangepaste eigenschappen van het document of de configuraties invullen.

Daarom moet ik een manier vinden om te controleren of de aangepaste eigenschappen die verwijzen naar de gegevens van het SW-systeem nauwkeurig zijn.

Deze eigenschappen worden vervolgens in PDM opgehaald voor nabewerking, daarom wil ik een slot bij het sluiten van het bestand in geval van inconsistentie.

Cdt

 

Hallo

Dank u voor deze verduidelijkingen. Ik heb al een macro gemaakt (gekoppeld aan een save knop) om de eigenschappen op te schonen.

Ik heb een grote hoeveelheid bestanden te verwerken per dag (en door meerdere mensen), daarom gebeurt het regelmatig dat ik vergeet de macro te starten (vooral op het materiaal omdat het formulier niet aangeeft dat de gegevens zijn gewijzigd en dus als u niet op "Bijwerken" drukt, worden de SW-materiaalgegevens niet ingevuld in de Persoonlijke eigenschap "Materiaal")

We hebben voor elk bestand documentgegevens die gemeenschappelijk zijn voor alle configuraties en gegevens die specifiek zijn voor elke configuratie.)

Dus heb ik een macro gemaakt om de (gemeenschappelijke) eigenschappen van het document in alle configuraties te kopiëren (moeten we de macro nog starten) en voor de specifieke gegevens moeten we deze invullen (via het eigenschappenformulier), die ook vergeten kunnen worden...

Daarom wil ik een melding wanneer het dossier gesloten is.

Cdt

Waarom geen automatische functies in eigenschappen plaatsen? Normaal gesproken volgt het daarna vanzelf

 

Voor het materiaal: "SW-Material@Pièce1.SLDPRT"

Voor het gewicht: "SW-Mass@Pièce1.SLDPRT"

 

Als de kamer "Kamer1" heet natuurlijk. Anders moeten we ons aanpassen. Maar je vindt ze toch in het vervolgkeuzemenu 


sans_titre.png

Hallo

Voor mij is de gemakkelijkste manier om de knop "opslaan" te vervangen door een macro die deze controles uitvoert en vervolgens opslaat (ik heb de knop "afdrukken" vervangen om controles uit te voeren, maar je kunt ook de gearchiveerde knop gebruiken als je een kluis gebruikt).

Anders zie ik dat je de myCADtools-hulpprogramma's hebt, dus je kunt het in bulk doen op een hele map met batchconverter of integratie.

 

Hallo en bedankt,

De eigenschappen zijn goed gerelateerd aan de SW-gegevens (materiaal, massa, volume, afmetingen, enz...) en dus geüpdatet (voor sommigen). Mijn probleem zit hem vooral in het verplicht stellen van het invullen van deze eigenschappen en als bonus het controleren van de consistentie (ik heb bestanden waarin bijvoorbeeld het materiaal is ingevuld maar de persoonlijke eigenschap is niet up-to-date: ik ben op zoek naar de oorzaak). Ik heb ongeveer 26 woningen die ingevuld moeten worden en met diverse en gevarieerde voorwaarden. (bijv. als het materiaal = "X", moet de eigenschap "kleur" worden ingevuld, enz...)

Aan de andere kant kan ik geen antwoord vinden op de vraag of het al dan niet mogelijk is om een macro te starten bij het sluiten van het bestand

Vincent

1 like

Geen oplossing behalve specifieke ontwikkeling.