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


  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. 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(五)-- Filter

    在上一篇里,介绍了中间件的相关内容和使用方法.本篇将介绍Asp.Net Core MVC框架的过滤器的相关内容和使用方法,并简单说明一下与中间件的区别. 第一部分.MVC框架内置过滤器 下图展示了As ...

  2. Knockout.Js官网学习(简介)

    前言 最近一段时间在网上经常看到关于Knockout.js文章,于是自己就到官网看了下,不过是英文的,自己果断搞不来,借用google翻译了一下.然后刚刚发现在建立asp.net mvc4.0的应用程 ...

  3. 学习simple.data之进阶篇

    一.结果排序 -OrderBy(升序) -OrderByDescending(降序) db.Product.All().OrderByFactoryName(); db.Product.All().O ...

  4. Learning Scrapy笔记(零) - 前言

    我已经使用了scrapy有半年之多,但是却一直都感觉没有入门,网上关于scrapy的文章简直少得可怜,而官网上的文档(http://doc.scrapy.org/en/1.0/index.html)对 ...

  5. Dapper多表查询(列名重复,类字段重复)映射方案

    1. 一个主名,一个别名,设计时候属性和字段命名不同. 这样主名和别名都可以用的,在主名与别人重复时候用别名(别名可以设计的明确一点长一点,比如类名和字段结合) 2. 或者找一个字段多的直接继承出一个 ...

  6. MVC的Filters(拦截过滤)的Error页面,支持Ajax报错

    报错拦截过滤到error页面 [AttributeUsage(AttributeTargets.Method | AttributeTargets.Class, Inherited = true, A ...

  7. python 数据类型(sequence 序列、dictionary 词典、动态类型)

    文章内容摘自:http://www.cnblogs.com/vamei 1.sequence 序列 sequence(序列)是一组有顺序的元素的集合 (严格的说,是对象的集合,但鉴于我们还没有引入“对 ...

  8. Jquery + echarts 使用

    常规用法,就不细说了,按照官网一步步来. 本文主要解决问题(已参考网上其他文章): 1.把echarts给扩展到JQuery上,做到更方便调用. 2.多图共存 3.常见的X轴格式化,钻取时传业务实体I ...

  9. 【转】oracle connect by用法

    今天偶然看到connect by,但记不太清楚具体用法了.转了个博客(写的蛮好的),当作笔记. http://www.cnblogs.com/linjiqin/p/3152690.html 先用sco ...

  10. Linux编译内核提示'make menuconfig' requires the ncurses libraries错误

    原来使用的ubuntu 11.10系统由于误操作,导致系统崩溃,重新安装了ubuntu 11.10: 在编译内核的时候,提示如下错误: dingq@wd-u1110:~/hwsvn/2sw/1prj_ ...