2023-05-27 15:58:49 +08:00
|
|
|
|
# shsmi_sysdb_nex
|
|
|
|
|
|
2023-05-29 17:27:23 +08:00
|
|
|
|
## Description
|
|
|
|
|
本程序用于将SDE数据库中的增量入库数据同步到本地mdo文件中,用于更新上海院的版本库。
|
|
|
|
|
|
|
|
|
|
## 同步原理
|
|
|
|
|
1. 从SDE数据库中读取增量入库数据到本地gdb,包括新增、修改、删除三个gdb数据文件;
|
|
|
|
|
2. 将本地gdb数据文件同步到mdo文件中,包括新增、修改、删除三个mdo数据文件;这步转换需要EPS;
|
|
|
|
|
3. 将gdb三文件,通过标准转换py脚本,转换为gdb二文件的旧标准格式;
|
|
|
|
|
4. 将gdb二文件的旧标准格式,进行秘密信息处理,生产保密的gdb二文件;
|
|
|
|
|
|
|
|
|
|
## 使用方法
|
|
|
|
|
1. 将程序部署到服务器上,例如:D:\shsmi_sysdb_nex
|
|
|
|
|
2. 在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
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
3. 在D:\shsmi_sysdb_nex\ExportGdbSetting.config 中配置新标准转换旧标准的对照规则
|
|
|
|
|
4. 创建一个bat文件,例如:D:\shsmi_sysdb_nex\run.bat,内容如下:
|
|
|
|
|
```
|
|
|
|
|
@echo off
|
|
|
|
|
cd /d %~dp0
|
|
|
|
|
C:/Python27/ArcGIS10.2/python.exe main.py
|
|
|
|
|
pause
|
|
|
|
|
```
|
|
|
|
|
5. 在windows计划任务中,配置定时执行run.bat文件,例如每天凌晨1点执行一次。(或者使用消息队列监管程序,定时执行run.bat文件)
|
|
|
|
|
|
|
|
|
|
## 注意事项
|
|
|
|
|
1. 本程序需要EPS软件的支持,EPS软件需要单独购买,EPS软件的安装路径需要在SdeSyncSetting.config中配置;
|
|
|
|
|
2. 本程序需要ArcGIS软件的支持,ArcGIS软件需要单独购买;
|
|
|
|
|
3. 本程序需要ArcGIS的python环境,ArcGIS的python环境需要单独安装,ArcGIS的python环境的安装路径需要在SdeSyncSetting.config中配置;
|
|
|
|
|
4. 本程序基于ArcGIS的python环境开发,python版本为2.7,ArcGIS版本为10.2.2;
|