Autor
|
Thema: Selection.Search Problem mit R16 (2844 mal gelesen)
|
CAMiCADse Mitglied
Beiträge: 177 Registriert: 17.02.2006 V5,R19,SP9
|
erstellt am: 16. Mai. 2007 15:46 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, eine Suche mit 'Name=' läuft mit R16 nicht mehr, nachdem der Benutzer einmal was in die Kommando-Zeile eingegeben hat. Folgendes Szenario: Product mit einem Part Product1 I I-- Part1(Part1.1)
Code: Sub CATMain() CATIA.ActiveDocument.Selection.search "(Name='Part1.1' & CATProductSearch.Part),all" End Sub
1. Macro ausführen -> OK 2. In der Kommandozeile z.B. "c:Fit All In" eingeben 3. Macro ausführen -> ERROR!!! Meldung: Unknown command:'Part1.1... 4. Nach einem Neustart von CATIA läuft es wieder. Könnt ihr dieses verhalten bestätigen? Kennt jemand den Grund/Lösung? In den Options für die Suche habe ich nichts angewählt. Das ist in R16 ja neu hinzugekommen, evtl. hängt das Verhalten damit zusammen!? Gruß CAMiCADse [Diese Nachricht wurde von CAMiCADse am 16. Mai. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YellowDevil Mitglied PI, Makroentwicklung, NC Automatisierung
Beiträge: 67 Registriert: 21.12.2006
|
erstellt am: 20. Mai. 2007 14:11 <-- editieren / zitieren --> Unities abgeben: Nur für CAMiCADse
|
CAMiCADse Mitglied
Beiträge: 177 Registriert: 17.02.2006 V5,R19,SP9
|
erstellt am: 21. Mai. 2007 17:27 <-- editieren / zitieren --> Unities abgeben:
|
YellowDevil Mitglied PI, Makroentwicklung, NC Automatisierung
Beiträge: 67 Registriert: 21.12.2006
|
erstellt am: 21. Mai. 2007 17:41 <-- editieren / zitieren --> Unities abgeben: Nur für CAMiCADse
Sie sorgen eigentlich nur dafür, dass die Suchfunktion weiss wo sie ist. Man gibt ja normalerweise immer an: Workbench.Element.Suchkriterium und bei mir hilft es meistens,dann die Punkte anzugeben wenns Probleme gibt. Mir ist aber grad aufgefallen, dass vor deinem all ein Koma steht, sollte das nicht ein Simikolon sein? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAMiCADse Mitglied
Beiträge: 177 Registriert: 17.02.2006 V5,R19,SP9
|
erstellt am: 21. Mai. 2007 17:52 <-- editieren / zitieren --> Unities abgeben:
Da stand auch mal ein Semikolon. Als die Suche plötzlich nicht mehr funktionierte, wusst ich nicht warum und hab dann so einiges ausprobiert. Die Variante mit Komma klappte dann wieder (Hab wohl zwischendurch einen Neustart gemacht ), dachte dann "OK - nehm ich eben ein Komma...". Den Zusammenhang mit der Kommandozeile hab ich dann erst später rausgefunden. Kurz: Komma oder Semikolon, klappt beides oder klappt beides nicht. Kannst du den Fehler mit dem von mir beschriebenen Szenario denn bei dir reproduzieren? Gruß CAMiCADse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
YellowDevil Mitglied PI, Makroentwicklung, NC Automatisierung
Beiträge: 67 Registriert: 21.12.2006
|
erstellt am: 21. Mai. 2007 21:51 <-- editieren / zitieren --> Unities abgeben: Nur für CAMiCADse
|
Locke101 Mitglied
Beiträge: 51 Registriert: 02.05.2007
|
erstellt am: 22. Mai. 2007 10:53 <-- editieren / zitieren --> Unities abgeben: Nur für CAMiCADse
Hi, versuchs mal so: ======================== Dim productDocument1 As ProductDocument Set productDocument1 = CATIA.ActiveDocument Dim selection1 As Selection Set selection1 = productDocument1.Selection selection1.clear Suchname = InputBox("Suchname eingeben") ' Suchname = Part1.1 selection1.Search "CATAsmSearch.Part.Name='" & Suchname & "',all" ============================ Müsste funktionieren. Gruß Locke101
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAMiCADse Mitglied
Beiträge: 177 Registriert: 17.02.2006 V5,R19,SP9
|
erstellt am: 22. Mai. 2007 11:39 <-- editieren / zitieren --> Unities abgeben:
|
YellowDevil Mitglied PI, Makroentwicklung, NC Automatisierung
Beiträge: 67 Registriert: 21.12.2006
|
erstellt am: 22. Mai. 2007 12:38 <-- editieren / zitieren --> Unities abgeben: Nur für CAMiCADse
So ich habe heute Nacht mal getestet und konnte genau Deinen Fehler bei mir erzeugen. Vorgehensweise war: leeres part erzeugt, gespeichert leeres product erzeugt, gespeichert part in Product eingebunden, gespeichert deine Befehlszeile in ein Macro gegeben und ausgeführt -> part wurde gefunden c:Fit All In Macro ausgeführt -> Fehlermeldung Jetzt hab ich dann mal deine Befehlszeile folgendermassen geändert und es kam keine Fehlermeldung mehr. Sub CATMain() CATIA.ActiveDocument.Selection.search ("Name='Part1.1' & CATProductSearch.Part,all") End Sub Probiers mal aus... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAMiCADse Mitglied
Beiträge: 177 Registriert: 17.02.2006 V5,R19,SP9
|
erstellt am: 22. Mai. 2007 13:30 <-- editieren / zitieren --> Unities abgeben:
Hallo YellowDevil, Danke, hat geklappt! Verstehen kann ich das aber nicht, weil wenn ich meine Zeile nach deiner zeile ausführe, läuft es ohne Fehler durch... Also:
Code: Sub CATMAin() CATIA.ActiveDocument.Selection.Search ("Name='Part1.1' & CATProductSearch.Part,all") 'deine CATIA.ActiveDocument.Selection.Search "(Name='Part1.1' & CATProductSearch.Part),all" 'meine bzw. Makrorekorder End Sub
Da scheint irgendwo was verknotet zu sein, was mit deiner Zeile aufgelöst wird... Wie auch immer, solange es mit deiner Syntax läuft bin ich erstmal glücklich Nochmal Danke! Gruß CAMiCADse
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |