| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Request a special discount on NVIDIA RTX 5000 Ada Generation GPU !, eine Pressemitteilung
|
Autor
|
Thema: Blattformate der IDWs in übergeordneter Stückliste anzeigen? (1305 mal gelesen)
|
W. Holzwarth Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau
Beiträge: 9332 Registriert: 13.10.2000
|
erstellt am: 07. Feb. 2012 14:45 <-- editieren / zitieren --> Unities abgeben:
Es ist ja möglich, im Schriftfeld einer IDW automatisch das gewählte Blattformat und den Maßstab eintragen zu lassen. Es ist auch möglich, in einer Teileliste benutzerdefinierte iProps des Bauteils aufzulisten. Jetzt möchte ich aber gern in einer Stückliste das jeweilige Blattformat (falls existent) anzeigen lassen. Das ist etwas aufwändiger, weil dazu ja die Formate der in der Stückliste enthaltenen IDWs ermittelt werden müssen. Geht das? Macht mich fertig, wenn's schon x-mal diskutiert wurde 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. Feb. 2012 21:43 <-- editieren / zitieren --> Unities abgeben: Nur für W. Holzwarth
Hi Wieviel Zeit hast du denn für die Ausführung einer solchen Funktion? Ich verstehe dich so: - Teileliste zeilenweise durchlaufen - aus jeder Zeile das zugehörige 3D-Modell ermitteln - prüfen, welche Zeichnungsableitung dieses Modell referenziert (was, wenn es mehrere Zeichnungen gibt?) - Blattformat der Zeichnung auslesen (was wenn es mehrere unterschiedlich große Blätter gibt?) - Blattformat in die Teileliste eintragen Punkt 3 ist das Problem. Ein 3D-Modell "weiß" nicht in welcher Zeichnung es steckt. Deswegen heißt es Ableitung. Es ist eine Einbahnstraße. Man müßte, wenn nicht zufällig z.B. die IDW den gleichen Namen wie das Modell hat, alle Zeichnungsableitungen öffnen und darin nachsehen, ob das gesuchte 3D-Modell enthalten ist. Wie lange das dauert, kann man im Pack'n Go beobachten, wenn man die zugehörigen IDW's mitsuchen läßt. Arbeitet man mit nur einer Projektdatei und hat somit u.U. tausende IDW's im Projektpfad, kannste mit Stunden Bearbeitungszeit rechnen. Pro Zeile! Aber immerhin, ich glaub danach hat in der Form noch keiner gefragt. ------------------ MfG RK Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
W. Holzwarth Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau
Beiträge: 9332 Registriert: 13.10.2000
|
erstellt am: 07. Feb. 2012 22:13 <-- editieren / zitieren --> Unities abgeben:
Nabend RK, ich habe das gleiche Thema auch noch im Inventor-Forum aktiv. Andreas (SEHER) hat da einen denkbaren Vorschlag gemacht, der wohl auch von der Geschwindigkeit machbar wäre. Die IDW hinterlegt da bei der ersten Erstellung in einem User-iProp in der zugehörigen IPT/IAM ihr Blattformat, und macht ein Update, wenn sich das Format ändert. Grundsätzlich müsste das klappen, denn auch Änderungen in der IAM-Stückliste schreiben ja Daten in die IPTs der Teile. Aber ich bin zu doof .. 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. Feb. 2012 23:34 <-- editieren / zitieren --> Unities abgeben: Nur für W. Holzwarth
Hi folgender VBA-Code schreibt das iProp, wenn es nicht existiert oder der Inhalt vom aktuellen Wert abweicht: Code: Private Sub Blattformat()Dim oDoc As DrawingDocument Set oDoc = ThisApplication.ActiveDocument Dim sBlattformat As String Dim eBlattformat As DrawingSheetSizeEnum eBlattformat = oDoc.Sheets.Item(1).Size Select Case eBlattformat Case kCustomDrawingSheetSize: sBlattformat = "Custom" Case kADrawingSheetSize: sBlattformat = "A" Case kBDrawingSheetSize: sBlattformat = "B" Case kCDrawingSheetSize: sBlattformat = "C" Case kDDrawingSheetSize: sBlattformat = "D" Case kEDrawingSheetSize: sBlattformat = "E" Case kFDrawingSheetSize: sBlattformat = "F" Case kA0DrawingSheetSize: sBlattformat = "A0" Case kA1DrawingSheetSize: sBlattformat = "A1" Case kA2DrawingSheetSize: sBlattformat = "A2" Case kA3DrawingSheetSize: sBlattformat = "A3" Case kA4DrawingSheetSize: sBlattformat = "A4" Case k9x12InDrawingSheetSize: sBlattformat = "9x12" Case k12x18InDrawingSheetSize: sBlattformat = "12x18" Case k18x24InDrawingSheetSize: sBlattformat = "18x24" Case k24x36InDrawingSheetSize: sBlattformat = "24x36" Case k36x48InDrawingSheetSize: sBlattformat = "36x48" Case k30x42InDrawingSheetSize: sBlattformat = "30x42" End Select Dim oRefedDoc As Document Set oRefedDoc = oDoc.Sheets.Item(1).DrawingViews.Item(1).ReferencedDocumentDescriptor.ReferencedDocument Dim oPropSet As PropertySet Set oPropSet = oRefedDoc.PropertySets.Item("User Defined Properties") Dim oProp As Property For Each oProp In oPropSet If oProp.Name = "Blattformat" Then If Not oProp.Value = sBlattformat Then oProp.Value = sBlattformat End If Exit For End If Next If oProp Is Nothing Then Call oPropSet.Add(sBlattformat, "Blattformat") End If End Sub
Ich steh nur leider immer noch auf Kriegsfuß mit iLogic. Vielleicht kann dir Andreas das in iLogic-Code konvertieren.
------------------ MfG RK Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
W. Holzwarth Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau
Beiträge: 9332 Registriert: 13.10.2000
|
erstellt am: 08. Feb. 2012 00:05 <-- editieren / zitieren --> Unities abgeben:
|
W. Holzwarth Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau
Beiträge: 9332 Registriert: 13.10.2000 Inventor bis 2024, Rhino 7, Mainboard ASUS ROG STRIX X570F-Gaming, CPU Ryzen 9 5900X, 64 GB RAM, 4 TB SSD, Radeon RX 6900 XT, Dual Monitor 24", Spacemouse Enterprise, Win 10 22H2
|
erstellt am: 08. Feb. 2012 12:48 <-- editieren / zitieren --> Unities abgeben:
|