Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Copy / Paste in einer Produkt-Part-Struktur

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Copy / Paste in einer Produkt-Part-Struktur (3763 mal gelesen)
Physimathi
Mitglied
Student


Sehen Sie sich das Profil von Physimathi an!   Senden Sie eine Private Message an Physimathi  Schreiben Sie einen Gästebucheintrag für Physimathi

Beiträge: 88
Registriert: 07.09.2005

erstellt am: 31. Jul. 2007 10:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
ich probiere nun schon seit Stunden, doch ich bekomme es nicht hin.

Ausgangssituation:

Produkt (A.CATProduct)
|- Part (B.CATPart)
|- Part (C.CATPart)

Aktiviert ist A.CATProdukt

Was ich möchte:
Aus dem Part (B.CATPart) einen Körper (Körper.1) kopieren und in Part (C.CATPart) mit Link einfügen.
Diesen Körper mit Link wieder kopieren in in Part (B.CATPart) einfügen.

Meine Probleme:
- Ich kann den Körper (Körper.1) kopieren und im selben Part 
  einfügen. Was ich nicht kann ist Ihn im Part (C.CATPart) einfügen.

Wenn jemand das Problem schon mal gelöst hat, dann wäre ich über Hilfe dankbar.

Danke
Physi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Mörchen
Ehrenmitglied V.I.P. h.c.
CAD-Trainerin (CATIA V5)



Sehen Sie sich das Profil von Mörchen an!   Senden Sie eine Private Message an Mörchen  Schreiben Sie einen Gästebucheintrag für Mörchen

Beiträge: 3830
Registriert: 14.03.2007

Release 19 SP2

erstellt am: 31. Jul. 2007 11:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Physimathi 10 Unities + Antwort hilfreich


OPtionen.jpg

 
Hallo Physimathi,

ob Einfügen mit Link ( Einfügen spezial)gelingt, hängt davon ab, ob in den Optionen / Infrastruktur die Einstellung "externe Auswhal..."aktiviert ist oder nicht. Falls das aktiv ist, müssen die zu kopierenden Elemente erst veröffentlicht werden (Publish). Ob man den verlinkten Körper verlinkt zurückkopieren kann, weiß ich nicht. Könnte einen Zirkelbezug erzeugen, muss man ausprobieren.

Gruß
Mörchen

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Physimathi
Mitglied
Student


Sehen Sie sich das Profil von Physimathi an!   Senden Sie eine Private Message an Physimathi  Schreiben Sie einen Gästebucheintrag für Physimathi

Beiträge: 88
Registriert: 07.09.2005

erstellt am: 31. Jul. 2007 11:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
ja, den Körper.1 habe ich so im Part (B.CATPart) veröffentlicht.

Dim ProduktDokument As Documents
Dim AnyPart As Document
Dim AProdukt As Product
Dim APart As Part
Set ProduktDokument = CATIA.Documents
Set AnyPart = ProduktDokument.Item("B.CATPart")
Set AProdukt = AnyPart.GetItem("B")
Set APart = AnyPart.Part

Dim body1 As Body
Set body1 = APart.FindObjectByName("Körper.1")

Dim refPub As Reference
Dim publications As publications
Dim publication As publication

Set refPub = AProdukt.CreateReferenceFromName("B/!Körper.1")
Set publications = AProdukt.publications
Set publication = publications.Add("Körper.1")

publications.SetDirect "Körper.1", refPub

Das klappt schon super. Dann habe ich eine Veröffentlichung, doch weiter klappt es nicht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Physimathi
Mitglied
Student


Sehen Sie sich das Profil von Physimathi an!   Senden Sie eine Private Message an Physimathi  Schreiben Sie einen Gästebucheintrag für Physimathi

Beiträge: 88
Registriert: 07.09.2005

erstellt am: 31. Jul. 2007 11:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Und so dachte ich mir die Selection des Körpers, doch bei "selection.Copy" ist dann eine Fehlermeldung.

Dim selection As selection
Set selection = AnyPart.selection

selection.Clear

selection.Add body1
selection.Copy
selection.PasteSpecial ("CATPrtResult")

Ich vermute, die ist deshalb, weil zwar das Part "B" geladen ist, doch ich nicht in Ihm arbeite.
Gruß
Physi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Physimathi
Mitglied
Student


Sehen Sie sich das Profil von Physimathi an!   Senden Sie eine Private Message an Physimathi  Schreiben Sie einen Gästebucheintrag für Physimathi

Beiträge: 88
Registriert: 07.09.2005

erstellt am: 31. Jul. 2007 14:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
ich bin nun schon einen Schritt weiter.

Wenn ich in CATIA das Produkt aktiv habe, dann kann ich in den Part nichts kopieren.
So ich aber auf das Part (B.CATPart) - RMT - "Objekt B -> bearbeiten", dann wechsel ich in die Partworkbench und dann kann ich kopieren.

Danach klicke ich auf Part (C.CATPart) - RMT - ""Objekt C -> bearbeiten".
Dann Einfügen mit Link und fertig.

Jetzt bleibt mir die Frage, wie kann man in Automation einzelne Partobjekte aktivieren.
Ich kann schon die Workbench ändern: CATIA.StartWorkbench "PrtCfg", doch da legt er mir immer ein neues Part an.

Hm, das ist verzwickt, hat jemand eine Idee?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

tomtom1972
Mitglied
dipl ing maschinenbau


Sehen Sie sich das Profil von tomtom1972 an!   Senden Sie eine Private Message an tomtom1972  Schreiben Sie einen Gästebucheintrag für tomtom1972

Beiträge: 605
Registriert: 22.03.2005

NVidia Quadro K4000
Intel Xeon E5-1620, 64GB RAM
Windows10 64bit
R30 <= CATIA V5 > =R19

erstellt am: 02. Aug. 2007 06:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Physimathi 10 Unities + Antwort hilfreich

Hallo,

Versuche das was du ganz oben beschreibst doch mal manuell durchzuführen, das funktioniert ja schon nur, wenn du CATIA "austrickts"; das Problem ist doch ein ganze anderes, wie Mörchen in seiner/ihrer ersten Antwort schon schreibt: Du erzeugst einen Loop, wenn du aus B ein Object in C kopierts (mit Link) und dann von C wieder in B (ebenfalls mit Link). Wer ist den dann die Referenz von wem (auf Part-Ebene)?
Wenn "meine" User so was machen bekommen sie eine auf die Finger 

Gruß TomTom

------------------
tomtom1972

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Physimathi
Mitglied
Student


Sehen Sie sich das Profil von Physimathi an!   Senden Sie eine Private Message an Physimathi  Schreiben Sie einen Gästebucheintrag für Physimathi

Beiträge: 88
Registriert: 07.09.2005

erstellt am: 02. Aug. 2007 09:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


copy-paste.JPG

 
Hallo TomTom,
ja ich verstehe das mit dem Loop. mein Problem ist aber ja ein ganz anderes. Mein Problem ist ja, dass ich nicht kopieren kann, trotz Veröffentlichung.

Um das zu verstehen, erstelle dir eine Partstruktur wie im Bild. Dann aktiviere das Produkt und dann versuche mal trotz Veröffentlichung zu kopieren.
Das geht klar nicht, da ja das Produkt und nicht das Part aktiv ist. Also geht auch die copy/paste Funktion im Makro nicht.

Nun gehe mit der Maus auf Part B + RMT und ObjektB - bearbeiten
Das Part B ist nun in Bearbeitung und ich kann kopieren.

Nun mache ich das gleiche mit Part C + RMT ... und Part C ist in Bearbeitung und ich kann einfügen.

Mein Problem ist, wie kann ich im Makro diese Funktion des "bearbeitens" automatisieren und zwischen Part B und C springen?
Der Makrorecorder zeichnet das nicht auf.

Wie aktiviere ich aus der Produktebene, das Part wie auf dem Bild dargestellt?

Danke für die Hilfe und viele Grüße

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Lidef
Mitglied



Sehen Sie sich das Profil von Lidef an!   Senden Sie eine Private Message an Lidef  Schreiben Sie einen Gästebucheintrag für Lidef

Beiträge: 11
Registriert: 04.07.2007

erstellt am: 02. Aug. 2007 11:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Physimathi 10 Unities + Antwort hilfreich

Hallo Physimathi,

es kann sein, dass deine Selektion falsch ist. Die Namensgebung "selection" würde ich lieber meiden, da die Klasse ja schon so heißt. Außerdem gibst du kein Ziel vor.
Probiers doch mal so:

Dim Selektion As Selection
Set Selektion = CATIA.ActiveDocument.Selection
Selektion.Clear

Selektion.Add body1
selection.Copy
Selektion.Clear

Selektion.Add C    ' Wenn "C" der Name des Zielparts ist. "C" muss der Klasse "Part" sein
Selektion.PasteSpecial ("CATPrtResult")
Selektion.Clear


Vielleicht hilft das dir weiter.

Gruß

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Physimathi
Mitglied
Student


Sehen Sie sich das Profil von Physimathi an!   Senden Sie eine Private Message an Physimathi  Schreiben Sie einen Gästebucheintrag für Physimathi

Beiträge: 88
Registriert: 07.09.2005

erstellt am: 02. Aug. 2007 15:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
danke, das mit dem Einfügeziel kann stimmen, doch ich kann es nicht versuchen, da ich ja auf Produktebene bin und überhaupt nicht copy angenommen wird.

Die Frage stellt sich mir, wie kann ich wenn ich in der Produktebene bin ein Part in "bearbeiten" setzen, so dass das blaue Auswahlfeld von Produkt A auf Part B wechselt.
Erst wenn die blaue Auswahl von A auf B gewechslet ist, bin ich in der Partebene und kann zwischen Part copy / paste zwischen verschiedenen Part durchführen.

Ich weis auch nicht wie ich das anders beschreiben soll. Sorry

Gruß Physi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Augustiner
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Augustiner an!   Senden Sie eine Private Message an Augustiner  Schreiben Sie einen Gästebucheintrag für Augustiner

Beiträge: 188
Registriert: 02.12.2005

HP Workstation
Windows XP Professional
Visual Studio 2005 Professional
CATIA V5 R14SP5 & R17SP3

erstellt am: 02. Aug. 2007 16:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Physimathi 10 Unities + Antwort hilfreich

Hallo

versuchs mal damit keine Ahnung ob das was bringt habs nur auf die schnelle in der Doku gefunden

Zitat:
Sub Activate( )

    Activates the document. Activating a document means that this document is the one on which the end user is now working on. This document possibly reconfigures the menu bar and toolbars with its own commands if its type is different from the type of the previous active document. The first window in the window collection which contains this document becomes the active one.

    Example:
        This example activates the Doc document.

        Doc.Activate()
       


Gruß Andi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Lidef
Mitglied



Sehen Sie sich das Profil von Lidef an!   Senden Sie eine Private Message an Lidef  Schreiben Sie einen Gästebucheintrag für Lidef

Beiträge: 11
Registriert: 04.07.2007

erstellt am: 02. Aug. 2007 16:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Physimathi 10 Unities + Antwort hilfreich

Hallo Physi,

also ich kopiere Publikationen von Part zu Part immer während mein Wurzelprodukt aktiviert ist und es klappt (wie in meinem vorherigen Beitrag beschrieben). Ich bekomme auch keine Fehlermeldung bei der Copy-Operation.
Wenn es bei dir tatsächlich nicht geht, dann verstehe ich es nicht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz