Ich habe Python-Code, der in einem ArcMap-Projekt gestartet wird. Alle Verknüpfungen, die der Benutzer möglicherweise im Projekt erstellt hat, müssen entfernt werden, damit mein Code ausgeführt werden kann. Leider zerstört der Code, der einen Join entfernt… arcpy.RemoveJoin_management ("layer1", "layer2") ... auch einige der Layereigenschaften, die für meine Anwendung kritisch sind (hervorgehobene Felder, schreibgeschützte Felder usw.).
Wenn Verknüpfungen entfernt werden, indem Sie mit der rechten Maustaste auf die Ebene in ArcMap klicken und "Verknüpfungen entfernen" auswählen, bleiben die Ebeneneigenschaften erhalten.
Wenn ich in meinem Code feststellen kann, dass ein Join vorhanden ist, beende ich den Code einfach und zeige eine Meldung an, dass der Benutzer seine Joins manuell entfernen muss, bevor er versucht, den Code auszuführen. Also ... Kann ein Join programmgesteuert erkannt werden?