35344439b6 | ||
---|---|---|
.idea | ||
test | ||
源库SDE连接 | ||
.gitignore | ||
ExportGdbSetting.config | ||
README.md | ||
SdeSyncSetting.config | ||
functions.py | ||
logger.py | ||
main.py | ||
run.bat | ||
sde_fc2fc.py | ||
sde_sync.py | ||
sys_config.py | ||
translate2old.py |
README.md
shsmi_sysdb_nex
Description
本程序用于将SDE数据库中的增量入库数据同步到本地mdo文件中,用于更新上海院的版本库。
同步原理
- 从SDE数据库中读取增量入库数据到本地gdb,包括新增、修改、删除三个gdb数据文件;
- 将本地gdb数据文件同步到mdo文件中,包括新增、修改、删除三个mdo数据文件;这步转换需要EPS;
- 将gdb三文件,通过标准转换py脚本,转换为gdb二文件的旧标准格式;
- 将gdb二文件的旧标准格式,进行秘密信息处理,生产保密的gdb二文件;
使用方法
- 将程序部署到服务器上,例如:D:\shsmi_sysdb_nex
- 在D:\shsmi_sysdb_nex\SdeSyncSetting.config中配置同步参数,例如:
[System]
# 配置EPS.EXE的文件路径
eps_path=C:/EPS20221017/eps.exe
# 配置python.exe的路径,要用arcgis默认安装的2.7
python_path=C:/Python27/ArcGIS10.2/python.exe
# 配置EPS的模板文件名,用于mdo转换使用
template_name="上海新型测绘_地理实体.mdt"
# 配置EPS的vbs文件名,用于mdo转换使用
eps_vbs=.\上海数据库同步\自动输出MDO.vbs
# 配置SDE数据库的scheme名称
sde_scheme=SHDLG500
# 配置EPS输出mdo是是否显示EPS子进程界面
eps_show=show
# 配置SDE同步gdb时,只同步图元数据,还是同步所有数据
sync_type=ALL
[UpdateRegion]
# 配置SDE库中的更新区域图层名称
layer_name=UpdateRegion_A
# 配置SDE库中的更新区域图层的更新时间字段名称
updatetime_field=UpdateTime
# 配置SDE库中的更新区域历史图层的更新时间字段名称(即删除时间)
updatetime_field_history=DeleteTime
- 在D:\shsmi_sysdb_nex\ExportGdbSetting.config 中配置新标准转换旧标准的对照规则
- 创建一个bat文件,例如:D:\shsmi_sysdb_nex\run.bat,内容如下:
@echo off
cd /d %~dp0
C:/Python27/ArcGIS10.2/python.exe main.py
pause
- 在windows计划任务中,配置定时执行run.bat文件,例如每天凌晨1点执行一次。(或者使用消息队列监管程序,定时执行run.bat文件)
注意事项
- 本程序需要EPS软件的支持,EPS软件需要单独购买,EPS软件的安装路径需要在SdeSyncSetting.config中配置;
- 本程序需要ArcGIS软件的支持,ArcGIS软件需要单独购买;
- 本程序需要ArcGIS的python环境,ArcGIS的python环境需要单独安装,ArcGIS的python环境的安装路径需要在SdeSyncSetting.config中配置;
- 本程序基于ArcGIS的python环境开发,python版本为2.7,ArcGIS版本为10.2.2;