Hallo
Laat me mijn probleem uitleggen: ik heb verschillende 3D SolidWorks-bestanden (.sldprt) in een PDM-workflow met gegevens (datum van aanmaak van de eerste revisie en door wie, herkomst...) op mijn bord (ik geef aan dat deze gegevens vastliggen en nooit opnieuw worden berekend door PDM).
Ik wil deze bestanden vervangen door nieuwe 3D-bestanden (zelfs basis 3D + nog een paar schetsen) in bulk. Ik heb een configurator die de 3D-bestanden genereert en vervolgens overschrijf ik de bestanden in PDM met de nieuwe. Mijn probleem is hoe ik de eigenschappen van het oude bestand kan herstellen om het terug te plaatsen in het nieuwe? Mijn configurator werkt de " technische " eigenschappen in mijn bestanden bij, maar niet de " historische " eigenschappen (maker, revisie, enz.)
Als je een idee hebt
Misschien een macro om alle eigenschappen van het oude bestand te herstellen om ze weer in het nieuwe bestand te plakken?
Hallo
Het hangt allemaal af van hoe u wilt werken. Ofwel via een macro die gegevens ophaalt uit datakaarten, ofwel rechtstreeks via een macro die informatie uit bestanden ophaalt.
Een andere oplossing is om de vertakkingen te gebruiken en de gegevens op te halen die tijdens de samenvoeging moeten worden gekopieerd (wat komt er uit de kopie en wat komt uit het originele bestand).
1 like
Hallo
Bedankt voor de feedback.
Ik weet niet echt hoe deze functies werken, maar ik zal ze onderzoeken.
Hier is hoe ik het deed:
- Lokaal op mijn pc een tijdelijke map maken
- dupliceer en hernoem mijn X nieuwe 3D-bestanden
- macro gebruiken om oude 3D te openen / eigenschappen op te halen in Excel / oude 3D te sluiten / nieuwe 3D te openen / eigenschappen in nieuwe 3D te plakken / bestanden te sluiten
- de oude 3D uit PDM halen en vervangen door de nieuwe (eenvoudig kopiëren/plakken + vervangen)
- Bestanden archiveren
Op het eerste gezicht werkt het, de eigenschappen zijn opgenomen in de bestanden en datakaarten, maar ik heb een weergaveprobleem in mijn kolommen. Het zijn namelijk de initiële eigenschappen (die van het 3D-bestand dat X keer is gedupliceerd) die worden weergegeven (anders dan die van de datamap). Ik heb geprobeerd te verversen, mijn status te veranderen... Maar niets helpt. De enige manier is om de velden in de gegevenskaart te wijzigen (bijvoorbeeld het laatste teken te verwijderen en terug te plaatsen) en vervolgens op te slaan en te vernieuwen. Het werkt, maar verliest al zijn betekenis om de gegevens in bulk bij te werken (sommige velden, zoals Review, zijn alleen-lezen en kunnen daarom niet door een normale gebruiker worden bewerkt).
Heb je enig idee waar dit vandaan kan komen? Misschien moet mijn methode herzien worden?
… Instinctief; er ontbreekt nog een reconstructiestap (u moet de update van de nieuwe eigenschappen in de nieuwe 3D " forceren " door de eigenschappeneditor te openen (Solidworks of Smartproperties, afhankelijk van de gebruikte tool)...
In feite kan het probleem met gegevenstoewijzingen en de weergave van gegevens in Verkenner komen uit het gebied waar de eigenschappen zijn ingevuld (in aanpassen of configuratiespecifiek)
Verkenner geeft normaal gesproken informatie weer van de laatste actieve configuratie bij het inchecken.
Anders misschien ook testen met de vault API's om met de kaartvariabelen te spelen, het bestand te openen, op te slaan/te archiveren.
Hallo
Ik heb het niet in detail gespecificeerd, maar ik heb wel een " ForceRebuild " in mijn macro gezet.
Bedankt
Hallo
Het display neemt inderdaad de specifieke eigenschappen van de actieve configuratie en mijn macro werkt niet de specifieke eigenschappen van elke configuratie bij, maar alleen de eigenschappen van @.
In mijn geval gebruik ik alleen de algemene eigenschappen (ik heb de configuraties niet nodig) en dus heb ik de macro aangepast om alle specifieke eigenschappen van de configuraties te verwijderen. Ik heb ook de eigenschappen van de variabele in de administratie gewijzigd (gericht op @configuration) om te voorkomen dat de specifieke eigenschappen opnieuw worden gemaakt.
Het lijkt te werken.
@Cyril_f Bedankt voor de verwijzing waardoor ik mijn probleem kon oplossen.
1 like