Hallo
Ich werde versuchen, mein Problem so gut wie möglich zu erklären, aber es ist nicht einfach.
Ich verwende ein Excel-Makro, um Teile und Baugruppen in einer Modellbaugruppe zu ersetzen.
Mein Programm funktioniert gut auf meinem PC, aber ich habe gerade ein Problem mit der Version der Assemblys bemerkt, nach der das Makro auf einem anderen PC sucht.
Beispiel:
Wenn ich eine Baugruppe auf meinem PC (PC1) extrahiere, ändere sie und lege sie dann wieder in den PDM-Safe (ich habe keine Extrakte mehr auf meinem PC)
Wenn ich auf einem anderen PC (PC2) mein Excel-Makro verwende und diese frisch geänderte Assembly importiere, ist die Version, die ich wiederherstelle, die Version vor der Änderung.
Technisch gesehen ist die Art und Weise, wie mein Excel-Makro meine Baugruppe abruft, sehr einfach, meine Excel-Datei enthält Baugruppennamen und deren Speicherorte und verwendet diesen Code (unten), um ein im ASSEMBLAGE_MODELE enthaltenes Modellteil (PIECE_A _REMPLACER) durch die ausgewählte Baugruppe (NEW_PART_NAME) zu ersetzen, die den Pfad NEW_PART_PATH hat:
boolstatus = swModel.Extension.SelectByID2(PIECE_A_REMPLACER & "@" & ASSEMBLAGE_MODELE, "COMPONENT", 0, 0, 0, True, 0, Nothing, 0)
boolstatus = swModel.ReplaceComponents2(NEW_PART_PATH & "\" & NEW_PART_NAME, "", False, 0, True)
Da ich nicht verstand, warum die Version der Baugruppe, die der PC2 öffnete, alles schloss ich alles und suchte manuell (in PDM) nach dieser Baugruppe, die ich in meine Modellbaugruppe importieren möchte, dann öffnete ich sie, und dort .... Es öffnet sich die korrekte Version (die Version, die ich auf dem PC1 worldifiziert hatte).
Ich schließe alles und versuche es dann erneut mit meinem Makro über Excel.... Es funktioniert, es importiert jetzt die korrekte Version der SOLIDWORKS-Datei.
Zuerst dachte ich, dass es sich um ein Problem mit dem Cash-Speicher des PC2 handelte und dass SolidWorks daher das öffnete, was es in seinem Cash-Speicher hatte, und nicht die neueste Version jeder Datei.
Außer, dass... Bei einem anderen Versuch versuche ich nun, eine Baugruppe zu importieren (immer ein Teil in meiner Modellbaugruppe durch diese neue Baugruppe zu ersetzen), die vorher nicht im PDM-Safe vorhanden war: Der Ordner, in dem sich diese neue Baugruppe befindet, existierte vorher nicht (der PC2 hat den Ordner noch nie geöffnet).
Auf dem PC2 teste ich mein Excel-Makro und dort reagiert das Programm so, als ob es die betreffende Datei gar nicht finden könnte... Er geht weiter, ohne etwas zu tun... obwohl, wie bei den anderen Teilen, ich ihm einen korrekten Dateinamen und Speicherort gebe.
Ich mache alles neu, ich suche diese neue Datei auf dem PDM des PC2, ich finde sie und öffne sie... Alles läuft gut.
Ich mache alles noch einmal und versuche es mit meinem Excel-Makro erneut... Es funktioniert, es findet endlich die neue Datei.
Es scheint, dass das Makro über Excel, selbst wenn ich einen gültigen Dateispeicherort angebe, keinen Zugriff auf die neueste Version des PDM-Tresors hat, nicht nur auf eine Datei, sondern auf ein beliebiges PDM.
Gibt es auf jedem PC eine Art "Cash-Speicher des PDM-Tresors" oder ähnliches?
Also dachte ich zu Beginn meines Excel-Makros darüber nach, eine Zeile hinzuzufügen, um diesen Geldspeicher zu leeren (falls vorhanden) und daher das Makro zu zwingen, aus der aktuellen Version von PDM zu ziehen und nicht aus einer gespeicherten....
Wenn du eine Idee hast, oder wenn ich völlig in die falsche Richtung gegangen bin... Sag mir... vielleicht liegt es nur an der Art und Weise, wie ich in meinem Makro nach meinen Dateien suche...
Vielen Dank im Voraus
Yves
PS: Entschuldigung für den Mangel an Akzenten, ich bin in Großbritannien, also QWERTZ-Tastatur