Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  SolidWorks Enterprise PDM
  SolidWorks-Makro in EPDM-Task starten

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
SOLIDWORKS Online-Kurse | Jederzeit verfügbar << , ein Kurs
Autor Thema:  SolidWorks-Makro in EPDM-Task starten (2756 mal gelesen)
micboelly
Mitglied
Konstrukteur, CAD-Administrator


Sehen Sie sich das Profil von micboelly an!   Senden Sie eine Private Message an micboelly  Schreiben Sie einen Gästebucheintrag für micboelly

Beiträge: 35
Registriert: 17.05.2011

DELL T7500
96GB RAM
NVIDIA Quadro 4000
Windows 7
SolidWorks 2015 SP5 Premium
SolidWorks Flow Simulation
SolidWorks Composer
SolidWorks Enterprise PDM 2015 SP5

erstellt am: 13. Mai. 2014 11:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Forum,

wir arbeiten seit einigen Wochen mit Enterprise PDM. An der User- und Admin-Schulung habe ich teilgenommen und kenne mich zumindest mit den Basics ein wenig aus.

Jetzt zu meiner Aufgabe:
Ich möchte beim Statuswechsel von Dokumenten ein bereits vorhandenes SolidWorks-Makro starten.
Da würde mir zunächst der Workflow einfallen, in dem im Statusübergang ein Tasks ausgeführt werden kann.
Funktioniert zum Beispiel für die Konvertierung von Zeichnung als PDF etc. 

Lässt sich in einem Task ein SolidWorks-Makro starten? Und wenn, wie müsste die Programmierung aussehen?

Ich hoffe auf einige schnelle Antworten.
Gruß

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

micboelly
Mitglied
Konstrukteur, CAD-Administrator


Sehen Sie sich das Profil von micboelly an!   Senden Sie eine Private Message an micboelly  Schreiben Sie einen Gästebucheintrag für micboelly

Beiträge: 35
Registriert: 17.05.2011

DELL T7500
96GB RAM
NVIDIA Quadro 4000
Windows 7
SolidWorks 2015 SP5 Premium
SolidWorks Flow Simulation
SolidWorks Composer
SolidWorks Enterprise PDM 2015 SP5

erstellt am: 13. Mai. 2014 15:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Habe doch noch etwas gefunden.

Mit dem folgenden Code lässt sich ein Makro starten.
Dim boolstatus as boolean
boolstatus = swApp.RunMacro("C:\Makros\Makroname.swp", "Makroname1", "Main")

Gruß

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Piet
Mitglied
Konstruktionsleiter & Konstrukteur


Sehen Sie sich das Profil von Piet an!   Senden Sie eine Private Message an Piet  Schreiben Sie einen Gästebucheintrag für Piet

Beiträge: 661
Registriert: 20.11.2001

SWx2014 SP3.0, EnterprisePDM2014.3, 2x 2,0 Ghz Xeon E5504 Quadcore, 12GB Ram, Win7 64Bit, Quadro FX4800

erstellt am: 16. Mai. 2014 14:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für micboelly 10 Unities + Antwort hilfreich

Ich hab vor einiger Zeit ein SWX-Makro in ein Task-Skript umgesetzt. Dabei ruft der Task nicht das SWX-Makro auf, sondern ich habe den Makro-Code in das Task-Skript kopiert und angepasst. Das ist schon eine Weile her, so dass ich mich nicht an die Details erinnere, aber der Start weicht vom SWX-Makro ab, damit die Dateien korrekt aufgerufen werden.
So geht der Code los:

Sub main()
Const docFileName As String = "<Filepath>"
If Not LCase(Right(docFileName, 6)) = "sldprt" Then
    MsgBox "Das geht nur mit Einzelteilen", vbCritical, "Unzulässiger Dateityp"
    Exit Sub
End If
Set swApp = Application.SldWorks
Set part = swApp.OpenDoc6(docFileName,1, 1, "", nErrors, nWarnings)
Set part = swApp.ActiveDoc
Set swExtension = part.Extension
Set swFeatureManager = part.FeatureManager

Das Bugfixing von Task-Skripts ist nicht gerade komfortabel, ich habe Unmengen an Messageboxen eingebaut um zu sehen, wie weit der Code kommt. Die Dokumentation der Skriptsprache ist auch nicht berühmt. Der Service unseres Resellers hat mir hier weitergeholfen.
In einen Workflow hab ich diesen Task nicht eingesetzt, das sollte aber gehen, soweit ich mich erinnere.

Piet

------------------
Jeder nichttrivial gekämmte Igel hat mindestens einen Glatzpunkt.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz