Importando MXD para ArcGIS Pro de forma programática?

8

Tenho um problema ao importar um arquivo MXD para o ArcGIS Pro programaticamente. Eu tento fazer isso usando o seguinte código arcpy.mp:

import arcpy
aprx = arcpy.mp.ArcGISProject(r"C:\test\blank.aprx")
aprx.importDocument(r"C:\test.mxd)
aprx.saveACopy(r"C:\test\filled.aprx")

Quando inicio o ArcGIS Pro e abro o arquivo de projeto resultante, nenhum item no Conteúdo pode estar visível. Tentei carregar o arquivo MXD programaticamente na instância aberta do ArcGIS Pro usando o quadro Python - também não há itens visíveis no Conteúdo após o carregamento. Para um teste final, tentei carregar esse MXD usando a GUI - e isso funciona perfeitamente, todas as camadas são visíveis no painel Conteúdo quando carregadas.

O que estou fazendo errado?

Konrad
fonte
3
Acabei de usar seu código e ele funciona bem para mim - Meu palpite é que você precisa abrir o mapa manualmente. No painel Projeto , expanda Mapas, você vê o MXD importado? Clique duas vezes nele.
KHibma
Obrigado, sim, meu MXD está lá. Existe uma maneira de abrir automaticamente este MXD quando o projeto é iniciado? Obviamente, em termos de fazê-lo programaticamente, para que o usuário não precise executar esta ação manualmente?
Konrad

Respostas:

5

Para acompanhar meu comentário, o código que você postou funciona, mas não abre automaticamente o mapa recém-importado.

Eu verifiquei com os membros da equipe arcpy.mp e, no momento da redação deste documento, não havia nenhuma função ou opção importDocumentpara abrir automaticamente o documento importado. Com o tempo, as funções podem ser aprimoradas (passei esse feedback para a equipe)

Você pode investigar usando o ProSDK. Eu sei que no SDK existem opções para abrir mapas de um projeto. Esta amostra aqui pode fazer o que você deseja. Observe que os suplementos estão "dentro do aplicativo", portanto, é um fluxo de trabalho singular. Onde o arcpy.mp em um script é um fluxo de trabalho mais automatizado (a menos que você tenha escrito código para automatizar vários aprx / mxds). Dependendo da sua situação, um método pode ser mais preferível que o outro (arcpy.mp vs. ProSDK).

KHibma
fonte