| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SolidEdge |
| |
 | Modular Plant Design: Durchgängige 3D-Rohrleitungs- und Anlagenplanung mit Solid Edge 2023, ein Webinar am 28.08.2025
|
Autor
|
Thema: VB Dokumentpfad im Cache bei Insight Dokumenten (1231 mal gelesen)
|
Matthias Leemann Mitglied Masch. Ing HTL
 
 Beiträge: 394 Registriert: 03.10.2003 Windows 11 Pro Solid Edge 2022
|
erstellt am: 03. Aug. 2005 12:17 <-- editieren / zitieren --> Unities abgeben:         
Hallo Zusammen, ich möchte den SePropManager.NET erweitern, dass auch Dokumente die aus Insight in SE geladen sind, bearbeitet werden können. Es besteht das Problem, dass mit ActiveDocument.Fullname der Dokumentnamen folgendermassen übergeben wird: http://elag-cad-server/...../part1.par SePropManager.NET braucht aber den Pfad vom Cache, also etwa so: C:\Dokumente und Einstellungen\Matthias Leemann\Anwendungsdaten\Unigraphics Solutions\Solid Edge\Insight\elag-cad-server\Konstruktion\CAD\Insight\part1.par Wie bekomme ich diesen Pfad über die API? Mit OccurrenceFileName funktioniert das bei Teilen in einer Baugruppe, die aus Insight geöffnet wurde. wie geht das bei einzelnen geöffneten Dokumenten? Matthias Leemann ------------------ SE V17 SP2 SePropManager.NET von www.leemann-software.net Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Matthias Leemann Mitglied Masch. Ing HTL
 
 Beiträge: 394 Registriert: 03.10.2003 Windows 11 Pro Solid Edge 2022
|
erstellt am: 08. Aug. 2005 11:36 <-- editieren / zitieren --> Unities abgeben:         
Hallo Zusammen, ich bin einen Schritt weiter aber noch nicht am Ziel. Mit folgendem Code habe ich versucht, den Cache Pfad eines in SE geöffneten Insight Dokuments zu bekommen: objdocpart = CType(objApp.ActiveDocument, SolidEdgePart.PartDocument) Dim objInsight As SolidEdgeFramework.Insight Dim objFileList(0) As Object Dim objFileListResult(0) As Object objFileList(0) = objdocpart.FullName 'http://elag-cad-server/..../Insight/Laseradapter.par objInsight = objApp.Insight Dim LngTemp As Long = 1 '1 Dokument Dim LngTemp2 As Long objInsight.GetCachePath(objFileList.Length, objFileList, LngTemp2, objFileListResult) 'hier kracht es MessageBox.Show(objFileListResult(0)) Allerdinge scheitert es bei der Funktion GetCachePath des Insightobjektes. Was mache ich falsch? Gruss Matthias ------------------ SE V17 SP2 SePropManager.NET von www.leemann-software.net Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
progi Mitglied Programmierer

 Beiträge: 74 Registriert: 18.08.2004 VB.net SE 16
|
erstellt am: 08. Aug. 2005 16:29 <-- editieren / zitieren --> Unities abgeben:          Nur für Matthias Leemann
Hallo Mathias, habe mal eben mir den PartDoc.FullName ausgeben lassen, da kommt bei mir "C:\tmp\part1.part". Liegt das an irgend einer Einstellung, oder der Umgebung? Ich habe SE V16 Servicepack 8. Eventuell ein UMC-Umwandlungsfunktion, oder so was? Fällt mir sonst nix. Gruß Andreas ------------------ Besten Dank Andreas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Matthias Leemann Mitglied Masch. Ing HTL
 
 Beiträge: 394 Registriert: 03.10.2003 Windows 11 Pro Solid Edge 2022
|
erstellt am: 08. Aug. 2005 16:59 <-- editieren / zitieren --> Unities abgeben:         
|
pablo Mitglied Techniker
 
 Beiträge: 453 Registriert: 23.01.2002 Win10 Office 365 SE 2019
|
erstellt am: 08. Aug. 2005 17:28 <-- editieren / zitieren --> Unities abgeben:          Nur für Matthias Leemann
Matthias, .... Dim objFileList(0) As Object .... objInsight.GetCachePath(objFileList.Length... objFileList ist ein Array, hier sollte es IMHO UBound(objFileList) heissen. Da es nur um die Namen geht, würde ich die Arrays als String deklarieren und sowohl 0 als auch 1 probieren. HTH pablo
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
modeng Ehrenmitglied V.I.P. h.c.
     
 Beiträge: 7061 Registriert: 10.12.2003
|
erstellt am: 08. Aug. 2005 18:24 <-- editieren / zitieren --> Unities abgeben:          Nur für Matthias Leemann
Moin, da im .NET so liefert JAVA like: <Array>.GetLength(<dim> ) die Anzahl der Elemente der Dimension <Array>.Length die Anzahl aller Elemente des Arrays <String>.Length die Laenge des Strings Ubound(array) geht ist aber durch <array>.getUpperBound(<dim> )) ersetzt worden.Daher geht eine Iteration (1 dimensionaler Array) so: for i = <array>.getLowerBound(0) to <array>.getUpperBound(0) . . next i Klaus
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Matthias Leemann Mitglied Masch. Ing HTL
 
 Beiträge: 394 Registriert: 03.10.2003 Windows 11 Pro Solid Edge 2022
|
erstellt am: 08. Aug. 2005 18:36 <-- editieren / zitieren --> Unities abgeben:         
|
waldi Mitglied Softwerker
 
 Beiträge: 272 Registriert: 07.08.2001
|
erstellt am: 10. Aug. 2005 07:21 <-- editieren / zitieren --> Unities abgeben:          Nur für Matthias Leemann
Auf dem Se Application Object kannst du mit GetGlobalParameter(seApplicationGlobalInsightCacheLocation) den Cache Pfad auslesen. Ich bastel mir dann aus dem http Pfad und diesem Cache Pfad meinen Dateinamen aus dem Cache zusammen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Matthias Leemann Mitglied Masch. Ing HTL
 
 Beiträge: 394 Registriert: 03.10.2003 Windows 11 Pro Solid Edge 2022
|
erstellt am: 10. Aug. 2005 07:28 <-- editieren / zitieren --> Unities abgeben:         
|