| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Stücklisten Export (3195 mal gelesen)
|
SKING Mitglied Konstrukteur
Beiträge: 30 Registriert: 01.08.2007 Inventor 9
|
erstellt am: 01. Aug. 2007 10:57 <-- editieren / zitieren --> Unities abgeben:
Hallo hilfreiches Forum, bin neu hier und hoffe das ich auch Hilfe bekomme. ich habe ein Problem beim Stücklisten-Export, besser gesagt ein Problem beim Erstellen der Stückliste in der *.idw. Wenn ich die Stückliste nach Excel exportiere, benötige ich die kompletten Baugruppen mit ihren jeweiligen Bauteilen bzw. auch Baugruppen usw.. Dies mache ich momentan über die Stückliste in der *.idw, in dem ich auf das "+"Zeichen klicke und somit die Unterbauteile öffne. Danach wird die Liste nach Zeichnungs-Nr. soriert und nach Excel exportier. Ich habe nur ein Problem bei großen Baugruppen mit mehreren Unterbaugruppen. Wenn ich diese über das "+"Zeichen in der Stückliste öffnen, dauert es bis zu einer Stunde und dabei sitze ich nur vor dem Rechner und drücke auf diese "+"Zeichen. Wie kann ich die Stückliste mit Ihrer Nr.-Struktur über VBA exportieren. Ich habe in der Suchfunktion leider nichts passendes gefunden, was auch die Unterbaugruppen mit exportieren würde. Beschäftige mich schon seit Montag damit, hoffe ihr könnt mir helfen. Achja habe Inv.9 im Einsatz Grüße aus dem Norden SKING Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PaulSchuepbach Moderator Programmierer
Beiträge: 1005 Registriert: 01.10.2003
|
erstellt am: 01. Aug. 2007 17:51 <-- editieren / zitieren --> Unities abgeben: Nur für SKING
|
SKING Mitglied Konstrukteur
Beiträge: 30 Registriert: 01.08.2007 Inventor 9
|
erstellt am: 01. Aug. 2007 21:11 <-- editieren / zitieren --> Unities abgeben:
Hallo Paul, vielen Dank für den Hinweis. Ich hatte bereits die 'Parts List Query' ausprobiert, leider bekam ich nicht die Unterbaugruppen irgendwie aufgelist. Es wird nur das aufgeliste was auch in der Stückliste sichtbar ist, also ohne die Unterbaugruppen, die müßte man sonst vorher darstellen( + Zeichen anklicken). Direkt in der Assembly die Stückliste zu erstellen wäre natürlich auch nicht schlecht. Nur mit dem Beispiel 'Assembly Count Occurrences' bekomme ich aber die Gesamtstückzahl und die Nummerierung nicht. Da ich die Stückiste nach ZeichnungsNr sortieren und neu nummerieren muß, würde ich schnell die Struktur verlieren. Ich benötige folgende Struktur wie in der Stückliste: 1 Menge Baugruppe ZeichnungsNr. Material 1.1 Menge Unterbaugruppe ZeichnungsNr. Material 1.2 Menge Unterbaugruppe ZeichnungsNr. Material 1.2.1 Menge Bauteil-1 ZeichnungsNr. Material 1.2.2 Menge Bauteil-2 ZeichnungsNr. Material 1.2.3 Menge Bauteil-3 ZeichnungsNr. Material usw... Eigentlich die Standard Stückliste mit Auflistung der Unterbaugruppen und Bauteilen, eben nur über VBA aufgelistet, denn manuell dauert es ja bei vieln Baugruppen zu lange. Für weitere vorschläge wäre ich dankbar. Gruß SKING Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
lbcad Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau und CAD-Trainer
Beiträge: 3794 Registriert: 15.02.2001
|
erstellt am: 02. Aug. 2007 09:57 <-- editieren / zitieren --> Unities abgeben: Nur für SKING
|
SKING Mitglied Konstrukteur
Beiträge: 30 Registriert: 01.08.2007 Inventor 9
|
erstellt am: 02. Aug. 2007 11:49 <-- editieren / zitieren --> Unities abgeben:
Hallo Lothar, der iCenter ist zuviel des Guten. Diese ganten Funktionalitäten brauche ich nicht. Ich möchte eigentlich nur die Stückliste mit den Unterbauteilen auflisten, natürlich strukturiert und nach Zeichnungs-Nr. sortiert. Dies geht manuell über die Stückliste, in dem ich auf diese '+Zeichen' klicke und die Unterbaugruppen einblende und nachträglich sortiere. Dauert eben bei mehreren Unterbaugruppen bis zu einer Stunde. Wie bekomme ich das mit VBA hin? Mit 'Parts List Query' bekomme ich nicht die Unterbaugruppen aufgelistet. Es gibt dort die Eigenschaft "PartListRow.Expanded" bzw. "PartListRow.Expandable" aber keine Methode um diese auszuführen, sowas wie "PartListRow.Expand" oder ExpandRow. Gibt es denn keine Möglichkeit wie man dies machen könnte. Grüße aus dem Norden SKING
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SKING Mitglied Konstrukteur
Beiträge: 30 Registriert: 01.08.2007 Inventor 9
|
erstellt am: 03. Aug. 2007 12:14 <-- editieren / zitieren --> Unities abgeben:
|
SKING Mitglied Konstrukteur
Beiträge: 30 Registriert: 01.08.2007 Inventor 9
|
erstellt am: 08. Aug. 2007 13:16 <-- editieren / zitieren --> Unities abgeben:
Hallo Forumer, habe den Code zum Auflisten der Unterbauteile gefunden, ist was ganz einfaches. Nur muß man erstmal darauf kommen. Hier der Code: "If oRow.Expandable = True Then oRow.Expanded = True" "oRow.Expanded" ist vorher auf "False" gesetzt. Ist doch klar, es ist auch noch nicht erweitert. Dann wird es einfach auf True gesetzt und die Unterbauteile werden aufgelistet. Hier der komplette Code: Public Sub PartListQuery() ' Set a reference to the drawing document. ' This assumes a drawing document is active. Dim oDrawDoc As DrawingDocument Set oDrawDoc = ThisApplication.ActiveDocument ' Set a reference to the first parts list on the active sheet. ' This assumes that a parts list is on the active sheet. Dim oPartList As PartsList Set oPartList = oDrawDoc.ActiveSheet.PartsLists.Item(1) ' Iterate through the contents of the parts list. Dim i As Long i = 1 Schleife: For i = i To oPartList.PartsListRows.Count ' Get the current row. Dim oRow As PartsListRow Set oRow = oPartList.PartsListRows.Item(i) If oRow.Expandable = True Then oRow.Expanded = True Next If Not i - 1 = oPartList.PartsListRows.Count Then GoTo Schleife End Sub Leider brachte dies "zeitlich" überhaupt nichts! Denn bei Baugruppen mit mehreren Unterbaugruppen und Bauteilen, ich spreche hier von ca.12000 Bauteilen, dauert es trotzdem bis zu einer Stunde bis die Liste aufgelistet wird. Daher habe ich in VB.Net ein Programm geschrieben, eine Konsolenanwendung, was alle Teile auflistet, sortiert und nummeriert. Dafür habe ich 4Tage gebraucht bis es funktionierte (bin noch Anfänger). Ist aber noch nicht komplett fertig, denn die aufzurufende Datei die durchsucht werden soll, habe ich einfach den Pfad als Text in das Programm eingetragen. Muß also noch was tun. Die Liste erstellt er mir jetzt automatisch und übergibt die Daten zu Excel, wobei er die Tabelle gleich mit formatiert. Aber jetzt muß ich eben noch die Teile auflisten, die noch bestellt werden müssen, also Bestellzettel ausfüllen. Dies werde ich noch in mein Programm erweitern, sowie noch andere Dinge, denn zum Drucken und zum Erstellen der Sägelisten sind ja die Informationen in der Liste bereits enthalten. Bin begeistert was man alles programmieren kann, deswegen ist das jetzt mein neues Hobby. In Zukunft kann ich mich dann, nur mit dem Konstruieren der Anlagen beschäftigen und Listen ausfüllen kann jetzt VB.Net für mich machen. Ach, ja hab ja noch garnicht erzählt, wie lange es jetzt dauert die Liste zu erstellt, also Momentan nur die Stückliste. Vorher waren es eine Stunde und jetzt nur noch 2,5 Minubten. Super oder? Jetzt habe ich mehr Zeit zum Kaffee Trinken. Gruß SKING
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RODER Mitglied Maschineningenieur
Beiträge: 494 Registriert: 04.01.2003
|
erstellt am: 01. Okt. 2007 07:42 <-- editieren / zitieren --> Unities abgeben: Nur für SKING
Hallo Sking, Also wenn ich dich richtig verstehe willst du aus einem .iam ne Stückliste kriegen, wo auch die Einzelteile der Unterbaugruppen aufgeführt sind. Wir machen das jeweils so, dass wir in den Unterbaugruppen die Stücklistenstruktur auf Phantom stellen. (EXTRAS --> Dokumenteneinstellung --> Register Stückliste --> Stücklistenstruktur Phantom) Anschliessend kannst du im .idw der Hauptgruppe eine Stückliste erstellen und das Ganze sortieren wie du möchtest (Zchn. Nr. usw...) Ins Excel kriegst du die Lista dann ganz einfach per Copy und Paste. Hoffe das hilft dir etwas weiter ------------------ ----------------------------------------- Grüsse, Toni Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SKING Mitglied Konstrukteur
Beiträge: 30 Registriert: 01.08.2007 Inventor 9
|
erstellt am: 02. Okt. 2007 12:21 <-- editieren / zitieren --> Unities abgeben:
Hallo Toni, vielen Dank für den Hinweis. Wir arbeiten noch mit Inventor 9 und da kann ich nichts umstellen. Ich habe ja bereits wie oben beschrieben ein Programm in VB2005 erstellt, was mir die Stückliste erstellt und nach Lieferanten sortiert. Aber mal sehen wie das mit Inventor 2008 wird, denn wir wollen noch diese umstellen. Grüße SKING Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Charly Setter Ehrenmitglied V.I.P. h.c.
Beiträge: 11977 Registriert: 28.05.2002 Trau keiner Diva unter SP2....
|
erstellt am: 09. Okt. 2007 21:56 <-- editieren / zitieren --> Unities abgeben: Nur für SKING
Ab IV10 gibt´s eine "Einkaufsliste" in der alle Komponenten in der iam aufgelistet werden incl. XLS-Export ------------------ Der vernünftige Mensch paßt sich der Welt an; der unvernünftige besteht auf dem Versuch, die Welt sich anzupassen. Deshalb hängt aller Fortschritt vom unvernünftigen Menschen ab. (George Bernard Shaw) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HBo Ehrenmitglied Maschinenbaukonstrukteur
Beiträge: 1563 Registriert: 31.12.2001
|
erstellt am: 17. Okt. 2007 10:01 <-- editieren / zitieren --> Unities abgeben: Nur für SKING
Zitat: Original erstellt von Charly Setter: Ab IV10 gibt´s eine "Einkaufsliste" in der alle Komponenten in der iam aufgelistet werden incl. XLS-Export
"Einkaufsliste" hilft ja leider nicht weiter. Jedenfalls spuckt die InventorHilfe dazu nichts aus. Kann man detailierteres dazu erfahren? Danke Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |