最近花了点时间把之前的空间数据入库功能进行了完善,在这里做一个简单的介绍,也希望大家给提点意见和建议,我的目标是做一个好用、易用、通用、稳定的入库程序。


  1、软件特点:

    • 基于模板(方案)的数据更新

    采用配置模板进行更新操作,对于接边、推历史库、图层字段映射等根据客户需要灵活定制。
    可配置信息包括:

序号

功能名称

功能描述

备注

1

基础配置

配置现状/历史图层名称命名规则,现状/历史关键字段,宏字段等信息。

宏字段是以[]包围的文本,在其它配置文件中可以使用宏字段代替相应的内容。

2

图层字段映射配置

指定源图层和目标图层的对应关系,字段的对应关系;目标数据库不存在对应图层的处理方式;是否仅入库配置图层;目标图层字段不存在的处理方式等信息。

将源图层中满足条件的实体入库到指定图层,并根据字段对应关系赋值。

3

数据归档配置

设定是否启用归档模式(数据存储到历史库);哪些图层支持归档;归档类型(待入库数据范围内所有现状数据都归档、待入库数据范围内变化了的数据归档)

4

数据变更检查配置

配置要素变化检测标准,识别要素是否发生了变化。

包括属性和空间两种判断依据。

5

接边配置

配置范围图层名称,需要接边的图层名称,需要接边实体的过滤条件,接边判断条件等信息。

6

审核配置

入库时对于入库数据进行审核,包括了图层存在性、非空性、字段存在性、字段类型、字段值非空、字段值赋值规则、字段值与现有数据冲突规则等。

 
    • 集成入库审核,提高数据入库门槛

      数据入库时根据需要进行数据审核,满足条件的数据才能进行入库。主要包括:
      图层存在性、非空性、字段存在性、字段类型、字段值非空、字段值赋值规则、字段值与现有数据冲突规则
       如:控规数据入库时,用地性质必须与总规的用地性质保持一致;
              图层中必须包括设计人员字段,且设计人员字段值不能为空;
          控规地块的建筑密度必须是0到100且最多2位小数的数值
          ……

    • 基于事务的数据更新

      数据更新后,用户可以选择是否保存编辑到数据库,如果发现有错误,可以取消保存,则数据库保持更新前状态。

    • 支持C#脚本

       数据更新时,如果入库方案的配置无法满足入库要求,可以编写C#脚本辅助执行特定的操作。

    • 数据版本自动维护

      根据数据更新时间,自动维护数据版本,便于数据比对与回溯。

    • 待入库数据自动纠错

     待入库数据如果与SDE中图层的坐标系统不一致,系统自动修改待入库数据坐标系统,使其与目标库中保持一致;
     待入库数据如果存在面积为负数的情况,系统自动纠正。

    • 数据接边

    对需要接边的数据进行接边处理,如:道路中心线、河道蓝线等。

    • 快速导入与更新多模式选择

    快速导入模式适用于初始建库;更新模式适用于在已有数据基础上的数据变更。

    • 详细的提示信息

    输出详细的提示信息,便于用户及时掌握数据更新状态。


2、适用行业:

  已经在如下类型项目中得以应用,希望有机会参与其它行业的空间数据建库项目。

    • 地形数据建库
    • 地籍数据建库
    • 规划数据建库

3、界面截图:

1)建库效果

2)入库方案编辑

3)入库方案编辑(编辑脚本)

4)入库方案编辑(性能优化)

4、场景描述

   1)A国土局之前没有进行过地形图建库,现在需要建立SDE库,希望快速把本地文件(mdb文件、SHP文件)导入到SDE中,并且由于数据仅限于以底图的方式浏览察看使用,对于浏览察看的效率要求较高;存储空间一般,不需要保留历史库。

    分析:
    由于之前没有进行建库,适用入库程序的快速导入模式,可以将数据批量导入到SDE中。由于数据仅限于浏览察看,且调图性能要求较高,建议按照点、线、面、注记的方式简单分层,以图幅为单位建库,并对建库后的SDE图层执行Group操作,以提高调图速度。

    解决方案:

A)采用快速导入模式;
           B)入库性能优化中选择“快速导入使用Load方式”
    C)取消归档、取消接边
           D)启用SDE分组,并设置按照图幅号分组

   2)B规划局进行规划数据建库,将控规按照规划单元进行划分,将设计好的数据转换成SHP文件,进行建库,要求道路中心线要接边,控规单位内原有的数据不论是否变化要全部推入历史库,能够查询到历史控规数据。

    解决方案:
    A)将控规单元定义为更新范围
    B)建立现状和历史SDE图层
    C)接边配置中添加道路中心线
    D)启动归档,并且将需要归档的图层设置为数据全部归档
    E)由于同一条道路在接边时可能跨了两个不同的规划单元,道路上如果有所属规划单元属性字段,在变更配置中,将道路中心线的所属规划单元字段设置为不做检查

  4、后续工作

    1)定义CAD->GIS对应关系,直接将DWG数据分类、提取、转换、入库,无需进行额外的数据转换操作。

    2)完善针对历史版本的各项操作(合并、浏览、输出……)

 

基于ArcEngine的空间数据通用建库软件介绍的更多相关文章

  1. ArcGIS农村土地承包经营权辅助建库软件说明书

    软件作者:闫磊  电话:18987281928 或13108507190 QQ:853740877,QQ交流群:236352926 1.    软件安装... 4 2.           系统整体界 ...

  2. arcgis 地理国情建库软件已完成

    arcgis 地理国情软件已完成: 1.创建1:25000(或则其他比例尺)国家2000坐标系接合表 2.按照地理国情普查数据库标准,创建标准数据库 3.外业调查工作底图制作 4.矢量和影像数据批量裁 ...

  3. VMware下安装Linux系统,ORACLE软件,DBCA建库

    操作系统安装   在vmware下安装Linux (OEL5.6),用于数据库服务器 1.打开vmware,选择"创建新的虚拟机"       2.选择自定义安装   3.选择虚拟 ...

  4. 静默方式安装10g数据库软件+升级patch+手工建库

    通常我们安装Oracle数据库软件,都是用OUI图形界面来完成的,但有些Unix/Linux系统中并未安装图形系统,也就无法使用图形界面来安装Oracle的产品了,对于这种场景,就只能采用静默方式来安 ...

  5. 基于EntityFramework 6 Code First实现动态建库,分库,数据库自动迁移

    一.前言 公司原本有一个"xx系统",ORM使用EntityFramework,Code First模式.该系统是针对某个客户企业的,现要求该系统支持多个企业使用,但是又不能给每个 ...

  6. 基于memcached的单机轻量级通用缓存库minicached的实现

    一.前言 之前拜读过淘宝子柳的<淘宝技术这十年>之大作,深知缓存技术在系统优化中起着一个举足轻重的作用.无论是文件系统静态文件,数据库的访问,乃至网络数据的请求,只要是与内存访问速度相差较 ...

  7. 【转】 GRASP(通用职责分配软件模式)模式

    转自:http://www.cnblogs.com/sevenyuan/archive/2010/03/05/1678730.html 及:http://blog.csdn.net/lovelion ...

  8. 介绍n款计算机视觉库/人脸识别开源库/软件

    计算机视觉库 OpenCV OpenCV是Intel®开源计算机视觉库.它由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法. OpenCV 拥有包括 300 多个 ...

  9. 【转】SVN建库方法

    转载地址:http://blog.csdn.net/winonatong/article/details/5791919 SVN全名Subversion,即版本控制系统.SVN与CVS一样,是一个跨平 ...

随机推荐

  1. 深入了解Javascript模块化编程

    本文译自Ben Cherry的<JavaScript Module Pattern: In-Depth>.虽然个人不太认同js中私有变量存在的必要性,但是本文非常全面地介绍了Javascr ...

  2. 自己实现的一款在线Javascript正则表达式测试器——JRE-Parser

    本文最初发布于我的个人博客:http://jerryzou.com/posts/jreparser/ 昨天在看<正则表达式30分钟入门教程>的时候,看到博主自己实现了一个C#写的正则测试器 ...

  3. Jquery动画效果--地铁站名指示等效果

    源码参考:源码爱好者--jQuery仿地铁线路指示灯效果,经修改和美化,特此记录一下. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tra ...

  4. php无法加载Memcache缓存模块问题及Memcache的安装

    今天早上去迁移网站发现打开网站报错 然后我去phpinfo.php看了一下,果然我的测试页里面有加载到Memcache这个模块,如下图: 这时候,既然发现了问题的所在我们就要去排查问题,当前这个问题呢 ...

  5. Silverlight DataGrid数据行背景颜色控制

    sdk:DataGrid数据绑定后,部分特殊的行需要用不同的背景颜色来显示.(注册DataGrid的LoadingRow事件) private void radGridView_LoadingRow( ...

  6. PHP数组在HTML之中的应用

    <select name="data[status]" id="" <?php if(in_array($list['status'],array( ...

  7. 模拟新浪微博textarea,刷新页面输入信息保留

    今天我们的产品经理提出一个新需求,模拟新浪微博textarea框,输入内容刷新页面保留信息. 我是用的方法是Html5 LocalStorage存储的,开始计划用cookie.或mysql存储,尝试了 ...

  8. PHP 定时任务|Cron

    一.  Crontab 介绍 crontab命令的功能是在一定的时间间隔调度一些命令的执行.在/etc目录下有一个crontab文件,这里存放有系统运行的一些调度程序.每个用户可以建立自己的调度cro ...

  9. How to using to code import to GL journal[AX2012]

    static void THK_importLedgerJournalTrans(Args _args) { Filename fileName = "C:\\Users\\ksiu3880 ...

  10. 第六章Linux的文件权限与目录配置

    一.Linux用户分类 1.Linux用户分为:(文件|目录)所有者(OWN),(同组内的)用户组,其他人; 2.一个天神:root;,几乎能完成任何事.... 二.目录权限的意义 目录的权限和文件的 ...