| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX | | | | NX Motion Simulation, ein Seminar am 29.01.2025
|
Autor
|
Thema: Aktualisierung Materialattribut in Zeichnung (1132 / mal gelesen)
|
S-TE-FAN Mitglied Konstrukteur
Beiträge: 28 Registriert: 23.04.2015 Inventor Pro SolidWorks Siemens NX 1973 ANSYS Workbench 19.0 System: Win 10, 64-Bit i5-9600KFU@3,7GHz 32 GB RAM
|
erstellt am: 14. Okt. 2021 17:09 <-- editieren / zitieren --> Unities abgeben:
Hallo alle miteinander, ich möchte mich heute mit einem weiteren Problem an euch wenden. Es geht um die Aktualisierung von Teileattributen, genauer gesagt um das Materialattribut (NX_MATERIAL), und der Aktualisierung in der Zeichnung. Das Problem: In unserer Zeichnungsvorlage wird das Material vom Teil abgerufen und ins Schriftfeld eingetragen. Das passiert aber nur, wenn vor dem Erstellen der Zeichnung im Bauteil ein Material definiert wurden ist. Wird die Zeichnung erstellt ohne eine vorherige Materialdefinition im Bauteil, wird der Funktionsbaustein in der Zeichnung nicht aktualisiert. Gefühlt habe ich sämtliche Aktualisierungsoptionen probiert, aber NX will einfach das Material nicht übertragen, obwohl im Teilattributemanager vom Bauteil die richtige Information vorliegt. Hat jemand eine Idee zur Lösung des Problems? Viele Grüße, Stefan ------------------ VG Stefan "Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Markus_30 Moderator CAx-Architect
Beiträge: 5565 Registriert: 21.03.2005 Windows 10 (21H2) NX 2007 Series
|
erstellt am: 14. Okt. 2021 17:35 <-- editieren / zitieren --> Unities abgeben: Nur für S-TE-FAN
Hallo Stefan, arbeitest du mit den Attribute Templates (DB_DWG_TEMPLATE_ATTRIBUTNAME) über #File #Utilities #Attribute Templates? Siehe hier: Klick mich. Damit kann ich das Problem nachvollziehen. Wenn die Verbindung nicht von Anfang an besteht, hast du keine Chance mehr. Auch aufgeknackte Verbindungen lassen sich nicht wiederbeleben. Zumindest hab ich da noch nichts gefunden. Wenn jemand weiß, wie's geht: Bitte Bescheid geben. Probier mal im Modell Seedpart das Attribut für dein Material anzulegen. Dann müsst's immer klappen (für neue Modelle und Zeichnungen, für Bestandsdaten natürlich nicht). Du hast nicht zufällig Teamcenter im Einsatz, oder? Da würde ich nämlich die Variante "Wir mappen das Materialattribut vom UG-Master an die ItemRevision und von dort aus zurück ans UG-Part (also die Zeichnung)" wählen, das ist deutlich besser und robuster als die Attribute Templates. ------------------ Gruß Markus Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
S-TE-FAN Mitglied Konstrukteur
Beiträge: 28 Registriert: 23.04.2015 Inventor Pro SolidWorks Siemens NX 1973 ANSYS Workbench 19.0 System: Win 10, 64-Bit i5-9600KFU@3,7GHz 32 GB RAM
|
erstellt am: 18. Okt. 2021 16:02 <-- editieren / zitieren --> Unities abgeben:
Hallo Markus, vielen Dank für deine Antwort! Ja, das ist korrekt. Ich arbeite mit den Attributvorlagen (DB_DWG_TEMPLATE_ATTRIBUTNAME). Und nein, wir nutzen kein TC. Im Mastermodell (ich nehmen an, dass meinst du mit Seedpart) hatte ich bereits versucht ein Material zu laden, sodass dieses in der Materialverwaltung des Teils auftaucht. Leider auch erfolglos. Selbst wenn ich ein Modell in der Vorlage erstelle und diesem ein Material definiere, ändert es nichts. D.h. wenn die Materialdefinition vor Zeichnungserstellung vergessen wird, kann es nur noch manuell geändert werden. Bin für jeden weiteren Tipp dankbar! Viele Grüße, Stefan ------------------ VG Stefan "Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Markus_30 Moderator CAx-Architect
Beiträge: 5565 Registriert: 21.03.2005 Windows 10 (21H2) NX 2007 Series
|
erstellt am: 18. Okt. 2021 17:10 <-- editieren / zitieren --> Unities abgeben: Nur für S-TE-FAN
Hallo Stefan, wenn du im NX über #File #New ein neues Modell anlegst, dann wird im Hintergrund ein Template gezogen, welches als Basis für das neue Modell dient. Üblicherweise wird das Verzeichnis über die Variable UGII_TEMPLATE_DIR angezogen (kann im NX Logfile nachgesehen werden, auf welchen Pfad die Variable zeigt) und über die .pax-Files findest du raus, welcher Eintrag in welchem Reiter vom #File #New Dialog welches Seedpart (= Template) anzieht. Hinweis: Wenn das UGII_TEMPLATE_DIR nicht definiert ist, dann kommen die Modell-Seedparts im NX-Installationsverzeichnis (UGII_BASE_DIR) aus dem Unterordner UGII\templates (das Modell-Seedpart wäre dann das File "model-plain-1-mm-template.prt"). Frage 1: Hast du denn das richtige Seedpart bearbeitet? Frage 2: Hast du das Materialattribut im Seedpart in #File #Properties manuell erstellt? Falls nein, probier das mal bitte. Sofern es in den Customer Defaults nicht anders eingestellt ist, heißt das Attribut "NX_Material". Dieses erstellst du und belegst es mit einem - vor. Dann müsst's eigentlich klappen. ------------------ Gruß Markus Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
S-TE-FAN Mitglied Konstrukteur
Beiträge: 28 Registriert: 23.04.2015 Inventor Pro SolidWorks Siemens NX 1973 ANSYS Workbench 19.0 System: Win 10, 64-Bit i5-9600KFU@3,7GHz 32 GB RAM
|
erstellt am: 05. Nov. 2021 15:35 <-- editieren / zitieren --> Unities abgeben:
Hallo Markus, entschuldige bitte meine späte Rückmeldung. Ja, ich hatte versucht das richtige Seedpart (Vorlagedatei für Modelle) zu bearbeiten. Leider konnte ich keine manuelle Erstellung des Materialattributes vornehmen. Der Vorgang schlug Fehl mit der Fehlermeldung: "Das Attribut darf durch dieses Objekt nicht festgelegt oder geändert werden." Im Detail habe ich keine Ahnung was dies bedeutet, nehme aber an, dass ein Schreibschutz für dieses Attribut existiert. Darauf hin habe ich über den folgenden Code das Attribut erstellt. Jetzt kann ich auch ohne Weiteres das Material im Nachgang definieren und es wird automatisch im Schriftfeld aktualisiert. Code: Imports System Imports NXOpen Imports NXOpen.UFModule NXJournal Sub Main (ByVal args() As String) Dim theSession As Session = Session.GetSession() Dim workPart As Part = theSession.Parts.Work Dim objects_Attr2(0) As NXObject objects_Attr2(0) = workPart Dim attributePropertiesBuilder_PartDim As AttributePropertiesBuilder = theSession.AttributeManager.CreateAttributePropertiesBuilder(workPart, objects_Attr2, AttributePropertiesBuilder.OperationType.None) attributePropertiesBuilder_PartDim.DataType = AttributePropertiesBaseBuilder.DataTypeOptions.String attributePropertiesBuilder_PartDim.Title = "Material" attributePropertiesBuilder_PartDim.StringValue = "-" attributePropertiesBuilder_PartDim.CreateAttribute() Dim nXObjectAttr As NXObject attributePropertiesBuilder_PartDim.Destroy() End Sub Public Function GetUnloadOption(ByVal dummy As String) As Integer GetUnloadOption = UFConstants.UF_UNLOAD_IMMEDIATELY End Function End Module
Ich danke dir vielmals für deine Rückmeldungen und deiner Hilfe! ------------------ VG Stefan "Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford [Diese Nachricht wurde von S-TE-FAN am 05. Nov. 2021 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
S-TE-FAN Mitglied Konstrukteur
Beiträge: 28 Registriert: 23.04.2015 Inventor Pro SolidWorks Siemens NX 1973 ANSYS Workbench 19.0 System: Win 10, 64-Bit i5-9600KFU@3,7GHz 32 GB RAM
|
erstellt am: 05. Nov. 2021 15:51 <-- editieren / zitieren --> Unities abgeben:
Ok, ich muss mich leider korrigieren. Der Code funktioniert, aber sobald ich ein neues Teil mit der neuen Vorlage / seedpart erstelle, erscheint die folgende Information: "Das Materialattribut wurde zurückgesetzt, da es nicht mit der Materialzuweisung übereinstimmt. Diese Aktion wurde basierend auf Ihren Anwenderstandard-Einstellungen durchgeführt." "Ursprünglicher Materialattributwert: -" ------------------ VG Stefan "Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
max55122 Mitglied Konstruktionsingenieur
Beiträge: 1 Registriert: 16.08.2023
|
erstellt am: 20. Jan. 2025 14:25 <-- editieren / zitieren --> Unities abgeben: Nur für S-TE-FAN
Ich habe das gleiche Problem und folgenden Workaround gefunden, wir nutzen einen tabellenbasierenden Zeichnungskopf: Definition bearbeiten und in der Tabellenbearbeitung Attribute in Zelle importieren. SO konnte ich nachträglich aus dem 3d Part das Materialattribut abgereifen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|