Czy spotkałeś się kiedyś z komunikatem o nieprawidłowym ID przy próbie uruchomienia złożenia SOLIDWORKS? Opis tego zagadnienia znajdziecie poniżej.
Wewnętrzne i zewnętrzne ID pliku
W czasie uruchomienia złożenia przez użytkownika, SOLIDWORKS przeszukuje odniesienia złożenia (podzłożenia, komponenty). SOLIDWORKS wyszukuje komponenty na podstawie zewnętrznych ID plików (External ID). Zewnętrzne ID pliku to nic innego jak jego nazwa. Dokładny sposób wyszukiwania odniesień w SOLIDWORKS został opisany w artykule:
Referencje w SOLIDWORKS PDM, a referencje w SOLIDWORKS CAD 3D
W momencie zmiany nazwy pliku – zmienia się jego zewnętrzne ID. Jednak w tej sytuacji ID wewnętrze plików zostanie takie same!
Przykład sytuacji
Wewnętrzne ID pliku (Internal ID) to generowany przez SOLIDWORKS kod. Tworzony jest w momencie utworzenia każdej nowej części w programie i jest unikatowy. Co ważne – geometria pliku (każda ściana, krawędź czy punkt) ma swoje unikatowe ID. Nie można go „podejrzeć” ani zmienić – od momentu utworzenia, przez cały cykl życia pliku wewnętrzne ID pozostanie niezmienne. Nawet w przypadku zmiany nazwy komponentu!
Weźmy za przykład proste złożenie Assem1.sldasm. W skład złożenia wchodzą dwa komponenty: 1.sldprt i 2.sldprt. Złożenie było od samego początku budowane w oparciu o wspomniane komponenty. Jednak w pewnym momencie konstruktor pracujący nad projektem podjął decyzje o całkowitej zmianie komponentu 1.sldprt. Wykonał to poprzez utworzenie całkowicie nowego komponentu. Nowy plik konstruktor zapisał pod tą samą nazwą 1.sldprt, w tym samym folderze, w którym zapisany był wcześniejszy komponent o tej samej nazwie – w związku z tym zewnętrzne ID pliku nie zmieniło się w porównaniu do wcześniej używanego komponentu. Dzięki temu – SOLIDWORKS nie miał problemu ze znalezieniem komponentu (dokonuje tego na podstawie właśnie zewnętrznego ID).
W opisywanym przypadku zmianie uległo jednak wewnętrzne ID komponentu! Przy próbie uruchomienia złożenia Assem1.sldasm otrzymamy komunikat:
Komunikat informuje nas, że wewnętrzne ID znalezionego przez program pliku (nadane przez program) nie zgadza się z wewnętrznym ID odnoszonego pliku. Wybierając pierwszą opcję: „Pozwól mi przejść do oryginalnego pliku” mamy możliwość wskazania pliku o ID zgodnym z odnoszonym plikiem (w tym przypadku będzie to komponent 1.sldprt przed modyfikacjami).
Jeśli jednak chcemy korzystać z nowoutworzonego pliku, który został znaleziony przez SOLIDWORKS – wybieramy opcję: „Użyj tego dokumentu”. W tym przypadku jednak musimy upewnić się czy nowa geometria jest odpowiednio zamodelowana czyli czy plik jest w tej samej pozycji i orientacji co plik źródłowy, aby mieć pewność, że wiązania złożenia się przebudują. Po wybraniu tej opcji wystarczy zapisać złożenie – po zapisie złożenia, zaktualizowane zostaną odniesienia – SOLIDWORKS zaktualizuje wewnętrzne ID do wskazanego komponentu.
Trzecia możliwość jaką mamy to otworzyć złożenie bez komponentu ze zmienionym wewnętrznym ID: „Otwórz bez tego komponentu”. To pozwoli nam uruchomić złożenie bez komponentu 1.sldprt.
Aby uniknąć wyświetlania komunikatu o nieprawidłowym ID przy zmianie komponentów, należy wykorzystywać funkcję „Zastąp komponenty”.