| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
Autor
|
Thema: Jorunal erstellen - speicher unter (1633 mal gelesen)
|
dahaas Mitglied
Beiträge: 6 Registriert: 27.01.2010 NX 6
|
erstellt am: 27. Jan. 2010 04:22 <-- editieren / zitieren --> Unities abgeben:
Hallo Superuser Habe folgendes vor. Ich wuerde gern eine Journal-datei erstellen die mir mein Modell speichert unter. Der Dateiname sollte aber automatisch aus einer Zelle, von einer Exel-tabelle ausgelesen werden. Jornal starten -> teil wird unter dem Namen der in der Zelle(Exel) steht gespeichert. Die Exeltabelle liegt z.B auf C:\test\lesenausexel.xls Bitte Hilfe Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Sirus Ehrenmitglied CAD Applikationsentwickler
Beiträge: 1564 Registriert: 03.06.2004
|
erstellt am: 27. Jan. 2010 10:56 <-- editieren / zitieren --> Unities abgeben: Nur für dahaas
hallo david >>"Modell speichert unter" in dem fall ohne teamcenter, richtig? >>Der Dateiname sollte aber automatisch aus einer Zelle, >>von einer Exel-tabelle ausgelesen werden. immer aus der gleiche zelle?
------------------ gruss urs Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
hg-obdf Mitglied Konstrukteur
Beiträge: 78 Registriert: 30.07.2008 NX7.5 Visual Basic 2010 Express Eclipse
|
erstellt am: 27. Jan. 2010 11:44 <-- editieren / zitieren --> Unities abgeben: Nur für dahaas
Hallo- Habe dir einmal einen Codeschnippsel angefügt, mit dem man die Zelle A1 auslesen kann. Aber leider funktioniert das in einem Journal nicht so einfach. Hoffe es findet sich jemand, der das kann, weils ein interessantes Thema ist!!! MFG Dim excel As Excel.Application excel = CType(CreateObject("Excel.Application"), Global.Excel.Application) excel.Workbooks.Open("Dein Pfad") Dim text As String = CStr(excel.Range("A1").Value) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dahaas Mitglied
Beiträge: 6 Registriert: 27.01.2010 NX 6
|
erstellt am: 27. Jan. 2010 14:49 <-- editieren / zitieren --> Unities abgeben:
|
Sirus Ehrenmitglied CAD Applikationsentwickler
Beiträge: 1564 Registriert: 03.06.2004
|
erstellt am: 27. Jan. 2010 14:52 <-- editieren / zitieren --> Unities abgeben: Nur für dahaas
|
dahaas Mitglied
Beiträge: 6 Registriert: 27.01.2010 NX 6
|
erstellt am: 27. Jan. 2010 15:33 <-- editieren / zitieren --> Unities abgeben:
Hi Ich bin da absoluter neuling in dem bereich. Wo muß ich denn dieses codegeschnipsel einfügen. Oder wie sollte der ganze code denn aussehen.? Weiter unten der code wenn ich das Journal aufzeichne mit speichern unter Danke
' NX 6.0.0.24 ' Journal created by dh3 on Wed Jan 27 09:25:06 2010 US Eastern Normalzeit ' Option Strict Off Imports System Imports NXOpen Module NXJournal Sub Main Dim theSession As Session = Session.GetSession() Dim workPart As Part = theSession.Parts.Work Dim displayPart As Part = theSession.Parts.Display ' ---------------------------------------------- ' Menü: Datei->Speichern unter... ' ---------------------------------------------- Dim partSaveStatus1 As PartSaveStatus partSaveStatus1 = workPart.SaveAs("C:\Dokumente und Einstellungen\dh3\Desktop\test\testsave3.prt") partSaveStatus1.Dispose() ' ---------------------------------------------- ' Menü: Werkzeuge->Journal->Stop Recording ' ---------------------------------------------- End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dahaas Mitglied
Beiträge: 6 Registriert: 27.01.2010 NX 6
|
erstellt am: 27. Jan. 2010 17:57 <-- editieren / zitieren --> Unities abgeben:
|
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 28. Jan. 2010 15:27 <-- editieren / zitieren --> Unities abgeben: Nur für dahaas
Hallo dahaas, der Fehler sagt lediglich aus, daß Dein Journal die Excel- Bibliothek nicht kennt. Damit ein Journal solch eine externe Bibliothek findet, muß sie referenziert oder, falls das nicht funktioniert, vom Journal explizit geladen werden. Bahnhof ? Klar, das ist für den Anfang eine knackige Aufgabe. Der Rest wäre relativ einfach: Du ersetzt in der Zeile partSaveStatus1 = workPart.SaveAs("C:\Dokumente und Einstellungen\dh3\Desktop\test\testsave3.prt") die Pfadangabe duch die Variable, die zuvor mit Dim text As String = CStr(excel.Range("A1").Value) definiert wurde. Also: partSaveStatus1 = workPart.SaveAs(text) Gruß, Michael
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 03. Feb. 2010 16:39 <-- editieren / zitieren --> Unities abgeben: Nur für dahaas
Hallo zusammen, in den Samples von Visual Studio (C:\Program Files\Microsoft Visual Studio 9.0\Samples) gibt's ein recht ausführliches Beispiel, das u.a den Zugriff auf ein vorhandenes Sheet aufzeigt. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 05. Feb. 2010 20:27 <-- editieren / zitieren --> Unities abgeben: Nur für dahaas
Hallo zusammen, die Verwendung einer Assembly(exe/dll) in einem Journal geht nur bedingt, auch explizites Laden bringt nichts, wenn Typen einer Assembly (New Excel.Application) im Journal verwendet werden sollen. Das funktioniert m.W. nur bei kompilierten Programmen. Also noch mal alles auf Anfang und überlegen, ohne bereits eine Lösung im Kopf zu haben. Und siehe da, es gibt einen viel einfacheren Weg. Die Funktion ug_cell_read werden ja die meisten kennen. Und die läßt sich im Gegensatz zu den Office-Lib's ganz bequem in einem Journal unterbringen. Man erstellt im Journal lediglich eine Expression, mit der, unter Verwendung von ug_cell_read, eine Zelle aus Excel gelesen wird. Und die Sache ist gegessen. Gruß, Michael
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dahaas Mitglied
Beiträge: 6 Registriert: 27.01.2010 NX 6
|
erstellt am: 06. Feb. 2010 00:38 <-- editieren / zitieren --> Unities abgeben:
Hallo Michael Hey kannst du mir bitte ein kompletes beispiel mit UG file hochladen. Das ding sieht ja echt gut aus nur bei mir funkt es noch nicht. Würde es gern an einem funktionierenden Bsp sehen. Thankxx David Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Jan Boettcher Mitglied
Beiträge: 183 Registriert: 22.06.2005
|
erstellt am: 06. Feb. 2010 17:23 <-- editieren / zitieren --> Unities abgeben: Nur für dahaas
|
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 08. Feb. 2010 10:11 <-- editieren / zitieren --> Unities abgeben: Nur für dahaas
Zitat: Original erstellt von dahaas: ... ein kompletes beispiel mit UG file ...
Was funkt noch nicht ??? Ein leeres Part genügt ... und dazu ein Excel- Sheet mit dem vollständigen Pfadnamen des neuen Parts in einer Zelle. Gruß, Michael
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dahaas Mitglied
Beiträge: 6 Registriert: 27.01.2010 NX 6
|
erstellt am: 16. Feb. 2010 20:55 <-- editieren / zitieren --> Unities abgeben:
Hallo Michael Sorry für meine späte Antwort. Aber jetzt funktioniert es bei mir auch. Ich hätte da noch eine Frage: Warum speichert es den File immer unter C:\Programme\UGS\NX 6.0\UGII -> Wie könnte man das ändern? Wenn ein Dateiname schon Existiert bekomm ich immer diese Fehlermeldung (Anhang) gibt es die Möglichkeit die Datei einfach zu überschreiben ? Thanxx
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Immobilienmanager - Schwerpunkt Gewerbemietverträge (Befristet, w/m/div.) | Möchten Sie Ihre Ideen in nutzbringende und sinnvolle Technologien verwandeln? Ob im Bereich Mobility Solutions, Consumer Goods, Industrial Technology oder Energy and Building Technology - mit uns verbessern Sie die Lebensqualität der Menschen auf der ganzen Welt. Willkommen bei Bosch. Die Bosch Thermotechnik GmbH freut sich auf Ihre Bewerbung! Anstellungsart: Befristet
| Anzeige ansehen | Immobilienmakler |
|
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 17. Feb. 2010 10:45 <-- editieren / zitieren --> Unities abgeben: Nur für dahaas
... ein Excel- Sheet mit dem vollständigen Pfadnamen des neuen Parts ... Thema Überschreiben: versuch's mal interaktiv. Da kommt m.W. der selbe Fehler => Existenz prüfen, ggfs. vor saveas löschen. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |