Дипломная работа: Проект электронного архива
1.5 Цели и задачи дипломного проекта
Разработать комплекс сопровождения архива документов недвижимого имущества.
Комплекс должен обеспечивать:
Ввод, редактирование и хранение документов в виде их атрибутов и изображения оригинала. Количество и тип атрибутов настраиваются пользователем;
Ввод, редактировни и хранение информации по объектам недвижимого имущества
Архивирование документов;
Безопасность и защищенность базы данных;
Интеграцию с существующими планово-экономическими и техническими комплексами.
2. Разработка комплекса
2.1 Общие сведения
Комплекс ОНИ построен по двухзвенной технологии клиент сервер, в качестве платформы использует СУБД Microsoft SQL Server 7.0. Применение технологии клиент – сервер оправдано при создании сложных систем. Она позволяет:
Модифицировать серверную часть независимо от клиентской. При исправлении нет необходимости обновлять ПО на машинах клиентах;
Использовать более «слабые» машины в качестве клиентских, возлагая основную работу по поддержанию целостности данных и доступа к данных на сервер;
Использование сервера для доступа к данным гарантирует единую точку входа в систему и, следовательную, большую безопасноть и защищенность.
Рассмотрим их поподробнее функции серверной и клиентской части комплекса ОНИ:
Непосредственно хранение данных средствами MS SQL Server 7.0;
Реализация части функций с помощью хранимых процедур и представлений;
Поддержание целостности БД путем использования ограничений;
Обращение к серверной части в основном происходит с помощью вызова хранимых процедур, которые реализуют требуемое действие. В хранимой процедуре также осуществляется проверка корректности данных и формируются сообщения об ошибках. Применение хранимых процедур всместо низкоуровневых операторов SQL позволило перенести все сообщения об ошибках работы с базой данных на SQL сервер. При необходимости можно изменить сообщение без перекомпиляции исходного кода и внесения изменений на каждую клиентскую машину.
Клиентская часть комплекса
Пользовательский интерфейс;
Реализует интерфейс доступа к данным, хранимым в базе данных;
Ввод, первоначальная проверка корректности вводимой инфорамации;
Работа со справочниками;
2.2 Модель базы данных
Разрабатываемый комплекс использует две подсистемы данных: одна – это документы, а вторая – объекты недвижимого имущества. Рассмотрим их отдельно.
На рис.2.2.1 изображена часть структуры базы данных, предназначенная для хранения документов.
Рис.2.2.1. Подсистема хранения документов.
Введем несколько обозначений. Для большинства таблиц имеется первичный ключ, будем называть его идентификатором (ID), внешние ключи будем отмечать символами FK.
Рассмотрим структуру таблиц:
Документы (Docs) – документы и их общие атрибуты:
DocID – ID документа;
SubTypeID – ID подтипа документа;
OrgID – ID организации;
DocDate – дата документа;
DocNumber – номер документа;
Организации (Organizations) – организации и структурные подразделения, к которым относятся документы:
OrgID – ID организации;
Name – юридическое наименование организации;
Address – юридический адрес;
Telephone – телефоны;
INN – ИНН организации;
ПодтипыДокументов (DocSubTypes) – подтипы (версии типов) документов:
SubTypeID – ID подтипа документа;
TypeID – ID типа документа;
Name – название подтипа документа;О
ТипыДокументов (DocTypes) – типы документов:
TypeID – ID типа документов;
Name – название типа документа;
ОпределениеАтрибутов (Attributes) – структура документа, определение простых атрибутов:
AttribID – ID атрибутов;
SubTypeID – ID подтипа документа;
TabOrder – номер атрибута в РКК документа;
DomainID – ID домена значений атрибута документа;
Name – название атрибута;
Plurality – тип атрибута – простой или множественный;
Домены (Domains) – домены значений атрибутов документа:
DomainID – ID домена значений атрибута документа;
Name – название домена значений атрибута документа;
DomainType – тип домена – встроенный тип данных сервера баз данных или электронный документа, отсканированный оригинал и т.д.;
Realization – реализация домена для используемого сервера баз данных;
ОпределениеПолейСильноМнож (VMAttributes) – структура сильно множественных атрибутов документа:
AtribID – ID сильно множественного атрибута;
ColumnID – номер определяемого столбца сильно множественного атрибута;
DomainID – ID домена значений атрибута документа;
Name – название определяемого столбца сильно множественного атрибута;
ЗначениеАтрибутов (таблицы ATS1, ATS2, … ) – содержимое простых атрибутов документа:
DocID – ID документа, к которому относится атрибут;
Field1,Field2,… - значения простых атрибутов документа;
ЗначениеПолейСильноМножАтрибутов (таблицы ATM1, ATM2, ) – содержимое сильно множественных атрибутов документа:
DocID – ID документа, к которому относится атрибут;
RowID – номер строки;
Field1, Field2,… - значения полей сильно множественного атрибута.
Для хранения информации об объектах недвижимого имущества и комплексах объектов недвижимого имущества используется часть базы данных, показанная на рис.2.2.2.
Рис. 2.2.2. Часть структуры базы данных, описывающая объекты недвижимого имущества.
Рассмотрим структуру таблиц:
ОбъектКомплекса – таблица наименований объектов недвижимого имущества:
ID_Objlm – Уникальный идентификатор технического объекта как объекта недвижимого имущества;
ID_ImCplx (FK)
ID_ObjTab (FK)
ObjKeyAccess
ObjName
ID_Type (FK)
RefID
ИмущественныйКомплекс – таблица наименований имущественных комплексов:
ID_ImCplx
Name_ImCplx
ObslOrg
Оборудование – справочник имен базовых таблиц для технических паспортов объектов:
Hard_Num
Modul
Table_Name
Hard_Name
ТипОбъекта – таблица типов объектов по их положению в иерархии имущественного комплекса:
ID_Type
TypeName
BTI_TabName
BTI_10 – таблица параметров БТИ для строительной части ПС, ТП, РП, ЗРУ:
ID_ObjIm (FK)
InvNum
InvDate
SetDAte
BldType
OutLen
OutWidth
OutArea
TotFloor
FoundType
WallType
RoofType
PrisOtmost
FenceType
RoadType
BalPrin
BTI_11 – таблица параметров БТИ для воздушных ЛЭП:
ID_ObjIm (FK)
InvNum
InvDate
SetDate
WrkVolt
LineType
ProvType
MainSec
OpType
OpTotal
LineLen
BalPrin
BTI_12 – таблица параметров БТИ для кабельных ЛЭП 6-10 кВ:
ID_ObjIm(FK)
InvNum
InvDate
SetDAte
WrkVolt
CabVolt
CabType
MainSec
TotKolod
LineLen
BalPrin
BTI_13 – таблица параметров БТИ для кабельных ЛЭП 0,4 кВ:
ID_ObjIm (FK)
InvNum
InvDate
NumTP
ObjAdress
ObjName
SetDate
ProvType
MainSec
OpType
OpTotal
PrislsolProv
LineLen
BalPrin
BTI_14 – таблица параметров БТИ для воздушных ЛЭП 0,4 кВ:
ID_ObjIm (FK).
InvNum
InvDate
NumTP
ObjAdress
ObjName
SetDate
CabVolt
CabType
MainSec
TotKolod
LineLen
BalPrin
2.3 Хранение документов произвольной структуры
Документ – слабо структурированный объект, но тем не менее для формализованного поиска необходимо выделять в нем некоторые структуры, общие для всех документов с тем, чтобы по этим структурам осуществлять поиск документов. Эти структуры принято называть атрибутами документов. Документы бывают разные и невозможно заранее предусмотреть для всех их состав. Все виды атрибутов, используемых в документе, заранее указать нельзя. Пойдем на компромисс между полнотой описания документа и простотой описания состава документа в терминах реляционных отношений. Попытаемся выделить и использовать основные виды атрибутов. Таковыми представляются атрибуты вида «поле документа» - содержат одно единственное значение из некоторого множества значений, которое называется доменом значения атрибутов. Такие атрибуты назовем простыми атрибутами. Можно выделить еще атрибуты вида «таблица значений». Наиболее употребительными являются таблицы, у которых столбцы имеют заголовки, а строки пронумерованы, может быть и неявно. Назовем такие атрибуты сильно множественными.
Все документы одинакового состава назовем относящимися к одному виду документов. Кроме того, с течением времени структура используемых документов будет менятся, и, хотя формально документы одного вида, структура у них будет разного. Поэтому реализуем в рамках типа документа подтипы (версии типов) документа. Состав документа необходимо описывать. Естественным кажется завести таблицы для описания атрибутов, в которых указывается, какие атрибуты принадлежат виду документов, кроме того для описания множественных атрибутов требуется таблица с описанием заголовков столбцов.
Мы пришли к тому, что состав документа у нас теперь описан, но где хранить значения атрибутов документов. Документы разных видов нельзя хранить в одной таблице, так как количество полей и домены значений атрибутов различных видов документов разнятся. Поэтому для каждого атрибута каждого вида документа необходимо создавать отдельную таблицу.
Итак, у нас имеется таблица описания типов документов DocTypes, таблица описания подтипов документов DocSubTypes. Таблица Attributes описывает все атрибуты указанного подтипа документа, если атрибут множественный, то определение его полей находится в таблице VMAttributes. Все атрибуты относятся к какому – то домену значений, домены описаны в таблице Domains.
Для хранения значений атрибутов для каждого подтипа создается таблица, имя которой формируется по правилу “ATS”+SubTypeID, где ATS” – префикс, а SubTypeID – ID подтипа документа. Для хранения значений множественных атрибутов для каждого множественного атрибута создается таблица ATM “ATM”+AttribID, где “ATM” – префикс, а AttribID – ID множественного атрибута. Такая схема формирования имен обеспечивает уникальность.
Для лучшего понимания приведем пример.
2.3.1 Пример структуры документа
|
Рис.2.3.1.1. Пример документа.
Структура документа
Название документа
Дата(хранится в таблице Документы и среди атрибутов)
Номер(хранится в таблице Документы и среди атрибутов)
Дата регистрации
Кто зарегистрировал
ТаблицаОбъектов
Инв. №
Название
Адрес
Стоимость первоначальная
Стоимость остаточная
Износ
Домены Значений Атрибутов
DomainID | Description | Realization |
1 | Дата | Datetime |
2 | Название документа | Varchar(100) |
3 | Номер документа | Varchar(30) |
4 | Организация | Varchar(100) |
5 | Денежная сумма | Money |
6 | Инвентарный номер | Varchar(20) |
7 | Наименование объекта | Varchar(30) |
8 | Адрес | Varchar(20) |
Типы документов
TypeID | Name |
1 | Приложение к плану приватизации "Акт оценки №1 стоимости зданий, сооружений, передаточных устройств" |
Организации
OrgID | Name | Address | Telephone | INN |
1 | АО «Свердловэнерго» | NULL | NULL | NULL |
Документы
DocID | OrgID | TypeID | DocDate | DocNumber |
1 | 1 | 12.11.2000 |
Определение атрибутов
AttribID | TypeID | DomainID | TabOrder | Name | Plurality |
1 | 1 | 2 | 1 | Название | 0 |
2 | 1 | 3 | 2 | Номер | 0 |
3 | 1 | 1 | 3 | Дата | 0 |
4 | 1 | 7 | 4 | Зарегистрировано | 0 |
5 | 1 | Null | 5 | СписокОбъектов | 2 |
ATS1