Wie in Inventor Normteile aus Bibliothek erzeugen?

Wie in Inventor Normteile aus Bibliothek erzeugen?

Anonymous
Nicht anwendbar
2.102Aufrufe
15Antworten
Nachricht 1 von 16

Wie in Inventor Normteile aus Bibliothek erzeugen?

Anonymous
Nicht anwendbar

Liebe Community,

ich habe das Inhaltscenter jetzt soweit individualisiert, dass ich eine eigene Bibliothek angelegt habe in der sich ALLE Normteile befinden, die wir verbauen. Alle anderen sind unterdrückt. Soweit so gut.

 

Nun zu meinem Wunsch/ Vorhaben:

 

Ich möchte von der gesamten Bibliothek die Modelle bzw. ipt einzeln erzeugen. Kann man das auf einfache Weise schnell verwirklichen ohne jedes Normteil zu öffnen und "speichern unter" zu machen?

 

Danke schon mal für eure Hilfe

 

Grüße Alex

 

 

 

 

 

@Anonymous Der Beitragstitel wurde von @michele.mk zur besseren Auffindbarkeit bearbeitet. Originaltitel: Normteile erzeugen aus Bibliothek

0 „Gefällt mir“-Angaben
Akzeptierte Lösungen (2)
2.103Aufrufe
15Antworten
Antworten (15)
Nachricht 2 von 16

j_weber
Mentor
Mentor

Hallo @Anonymous 

 

da die Normteile erst bei gebrauch erstellt werden, denke ich, das du die Normteile wirklich einmal erstelllen und Wie Benutzer öffnen mußt. 

 

Darf ich frage warum das gemacht werden soll. Ich verstehe den Sinn nicht so ganz davon. 

Immerhin ist es doch eine Bibliothek. 




Jörg Weber
CAD Systemtechniker für AutoCAD, Inventor, Vault





0 „Gefällt mir“-Angaben
Nachricht 3 von 16

Anonymous
Nicht anwendbar

Hi Jörg,

 

selbstverständlich darfst du fragen.

Das Mapping zwischen dem ERP System und Inventor funktioniert nicht, wenn ich die Normteile aus der Inventorbibliothek in die Baugruppen lade. Daher wird es so kommen, dass die Bibliothek im ERP angelegt werden muss und dafür brauche ich die Modelle.

 

 

Grüße

Nachricht 4 von 16

ramona___
Contributor
Contributor

Guten Morgen zusammen.

 

Der Frage schliesse ich mich an.

Das wird nämlich auch bei uns ein Thema werden.

 

Gruß,

Ramona

0 „Gefällt mir“-Angaben
Nachricht 5 von 16

S_May
Mentor
Mentor
Akzeptierte Lösung

Hallo zusammen @ramona___ @Anonymous 

 

das ist bei vielen der Fall, das die Normteile im ERP als "Normteile" angelegt werden und im Grundsatz danach das Inhaltcenter nicht mehr benötigen, vorher müssen diese aber wie @j_weber gesagt hat, erst mal ins System reingespeicher werden, um diese dann weiter klassifizieren können, zb nach Hersteller, Norm oder nach Verwendungszweg.

0 „Gefällt mir“-Angaben
Nachricht 6 von 16

UBNTI
Advocate
Advocate

Hallo,

 

ich habe das selbe mal gemacht. Allerdings ist das in einem Windows Form eingebaut gewesen. Daher musst Du evtl. den Code anpassen:

 

 

Private Sub CommandButton1_Click()
    Dim oapp As Application
    
    Dim oDoc As AssemblyDocument
    Dim family As ContentFamily
    Dim row As ContentTableRow
    
    Dim nNode1 As ContentTreeViewNode
    Dim nNode2 As ContentTreeViewNode
    Dim nNode3 As ContentTreeViewNode
    Dim nNode4 As ContentTreeViewNode
    Dim nNode5 As ContentTreeViewNode
    
    Dim oContentTree As ContentTreeViewNode
    Dim oContentTree1 As ContentTreeViewNode
    Dim oContentTree2 As ContentTreeViewNode
    Dim oContentTree3 As ContentTreeViewNode
    Dim oContentTree4 As ContentTreeViewNode
    Dim oContentTree5 As ContentTreeViewNode
    
    Dim Msg As String
    
    'Für Erstellung
    Dim failureReason As MemberManagerErrorsEnum
    Dim failureMessage As String
    Dim memberFilename As String

    Set oapp = ThisApplication
    Set oDoc = oapp.ActiveDocument
    Set oContentTree = oapp.ContentCenter.TreeViewTopNode
        
    anzccparts = LabelAnzCCParts.Caption
    anzcccreated = 0
    
    'Für alle Unterordner der 1. Stufe
    '1
    For Each nNode1 In oContentTree.ChildNodes
    'Wenn es Familen gibt
        If nNode1.Families.Count > 0 Then
           For i = 1 To nNode1.Families.Count
               For Each row In nNode1.Families(i).TableRows
                    anzcccreated = anzcccreated + 1
                    statustext = Round((anzcccreated / anzccparts) * 100) & "%  | Normteil: " & nNode1.Families(i).DisplayName & " | Zeile: " & row.Index
                    oapp.StatusBarText = statustext
                    LabelStatusBar = statustext
                    memberFilename = nNode1.Families(i).CreateMember(row, failureReason, failureMessage, kRefreshOutOfDateParts)
               Next
           Next
        End If
        '2
        Set oContentTree2 = oapp.ContentCenter.TreeViewTopNode.ChildNodes(nNode1.DisplayName)
        For Each nNode2 In oContentTree2.ChildNodes
        'Wenn es Familen gibt
            If nNode2.Families.Count > 0 Then
                For i = 1 To nNode2.Families.Count
                    For Each row In nNode2.Families(i).TableRows
                        anzcccreated = anzcccreated + 1
                        statustext = Round((anzcccreated / anzccparts) * 100) & "%  | Normteil: " & nNode2.Families(i).DisplayName & " | Zeile: " & row.Index
                        oapp.StatusBarText = statustext
                        LabelStatusBar = statustext
                        memberFilename = nNode2.Families(i).CreateMember(row, failureReason, failureMessage, kRefreshOutOfDateParts)
                    Next
                Next
            End If
            '3
            Set oContentTree3 = oapp.ContentCenter.TreeViewTopNode.ChildNodes(nNode1.DisplayName).ChildNodes(nNode2.DisplayName)
            For Each nNode3 In oContentTree3.ChildNodes
            'Wenn es Familen gibt
            If nNode3.Families.Count > 0 Then
                For i = 1 To nNode3.Families.Count
                    For Each row In nNode3.Families(i).TableRows
                        anzcccreated = anzcccreated + 1
                        statustext = Round((anzcccreated / anzccparts) * 100) & "%  | Normteil: " & nNode3.Families(i).DisplayName & " | Zeile: " & row.Index
                        oapp.StatusBarText = statustext
                        LabelStatusBar = statustext
                        memberFilename = nNode3.Families(i).CreateMember(row, failureReason, failureMessage, kRefreshOutOfDateParts)
                    Next
                Next
             End If
                
                '4
                Set oContentTree4 = oapp.ContentCenter.TreeViewTopNode.ChildNodes(nNode1.DisplayName).ChildNodes(nNode2.DisplayName).ChildNodes(nNode3.DisplayName)
                For Each nNode4 In oContentTree4.ChildNodes
                       'Wenn es Familen gibt
                        If nNode4.Families.Count > 0 Then
                           For i = 1 To nNode4.Families.Count
                                For Each row In nNode4.Families(i).TableRows
                                    anzcccreated = anzcccreated + 1
                                    statustext = Round((anzcccreated / anzccparts) * 100) & "%  | Normteil: " & nNode4.Families(i).DisplayName & " | Zeile: " & row.Index
                                    oapp.StatusBarText = statustext
                                    LabelStatusBar = statustext
                                    memberFilename = nNode4.Families(i).CreateMember(row, failureReason, failureMessage, kRefreshOutOfDateParts)
                                Next
                           Next
                        End If
                    '5
                    Set oContentTree5 = oapp.ContentCenter.TreeViewTopNode.ChildNodes(nNode1.DisplayName).ChildNodes(nNode2.DisplayName).ChildNodes(nNode3.DisplayName).ChildNodes(nNode4.DisplayName)
                    For Each nNode5 In oContentTree5.ChildNodes
                        'Wenn es Familen gibt
                        If nNode5.Families.Count > 0 Then
                           For i = 1 To nNode5.Families.Count
                                For Each row In nNode5.Families(i).TableRows
                                    anzcccreated = anzcccreated + 1
                                    statustext = Round((anzcccreated / anzccparts) * 100) & "%  | Normteil: " & nNode5.Families(i).DisplayName & " | Zeile: " & row.Index
                                    oapp.StatusBarText = statustext
                                    LabelStatusBar = statustext
                                    memberFilename = nNode5.Families(i).CreateMember(row, failureReason, failureMessage, kRefreshOutOfDateParts)
                                Next
                           Next
                        End If
                        
                    Next
                Next
            Next
        Next
    Next
    
statustext = "Erstellung beendet "
oapp.StatusBarText = statustext
LabelStatusBar.Caption = statustext

End Sub

 

 

0 „Gefällt mir“-Angaben
Nachricht 7 von 16

S_May
Mentor
Mentor

@UBNTI 

 

kannst Du kurz erklären was ihr genau gemacht habt, und wie (Ablageort usw..)?

0 „Gefällt mir“-Angaben
Nachricht 8 von 16

UBNTI
Advocate
Advocate

Der Ablageort der zu erzeugenden ContentCenter Parts ist der, der im Inventor eingestellt ist.

Das Programm geht durch die nodes der ContentCenter (sicher verbesserungsfähig, da hier nicht rekursiv) und erstellt alle ContentCenter in den Familientabellen....

ICh lösche den Inhalt des ContentCenter Ordners zuvor immer, bzw. sichere ihn an einen anderen Ort

Nachricht 9 von 16

S_May
Mentor
Mentor

@UBNTI und danach manuell im ERP einfügen und verknüpfen + Freitage usw.... ?

0 „Gefällt mir“-Angaben
Nachricht 10 von 16

UBNTI
Advocate
Advocate

Achso, entschuldige. Ich habe deine Frage eher technisch verstanden.

Genau darum ging es bei uns auch - die Teile sollten als Artikel im ERP und im Vault sein, daher waren zuerst einmal alle Dateien notwendig.

Wir hatten in diesem Fall auch eigene Normteilbibliotheken mit eigenen Spalten in den Tabellen.  Es wurden dann alle bisher erzeugten Normteile, welche diese zusatzspalten (iProperties) nicht hatten (ich meine es ging hier um eine ERP Nummer und um eine Bestellnummer) überschrieben.

 

Passt das soweit?

Ansonsten helfen wir gerne weiter.

0 „Gefällt mir“-Angaben
Nachricht 11 von 16

j_weber
Mentor
Mentor

Ich muss kurz um entschuldigung bitte das ich an dem Fall nicht weiter mitgelesen habe oder gearbeitet habe

 

Ich bin ein bissel krank und hab den Laptop daher weniger an. 

 

Nein, kein Corona, aber das würde ja auch euer Virenscanner ausfiltern. 😀




Jörg Weber
CAD Systemtechniker für AutoCAD, Inventor, Vault





0 „Gefällt mir“-Angaben
Nachricht 12 von 16

S_May
Mentor
Mentor

@S_May  schrieb:

@UBNTI und danach manuell im ERP einfügen und verknüpfen + Freitage usw.... ?


Freigabe... 😂

0 „Gefällt mir“-Angaben
Nachricht 13 von 16

UBNTI
Advocate
Advocate

Die Artieklübergabe funktionierte dort dann über einen ERP Connector aus unserem Haus.

Nachricht 14 von 16

michele.mk
Alumni
Alumni

Hallo @Anonymous,

 

du hast hier eine Diskussion gestartet, die viele interessiert. Sag, hattest du Zeit eine der Lösungswege zu probieren? Eventuell bist du schon dadurch weitergekommen. Falls ja so lieb und markiere entsprechend die Antwort als Lösung, die dich weitergebracht haben. Einfach auf den Button "Als Lösung akzeptieren" klicken. 

Solltest du selber auf eine Lösung gekommen sein, darfst du sie sehr gerne mit uns hier in der Community teilen. Das ist dann sicherlich für alle mitlesenden Anwender und Helfer spannend zu lesen. Außerdem kann man deine Antwort als Lösung markieren. Nicht nur dass dadurch auch andere Anwender von der Information profitieren, die Lösung wird deinem Konto gutgeschrieben.

Gib uns doch ein Update damit wir wissen, solltest du noch Hilfe brauchen, wie man dir weiterhelfen kann. 

 

@j_weber geht's dir wieder besser?

@S_May *hihi* 'Freitage' würde ich mir jetzt auch wünschen! 😁

Gruß,
Michèle

-------------------------------------------------------------------------------------------------------
Ihr fandet einen Beitrag hilfreich? Dann vergebt dafür Likes!
Eure Anfrage wurde erfolgreich gelöst? Dann einfach auf den 'Als Lösung akzeptieren'-Button klicken!


Michèle Matzeck-Kunstman
Community Manager
0 „Gefällt mir“-Angaben
Nachricht 15 von 16

Anonymous
Nicht anwendbar
Akzeptierte Lösung

Hallo,

es gibt leider nicht die Möglichkeit die Normteile in ein bestimmtes Verzeichnis kopieren zu lassen, ABER ...

 

bereits generierte Normteile werden automatisch im Verzeichnis ...\Content Center\de-DE\DIN 705\... usw. - unter den Nombilbiothekennamen abgelegt.

Ich hab im Editor eine neue Spalte hinzugefügt, wo ich unsere Teilenummern für die einzelenen Normteile eingetragen habe und diese dann gleichgesetzt mit dem Dateinamen. Das führt auch zu dem gewünschten Ergebnis. Nämlich, dass ich ipt's bekomme, die die Artikelnummer als Dateinamen haben. Diese kann ich dann wiederum in das ERP einfach einlesen. So funktioniert es auch und das ist besser als nichts !

 

Lieben Gruß !

0 „Gefällt mir“-Angaben
Nachricht 16 von 16

marius.gildehaus
Community Manager
Community Manager

Hallo @Anonymous!

 

Schön, das du eine Lösung für dich gefunden hast 🙂

 

Könntest du bitte die Posts markieren, die dir weitergeholfen haben, damit auch andere davon profitieren?

 

Danke und noch einen schönen Tag,

Marius



Marius Gildehaus
Product Manager Sheet Metal