Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диплом.docx
Скачиваний:
213
Добавлен:
17.02.2016
Размер:
1.94 Mб
Скачать

Заключение

В результате курсового проектирования была спроектирована автоматизированная информационная система учета и процесса реализации объектов недвижимости риэлтерского агентства.

Основой для создания информационной системы послужили проблемы предметной области. В качестве средств разработки были выбраны CASE-средства AllFusionProcessModeler и ErwinDataModeler, предназначенные для автоматизации этапов анализа и проектирования предметной области.

После анализа предметной области и проектирования модели в соответствии с методологией IDEF1x, была построена концептуальная и логическая модели информационной системы.

Использование данной ИС упрощает доступ к персональным данным пациента, централизует хранение всех данных о клиентах, сотрудниках и недвижимости. Благодаря этому представляется возможность сократить численности административно - управляющего персонала и расходов на зарплату. Все это приводит к повышению управляемости компанией в целом и, как следствие, к увеличению прибыли.

Список использованной литературы

  1. Брукс, Ф. П. Как проектировать и создавать программные комплексы : учеб. пособие для студ. / Ф. П. Брукс. – М. : Наука, 2010. – 223 с.

  2. Гагарина, Л. Г. Разработка и эксплуатация автоматизированных информационных систем : учеб. пособие для студ. / Л. Г. Гагариной. – М. : Форум, 2010. – 384 с.

  3. Гайдамакин, Н. А. Автоматизированные информационные системы, базы и банки данных. Вводный курс : учеб. пособие для студ. / Н. А. Гайдамакин. – М. : Гелиос, 2010. – 368 с.

  4. Горев, А. Б. Эффективная работа с СУБД : учеб. пособие для студ. / А. Б. Горев. – М. : Питер, 2010. – 704 с.

  5. Кандзюба, С. П. Базы данных и приложения. Лекции и упражнения : учеб. пособие для студ. / С. П. Кандзюба. – М. : ДинСофт, 2011. – 576 с.

  6. Канке, А. А. Анализ финансово-хозяйственной деятельности предприятия : учеб. пособие / А. А. Канке. – М. :Дрофа, 2011. – 288 с

  7. Конноли, Т. Базы данных. Проектирование, реализация и сопровождение : учеб. пособие для студ. / Т. Конноли. – М. : Вильямс, 2011. – 1120 с.

  8. Мирошниченко, Г. А. Реляционные базы данных, практические приемы оптимальных решений : учеб. пособие для студ. / Г. А. Мирошниченко. – М. : Санкт-Петербург, 2012. – 400 с.

  9. Одинцов, И. В. Профессиональное программирование. Системный подход : учеб. пособие для студ. / И. В. Одинцов. – М.: Вильямс, 2011. – 122 с.

Приложение

' Created 15.02.2015

' Modified 15.02.2015

' Project

' Model

' Company

' Author

' Version

' Database Access 2000

'=======================================================

'=== MS Access 2000 database creation method

'===

'=== 1. Create a new database in the MS Access 2000

'=== 2. Create a new module

'=== 3. Copy the CASE Studio 2 output SQL script into the new MS Access 2000 module

'=== 4. Select from main menu "Tools" item "References..." and check the "Microsoft DAO 3.6 Object Library."

'=== 5. Place your mouse cursor somewhere in the main procedure Main()

'=== 6. Run the module code (Click the "Run Sub/UserForm" button or press F5)

'=======================================================

Public dbs As DAO.Database

Public tdf As DAO.TableDef

Public idx As DAO.Index

Public rel As DAO.Relation

Sub Main()

Set dbs = CurrentDb()

On Error GoTo ErrorHandler

Call BeforeScript

Call DropQueries

Call DropTables

Call DropIndexes

Call CreateTables

Call CreatePrimaryKeys

Call CreateIndexes

Call CreateAlterKeys

Call CreateRelations

Call CreateQueries

Call AfterScript

MsgBox "Script successfully processed.", vbInformation

Exit Sub

ErrorHandler:

Select Case Err.Number

Case 3010

MsgBox "Table " & tdf.Name & " allready exist!", vbInformation

Err.Clear

Case 3284

MsgBox "Index " & idx.Name & " for table " & tdf.Name & " allready exist!", vbInformation

Err.Clear

Case Else

MsgBox Err.Description, vbCritical

End Select

End Sub

' Drop queries

'===============

Sub DropQueries()

End Sub

' Drop indexes

'==============

Sub DropIndexes()

'Drop all non unique indexes

End Sub

' Drop tables

'===============

Public Sub DropTables()

'Drop relations

Call DropRelation("Клиент_Продажа")

Call DropRelation("Недвижимость_Продажа")

Call DropRelation("Недвижимость_Операции")

CallDropRelation("Вид_операции_Операции")

CallDropRelation("Тип_Недвижимости_Недвижимость")

'Drop tables

Call DropTable( "Клиент" )

Call DropTable( "Недвижимость" )

Call DropTable( "Операции" )

Call DropTable( "Рейс" )

Call DropTable( "Вид_недвижимости" )

Call DropTable( "Тип_недвижимости" )

End Sub

' Create tables

'===============

Sub CreateTables()

Call CreateTable3 'Тип_недвижимости

Call CreateTable4 'Вид_недвижимости

Call CreateTable5 'Сотрудники

Call CreateTable6 'Операции

Call CreateTable7 'Недвижимость

Call CreateTable8 'Клиент

End Sub

'=== Create table Тип_недвижимости ======

Sub CreateTable3()

Set tdf = dbs.CreateTableDef( "Тип_недвижимости" )

Call AddFieldToTable("Код_типа", dbInteger, 0, 0, "", "", "", TRUE, FALSE )

Call AddFieldToTable("Название_типа", dbText, 18, 0, "", "", "", TRUE, FALSE )

dbs.TableDefs.Append tdf

End Sub

'=== Create table Вид_недвижимости ======

Sub CreateTable4()

Set tdf = dbs.CreateTableDef( "Вид_недвижимости" )

Call AddFieldToTable("Код_вида", dbInteger, 0, 0, "", "", "", TRUE, FALSE )

Call AddFieldToTable("Название_вида", dbText, 20, 0, "", "", "", TRUE, FALSE )

dbs.TableDefs.Append tdf

End Sub

'=== Create table Сотрудники ======

Sub CreateTable5()

Set tdf = dbs.CreateTableDef( "Сотрудники" )

Call AddFieldToTable("Номер_Сотрудникиа", dbInteger, 0, 0, "", "", "", TRUE, FALSE )

dbs.TableDefs.Append tdf

End Sub

'=== Create table Операции ======

Sub CreateTable6()

Set tdf = dbs.CreateTableDef( "Операции" )

Call AddFieldToTable("Код_операции", dbLong, 0, 0, "", "", "", TRUE, FALSE )

End Sub

'=== Create table Недвижимость ======

Sub CreateTable7()

Set tdf = dbs.CreateTableDef( "Недвижимость" )

Call AddFieldToTable("Код_недвижимости", dbLong, 0, 0, "", "", "", TRUE, FALSE )

Call AddFieldToTable("Номер_Сотрудникиа", dbInteger, 0, 0, "", "", "", TRUE, FALSE )

Call AddFieldToTable("Код_типа", dbInteger, 0, 0, "", "", "", TRUE, FALSE )

Call AddFieldToTable("Код_вида", dbInteger, 0, 0, "", "", "", TRUE, FALSE )

Call AddFieldToTable("Стоимость", dbCurrency, 0, 0, "", "", "", TRUE, FALSE )

dbs.TableDefs.Append tdf

End Sub

'=== Create table Клиент ======

Sub CreateTable8()

Set tdf = dbs.CreateTableDef( "Клиент" )

Call AddFieldToTable("Код_Клиента", dbLong, 0, 0, "", "", "", TRUE, FALSE )

Call AddFieldToTable("ФИО_Клиента", dbText, 50, 0, "", "", "", TRUE, FALSE )

Call AddFieldToTable("Адрес", dbDate, 0, 0, "", "", "", TRUE, FALSE )

dbs.TableDefs.Append tdf

End Sub

' Create primary keys

'=====================

Sub CreatePrimaryKeys()

'=== Create primary key for table Тип_недвижимости ======

Set tdf = dbs.TableDefs( "Тип_недвижимости" )

Set idx = tdf.CreateIndex( "pk_Тип_недвижимости" )

idx.Primary = True

idx.Unique = True

idx.IgnoreNulls = False

Call AddFieldToIndex( "Код_типа", False )

tdf.Indexes.Append idx

'=== Create primary key for table Вид_недвижимости ======

Set tdf = dbs.TableDefs( "Вид_недвижимости" )

Set idx = tdf.CreateIndex( "pk_Вид_недвижимости" )

idx.Primary = True

idx.Unique = True

idx.IgnoreNulls = False

Call AddFieldToIndex( "Код_вида", False )

tdf.Indexes.Append idx

'=== Create primary key for table Сотрудники ======

Set tdf = dbs.TableDefs( "Сотрудники" )

Set idx = tdf.CreateIndex( "pk_Сотрудники" )

idx.Primary = True

idx.Unique = True

idx.IgnoreNulls = False

Call AddFieldToIndex( "Номер_Сотрудникиа", False )

tdf.Indexes.Append idx

'=== Create primary key for table Операции ======

Set tdf = dbs.TableDefs( "Операции" )

Set idx = tdf.CreateIndex( "pk_Операции" )

idx.Primary = True

idx.Unique = True

idx.IgnoreNulls = False

Call AddFieldToIndex( "Код_операции", False )

tdf.Indexes.Append idx

'=== Create primary key for table Недвижимость ======

Set tdf = dbs.TableDefs( "Недвижимость" )

Set idx = tdf.CreateIndex( "pk_Недвижимость" )

idx.Primary = True

idx.Unique = True

idx.IgnoreNulls = False

Call AddFieldToIndex( "Код_билета", False )

tdf.Indexes.Append idx

'=== Create primary key for table Клиент ======

Set tdf = dbs.TableDefs( "Клиент" )

Set idx = tdf.CreateIndex( "pk_Клиент" )

idx.Primary = True

idx.Unique = True

idx.IgnoreNulls = False

Call AddFieldToIndex( "Код_Клиента", False )

tdf.Indexes.Append idx

End Sub

' Create indexes

'================

Sub CreateIndexes()

End Sub

' Create alter keys (unique indexes in MS ACCESS)

'================================================

Sub CreateAlterKeys()

'=== Create alter keys (unique) for table Тип_недвижимости ======

Set tdf = dbs.TableDefs( "Тип_недвижимости" )

Set idx = tdf.CreateIndex( "Код_типа" )

idx.Unique = True

Call AddFieldToIndex( "Код_типа", False )

tdf.Indexes.Append idx

'=== Create alter keys (unique) for table Вид_недвижимости ======

Set tdf = dbs.TableDefs( "Вид_недвижимости" )

Set idx = tdf.CreateIndex( "Код_вида" )

idx.Unique = True

Call AddFieldToIndex( "Код_вида", False )

tdf.Indexes.Append idx

'=== Create alter keys (unique) for table Сотрудники ======

Set tdf = dbs.TableDefs( "Сотрудники" )

Set idx = tdf.CreateIndex( "Номер_Сотрудникиа" )

idx.Unique = True

Call AddFieldToIndex( "Номер_Сотрудникиа", False )

tdf.Indexes.Append idx

'=== Create alter keys (unique) for table Операции ======

Set tdf = dbs.TableDefs( "Операции" )

Set idx = tdf.CreateIndex( "Код_операции" )

idx.Unique = True

Call AddFieldToIndex( "Код_операции", False )

tdf.Indexes.Append idx

End Sub

' Create relations

'==================

Sub CreateRelations()

'=== Create relations between parent table Тип_недвижимости and child table Недвижимость ======

Set rel = dbs.CreateRelation("Тип_Недвижимости_Недвижимость")

rel.Table = "Тип_недвижимости"

rel.ForeignTable = "Недвижимость"

rel.Attributes = 0

Call AddFieldToRelation("Код_типа", "Код_типа")

dbs.Relations.Append rel

'=== Create relations between parent table Вид_недвижимости and child table Недвижимость ======

Set rel = dbs.CreateRelation("Вид_операции_Операции")

rel.Table = "Вид_недвижимости"

rel.ForeignTable = "Недвижимость"

rel.Attributes = 0

Call AddFieldToRelation("Код_вида", "Код_вида")

dbs.Relations.Append rel

'=== Create relations between parent table Сотрудники and child table Недвижимость ======

Set rel = dbs.CreateRelation("Недвижимость_Операции")

rel.Table = "Сотрудники"

rel.ForeignTable = "Недвижимость"

rel.Attributes = 0

CallAddFieldToRelation("Номер_Сотрудникиа", "Номер_Сотрудникиа")

dbs.Relations.Append rel

'=== Create relations between parent table Недвижимость and child table Операции ======

Set rel = dbs.CreateRelation("Недвижимость_Операции")

rel.Table = "Недвижимость"

rel.ForeignTable = "Операции"

rel.Attributes = 0

Call AddFieldToRelation("Код_билета", "Код_билета")

dbs.Relations.Append rel

'=== Create relations between parent table Клиент and child table Операции ======

Set rel = dbs.CreateRelation("Клиент_Операции")

rel.Table = "Клиент"

rel.ForeignTable = "Операции"

rel.Attributes = 0

Call AddFieldToRelation("Код_Клиента", "Код_Клиента")

dbs.Relations.Append rel

End Sub

' Create queries

'================

Sub CreateQueries()

Dim qdf As QueryDef

End Sub

' Drop queries

'==============

Sub DropQuery(QueryName As String)

Dim qdf As QueryDef

Set qdf = Nothing

On Error Resume Next

Set qdf = dbs.QueryDefs(QueryName)

On Error GoTo 0

If Not qdf Is Nothing Then dbs.QueryDefs.Delete ( QueryName )

End Sub

' Drop relation

'===============

Sub DropRelation(RelName As String)

Set rel = Nothing

On Error Resume Next

Set rel = dbs.Relations(RelName)

On Error GoTo 0

If Not rel Is Nothing Then dbs.Relations.Delete ( RelName )

End Sub

' Drop table

'============

Sub DropTable(TableName As String)

Set tdf = Nothing

On Error Resume Next

Set tdf = dbs.TableDefs(TableName)

On Error GoTo 0

If Not tdf Is Nothing Then dbs.TableDefs.Delete ( TableName )

End Sub

' Drop index

'============

Sub DropIndex(TableName As String, IndexName As String)

Set tdf = Nothing

Set idx = Nothing

On Error Resume Next

Set tdf = dbs.TableDefs(TableName)

Set idx = tdf.Indexes(IndexName)

On Error GoTo 0

If (Not tdf Is Nothing) And (Not idx Is Nothing) Then tdf.Indexes.Delete ( IndexName )

End Sub

' Add fields to table

'=====================

Sub AddFieldToTable(FieldName As String, DataType As String, SizeCol As Integer, Attributes As Long, DefaultValue As Variant, ValText As String, ValRule As String, NotN As Boolean, ZeroLength As Boolean)

Dim fld As DAO.Field

Set fld = tdf.CreateField( FieldName, DataType )

If SizeCol <> 0 Then fld.Size = SizeCol

If Attributes <> 0 Then fld.Attributes = Attributes

fld.Required = NotN

If DataType = dbText or DataType = dbMemo Then fld.AllowZeroLength = ZeroLength

fld.DefaultValue = DefaultValue

fld.ValidationRule = ValRule

fld.ValidationText = ValText

tdf.Fields.Append fld

End Sub

' Add properties to table

'=========================

Sub AddPropertyToTable( PropertyName As String, Value As Variant, DataType As String)

Dim prp As DAO.Property

Set prp = tdf.CreateProperty(PropertyName, DataType, Value)

tdf.Properties.Append prp

End Sub

' Add properties to field

'=========================

Sub AddPropertyToField( FieldName As String, PropertyName As String, Value As Variant, DataType As String)

Dim prp As DAO.Property

Dim fld As DAO.Field

Set fld = tdf.Fields( FieldName )

Set prp = fld.CreateProperty(PropertyName, DataType, Value)

fld.Properties.Append prp

End Sub

' Add fields to index

'=====================

Sub AddFieldToIndex( FieldName As String, Descending As Boolean )

Dim fld As DAO.Field

Set fld = idx.CreateField( FieldName )

If Descending = True Then fld.Attributes = dbDescending

idx.Fields.Append fld

End Sub

' Add fields to relation

'========================

Sub AddFieldToRelation( PKField As String, FKField As String )

Dim fld As DAO.Field

Set fld = rel.CreateField( PKField )

fld.ForeignName = FKField

rel.Fields.Append fld

End Sub

' Create before script

'=====================

Sub BeforeScript()

End Sub

' Create after script

'====================

Sub AfterScript()

End Sub