Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Makro verliert die Selektion nach laden des Parts

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:  Makro verliert die Selektion nach laden des Parts (2160 mal gelesen)
graaas
Mitglied



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

Beiträge: 40
Registriert: 15.04.2010

erstellt am: 27. Jun. 2013 17:49    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 Zusammen,

ich habe mir ein VBA-Makro geschrieben, welches die Benennung der Parts in einem Product in die Zwischenablage kopiert.
Einige Parts in meinem Product sind jedoch nach dem öffnen noch nicht geladen. Deshalb kann das Makro von diesen Parts die Benennung nicht ziehen. Es kommt dann immer die Error-Number: -2147418113.
Deshalb habe ich mein Makro so ergänzt, dass wenn diese Error-Number kommt, dann soll das Part zuerst geladen werden und danach das Makro nochmal von vorne gestartet werden.

Code:
'Wenn Bauteil nicht geladen, dann...************************************************

        If Err.Number = -2147418113 Then

            CATIA.StartCommand ("Load")
     
        'Makro nochmal von vorne starten********************************************
       
        End If


Das Problem ist, dass die Selektion des Parts nach "CATIA.StartCommand ("Load")" verloren geht.
Ist es möglich, dass die Selektion am Anfang des Makros gespeichert wird und das Makro nach dem Laden des Bauteils wieder mit dieser Selektion weitermacht?

Gruß graaas

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 27. Jun. 2013 19:04    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 graaas 10 Unities + Antwort hilfreich

Servus
Ich hätte zwei Ideen dazu:
- vor dem start des Makros mit einer Schleife alle Teile prüfen, ob diese gelanden sind und ggf nachladen
- Selection zunächst in einer Collection zwischen speichern

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

graaas
Mitglied



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

Beiträge: 40
Registriert: 15.04.2010

erstellt am: 01. Jul. 2013 09:45    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 Bernd,

danke für die schnelle Antwort.
Alle Bauteile vorher zu laden würde sehr lange dauern, weil es auch nicht wenige Bauteile sind.

Was bedeutet die Selection in einer Collection zu speichern? Wie macht man sowas?

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 01. Jul. 2013 11:12    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 graaas 10 Unities + Antwort hilfreich

Servus
das geht zB so (ungetestet):
Code:
dim oCollection as Collection

for I = 1 to oselection.count
    oCollection.Add oselection.item2(I).value
next


Danach kannst du per oCollection.Item auf die Elemente zugreifen.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


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

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 01. Jul. 2013 12:01    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 graaas 10 Unities + Antwort hilfreich

Fast, Bernd, die Collection hat, wie das Dictionary immer 2 Werte, also Key und Objekt.

Ansonsten hat bernd aber alles geschrieben. :-)

Je nach Release vielleicht Count2() der Selection benutzen.

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 01. Jul. 2013 12:06    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 graaas 10 Unities + Antwort hilfreich

Servus Henry
Danke für die Berichtigung.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

graaas
Mitglied



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

Beiträge: 40
Registriert: 15.04.2010

erstellt am: 01. Jul. 2013 14: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

Wie muss ich das dann korrekt in meinen Code einfügen? Habs probiert aber ich kriegs nicht hin.

[Diese Nachricht wurde von graaas am 03. Jul. 2013 editiert.]

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 01. Jul. 2013 17:11    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 graaas 10 Unities + Antwort hilfreich

Servus
Da du nur ein Teil selektiert hast (oder nur eines abarbeitest) sollte es ganz einfach gehen:
Code:
Dim selProduct as Product 'oder was ist den selektiert??
Set oProduct =  CATIA.ActiveDocument.Selection.Item2(1).Value
sText = oProduct.PartNumber
Wo führst du nach dem laden das Makro erneut aus (manuell)?

Gruß
Bernd

EDIT: Code korrigiert
------------------
Warum einfach, wenn es auch kompliziert geht.

[Diese Nachricht wurde von bgrittmann am 02. Jul. 2013 editiert.]

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

graaas
Mitglied



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

Beiträge: 40
Registriert: 15.04.2010

erstellt am: 01. Jul. 2013 21:18    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 Bernd,

es wird ein Part selektiert.

Mit "Set oProduct =  CATIA.ActiveDocument.Selection.Item2(1).Value.PartNumber" greift man ja auf die Properties des Parts zu und da kommt bei mir immer der Error. Das ist aber nur bei den Parts die nicht geladen sind. Deshalb lade ich diese dann:

Code:
'Wenn Bauteil nicht geladen, dann...************************************************
        If Err.Number = -2147418113 Then
            CATIA.StartCommand ("Load")
        'Makro nochmal von vorne*****************
        End If

Wenn man z.B. händisch ein Part läd dann verliert er auch die Selektion. Und das passiert hald mit dem Makro auch.
Deshalb muss ich dann das Bauteil nochmal händisch selektieren und das Makro nochmal starten.
Das würd ich hald gerne automatisieren, dass die Selektion irgendwie gespeichert wird.

Gruß, graaas

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 01. Jul. 2013 21:43    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 graaas 10 Unities + Antwort hilfreich

Servus
Du könntest doch zunächst das selektierte Part/Product einer Variable zuweisen, dann prüfen, ob die PartNumber auszulesen ist. Wenn dies nicht funktioniert das Part/Product nachladen und die PartNumber auslesen/weiterverarbeiten.
Dabei brauchst du nur beim ersten Schritt die Selektion (bis das Part/Product/Instance einer Variabel zugewiesen wurde) danach nicht mehr.

Gruß
Bernd

EDIT:
In meinem vorherigen Code war ein Fehler, es müsste:
Set oProduct =  CATIA.ActiveDocument.Selection.Item2(1).Value
heißen.

------------------
Warum einfach, wenn es auch kompliziert geht.

[Diese Nachricht wurde von bgrittmann am 02. Jul. 2013 editiert.]

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

graaas
Mitglied



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

Beiträge: 40
Registriert: 15.04.2010

erstellt am: 02. Jul. 2013 12: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

Ok, wenn ich das so mache wie du geschrieben hast und dann nach dem Laden das "oProduct" als Test in einer MsgBox anzeigen lassen will funktioniert das nicht.

Denn bei den ungeladenen Teilen funktioniert der Teil
Set oProduct =  CATIA.ActiveDocument.Selection.Item2(1).Valueschon nicht. Da kommt nämlich dann die Err.Number -2147418113.
Und da verweise ich ja dann darauf, dass wenn diese Err.Number kommt soll er mir das Bauteil laden. Und nach dem Laden mit diesem Bauteil weiter arbeiten.
Kann ich nicht irgendwie die "CATIA.ActiveDocument.Selection" als Variable speichern sodass ich dann nach dem Laden auf diese Selektion nochmal zugreifen kann?

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

graaas
Mitglied



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

Beiträge: 40
Registriert: 15.04.2010

erstellt am: 02. Jul. 2013 12:34    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

Ich habe jetzt mal versucht die Selektion zu speichern mit:
Code:
Dim selProduct As Product
Set oProduct = CATIA.ActiveDocument.Selection

um dann danach darauf zuzugreifen:

Code:
'Wenn Bauteil nicht geladen, dann...************************************************
        If Err.Number = -2147418113 Then
            CATIA.StartCommand ("Load")
        With oProduct
        If .Count <> 0 Then
        sText = .Item(1).Value.PartNumber
        MsgBox sText
        End If
        End With
        End If

Das funktioniert aber dann gar nicht. Da läuft er ohne Error durch, läd das Bauteil und macht aber dann nichts danach.

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 02. Jul. 2013 12:35    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 graaas 10 Unities + Antwort hilfreich

Servus
Um was für ein Objekt handelt sich das selektierte Element (Product, Document, Part, ...)? (ggf Deklaration berichtigen oder allgemein als Object deklarieren)

Gruß
Bernd

EDIT: Was soll schon nach dem laden des Bauteils passieren, gemäß Code ist danach das Makro zu Ende (keine Schleife, kein erneuter Aufruf, ...)


------------------
Warum einfach, wenn es auch kompliziert geht.

[Diese Nachricht wurde von bgrittmann am 02. Jul. 2013 editiert.]

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

graaas
Mitglied



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

Beiträge: 40
Registriert: 15.04.2010

erstellt am: 02. Jul. 2013 12:44    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


Bauteil.JPG

 
Es ist eigenlich ein Part.
Angehängt ein Beispiel wie sich die Benennung im Strukturbaum nach dem Laden verändert.

Nach dem Laden soll das Makro nochmal durchlaufen werden, sprich die Benennung in die Zwischenablage gespeichert werden. Zum Test würde es mir reichen, wenn er mir die Benennung einfach mal in einer MsgBox angibt. Deshalb der Code:

Code:
'Wenn Bauteil nicht geladen, dann...************************************************
        If Err.Number = -2147418113 Then
            CATIA.StartCommand ("Load")
        With oProduct
        If .Count <> 0 Then
        sText = .Item(1).Value.PartNumber
        MsgBox sText
        End If
        End With
        End If

[Diese Nachricht wurde von graaas am 02. Jul. 2013 editiert.]

[Diese Nachricht wurde von graaas am 02. Jul. 2013 editiert.]

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

graaas
Mitglied



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

Beiträge: 40
Registriert: 15.04.2010

erstellt am: 02. Jul. 2013 14: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

Also ich hab die Lösung.
Ich lese einfach den Instance Name anstatt der PartNumber aus. Das geht auch bei ungeladenen Bauteilen.
Vielen Dank aber trotzdem für deine Bemühungen Bernd.

Gruß, graaas

[Diese Nachricht wurde von graaas am 02. Jul. 2013 editiert.]

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

moppesle
Ehrenmitglied V.I.P. h.c.
Konstrukteur


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

Beiträge: 3418
Registriert: 28.05.2009

CATIA V5 R19 SP9
WIN 7 64bit

erstellt am: 02. Jul. 2013 14:55    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 graaas 10 Unities + Antwort hilfreich

Hallo graaas,

Zitat:
Ich lese einfach den Instance Name anstatt der PartNumber aus.

Dir ist ja bekannt das der Instance Name sich von dem Partnamen unterscheiden kann.

Wollte es nur mal erwähnen.

------------------
Gruß Uwe

Auch Catia ist nur ein Mensch!    

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

graaas
Mitglied



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

Beiträge: 40
Registriert: 15.04.2010

erstellt am: 03. Jul. 2013 20: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

Nein das ist bei uns standardmäßig immer gleich.

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

DasDon
Mitglied
Konstruktuer


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

Beiträge: 169
Registriert: 25.07.2011

R18 SP2. WIN

erstellt am: 03. Jul. 2013 21:44    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 graaas 10 Unities + Antwort hilfreich

moin moin,

wieso kannst du nicht einfach für jedes Bauteil eine extra sub einfügen welches die BAuteil lädt? Sind sie schon geladen würde es nicht länger dauern.

zB

sub CATMain()

hier
passiert
dein
selection
set oProd = CATIA.ActiveDocument.Selection.Item(1).Value
LoadSub oProd 'hier ruft er das extra sub auf und übergibt das Selektiere
CATIA.ActiveDocument.Selection.add(oProd)

sonstiges
code

end sub

sub LoadSub (oProd)

CATIA.StartCommand ("Load")
end Sub


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