| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY bietet das umfangreichste Ökosystem von B2B als auch B2C-Lösungen für IT-Akteure auf dem Markt, eine Pressemitteilung
|
Autor
|
Thema: Längen-Parameter Exporteigenschaften der Normprofile im Inhaltscenter verändern (2491 mal gelesen)
|
eddiefelson Mitglied Konstrukteur, CAD/IT-Administration
Beiträge: 133 Registriert: 13.07.2004
|
erstellt am: 02. Sep. 2012 09:48 <-- editieren / zitieren --> Unities abgeben:
Guten Morgen, ich wurde mit meiner Frage aus dem Inventor-Forum hier ins VBA-Forum verwiesen. Zitat: "Gibt es eine Möglichkeit, den Export vom G_L -Parameter (Länge des Bauteils) grundlegend zu ändern, so dass ohne Einheit und mit keiner Nachkommastelle exportiert wird?" Zitat Ende Ich suche die Möglichkeit in Verbindung mit Norm-Profilen aus dem Inhaltscenter. Parameterexport von G_L an die iProperties funktioniert einwandfrei. Jedoch die Einheiten und die nachfolgenden Nullen stören hier! Wie man das in der fertig erstellten und abgelegten Bauteil-IPT ändert kann ich schon. Wie geht das aber im Inhaltscenter mit den Norm-Profilen? Gruss eddie Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
eddiefelson Mitglied Konstrukteur, CAD/IT-Administration
Beiträge: 133 Registriert: 13.07.2004 Windows 10 Pro 64-Bit 3DConnexion SpacePilot Pro Vault Basic 2020 Build 25.3.22.0 - Update 2020.3.4 Autodesk Inventor Pro 2020 64 Bit Build 396 - Release 2020.4 Autodesk AutoCAD Mechanical 2020 Vers. 24.0.51.0 Erstellt mit: Q.111.0.0 AutoCAD 2020.1.3
|
erstellt am: 03. Sep. 2012 08:13 <-- editieren / zitieren --> Unities abgeben:
Guten Morgen WBF , Kann mir jemand sagen wie das mit einem Script geht, welches ich über die fertig erstellte Baugruppe anwenden kann? Es müsste in jedem Bauteil welches in der IAM drin ist die Exporteigenschaften des Parameters G_L anpassen, so dass dieser ohne nachfolgende Nullen und ohne Einheit exportiert wird. Gruss Eddie Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
eddiefelson Mitglied Konstrukteur, CAD/IT-Administration
Beiträge: 133 Registriert: 13.07.2004
|
erstellt am: 05. Sep. 2012 10:46 <-- editieren / zitieren --> Unities abgeben:
Hallo Forumsgemeinde, anhand der fehlenden Antworten gehe ich davon aus dass das nicht geht was ich gern wollte. Eventuell geht dann folgendes: Ist es möglich in Inventor-VBA folgendes zu programmieren: Schritt 1: in einer bereits geöffneten IAM alle IPT's überprüfen ob der Parameter G_L in die iPropertie's exportiert wird. Schritt 2: Bei allen diesen IPT's sollen die Exporteigenschaften dahingehend geändert werden, dass der Parameter ohne anhängende Nullen und ohne Einheiten exportiert wird. Beispiel: aus "340,000 mm" soll "340" werden. Gruss Eddie Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2580 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 05. Sep. 2012 21:27 <-- editieren / zitieren --> Unities abgeben: Nur für eddiefelson
Hallo Nur weil 2 Tage keiner antwortet, heißt es nicht das es nicht geht, sondern meistens das die Leute die im Forum lesen vielleicht auch mal ihrem Beruf nachgehen und gerade keine Zeit haben. Soll ja vorkommen. Zu deinen Fragen. Frage 1: Ja geht, man kann in der aktiven Baugruppe auf alle Dokumente zugreifen, prüfen ob es es ein Bauteil ist und den Exportstatus des Parameters prüfen/ändern. Frage 2: Ja geht, man kann die benutzerspezifischen Exportoptionen einstellen. An welcher konkreten Stelle in deinem Code hängt es denn? ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2580 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 07. Sep. 2012 00:28 <-- editieren / zitieren --> Unities abgeben: Nur für eddiefelson
Hallo Anbei der Code, der das Gewünschte erledigen sollte. Ging doch schneller als ich selbst dachte. Code: Private Sub ExportG_L()Dim oApp As Application Set oApp = ThisApplication If Not oApp.ActiveEditDocument.DocumentType = kAssemblyDocumentObject Then MsgBox "Funktion nur in Baugruppen verfügbar" Exit Sub End If Dim oAssDoc As AssemblyDocument Set oAssDoc = oApp.ActiveEditDocument Dim oRefedDoc As Document For Each oRefedDoc In oAssDoc.ReferencedDocuments If oRefedDoc.DocumentType = kAssemblyDocumentObject Then Call processAllSubDoc(oRefedDoc) End If If oRefedDoc.DocumentType = kPartDocumentObject Then Call SetParameterOptions(oRefedDoc) End If Next End Sub Private Sub processAllSubDoc(ByVal oAssDoc As AssemblyDocument) Dim oSubDoc As Document Dim oPartDoc As PartDocument For Each oSubDoc In oAssDoc.ReferencedDocuments If oSubDoc.DocumentType = kAssemblyDocumentObject Then Call processAllSubDoc(oSubDoc) End If If oSubDoc.DocumentType = kPartDocumentObject Then Call SetParameterOptions(oSubDoc) End If Next End Sub Private Sub SetParameterOptions(ByVal oPartDoc As PartDocument) Dim oFx As Parameter For Each oFx In oPartDoc.ComponentDefinition.Parameters.UserParameters If oFx.Name = "G_L" Then oFx.ExposedAsProperty = True oFx.CustomPropertyFormat.PropertyType = kNumberPropertyType oFx.CustomPropertyFormat.Precision = kZeroDecimalPlacePrecision Exit For End If Next End Sub
------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
eddiefelson Mitglied Konstrukteur, CAD/IT-Administration
Beiträge: 133 Registriert: 13.07.2004
|
erstellt am: 07. Sep. 2012 06:33 <-- editieren / zitieren --> Unities abgeben:
Hallo Ralf, vielen, vielen Dank dass du mir geholfen hast und das auch noch so schnell. Ich werde das Script nachher zu Hause direkt ausprobieren. Vielen Dank und viele Grüße Mike PS.: du hast den Code bis 0:28 gestern Nacht geschrieben? Ich kann nicht glauben das du im Urlaub bist :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2580 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 07. Sep. 2012 09:37 <-- editieren / zitieren --> Unities abgeben: Nur für eddiefelson
Moin Ja klar, tagsüber muß ich ja Urlaub machen. Der Code ist sicher noch nicht vollständig. Ich denke es gibt eine Reihe Fehlermöglichkeiten die durch Vorprüfungen abgefangen werden müssen. Ich hab's nur mit einer kleinen, einfachen Baugruppe getestet. Erfahrungsgemäß sieht die Realität anders aus. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
eddiefelson Mitglied Konstrukteur, CAD/IT-Administration
Beiträge: 133 Registriert: 13.07.2004
|
erstellt am: 10. Sep. 2012 08:17 <-- editieren / zitieren --> Unities abgeben:
Hallo Ralf, nach erstem Testen an mittelgroßen Baugruppen funktioniert dein Script gut. Falls sich doch noch das eine oder andere Problemchen zeigen sollten melde ich mich. Ich bedanke mich sehr für deine Unterstützung u. wünsche Dir u. deiner Familie noch einen erholsamen Urlaub. Beste Grüße eddie Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |