Autor
|
Thema: Part schon geladen (623 mal gelesen)
|
Sylas Mitglied
Beiträge: 322 Registriert: 19.11.2012 Dell Precision T3500 Intel Xeon W3550 @ 3,07 GHz 12 GB RAM CATIA V5 R28
|
erstellt am: 10. Jan. 2019 12:08 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen Ich probiere jetzt ein Makro schreiben, welsches auf ein Ordner komponenten einfugst(Products und Parts). Ich prufe jetzt ob ein Produkt im Ordner existiert, und fuge ich das ein, aber kann passieren, das wenn ich ein Part einfugen mochte, das Part ist schon ins Struktur geladen (weil ein Unterkomponent vom schon geladente Produkt ist), und Ich will den Part nicht doppeln. Code: For i = 1 To 12 CATIA.Documents.Add "Product" Set oProd = CATIA.ActiveDocument.Product oProd.PartNumber = Excel.ActiveSheet.Cells(1, i) For j = 4 To 27 If Excel.ActiveSheet.Cells(j, i) = "X" Then For Each oFile In CATIA.FileSystem.GetFolder("N:\01\02\20190109\7C0.809.401_rozpakowane\").Files If (InStr(1, Left(VBA.Trim(Excel.ActiveSheet.Cells(j, 13)), 15), oFile.name) <> 0 And InStr(1, ".CATProduct", oFile.name) <> 0) Then oArray(0) = oFile.fullpath Set sProd = oProd sProd.Products.AddComponentsFromFiles oArray, "All" End If Next '_____________________________und was jetzt? So?_________________________________ For Each oFile In CATIA.FileSystem.GetFolder("N:\01\02\20190109\7C0.809.401_rozpakowane\").Files If (InStr(1, Left(VBA.Trim(Excel.ActiveSheet.Cells(j, 13)), 15), oFile.name) <> 0 And InStr(1, ".CATProduct", oFile.name) = 0) Then oArray(0) = oFile.fullpath Set sProd = oProd sProd.Products.AddComponentsFromFiles oArray, "All" End If Next End If Next Next
Wie kann ich prufen, ob ein Part ist schon geladen? Ich hoffe das ich habe das gut erklärt Sorry für mein Deutsch Gruß Lukas
[Diese Nachricht wurde von Sylas am 10. Jan. 2019 editiert.] 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: 10. Jan. 2019 12:15 <-- editieren / zitieren --> Unities abgeben: Nur für Sylas
Servus zB die Documents-Collection durchsuchen ob darin das Part schon vorkommt oder ggf per Selection.Search (so weit wie möglich einschränken) das Part suchen Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Sylas Mitglied
Beiträge: 322 Registriert: 19.11.2012 Dell Precision T3500 Intel Xeon W3550 @ 3,07 GHz 12 GB RAM CATIA V5 R28
|
erstellt am: 11. Jan. 2019 06:33 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von bgrittmann: ServuszB die Documents-Collection durchsuchen ob darin das Part schon vorkommt oder ggf per Selection.Search (so weit wie möglich einschränken) das Part suchen Gruß Bernd
Hallo Bernd Die Documents Collection war was ich habe auch gedenken.... soll ich das mit GetItem Methode machen? Wenn das ein Fehler bringts, das bedeuted, das Part ist noch nicht in der Collection Wie denks du? Gruß Lukas
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: 11. Jan. 2019 08:53 <-- editieren / zitieren --> Unities abgeben: Nur für Sylas
Servus Was heißt bei dir "Part nicht doppelt vorkommen"? Was ist zB mit Normteilen? Im gleichen Product? In allen Products? Oder nur in der gleichen Produktstruktur? Wenn Parts in verschieden Rootproducts vorkommen können, geht das mit der Documents-Collection nicht. Was hast du den genau mit der Tabelle/Makro vor? Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Sylas Mitglied
Beiträge: 322 Registriert: 19.11.2012 Dell Precision T3500 Intel Xeon W3550 @ 3,07 GHz 12 GB RAM CATIA V5 R28
|
erstellt am: 11. Jan. 2019 09:23 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von bgrittmann: ServusWas heißt bei dir "Part nicht doppelt vorkommen"? Was ist zB mit Normteilen? Im gleichen Product? In allen Products? Oder nur in der gleichen Produktstruktur? Wenn Parts in verschieden Rootproducts vorkommen können, geht das mit der Documents-Collection nicht. Was hast du den genau mit der Tabelle/Makro vor? Gruß Bernd
Die Teile sind einzigartig - die sind Bauteile. Wenn das Teil mehr als einmal vorkommt, wird es in die Untergruppe aufgenommen. Wenn ich durch Files Collection durch gehe, ich füge die Produkte erstmal ein. Kann aber auch sein, das in HauptProdukt - außer Untergruppe - auch Einzeilteile aus dem Ordner drin sind (nicht in der Untergruppen, sonder als Einzeilteile). Also, I kann nicht den Teil welsches in Untergruppe ist, nochmal in Hauptprodukt einfugen Ich hoffe das es mehr klar ist jetzt... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|