Ich importiere regelmäßig Dateien (Arten von Baugruppen und Teilen) von Lieferanten und bevor ich mit ihnen arbeite, führe ich zunächst eine Importdiagnose und manchmal auch eine Erkennung der Funktionen durch. Trotzdem finde ich es mühsam, dies für jede "Datei" einer Baugruppe zu tun (siehe angehängte Dateien). Gibt es eine Möglichkeit, dies schneller zu tun und somit diese Aufgabe für einen Stapel von Dateien auszuführen?
Fügen Sie zuerst die Importaufgabe ein (die Datei wird gespeichert oder die Originaldatei.
Und meiner Meinung nach muss es für die Importdiagnose in den benutzerdefinierten Aufgaben sein, dafür müssen Sie ein Makro erstellen, aber ich kenne den Befehl nicht.
Wenn Sie zusätzlich zum Aufgabenplaner ein Makro erstellen müssen, lohnt es sich möglicherweise nicht, sich mit diesem zu beschäftigen... Ihr Bedarf ist durchaus makroökonomisch erfüllbar, natürlich hängt es von Ihrem Kenntnisstand zu diesem Thema ab. Im Folgenden finden Sie eine Liste der Funktionen, die zum Analysieren einer Assembly und zum Durchführen von Importdiagnosen und Feature-Erkennung für jedes untergeordnete Element verwendet werden können:
Eröffnung des ASM dann: - ActiveDoc (ISldworks) - GetRootComponent3 (IConfiguration) - GetChildren (IComponent) - GetModelDoc2 (IComponent) - OpenDoc6 (ISldworks) - ImportDiagnose (IPartDoc) - CallBack("fworks@FWPlaybackManager", 0, "...... ") (ISldworks) - Speichern unter (IModelDocExtension) - CloseDoc (ISldworks) Dann schleifen wir das nächste Element zum letzten Kind auf. Vergessen Sie nicht, das ASM am Ende der Behandlung aufzubewahren.
Es kann ein ziemlich schönes Makro abgeben und das wäre sicherlich für viele Benutzer sehr nützlich ...
Ich greife das Thema noch einmal auf. Ich habe das gleiche Problem wie charleslr.
Ich finde den Schritt der Funktionserkennung lang und mühsam, wenn es um eine komplexe Baugruppe geht. Die Verwendung eines Makros scheint mir die beste Lösung zu sein.
Da Sie die VBA-Sprache nicht wirklich kennen, wäre es möglich , ein Makro zu haben , das diese Funktion ausführen kann?
Ich habe versucht, das Makro mit den oben genannten Funktionen aufzuzeichnen, aber ich habe nicht die Zeit oder die Fähigkeiten, dies zu tun.
Wenn ich demnächst Zeit habe, kann ich eventuell mit dem Thema beginnen. Ich werde noch ein paar weitere Funktionen hinzufügen, einschließlich der Wahl des Baugruppenexports (persönlich exportiere ich Baugruppen in .sldprt , um meine Entwürfe aufzulockern).
Ich persönlich brauche meine Baugruppen nicht in .sldprt zu registrieren, da ich dieses Design für die Realisierung der Teile in der Werkstatt benötige.
In Ulfs Makro blockiere ich auf der Ebene von:
longstatus = Part.ImportDiagnosis(True, False, False, 0): (Eigenschaft oder Methode wird von diesem Objekt nicht unterstützt).
Vielleicht sollten Sie zuerst versuchen, einen Code zu haben, der auf einem Teil funktioniert, und dann sehen wir uns den Rest für eine Baugruppe an?
Sie müssen dann vorsichtig sein, falls Ihre Baugruppe mehrmals aus demselben Teil besteht. Ich werde die Architektur der Assembly lesen, wenn ich einen neuen Dateinamen sehe, füge ich den Dateinamen in eine Liste ein, und wenn ich fertig bin, führe ich die Importdiagnose für die Dateien in der Liste durch. Vielleicht gibt es einfachere Dinge, aber ich bin Mechaniker, kein Informatiker :-).
Alle notwendigen Funktionen sind bereits in einer vorherigen Nachricht angegeben, zur Erinnerung:
Im Folgenden finden Sie eine Liste der Funktionen, die zum Analysieren einer Assembly und zum Durchführen von Importdiagnosen und Feature-Erkennung für jedes untergeordnete Element verwendet werden können:
Eröffnung des ASM dann: - ActiveDoc (ISldworks) - GetRootComponent3 (IConfiguration) - GetChildren (IComponent) - GetModelDoc2 (IComponent) - OpenDoc6 (ISldworks) - ImportDiagnose (IPartDoc) - CallBack("fworks@FWPlaybackManager", 0, "...... ") (ISldworks) - Speichern unter (IModelDocExtension) - CloseDoc (ISldworks) Dann schleifen wir das nächste Element zum letzten Kind auf. Vergessen Sie nicht, das ASM am Ende der Behandlung aufzubewahren.
Vielen Dank d.roger für die Erinnerung an die vorherige Nachricht. Ich habe jedoch nach einer Spur gesucht, indem ich diesen Beitrag gelesen habe, bevor ich mir diese Fragen gestellt habe.
@charleslr, ok für Februar, lasst es mich wissen, wenn ihr irgendwelche neuen Elemente habt, mir wird auch bis Ende März die Zeit ausgehen.
Ein altes Thema, bei dem ich aber in den letzten Wochen Fortschritte gemacht habe. Das Prinzip meines Makros ist wie folgt:
Schauen Sie sich die Dateiendung der Eingabedatei an (SLDASM, SLDPRT, STP, X_T, ...) und speicherte es auf verschiedene Weise in . SLDPRT und schließen Sie die Vorlagendatei. Dann führt er eine Importdiagnose für das gespeicherte Teil durch, repariert die defekten Flächen, sperrt das Teil und speichert dieses neue Teil. Angehängt ist das Makro in VBA.
Ich lasse Sie es nach Belieben modifizieren und/oder nach Bedarf verbessern. Fühlen Sie sich frei, Ihre zukünftigen Überarbeitungen zu posten!