| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
 | NVIDIA GTC Paris und ISC High Performance-Konferenz 2025, eine Pressemitteilung
|
Autor
|
Thema: Bauteilliste IDW mit Positionsnummer einer Ansicht abgleichen (630 / mal gelesen)
|
fadeaway Mitglied Konstrukteur

 Beiträge: 46 Registriert: 20.07.2005 Win10 Pro 64bit/32GB IV 2021.4.4
|
erstellt am: 14. Dez. 2022 10:07 <-- editieren / zitieren --> Unities abgeben:         
Hallo miteinander, Folgendes Szenario: - aus der BG "01-XYZ.iam" mit 10 Bauteilen wird auf IDW-Blatt 1 eine Erstansicht erstellt und eine Bauteilliste dazu. - es werden alle Bauteile mit Positionsnummern versehen. - es wird ein zweites Blatt in der selben IDW erstellt. - aus der selben BG "01-XYZ.iam" wird auf IDW-Blatt 2 eine Erstansicht erstellt und eine Bauteilliste dazu. - es werden nur die ersten fünf Bauteile mit Positionsnummern versehen. Aufgabe: - jetzt möchte ich per Mausklick die Bauteiliste auf IDW-Blatt 2 so verändern das nur die Zeilen mit Positionsnummern (also die ersten fünf) zu sehen sind und die anderen ausgeblendet werden. Problem: Das Aus- bzw. Einblenden bekomme ich soweit schon hin. Die beiden Bauteillisten auf Blatt 1 und Blatt 2 hängen aber zusammen. Also, wenn auf IDW-Blatt 1 alle Bauteile Positionsnummern haben wird auf IDW-Blatt 2 nichts ausgeblendet und umgekehrt. Nur wenn in beiden Ansichten der beiden Blätter ein Bauteil keine Positionsnummer hat wird diese Zeile im aktiven Blatt, in der aktiven Bauteiliste ausgeblendet. Frage: Kann man die Bauteilliste abhängig von den Positionsnummern der Erstansicht bearbeiten? Und wenn ja wie? Gruß Andreas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KraBBy Mitglied Maschinenbau-Ingenieur
  
 Beiträge: 736 Registriert: 19.09.2007 Inventor Professional 2020 WinX
|
erstellt am: 14. Dez. 2022 12:18 <-- editieren / zitieren --> Unities abgeben:          Nur für fadeaway
|
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
      

 Beiträge: 2788 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 14. Dez. 2022 13:01 <-- editieren / zitieren --> Unities abgeben:          Nur für fadeaway
Hallo Ging das nicht ohne Programmieren über Ansichtsdarstellungen und einen entsprechenden Filter auf die Teileliste? Also in der BG eine Ansichtsdarstellung erzeugen, die nur die 5 Teile sichtbar lässt. In der Zeichnung auf Blatt 2 die normale Ansicht mit allen Teilen sichtbar erstellen und eine Teileliste dazu. In der Teileliste einen Filter definieren mit "Baugruppen-Ansichtsdarstellung" und die zweite Ansichtsdarstellung auswählen. Theoretisch sollte jetzt die Teileliste entsprechend kürzer sein. An die BG noch die 5 Positionsnnummern - fertig. Theoretisch. ------------------ MfG Ralf RKW Solutions GmbH www.RKW-Solutions.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fadeaway Mitglied Konstrukteur

 Beiträge: 46 Registriert: 20.07.2005 Win10 Pro 64bit/32GB IV 2021.4.4
|
erstellt am: 14. Dez. 2022 15:22 <-- editieren / zitieren --> Unities abgeben:         
|
fadeaway Mitglied Konstrukteur

 Beiträge: 46 Registriert: 20.07.2005 Win10 Pro 64bit/32GB IV 2021.4.4
|
erstellt am: 14. Dez. 2022 15:23 <-- editieren / zitieren --> Unities abgeben:         
|

| |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
      

 Beiträge: 2788 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 15. Dez. 2022 15:21 <-- editieren / zitieren --> Unities abgeben:          Nur für fadeaway
Hallo Für den Anwender ist es mehr als einen Knopf zu drücken, das stimmt. Bei den vielen Möglichkeiten Stück- und Teilelisten zu manipulieren, fürchte ich aber, dass so eine einfache Funktion nicht ausreicht. Code:
Option ExplicitPrivate Sub Filter_PartsList() Dim oApp As Inventor.Application Set oApp = ThisApplication Dim oDrawDoc As DrawingDocument Set oDrawDoc = oApp.ActiveDocument Dim oSheet As Sheet Set oSheet = oDrawDoc.ActiveSheet Dim oValues As NameValueMap Set oValues = oApp.TransientObjects.CreateNameValueMap Dim oBalloonValueSet As BalloonValueSet Dim oBalloon As Balloon For Each oBalloon In oSheet.Balloons For Each oBalloonValueSet In oBalloon.BalloonValueSets If oBalloonValueSet.OverrideValue = "" Then Call oValues.Add(oBalloonValueSet.Value, oBalloonValueSet.Value) Else Call oValues.Add(oBalloonValueSet.OverrideValue, oBalloonValueSet.OverrideValue) End If Next Next Dim oPartsList As PartsList Set oPartsList = oSheet.PartsLists(1) 'assuming there's only one partslist Dim i As Integer Dim oPartsListColumn As PartsListColumn For i = 1 To oPartsList.PartsListColumns.count If oPartsList.PartsListColumns(i).PropertyType = kItemPartsListProperty Then Exit For End If Next Dim sValue As String Dim oPartsListRow As PartsListRow On Error Resume Next For Each oPartsListRow In oPartsList.PartsListRows sValue = oValues.Item(oPartsListRow.Item(i).value) If Not Err.Number = 0 Then oPartsListRow.Visible = False Err.Clear Else oPartsListRow.Visible = True End If Next On Error GoTo 0 End Sub
------------------ MfG Ralf RKW Solutions GmbH www.RKW-Solutions.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |