Autor
|
Thema: DLNAME (1633 mal gelesen)
|
Tim2007 Mitglied Konstrukteur
Beiträge: 143 Registriert: 02.01.2007 Catia V5R19SP3 XP64<P>"Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean." Sir Isaac Newton
|
erstellt am: 28. Mai. 2014 13:01 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, ich bekomme mit targetfolder = CATIA.ActiveDocument.Path anstelle der DLNAME-Adresse folgendes ausgegeben: □□\PRIVMOD\ Weiß jemand warum? [Diese Nachricht wurde von Tim2007 am 28. Mai. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Thomas Harmening Ehrenmitglied V.I.P. h.c. Arbeiter ツ
Beiträge: 2897 Registriert: 06.07.2001 NX 10 Win 7
|
erstellt am: 28. Mai. 2014 16:57 <-- editieren / zitieren --> Unities abgeben: Nur für Tim2007
nö Code: Sub test() Dim targetfolder As String targetfolder = Mid(CATIA.ActiveDocument.Path, InStr(1, CATIA.ActiveDocument.Path, "\") + 1) End Sub
oder willst du den physikalischen Namen? [Diese Nachricht wurde von Thomas Harmening am 28. Mai. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tim2007 Mitglied Konstrukteur
Beiträge: 143 Registriert: 02.01.2007 Catia V5R19SP3 XP64<P>"Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean." Sir Isaac Newton
|
erstellt am: 28. Mai. 2014 17:16 <-- editieren / zitieren --> Unities abgeben:
|
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 28. Mai. 2014 17:22 <-- editieren / zitieren --> Unities abgeben: Nur für Tim2007
Servus Schau mal hier wie man den physikalischen Pfad ausliest. Warum willst du nicht mit den DLNames arbeiten, wenn das schon so vorgegeben ist? Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tim2007 Mitglied Konstrukteur
Beiträge: 143 Registriert: 02.01.2007 Catia V5R19SP3 XP64<P>"Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean." Sir Isaac Newton
|
erstellt am: 28. Mai. 2014 17:56 <-- editieren / zitieren --> Unities abgeben:
Hallo Bernd, diese Variante kenne ich, hilft mir aber bei meinem Problem nicht weiter. Ich will nicht in eine spezielle DLNAME-Umgebung was schreiben, sondern ich will die DLNAME-Umgebung herausfinden. Durch DLNAME1 gebe ich ja schon meine Auswahl an. Ich will aber herausfinden, dass der Pfad der Datei DLNAME1 ist. Also anderst rum. Wir können hier mit den DLNAME-Ordner nur in diese schreiben und nicht irgendwo hin. Daher muss ich die DLNAME-Umgebung herausfinden. Hoffe es wurde nun mehr klar. Danke für die Hilfe. [Diese Nachricht wurde von Tim2007 am 28. Mai. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Thomas Harmening Ehrenmitglied V.I.P. h.c. Arbeiter ツ
Beiträge: 2897 Registriert: 06.07.2001 NX 10 Win 7
|
erstellt am: 28. Mai. 2014 18:34 <-- editieren / zitieren --> Unities abgeben: Nur für Tim2007
Code: Sub test() Dim targetfolder As String targetfolder = Mid(CATIA.ActiveDocument.Path, InStr(1, CATIA.ActiveDocument.Path, "\") + 1)Dim sController As SettingController Dim iDLName As String Dim oUnix As String Dim oWin As String Dim oFather As String iDLName = targetfolder ' "DLNAME1" Set sController = CATIA.SettingControllers.Item("CATSysDLNameSettingCtrl") sController.GetDLName iDLName, oUnix, oWin, oFather Debug.Print oWin 'winpfad End Sub
hmm, oder willst du anhand des Filesystem den DLnamen herausfinden? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tim2007 Mitglied Konstrukteur
Beiträge: 143 Registriert: 02.01.2007 Catia V5R19SP3 XP64<P>"Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean." Sir Isaac Newton
|
erstellt am: 28. Mai. 2014 19:12 <-- editieren / zitieren --> Unities abgeben:
|
Thomas Harmening Ehrenmitglied V.I.P. h.c. Arbeiter ツ
Beiträge: 2897 Registriert: 06.07.2001 NX 10 Win 7
|
erstellt am: 28. Mai. 2014 19:52 <-- editieren / zitieren --> Unities abgeben: Nur für Tim2007
Code: Sub test() 'Dim targetfolder As String 'targetfolder = Mid(CATIA.ActiveDocument.Path, InStr(1, CATIA.ActiveDocument.Path, "\") + 1)Dim sController As SettingController Set sController = CATIA.SettingControllers.Item("CATSysDLNameSettingCtrl") Dim dlnameliste ' As CATSafeArrayVariant dlnameliste = sController.GetDLNameList() 'hole Liste der definierten DLnamen winpfad = "\\emea.corpdir.net\EMTC\PRJ\A-D\AF5-WOP" 'dummy vorgabe zecks testen For Each i In dlnameliste sController.GetDLName i, oUnix, oWin, oFather 'Debug.Print "dlname "; i 'Debug.Print "filepfad "; oWin If winpfad = oWin Then fdlname = i Next Debug.Print "gesuchter DLname von "; winpfad; " ist "; fdlname End Sub
[Diese Nachricht wurde von Thomas Harmening am 28. Mai. 2014 editiert.] [Diese Nachricht wurde von Thomas Harmening am 30. Mai. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tim2007 Mitglied Konstrukteur
Beiträge: 143 Registriert: 02.01.2007 Catia V5R19SP3 XP64<P>"Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean." Sir Isaac Newton
|
erstellt am: 02. Jun. 2014 10:44 <-- editieren / zitieren --> Unities abgeben:
Hallo Thomas, das ist soweit klar. Jedoch wird von dir der Winpfad vorgegeben. Und genau das ist mein Problem. Ich will ja wissen, wo der User gerade speichern will. Diese Info muss ich irgendwo auslesen können, ohne, dass ich es vorgebe. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 02. Jun. 2014 10:50 <-- editieren / zitieren --> Unities abgeben: Nur für Tim2007
Servus Tim In Thomas Code wird doch zu einen Windows-Pfad auch der entsprechende DLNAME bestimmt (Schleife über die DLNAMES). Was willst du nun? (ich steht wohl gerade auf dem Schlauch) Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tim2007 Mitglied Konstrukteur
Beiträge: 143 Registriert: 02.01.2007 Catia V5R19SP3 XP64<P>"Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean." Sir Isaac Newton
|
erstellt am: 02. Jun. 2014 12:50 <-- editieren / zitieren --> Unities abgeben:
Hallo Bernd, ich will nicht einen vordefinierten Pfad finden, der zu einem DLNAME gehört. Ich will im Grunde den Pfad wo der User speichern will. winpfad = CATIA.ActiveDocument.Path MsgBox (winpfad) Nur hier kommt □□\ (siehe Anhang) Den Rest kann ich kann ich dan über den Code von Thomas herausfinden. [Diese Nachricht wurde von Tim2007 am 02. Jun. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Thomas Harmening Ehrenmitglied V.I.P. h.c. Arbeiter ツ
Beiträge: 2897 Registriert: 06.07.2001 NX 10 Win 7
|
erstellt am: 02. Jun. 2014 18:39 <-- editieren / zitieren --> Unities abgeben: Nur für Tim2007
hmmm, Im Grunde hast du eigentlich alles was du brauchst... Wenn user das Part filebasierend lädt, zeigt
Code: winpfad = CATIA.ActiveDocument.Path
das Winverzeichnis an läd er über den Dl-Namen kommst du über den code vom 28. Mai. 2014 18:34 an das Winverzeichnis ran... Code: Sub test()On Error GoTo 10 Dim sController As SettingController Dim iDLName As String Dim oUnix As String Dim oWin As String Dim oFather As String iDLName = Mid(CATIA.ActiveDocument.Path, InStr(1, CATIA.ActiveDocument.Path, "\") + 1) ' Set sController = CATIA.SettingControllers.Item("CATSysDLNameSettingCtrl") sController.GetDLName iDLName, oUnix, oWin, oFather Debug.Print "gesuchter Pfad von "; iDLName; " ist "; oWin Exit Sub 10 Debug.Print "FilePfad ist "; CATIA.ActiveDocument.Path End Sub
ansonsten stehe ich auf demselben Schlauch wie Bernd. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tim2007 Mitglied Konstrukteur
Beiträge: 143 Registriert: 02.01.2007 Catia V5R19SP3 XP64<P>"Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean." Sir Isaac Newton
|
erstellt am: 03. Jun. 2014 08:43 <-- editieren / zitieren --> Unities abgeben:
Hallo Thomas, danke dir. Mit iDLName = Mid(CATIA.ActiveDocument.Path, InStr(1, CATIA.ActiveDocument.Path, "\") + 1) hat es jetzt echt funktioniert. Das war der springende Punkt. Hätte allerdings nicht gedacht, dass es somit funktioniert. Vielen Dank dafür.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |