导入消息 (Data Management)
摘要
将增量文件中的变更内容导入复本地理数据库或将确认消息导入复本地理数据库。
用法
-
断开连接后对复本执行同步时使用此工具。要实现此操作,可先运行导出数据变更消息工具创建一个包含变更的增量文件以便进行同步。随后,将增量文件复制到相关复本中并使用导入消息工具导入。如果由于增量文件丢失而希望重新发送,则可使用重新导出未确认的消息工具重新生成增量文件。导入变更后,相关复本可通过导出确认消息工具导出一个确认文件。该确认文件将复制到复本中并使用导入消息工具导入。如果未收到确认消息,则下次发送变更时将包含新增变更和先前发送过的变更。
-
该地理数据库可以是本地地理数据库,也可以是地理数据服务。
-
接受确认消息或数据变更消息。确认文件为 XML (.xml)。数据变更消息可为增量文件地理数据库 (.gdb)、增量个人地理数据库 (.mdb) 或增量 XML 文件 (.xml)。
-
导入数据变更消息后,可以选择立即导出确认消息。输出确认文件必须为 XML。
-
要在连接模式下同步复本,请参阅同步数据变化工具。
语法
参数 | 说明 | 数据类型 |
in_geodatabase |
指定复本地理数据库接收导入的消息。地理数据库可以是本地地理数据库也可以是远程地理数据库。 | Workspace ; GeoDataServer |
source_delta_file |
指定要导出消息的文件。 | Workspace ; File |
output_acknowledgement_file (可选) |
导入数据变更时,通过此参数还可以导出一个消息以确认数据变更消息已导入。除数据变更消息外,对于其他任何对象均将忽略此选项。 | File |
conflict_policy (可选) |
指定导入数据变更消息时冲突的解决方式。
| String |
conflict_definition (可选) |
指定定义冲突的方式:
| String |
reconcile_with_parent_version (可选) |
指示如果不存在任何冲突,则在数据变更发送到父复本后是否自动进行协调。此选项仅适用于检出/检入复本。
| Boolean |
代码实例
以下示例演示了如何在 Python 窗口中使用 ImportMessage 函数。
import arcpy
from arcpy import env
env.workspace = "C:/Data"
arcpy.ImportMessage_management("MySDEdata.sde", "DataChanges.gdb", "acknowledgement.xml", "IN_FAVOR_OF_IMPORTED_CHANGES", "BY_OBJECT")
以下示例演示了如何在独立 Python 脚本中使用 ImportMessage 函数导入数据变更文件。
# Name: ImportMessage_Example2.py
# Description: Imports a data change message (from a delta gdb) into a replica workspace.
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "C:/Data"
# Set local variables
replica_workspace = "MySDEdata.sde"
in_message = "DataChanges.gdb" # data changes file (delta gdb)
output_acknowledgement = "acknowledgement.xml" # optional
conflict_policy = "IN_FAVOR_OF_IMPORTED_CHANGES"
conflict_detection = "BY_OBJECT"
reconcile = "" # Only applicable for checkout replicas
# Execute Import Message
arcpy.ImportMessage_management(replica_workspace, in_message, output_acknowledgement, conflict_policy, conflict_detection, reconcile)
以下示例演示了如何在独立 Python 脚本中使用 ImportMessage 函数导入数据变更文件。
# Name: ImportMessage_Example3.py
# Description: Imports an acknowledgement message into a replica workspace.
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "C:/Data"
# Set local variables
replica_workspace = "MySDEdata.sde"
in_message = "acknowledgement.xml" # Acknowledgement file
output_acknowledgement = "" # not applicable when importing an acknowledgement file
conflict_policy = "" # not applicable when importing an acknowledgement file
conflict_detection = "" # not applicable when importing an acknowledgement file
reconcile = "" # not applicable when importing an acknowledgement file
# Execute Import Message
arcpy.ImportMessage_management(replica_workspace, dc_Message, output_acknowledgement, conflict_policy, conflict_detection, reconcile)