Mam trochę kodu Python, który jest uruchamiany z projektu ArcMap. Wszelkie sprzężenia, które użytkownik mógł utworzyć w projekcie, muszą zostać usunięte, aby mój kod działał. Niestety kod, który usuwa złączenie… arcpy.RemoveJoin_management („layer1”, „layer2”)… również łamie niektóre właściwości warstwy, które są krytyczne dla mojej aplikacji (podświetlone pola, pola tylko do odczytu itp.).
Jeśli łączenia są usuwane poprzez kliknięcie warstwy prawym przyciskiem myszy w ArcMap i wybranie „Usuń połączenia”, właściwości warstwy pozostają nienaruszone.
Jeśli mogę wykryć, że istnieje sprzężenie z mojego kodu, po prostu wyjdę z kodu i wyświetli komunikat, że użytkownik musi ręcznie usunąć swoje sprzężenia przed próbą uruchomienia kodu. Więc… Czy sprzężenie można wykryć programowo?