| |
| 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 |
Autor
|
Thema: Artikelnummer für alle Unterbaugruppen und Bauteile (352 / mal gelesen)
|
RP4711 Mitglied Technischer Produktdesigner
Beiträge: 2 Registriert: 01.03.2024
|
erstellt am: 01. Mrz. 2024 21:17 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe eine Anfrage. Ich möchte per ilogic als externe Regel, einen Durchlauf starten, bei dem ich die Regel in der höchsten oder in einer Baugruppe auslöse und alle enthaltenen Baugruppen und oder Bauteile durchläuft. Es sollen zwei benutzerdefinierte iPropertie erstellt werden "Artikelnummer", die wiederum aus dem benutzerdefinierten iPropertie "Auftragsnummer" 24A444 beispielsweise und der Bauteilnummer der Baugruppe oder vom Bauteil besteht. Jedes Bauteil und jede Baugruppe muss durchlaufen werden und die entsprechende Nummer erstellt werden. Geht sowas überhaupt? Ich arbeite mit inventor 2024. Vielen Dank im voraus. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2428 Registriert: 15.11.2006 Windows 10 x64, AIP 2023
|
erstellt am: 01. Mrz. 2024 22:09 <-- editieren / zitieren --> Unities abgeben: Nur für RP4711
Moin Willkommen im Forum Zu deiner Frage, ja das geht. Und jetzt? Schätze wir sollen machen. Mal als Anfang zum Testen: Code:
Option Explicit OnPrivate Sub Main() Dim oApp As Inventor.Application = ThisApplication If Not oApp.ActiveEditDocument.DocumentType = kAssemblyDocumentObject Then MsgBox ("Funktion nur in Baugruppen verügbar. Abbruch") Exit Sub End If Dim oAssDoc As AssemblyDocument = oApp.ActiveEditDocument Dim sAuftragsnummer As String Dim oProp As Inventor.Property For Each oProp In oAssDoc.PropertySets(4) If oProp.Name = "Auftragsnummer" Then sAuftragsnummer = oProp.Value Exit For End If Next If sAuftragsnummer = String.Empty Then sAuftragsnummer = InputBox("Auftragsnummer eingeben:", "iLogic SetProps") If sAuftragsnummer = String.Empty Then Exit Sub 'User cancelled Input Else oAssDoc.PropertySets(4).Add(sAuftragsnummer, "Auftragsnummer") End If End If Try oAssDoc.PropertySets(4).Item("Artikelnummer").Value = sAuftragsnummer & "-" & oAssDoc.PropertySets(3).Item("Part Number").Value Catch oAssDoc.PropertySets(4).Add(sAuftragsnummer & "-" & oAssDoc.PropertySets(3).Item("Part Number").Value, "Artikelnummer") End Try Dim oRefedDoc As Document For Each oRefedDoc In oAssDoc.AllReferencedDocuments If oRefedDoc.IsModifiable=True Then Try oRefedDoc.PropertySets(4).Item("Auftragsnummer").Value = sAuftragsnummer Catch oRefedDoc.PropertySets(4).Add(sAuftragsnummer, "Auftragsnummer") End Try Try oRefedDoc.PropertySets(4).Item("Artikelnummer").Value = sAuftragsnummer & "-" & oRefedDoc.PropertySets(3).Item("Part Number").Value Catch oRefedDoc.PropertySets(4).Add(sAuftragsnummer & "-" & oRefedDoc.PropertySets(3).Item("Part Number").Value, "Artikelnummer") End Try end if Next End Sub
------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RP4711 Mitglied Technischer Produktdesigner
Beiträge: 2 Registriert: 01.03.2024
|
erstellt am: 02. Mrz. 2024 22:53 <-- editieren / zitieren --> Unities abgeben:
|
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9780 Registriert: 01.12.2003 AutoCAD 2.5 - 2024, Inventor AIP 4-2024.2 Windows 11 i7, 96 GB, SSD, Quadro P2200
|
erstellt am: 03. Mrz. 2024 14:07 <-- editieren / zitieren --> Unities abgeben: Nur für RP4711
@rkaush Das Makro selbst ist super. @RP4711 Die Sinnhaftigkeit ist eher zweifelhaft. Das kann ja nur für Baugruppen eingesetzt werden, wo kein einziges Teil je in anderen Baugruppen wiederverwendet wird oder wurde. Das ist allerdings nur für Prototypenbau oder sonstige Unikate für mich vorstellbar. Ansonsten kollidiert das dann mit Freigaben/Dokumentenmanagement. Oder werden die Artikelnummern immer durch das erstmalige neue Auftreten in einer Baugruppe festgelegt? Mich würde der Anwendungsfall interessieren - vielleicht kannst du das ja erklären.
------------------ Mit freundlichem Gruß Udo Hübner www.CAD-Huebner.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Konstrukteur Maschinen-/Anlagenbau (m/w/d) | Was unsere Kunden von ihren Technologielösungen erwarten? Das nächste Level! Das gelingt unserem Team bei FERCHAU Tag für Tag. Wir suchen dich: als ambitionierte:n Mitarbeitende:n für einen unserer Kunden. Wir realisieren spannende Projekte für namhafte Kunden im Anlagenbau und sichern die technische Basis für industrielle Revolutionen. Du möchtest dein Potenzial vollständig entfalten können? Wir bieten ... | Anzeige ansehen | Maschinenbau |
|
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2428 Registriert: 15.11.2006 Windows 10 x64, AIP 2023
|
erstellt am: 03. Mrz. 2024 15:15 <-- editieren / zitieren --> Unities abgeben: Nur für RP4711
Moin Ich kann so einen Anwendungsfall skizzieren. Es gibt Firmen, die fertigen kundenspezifisch. Die Losgröße für jedes Teil ist gleich 1. Die mögliche Variantenzahl geht dabei gegen unendlich. Es macht keinen Sinn dort an Wiederverwendung denken. Die Suche nach einem wiederverwendbaren Teil würde ewig dauern und nur seltenst zum Erfolg führen. Allein schon die Erfassung der relevanten Vergleichsparameter (irgendwer muss ja irgendwie der Suche sagen wonach sie suchen soll) könnte schnell länger dauern als neu modellieren. Insbesondere, wenn Teile sich in vielen nichtgeometrischen Parametern unterscheiden können. Man könnte zwar das modellierte Teil davon unabhängig machen, sprich die Teilenummer bestimmt nur die geometrische Form, aber einfacher wird es meiner Meinung dadurch auch nicht unbedingt. Bei solchen Konstrukten fehlt eigentlich nur noch eine KI. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |