ListReplicas

Synthèse

Répertorier les réplicas dans l'espace de travail.

Discussion

Vous pouvez définir le chemin d'accès à un fichier de connexion comme argument de la fonction ou définir l'environnement de l'espace de travail sur le fichier de connexion et appeler la fonction ListReplicas sans aucun argument.

Syntaxe

ListReplicas (workspace, {all_replicas})
ParamètreExplicationType de données
workspace

A geodatabase workspace.

String
all_replicas

Specifies whether to return all replica types in the geodatabase.

  • True—Return all types of replicas. This may include Replica or SyncReplica objects.
  • False—Return only Replica objects. These include replicas created from geodatabase replication workflows as well as replicas created from feature services running on traditional versioned data. This is the default.

(La valeur par défaut est False)

Boolean
Valeur renvoyée
Type de donnéesExplication
Replica

Une liste est renvoyée par la fonction contenant les objets Replica.

Si l’argument all_replicas a été défini sur True, les objets SyncReplica peuvent également être renvoyés.

Exemple de code

Exemple 1 d'utilisation de la fonction ListReplicas

Pour chaque réplica émetteur d’un espace de travail, appelez la fonction ExportDataChangeMessage.

import arcpy
import os

sdeConnection = "C:/Data/toolboxDEFAULTVersion.sde"
outLocation = "C:/data"

for replica in arcpy.da.ListReplicas(sdeConnection):
    # If the replica is a sender, call ExportDataChangeMessage
    if replica.isSender:
        changesFile = os.path.join(outputLocation,
                                   "changes_{0}.gdb".format(replica.name))
        arcpy.ExportDataChangeMessage_management(sdeConnection,
                                                 changes,
                                                 replica.name)
Exemple 2 d'utilisation de la fonction ListReplicas

Imprimez tous les réplicas qui sont en conflit.

import arcpy

sdeConnection = "C:/Data/toolboxDEFAULTVersion.sde"

# Print the name of the replicas that are in conflict
#
for replica in arcpy.da.ListReplicas(sdeConnection):
    if replica.hasConflicts:
        print(replica.name)
Exemple 3 d’utilisation de la fonction ListReplicas

Imprimer les propriétés d’un objet SyncReplica

# Import required modules
import arcpy

# Use the ListReplicas function to return all replicas in the geodatabase
replicas = arcpy.da.ListReplicas("C:\\Projects\\MyProject\\myGDB.sde", True)

for r in replicas:
    # Check if the class is a SyncReplica
    if isinstance(r, arcpy.da.SyncReplica):
        # Print the properties of a SyncReplica object
        print("Properties of replica named: {}".format(r.name))
        print("Datasets: {}".format(r.datasets))    
        print("Owner: {}".format(r.owner))
        print("Replica ID: {}".format(r.replicaID))
        print("Service name: {}".format(r.serviceName))
        print("Version: {}".format(r.version))
        print("Direction: {}".format(r.direction))
        print("Sync model: {}".format(r.syncModel))
        print("Last sync date: {}".format(r.lastSyncDate))
        print("LayerServerGens: {}".format(r.layerServerGens))
        print("LayerServerSibGens: {}".format(r.layerServerSibGens))
        print("ReplicaServerGen: {}".format(r.replicaServerGen))
        print("ReplicaServerSibGen: {}".format(r.replicaServerSibGen))
        print("Target type: {}".format(r.targetType))

Rubriques connexes


Dans cette rubrique