Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  keytech PLM & DMS
  keytech 13 / Autodesk Inventor / VBA

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
Autor Thema:   keytech 13 / Autodesk Inventor / VBA (1220 mal gelesen)
mscheini
Mitglied
Senior Produktentwickler

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

Beiträge: 6
Registriert: 23.01.2016

keytech 13 Admin, CAD-Admin, VBA-Programmierung, BIM, Autodesk Inventor, Revit, SolidWorks

erstellt am: 21. Jun. 2016 09:27    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 zusammen,

ich beschäftige mich als Keytech/CAD-Admin mit VBA-Programmierung um unser CAD-System (Autodesk Inventor) etwas aufzubohren.
Hierbei bin ich natürlich auch mit der Frage konfrontiert ob und wie man mittels VBA auf ein paar keytech-Funktionen zugreifen kann.
Das betrifft einfache Abfragen des SQL-Servers um z.B. über die vorhandene Artikelnummer die STID (keytech ArtikelID) abzufragen um einen Artikelbezug bereits vor dem speichern zu erzeugen.

Ich habe auch einen Weg gefunden, die keytech-Befehle mittels CommandManager aus VBA heraus aufzurufen.
Das ist sehr von Vorteil, wenn man wie wir eine Schriftfeld-Programmierung hat und den keytech-Befehl: "Schriftkopf aktualisieren" automatisch anstoßen möchte.

Besteht denn generell Interesse an einem Erfahrungsaustausch über VBA-Programmierung in Bezug auf Inventor und keytech?

Grüße mscheini

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

Juergen Schmidetzki
Mitglied
Administrator keytech-PLM


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

Beiträge: 292
Registriert: 06.11.2000

erstellt am: 14. Jul. 2016 08:38    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 mscheini 10 Unities + Antwort hilfreich

Guten Morgen,

wir nutzen im Moment kein Inventor, deswegen kann hier nichts zu einem Erfahrungsaustausch beitragen.
Allerdings interessiert mich, welche keytech-Befehle aufrufst und wie.
Könntest du mir hierzu ein Beispiel geben? Ist das nur auf Inventor-Befehle bezogen


Viele Grüße
Jürgen

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

mscheini
Mitglied
Senior Produktentwickler

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

Beiträge: 6
Registriert: 23.01.2016

keytech 13 Admin, CAD-Admin, VBA-Programmierung, BIM, Autodesk Inventor, Revit, SolidWorks

erstellt am: 14. Jul. 2016 11:34    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


CommandManager-BefehlviaInventor-VBAausfuhren...KnopfviaVBAdrucken...gehtauchfurexterneBefehlewiez.B.keytech.txt

 
Hallo Jürgen,

ich verwende den Inventor-CommandManager der die Benutzeroberfläche (UI) steuert. Diesen spreche ich über VBA mit dem keytech-internen Befehl an.
Das schwierigste an der Sache war den internen Befehl zu finden.
Dieser war tief versteckt in der Objektstruktur.
Ich hab das mal in der anhängenden Datei beschrieben.

Dieses Verfahren gilt für alle Befehle, die irgendwann mal als Knopf in der Oberfläche des CAD-Systems auftauchen.
Grundsätzlich sollte das Verfahren auch für andere Systeme funktionieren (also über VBA eine Knopf drücken).
Hier muss allerdings der Code auf das entsprechende CAD-System angepasst und der Befehl für den Knopf gefunden werden.

Grüße mscheini


Hier ist noch der VBA-Code um den Befehl aufzurufen.

' Befehl aus der UI über CommandManager ausführen
If MsgBox("Soll der keytech Speicherdialog geöffnet werden?", vbQuestion + vbYesNo, "VBA") = vbYes Then
       
        ' Get control definition for the command.
        Dim oCtrlDef As ControlDefinition
       
        ' Interner keytech-Befehl um das Schriftfeld zu aktualisieren
        Set oCtrlDef = ThisApplication.CommandManager.ControlDefinitions.Item("MenuAssemblyBaugruppeStore")
       
        ' Execute the command.
        Call oCtrlDef.Execute
End If

[Diese Nachricht wurde von mscheini am 14. Jul. 2016 editiert.]

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

Juergen Schmidetzki
Mitglied
Administrator keytech-PLM


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

Beiträge: 292
Registriert: 06.11.2000

erstellt am: 14. Jul. 2016 11:57    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 mscheini 10 Unities + Antwort hilfreich

Hallo zurück 'mscheini',

herzlichen Dank für die Antwort.
Bei Bedarf werden ich gerne einmal deinen Code modifizieren und versuchen zu nutzen.


Schönen Tag noch
Jürgen

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)2020 CAD.de | Impressum | Datenschutz