¿Ejecuta Python Script al abrir MXD?

22

¿Alguien puede decirme cómo lograr esto?

Quiero que se ejecute un script de Python al abrir el MXD que extraería una hoja de cálculo de Excel en un GDB y actualizaría el mapa.

Solo quiero que esto suceda en este MXD específico.

gg7aph
fuente

Respuestas:

14

Si va a ArcMap 10.1, puede crear un complemento de Python. El complemento le da acceso a una función "al abrir" que ejecutará código cuando abra el mxd.

La ayuda aquí explica cómo crear uno y tiene una muestra que agrega una capa base al mxd cuando se abre.

TurboGus
fuente
5

Puede codificar dentro del VBA del mxd y llamar al script python dentro del contenedor de código a continuación:

Private Function MxDocument_OpenDocument() As Boolean

End Function
artwork21
fuente
Buena pregunta. Aquí se puede encontrar una posible continuación de la respuesta de artwork21, pero aún no lo he probado, es una solución alternativa, pero suena prometedor.
jonatr
3

En 10.0, podría usar VBA como en la respuesta de artwork21 , o escribir un complemento ArcMap muy simple usando ArcObjects para ejecutar una herramienta de script o ejecutar ejecutables / scripts arbitrarios al inicio, como en esta respuesta .

Probablemente valdría la pena esperar los complementos de Python de 10.1 si no desea escribir un complemento de ArcObjects específicamente para esto.

blah238
fuente