Autor
|
Thema: Instance Names aus Selection auslesen (2064 mal gelesen)
|
WolfgangKrenz Mitglied
Beiträge: 11 Registriert: 23.05.2005 CATIA V512B12 SPK6 HF16 CATIA V514B14 SPK5 HF1 Windows Script Host 5.6 (kein Visual Basic) - Pentium 4 3.60 GHz 3,12 GB RAM WinXP SP1
|
erstellt am: 06. Jun. 2005 11:02 <-- editieren / zitieren --> Unities abgeben:
Hallo Welt! Ich versuche z.Z. aus einer Selection in der ich nur Products, Components und Parts habe an deren Instance Names zu kommen. Leider funktioniert das bisher nicht. Mein Code:
Code:
Set Sel = CATIA.ActiveDocument.Selection pCount = Sel.Count For i = 1 to pCount Set IValue = Sel.Item(i).Value '[... hier fehlts ...] IName = IValue.Name MsgBox IName Next
Und da komme ich nicht weiter, denn bei IValue.Name erhalte ich immer "dieses Objekt unterstützt diese Eigenschaft oder Methode nicht". Was ja auch verständlich ist, da .Value ja ein Objekt vom Typ CATBaseDispatch zurückliefert, .Name aber erst von Objekten mindestens vom Typ AnyObject unterstützt wird. Weis jemand wie ich doch noch an die Instance Names herankomme? Gruss Wolfgang Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
3.1415926535 Mitglied
Beiträge: 59 Registriert: 20.02.2004
|
erstellt am: 06. Jun. 2005 11:48 <-- editieren / zitieren --> Unities abgeben: Nur für WolfgangKrenz
|
WolfgangKrenz Mitglied
Beiträge: 11 Registriert: 23.05.2005 CATIA V512B12 SPK6 HF16 CATIA V514B14 SPK5 HF1 Windows Script Host 5.6 (kein Visual Basic) - Pentium 4 3.60 GHz 3,12 GB RAM WinXP SP1
|
erstellt am: 06. Jun. 2005 14:15 <-- editieren / zitieren --> Unities abgeben:
Hallo 3.1415926535, Das hatte ich mir auch so gedacht. Aber das geht aus denselben Gründen wie vorher nicht. Du hast hier den Code nur ein wenig gekürzt in dem Du
Code: Set IValue = mySelection.Item(i).Value vArray(i-1) = IValue
durch Code: vArray(i-1) = mySelection.Item(i).Value.Name
ersetzt hast. Das grundlegende Problem, nämlich das das von .Value zurückgegebene Objekt keine Methode/Funktion/Property .Name besitzt, bleibt bestehen. Gruss Wolfgang [Diese Nachricht wurde von WolfgangKrenz am 06. Jun. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
3.1415926535 Mitglied
Beiträge: 59 Registriert: 20.02.2004
|
erstellt am: 06. Jun. 2005 14:42 <-- editieren / zitieren --> Unities abgeben: Nur für WolfgangKrenz
Also bei mir funktioniert das einwandfrei, habe ich aus einem bestehenden funktionierenden Makro rauskopiert. Damit kann ich beliebig viele Namen in ein Array schreiben. vorher muss noch: Redim vArray(mySelection.Count) rein, das habe ich vergessen. Der Befehl funktioniert mit VBA, aber es müsste auch mit CATScript funktionieren... Gruß, Pi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
WolfgangKrenz Mitglied
Beiträge: 11 Registriert: 23.05.2005 CATIA V512B12 SPK6 HF16 CATIA V514B14 SPK5 HF1 Windows Script Host 5.6 (kein Visual Basic) - Pentium 4 3.60 GHz 3,12 GB RAM WinXP SP1
|
erstellt am: 10. Jun. 2005 10:47 <-- editieren / zitieren --> Unities abgeben:
Hallo Pi, Ich habe das Programm jetzt in meiner R14 getestet und da klappt es einwandfrei. Das Problem ist, das es auch in R12 laufen muss... und da tritt das beschriebene Problem auf. Kennt jemand eine Möglichkeit, das unter R12 zu realisieren? Gruß, Wolfgang Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MaxZ Mitglied Computer Aided Designer
Beiträge: 125 Registriert: 24.05.2005
|
erstellt am: 10. Jun. 2005 10:58 <-- editieren / zitieren --> Unities abgeben: Nur für WolfgangKrenz
|
WolfgangKrenz Mitglied
Beiträge: 11 Registriert: 23.05.2005 CATIA V512B12 SPK6 HF16 CATIA V514B14 SPK5 HF1 Windows Script Host 5.6 (kein Visual Basic) - Pentium 4 3.60 GHz 3,12 GB RAM WinXP SP1
|
erstellt am: 13. Jun. 2005 16:16 <-- editieren / zitieren --> Unities abgeben:
Hallo MaxZ ich schreibe meine Makros in VBScript, da wird überhaupt nicht getypt. Zumindest wüsste ich nicht wie, da er beim ersten "As" einen Fehler wirft. Und selbst wenn ich in CATScript schreiben würde, ginge es nicht. Auszug aus der V5Automation.chm: "Since V5R7 Dassault Systemes products based on the V5 Platform don't use anymore the Basic Script scripting engine on Unix platforms. The CATScript language has been kept for compatibility and is processed by a vbscript scripting engine after removal of the typing informations." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Vermessungsingenieur*in als Projektleitung (m/w/d) | Für unsere Abteilung GN-G "Geodaten und Sanierungsmanagement" suchen wir zum nächstmöglichen Zeitpunkt unbefristet in Vollzeit- Teilzeit ist unter bestimmten Umständen möglich - einen
Vermessungsingenieur*in als Projektleitung (m/w/d) - Vermessung und technische Dokumentation - Wir bieten: - Bezahlung nach dem Tarifvertrag ...
| Anzeige ansehen | Projektmanagement |
|
Rwohlgethan Mitglied Student
Beiträge: 4 Registriert: 20.07.2007
|
erstellt am: 19. Dez. 2007 11:35 <-- editieren / zitieren --> Unities abgeben: Nur für WolfgangKrenz
Genau mit dem selbigen Problem befasse ich mich derzeit auch, V5 R16. auch der Sturkturbaum meiner Selection weist eine undurchschaubare Sturktur auf...... Edith sagt : Dim lala Set lala = Liste.Item(i).Value Dim lulu lulu = lala.Name Bei mir hats gepklappt. ------------------ Sie denken es gibt keine Vollkommenheit? Ich bin ein: Vollkommener Anfänger :smile:
[Diese Nachricht wurde von Rwohlgethan am 19. Dez. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |