6 votos

Los cambios en la réplica sincronizada no se muestran en ArcMap o ArcCatalog sin actualizar

Estoy sincronizando una réplica unidireccional en ArcEditor usando Python. Intenté agregar RefreshActiveView y RefreshCatalog al código, pero todavía necesito refrescar la base de datos sincronizada para ver los resultados. Aquí está un fragmento de código:

Connection_to_geoDBReplicationTest = "C:\Connection to geoDBReplicationTest.sde"

Connection_to_geoDBRepTest_2 = "C:\Connection to geoDBRepTest_2.sde"

arcpy.SynchronizeChanges_management(Connection_to_geoDBReplicationTest_sde,
 "GISUSER.timedTestReplica2", Connection_to_geoDBRepTest_2, "FROM_GEODATABASE1_TO_2",
 "IN_FAVOR_OF_GDB1", "BY_OBJECT", "DO_NOT_RECONCILE")

arcpy.RefreshCatalog(Connection_to_geoDBRepTest_2)

arcpy.RefreshActiveView()

¿Alguna idea? El código funciona, pero preferiría que el usuario no tuviera que actualizar la base de datos en ArcCatalog cada vez...

1voto

Rebecca Puntos 80

No estoy seguro de que ayude en tu caso, pero podrías añadir una recolección de basura antes de ejecutar ambas actualizaciones. Esto me ha funcionado en el pasado cuando una base de datos de resultados vacía no permitía ser eliminada por un script.

import arcpy, gc

synchronize changes

gc.collect()
refresh catalog
refresh active view

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X