РефератыИнформатикаАРАРМ менеджера по продаже недвижимости

АРМ менеджера по продаже недвижимости

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН


УСТЬ-КАМЕНОГОРСКИЙ КОЛЛЕДЖ ЭКОНОМИКИ И ФИНАНСОВ


Специальность «Программное обеспечение вычислительной техники и автоматизированных систем»


Пояснительная записка


К ДИПЛОМНОМУ ПРОЕКТУ


Руководитель:


Преподаватель:


__________________


«____»____________2008 г.


Студент:


___________________Крутьева Е.А.


«____»_____________2008 г.


Специальность 3706002


Группа ТП-41


Усть-Каменогорск, 2008 ЗАДАНИЕ К ДИПЛОМНОМУ ПРОЕКТУ


Разработать АРМ менеджера по продаже недвижимости.


Руководитель __________________________________________________


«______»_________________200__г.


РЕФЕРАТ


Пояснительная записка изложена на 68 страницах, в нее входят:


17 – рисунков, 7 – таблиц, 3 – приложений, 10 – используемых литературных источников. Пояснительная записка состоит из трех разделов: введение, основная часть, заключение.


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


Во втором разделе уделяется внимание обоснованию методов организации информационной базы, определяются основные факторы, влияющие на выбор информационного обеспечения создаваемой системы. Здесь рассматриваются организация технологии сбора, передачи, обработки и выдачи информации. А так же происходит описание программных модулей.


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


СОДЕРЖАНИЕ


Введение........................................................................................................... 5


1. Исследование автоматизации рынка недвижимости................................. 6


1.1. Системно-структурная характеристика предметной области........... 6


1.2. Проектные решения по информационному обеспечению................. 9


1.3. Проектные решения по программному обеспечению..................... 10


2. Разработка автоматизации рынка недвижимости................................... 11


2.1. Информационное обеспечение комплекса задач............................. 11


2.1.1. Инфологическая модель, схема данных и ее описание............ 11


2.1.2. Используемые классификаторы и системы кодирования......... 14


2.1.3. Характеристика входной, выходной и нормативно-справочной информации................................................................................ 15


2.2. Внутримашинная реализация комплекса задач............................... 16


2.2.1. Формализация расчетов............................................................ 16


2.2.2. Структурная схема использования комплекса программ........ 19


2.3. Технологическое обеспечение......................................................................................... 19


2.3.1. Организация технологии сбора, передачи, обработки и выдачи 19


2.3.2. Схема технологического процесса сбора, передачи, обработки и выдачи информации................................................................................ 20


2.4. Программное обеспечение комплекса задач............................................................. 22


2.4.1. Общие положения...................................................................... 22


2.4.2. Структурная схема пакета......................................................... 22


2.4.3. Описание программных модулей.............................................. 23


2.4.4. Проектирование интерфейсов................................................... 23


2.5. Схема взаимосвязи программных модулей и информационных файлов.. 24


2.6. Выбор и обоснование технических средств...................................................... 24


2.7. Выбор методики обеспечивающей надежность и защищенность ИС........... 25


3. Безопасность и экологичность................................................................. 27


3.1. Санитарные нормы использования ИС.................................................................. 27


3.2. Электробезопасность и пожарная безопасность................................................................... 31


Заключение.................................................................................................... 36


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


Приложение А – Входные и выходные документы


Приложение В – Интерфейс приложения


Приложение С – Листинг приложения


ВВЕДЕНИЕ


Выбранная тема дипломного проекта на сегодняшней день является востребованной в сфере рынка недвижимости. АРМ менеджера по продаже обеспечивает автоматизацию конкретных функций, необходимых для принятия управленческих решений.


Для проектирования выбранной предметной области и реализации запросов пользователя, необходимо выбрать наиболее эффективную модель данных и подходящую логическую структуру.


Проектирование должно заключаться не только в создании правильной структуры данных, но и в обеспеченности целостности структуры данных.


Целью данной дипломной работы является разработка автоматизированного рабочего места менеджера по продажам недвижимости, которое должно соответствовать следующим поставленным задачам:


- обеспечить сбор и обработку данных для формирования отчетов;


- обеспечить контроль заполнения;


- ускорить работу с большими объемами информации;


- отслеживать средние ценовые расценки на рынке недвижимости;


- производить анализ соотношения спроса и предложения;


- организовать обработку входных и выходных данных;


- организовать быстрый поиск требуемой информации.


Таким образом, разрабатываемое приложение должно ускорить продуктивность работы и разнообразить сервис услуг для привлечения внимания клиентов. Так как это играет важную роль в условиях жесткой конкуренции.


1. Исследование автоматизации рынка недвижимости


1.1. Системно-структурная характеристика предметной области


Автоматизированная работа менеджера по продаже недвижимости упростит и ускорит работу с большими объемами информации, позволит отслеживать средние ценовые расценки на рынке недвижимости, а так же поможет проанализировать соотношение спроса и предложения на конкретный период времени. Так же появится возможность ускорить продуктивность работы и разнообразить сервис услуг, для привличения внимания клиентов. Так как это играет немаловажную роль в условиях жесткой конкуренции.


При работе с клиентурой агентство по недвижимости совершает следующие основные операции:


- получает заявки на покупку или продажу квартиры;


- заключает сделки по купле-продаже;


- анализирует соотношения спроса и предложения;


- делает прогнозирование цен в сфере недвижимости;


- дает консультации по покупке или продаже квартир.


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


Таблица 1 - Множество атрибутов



























Наименование атрибута


Идентификатор


1


Код квартиры


ID_KV


2


РНН клиента


RNN_KL


3


Количество комнат


KOL_KOM


4


Улица


ULIZA


5


Дом


DOM



Продолжение Таблицы 1















































































































Наименование атрибута


Идентификатор


6


Квартира


KV


7


Лифт в подъезде (есть или нет)


LIFT


8


Балкон в квартире (есть или нет)


BALKON


9


Телефон квартиры (есть или нет)


TELEFON


10


Ремонт в квартире (есть или нет)


REMONT


11


Этаж квартиры


ETAG


12


Площадь квартиры


PLOSHAD


13


Стоимость квартиры


ZENA


14


Статус квартиры


STATUS


15


Дополнительная информация


DOP


16


ФИО клиента


FIO_KL


17


Адрес клиента


ADRES_KL


18


Домашний телефон


TELEFON_DOM


19


Сотовый телефон


TELEFON_SOT


20


РНН сотрудника


RNN_SOTR


21


ФИО сотрудника


FIO_SOTR


22


Адрес сотрудника


ADRES_SOTR


23


Код должности


ID_DOLGN


24


Должность


DOLGN


25


Зарплата


ZARPLATA


26


Фотография сотрудника


FOTO_SOTR


27


Код сделки


ID_SDELKY


28


Сумма сделки


SUMMA


29


Оплата услуг


OPLATA_USLUG


30


Дата сделки


DATA


31


Код статуса


ID_STATUS



Целью инфологического моделирования является обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных. Поэтому инфологическую модель данных пытаются строить по аналогии с естественным языком. Основными конструктивными элементами инфологических моделей являются сущности, связи между ними и их свойства (атрибуты).


При определении инфологической модели необходимо принимать во внимание следующее:


- База данных должна удовлетворять актуальным информационным потребностям организации. Получаемая информация должна по структуре и содержанию соответствовать решаемым задачам.


- База данных должна обеспечивать получение требуемых данных за приемлемое время, то есть отвечать заданным требованиям производительности.


- База данных должна удовлетворять выявленным и вновь возникающим требованиям всех пользователей.


- База данных должна легко расширяться при реорганизации и расширении предметной области.


- База данных должна легко изменяться при изменении программной и аппаратной среды.


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


На основании обследования предметной области выделим следующие сущности с атрибутами (ключевые атрибуты выделены подчеркиванием)


Сотрудники: (RNN
_
SOTR
, FAM_SOTR, NAME_SOTR, OTH_SOTR, ADRES_SOTR, TELEFON_DOM, TELEFON_SOT, DOLGNOST, FOTO, DOP);


Клиенты: (RNN_KL
, FIO_KL, ADRES_KL, TELEFON_DOM, TELEFON_SOT);


Предложения: (ID_KV
, RNN_KL, KOL_KOM, ZENA, ULIZA, DOM, KV, ETAG, TELEFON, BALKON, LIFT, REMONT, PLOSHAD, STATUS, DOP);


Сделки: (ID_SDELKY
, RNN_POKUP, RNN_PROD, RNN_SOTR, SUMMA, OPLATA_USLUG, DATA);


После выбора сущностей, задания атрибутов и анализа связей между сущностями проектируем инфологическую модель в виде ER-диаграммы, представленную на Рис.1.







Рис.1 - Инфологическая модель предметной области


1.2. Проектные решения по информационному обеспечению


Любая автоматизированная система предполагает наличие в своем составе подсистемы информационного обеспечения, питающая другие подсистемы данными, на основе которых осуществляется принятие решений, включая их оптимизацию с использованием математических методов и ЭВМ.


Для проектирования будет использована реляционная модель данных, так как в реляционной модели достигается гораздо более высокий уровень абстракции данных, чем в иерархической или сетевой модели. Предсказуемость результатов работы с данными обеспечивается математической моделью данных, которая лежит в основе реляционной модели. Любой запрос, составленный на конкретном языке, влечет ответ, однозначно определенный схемой данных и конкретными данными. Выбранная предметная область достаточно естественно описывается в терминах отношений, нет излишнего дублирования записей. Модель наглядна и при необходимости можно осуществить доступ к данным любого уровня.


На основании вышеизложенного можно сделать вывод, наиболее эффективной моделью данных для отображения выбранной предметной области и реализации запросов пользователя является реляционная модель.


1.3. Проектные решения по программному обеспечению


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


Программное приложение должно поддерживать русский интерфейс, быть приложением Windows.


Данная разработка должна соответствовать следующим требованиям:


- защита информации от несанкционированного доступа;


- оперативность информационного обмена и управления;


- рациональная организация информационных фондов;


- квалификация специалистов, участвующих в процедурах обработки информации.


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


2. Разработка автоматизации рынка недвижимости


2.1. Информационное обеспечение комплекса задач


2.1.1. Инфологическая модель, схема данных и ее описание


Для проектирования схемы данных, необходимо привести отношения к 3НФ необходимо провести анализ функциональных зависимостей между атрибутами в пределах каждого отношения.


1. Сотрудники: (RNN
_
SOTR
, FIO_SOTR, ADRES_SOTR, TELEFON_DOM, TELEFON_SOT, DOLGNOST, FOTO, DOP).


Учет сотрудников ведется с помощью РНН сотрудника. Атрибут RNN_SOTR – уникален и является первичным ключом. Все атрибуты являются атомарными, следовательно, отношения находятся в 1НФ.


Первичный ключ – простой и функциональная зависимость всех не ключевых атрибутов от первичного ключа – полная, следовательно, отношения находятся во 2НФ.


Все неключевые атрибуты функционально зависят от первичного ключа, других функциональных зависимостей нет, следовательно, отношения находятся в 3НФ.


2. Клиенты: (RNN_KL
, FIO_KL, ADRES_KL, TELEFON_DOM, TELEFON_SOT).


Учет клиентов ведется с помощью РНН клиентов. Атрибут RNN_KL – уникален и является первичным ключом. Все атрибуты являются атомарными, следовательно, отношения находятся в 1НФ.


Первичный ключ – простой и функциональная зависимость всех не ключевых атрибутов от первичного ключа – полная, следовательно, отношения находятся во 2НФ.


Все неключевые атрибуты функционально зависят от первичного ключа, других функциональных зависимостей нет, следовательно, отношения находятся в 3НФ.


3. Предложения: (ID
_
KV
, RNN_KL, KOL_KOM, ZENA, ULIZA, DOM, KV, ETAG, TELEFON, BALKON, LIFT, REMONT, PLOSHAD, STATUS, DOP).


Учет поступающих предложений ведется по коду квартиры. Атрибут ID_KV – уникален и является первичным ключом. Все атрибуты являются атомарными, следовательно, отношения находятся в 1НФ.


Первичный ключ – простой и функциональная зависимость всех не ключевых атрибутов от первичного ключа – полная, следовательно, отношения находятся во 2НФ.


Все не ключевые атрибуты функционально зависят от первичного ключа, других функциональных зависимостей нет, следовательно, отношения находятся в 3НФ.


4. Сделки: (ID
_
SDELKY
, RNN_POKUP, RNN_PROD, RNN_SOTR, SUMMA, OPLATA_USLUG, DATA).


5. Учет совершаемых сделок ведется по коду сделки. Атрибут ID_SDELKY – уникален и является первичным ключом. Все атрибуты являются атомарными, следовательно, отношения находятся в 1НФ.


Первичный ключ – простой и функциональная зависимость всех не ключевых атрибутов от первичного ключа – полная, следовательно, отношения находятся во 2НФ.


Все неключевые атрибуты функционально зависят от первичного ключа, других функциональных зависимостей нет, следовательно, отношения находятся в 3НФ.


Таким образом, в результате приведения отношений к 3НФ получили следующие отношения КЛИЕНТЫ, СОТРУДНИКИ, СДЕЛКИ, ПРЕДЛОЖЕНИЯ. На Рис.2 представлена схема данных после нормализации отношений.



Рис.2- Схема данных предметной области после нормализации


2.1.2. Используемые классификаторы и системы кодирования


Классификацией информации называется упорядоченное расположение значений единиц информации. Система классификации характеризуется как совокупность правил и результат деления заданного множества на подмножества по одному или нескольким признакам. Полученные в результате деления подмножества называются классификационныи группировками: классы, подклассы, группы, подгруппы и др.


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


В справочниках «Статус» и «Должность» будет использоваться порядковая система кодирования, она предпологает последовательное присвоение единицам информации кодов, которые выражаются числами натурального ряда в возрастающем или убывающем порядке либо алфавитными символами. Кодирование будет организовано посредством чисел натурального ряда в возрастающем порядке.


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


В таких справочниках как, «Справочник о сотрудниках» и «Справочник о клиентах» используется единый казахстанский классификатор Регистрационных Номеров Налогоплательщиков (РНН). Этот класификатор является стандартным и относится к разряду серийных классификаторов.


2.1.3. Характеристика входной, выходной и нормативно-справочной информации


В системе можно выделить входную, нормативно-справочную и выходную информацию.


Входная информация представлена в виде документа «Заявка на оказание услуг». В этом документе указываются такие данные как: РНН клиента, Ф.И.О. клиента, телефон домашний, телефон сотовый, адрес клиента, количество комнат, адрес квартиры, этаж, цена квартиры. Указывается статус заявки (покупка или продажа), если заявка на продажу квартиры указывается, есть ли наличие лифта, балкона, телефона и ремонта.


Нормативно-справочной информацией являются следующие справочники:


Справочник «Статус продаж», содержит информацию о том, какой статус имеет квартира (продается, покупается, продано).


Справочник «Должность сотрудника», содержит информацию о том, какую должность занимает сотрудник.


Справочник «Сотрудники», содержит информацию о сотрудниках.


Справочник «Клиенты», содержит информацию о клиентах.


Выходная информация представлена в виде документа «Договор на оказание посреднических услуг». В этом документе указываются такие данные как: дата составления, Ф.И.О. сотрудника, Ф.И.О. клиента, РНН клиента, количество комнат, адрес квартиры, этаж. Указывается, есть ли наличие лифта, балкона, телефона и ремонта. Так же указывается стоимость квартиры и размер оплаты услуг агентства.


К выходной информации так же относятся документ «Отчет агента», в нем указывается дата заполнения, Ф.И.О. агента, статус сделки, стоимость сделки.


Так же выходная информация будет содержать отчет о квартирах, стоимость которых ниже средней цены;


2.2. Внутримашинная реализация комплекса задач


2.2.1. Формализация расчетов


Исходные данные представлены в виде таблиц. Организация таблиц в программном приложении происходит в формате СУБД Paradox.


Таблица 2 – «Сотрудники»















































Имя реквизита


Тип данных


Размерность


Назначение


RNN_sotr


Alpha


12


Уникальный идентификатор


FIO_sotr


Alpha


60


Содержит Ф.И.О. сотрудника


Adres


Alpha


100


Содержит адрес сотрудника


Telefon_dom


Alpha


8


Содержит домашний телефон сотрудника


Telefon_sot


Alpha


15


Содержит сотовый телефон сотрудника


Dolgnost


Long Integer


-2147483648 .. +2147483647


Содержит код должности сотрудника


Foto


Graphic


0-240


Содержит фотографию сотрудника


Dop


Memo


1-240


Содержит дополнительную информацию о сотруднике



Таблица 3 – «Клиенты»












Имя реквизита


Тип данных


Размерность


Назначение


RNN_kl


Alpha


12


Уникальный идентификатор



Продолжение Таблицы 3



























Имя реквизита


Тип данных


Размерность


Назначение


FIO_kl


Alpha


60


Содержит Ф.И.О. клиента


Adres _kl


Alpha


100


Содержит адрес клиента


Telefon_dom


Alpha


8


Содержит домашний телефон клиента


Telefon_sot


Alpha


15


Содержит сотовый телефон клиента



Таблица 4 – «Предложения»

























































Имя реквизита


Тип данных


Размерность


Назначение


ID_kv


Autoincrement


-


Уникальный идентификатор


RNN_kl


Alpha


12


Содержит РНН клиента


Kol_kom


Long Integer


-2147483648 .. +2147483647


Содержит сколько комнат в квартире


Zena


Long Integer


-2147483648 .. +2147483647


Содержит стоимость квартиры


Uliza


Alpha


70


Содержит название улицы


Dom


Alpha


10


Содержит номер дома


Kv


Long Integer


-2147483648 .. +2147483647


Содержит номер квартиры


Ploshad


Number


-10307
.. +10307


Содержит общую площадь квартиры


Etag


Long Integer


-2147483648 .. +2147483647


Содержит этаж квартиры


Lift


Logical


-


Указывает наличие лифта



Продолжение Таблицы 4
































Имя реквизита


Тип данных


Размерность


Назначение


Remont


Logical


-


Указывает наличие ремонта


Balkon


Logical


-


Указывает наличие балкона


Telefon


Logical


-


Указывает наличие телефона


Status


Long Integer


-2147483648 .. +2147483647


Содержит статус квартиры


Dop


Memo


1-240


Содержит дополнительную информацию



Таблица 5 – «Должность»






















Имя реквизита


Тип данных


Размерность


Назначение


ID_dolgn


Autoincrement


-


Уникальный идентификатор


Dolgnost


Alpha


40


Содержит данные о должности сотрудника


Zarplata


Long Integer


-2147483648 .. +2147483647


Содержит данные о зарплате сотрудника



Таблица 6 – «Статус»

















Имя реквизита


Тип данных


Размерность


Назначение


ID_status


Autoincrement


-


Уникальный идентификатор


Status


Alpha


15


Содержит данные о статусе квартиры



Таблица 7 – «Сделки »





































Имя реквизита


Тип данных


Размерность


Назначение


ID_sdelky


Autoincrement


-


Уникальный идентификатор


RNN_prod


Alpha


12


Содержит РНН продавца


RNN_pokup


Alpha


12


Содержит РНН покупателя


RNN_sotr


Alpha


12


Содержит РНН сотрудника


Summa


Long Integer


-2147483648 .. +2147483647


Содержит стоимость квартиры


Oplata_uslug


Long Integer


-2147483648 .. +2147483647


Содержит оплату услуг



2.2.2. Структурная схема использования комплекса программ


Структурная схема использования комплекса программ представлена на Рис.3.



Рис.3 – Структурная схема использования комплекса программ


2.3. Технологическое обеспечение


2.3.1. Организация технологии сбора, передачи, обработки и выдачи информации


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


Информационная технология связана с процедурами сбора и преобразования информации.


Построение технологического процесса определяется следующими факторами:


- особенностями обрабатываемой информации;


- объемом информации;


- требованиями к точности и срочности обработки.


Организация технологического процесса должна обеспечить его экономичность, комплексность, надежность функционирования, высокое качество работ. Состав процедур преобразования информации и особенности их выполнения во многом зависят от программного приложения, ведущего автоматизированную обработку информации.


Организация технологического сбора информации осуществляется путем оформления поданной клиентом заявки на оказание услуг, все полученные данные регистрируются, после чего между агентством и клиентом заключается договор на оказание услуг.


2.3.2. Схема технологического процесса сбора, передачи, обработки и выдачи информации


Технология проектирования предполагает поэтапную разработку программного приложения, она имеет свой жизненный цикл. Модель жизненного цикла использует подход к организации проектирования приложения «сверху-вниз», при котором в первую очередь определяется состав функциональных подсистем. Соответственно сначала разрабатывается технология сбора, передачи, обработки и выдачи информации.


Технология сбора информации заключается в следующем: прежде чем заключить договор с агентством, клиент должен подать письменную заявку на оказание услуг, в ней он должен указать свои личные данные и информацию о квартире, которую он предполагает продать или купить. Затем эти данные регистрируются, заносятся в архив предложений и в справочник о клиентах, таким образом, происходит передача информации от клиента к агентству. На Рис.4 представлена схема технологического процесса сбора, передачи, обработки и выдачи информации.





Рис.4 - Схема технологического процесса сбора, передачи, обработки


выдачи информации


После регистрации заявки, на основании полученных данных организуется обработка информации, она предполагает поиск и подбор вариантов, удовлетворяющих заявленным требованиям клиента. С клиентом заключается договор на оказание услуг, в нем отражаются права и обязанности обеих сторон. Один экземпляр договора остается у «Исполнителя», а другой у «Заказчика». Дальнейшая обработка, поиск информации в постоянно изменяющемся архиве предложений влечет к выявлению потенциальных вариантов. Если интересы клиента будут удовлетворены в полном объеме, по заявленным требованиям, то заключается сделка между клиентом и представителем от агентства, производится оплата услуг. После совершения сделки, агент заполняет документ «Отчет агента», в котором указывает необходимую информацию о состоявшейся сделке. После чего эта информация регистрируется в архиве сделок.


2.4. Программное обеспечение комплекса задач


2.4.1. Общие положения


Так как для проектирования приложения была выбрана реляционная модель данных, то приложение для обработки БД будет разработано в среде объектно-ориентированного программирования Delphi.. Среда Delphi включает в себя полный набор визуальных средств, для разработки приложений, поддерживающих создание пользовательских интерфейсов. Организация таблиц в программном приложении происходит в формате СУБД Paradox. Поскольку таблицы Paradox поддерживают самый богатый набор разных типов полей, что позволяет автоматически следить за правильностью вводимых в поля данных, выбирать данные из другой таблицы, защищать таблицу от несанкционированного доступа.


Таким образом, при помощи системы Delphi организация работы с СУБД может реализовать требования, поставленные при разработке программного приложения. К ним относятся организация защиты от несанкционированного доступа, оперативность информационного обмена и управления, рациональная организация информационных фондов, организация быстрого поиска нужной информации, организация дружественного интерфейса.


2.4.2. Структурная схема пакета


При разработке приложения в системе Delphi были созданы модули (Unit). Каждый модуль имеет жестко заданную структуру, которая автоматически генерируется системой Delphi при его создании. Структурная схема пакета представлена на Рис.5.



Рис.5 - Структурная схема пакета


2.4.4. Проектирование интерфейсов


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


2.5. Схема взаимосвязи программных модулей и информационных файлов


Система Delphi использует механизм Borland Database Engine (BDE), он представляет собой программную прослойку между приложением и БД. Запрос из приложения передается внутрь механизма BDE, который использует специализированные системные программы для непосредственной работы с БД.


На Рис.6 представлена схема взаимосвязи программных модулей и информационных файлов.





Рис.6 - Схема взаимосвязи программных модулей и информационных файлов


2.6. Выбор и обоснование технических средств


Для обеспечения нормального функционирования приложения, необходимы следующие минимальные системные требования:


- Pentium II – 400 MHz, и выше;


- Не менее 128Мб оперативной памяти;


- Дисковое пространство – в зависимости от количества информации содержащейся в базе данных (не менее 100 Мб).


Также данное приложения требует наличие программного обеспечения Windows 95 и выше.


2.7. Выбор методики, обеспечивающей надежность и защищенность ИС


Вся информация должна быть защищена от несанкционированного доступа. Так как агентство по недвижимости оказывает ряд информационных услуг, защита информации является важным моментом при разработке приложения.


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


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


3. БЕЗОПАСНОСТЬ И ЭКОЛОГИЧНОСТЬ


3.1. Санитарные нормы использования ИС


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


- располагать рабочие места, оснащенные ПЭВМ и УВО, таким образом, чтобы естественный свет падал сбоку (с левой или правой стороны) в зависимости от расположения столов, оборудования и оконных проемов;


- не допускать расположение рабочих мест с ПЭВМ и УВО в подвальных помещениях;


- учитывать, что площадь на одно рабочее место с ПЭВМ и УВО должна составлять не менее 6,0 м2
, а объем – не менее 20,0 м3
.


Не рекомендуется располагать рабочие места, оснащенные ПЭВМ и УВО, друг за другом. Задняя стенка монитора одного рабочего места не должна быть направлена на пользователя ПК, сидящего за другим рабочим местом.


Рабочий стол пользователя должен обеспечивать оптимальное расстояние элементов ПЭВМ. С этой целью столешница изготавливается как две раздельно регулируемые по высоте плоскости: одна – для размещения УВО, вторая – для размещения клавиатуры, пюпитра. Оптимальные размеры рабочей поверхности столешницы 1600 х 900 мм. С целью оптимального размещения ПЭВМ и УВО на рабочем месте можно рекомендовать увеличение площади столешницы за счет присоединения друг к другу двух столов или между двумя рабочими столами установить третий, более узкий. Это даст возможность оптимального размещения процессора, монитора и клавиатуры.


При периодическом наблюдении за экраном рекомендуется располагать элементы оборудования так, чтобы экран находился справа, клавиатура – напротив правого плеча, а документы - в центре угла обзора. При постоянной работе экран должен быть расположен в центре поля обзора, документы – слева на столе или на специальной подставке. Клавиатура должна располагаться отдельно от экрана, что обеспечивает выбор оптимального положения всех составляющих оборудование рабочего места пользователя ПЭВМ и УВО.


Рабочий стул (кресло) должен снабжаться подъемно-поворотным устройством, обеспечивающим регулировку высоты сиденья и спинки, его конструкция должна также предусматривать изменение угла наклона спинки. Рабочее кресло должно иметь подлокотники. Регулировка каждого параметра должна осуществляться легко, быть независимой и иметь надежную фиксацию. Высота поверхности сидения должна регулироваться в пределах 400-500 мм. Ширина и глубина сиденья должны составлять не менее 400 мм.


На рабочем месте необходимо предусматривать подставку для ног. Ее длина должна составлять 400 мм, ширина - 350 мм.


С целью улучшения зрительной работоспособности и условий освещения на рабочих местах целесообразно соблюдать следующее:


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


- в качестве источников общего освещения использовать люминесцентные лампы типа ЛБ с индексом цветопередачи не менее 70 (R > 70);


- в качестве светильников использовать установки с преимущественно отраженным или рассеянным светораспределением;


- светильники общего освещения располагать над рабочими поверхностями в равномерно-прямоугольном порядке;


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


- осветительные установки должны обеспечивать равномерную освещенность с помощью преимущественно отраженного или рассеянного светораспределения; они не должны создавать слепящих бликов на клавиатуре и других частях пульта, а также на экране видеомонитора в направлении глаз пользователя;


- для исключения бликов отражения на экранах от светильников общего освещения необходимо применять антибликовые сетки, специальные фильтры для экранов, защитные козырьки или располагать источники света параллельно направлению взгляда на экран ПЭВМ и УВО с обеих его сторон. При рядном размещении оборудования не допускается расположение мониторов экранами друг к другу;


- пульсация освещенности используемых люминесцентных ламп не должна превышать 5%. При естественном освещении следует применять средства солнцезащиты;


- профилактика зрительного утомления пользователя включает следующие мероприятия: регламентированные перерывы в зависимости от характера работ; проведения специальных упражнений для глаз.


Мероприятия по оптимизации микроклимата на рабочих местах, оснащенных ПЭВМ и УВО, достигаются уменьшением тепловыделений от самого источника теплоты – монитора ПЭВМ.


Кондиционирование воздуха должно обеспечивать автоматическое поддержание параметров микроклимата в необходимых пределах в течении всех сезонов года, очистку воздуха от пыли и вредных веществ. Необходимо также предусмотреть возможность индивидуальной регулировки подачи воздуха в отдельных помещениях. Температура воздуха, подаваемая в помещения с ПЭВМ и УВО, должна быть не ниже 19о
С.


Мероприятия по снижению шума на рабочих местах, оснащенных ПЭВМ и УВО, должны включать организационные, строительно-акустические и другие мероприятия: устройство подвесных потолков, облицовка стен, ковровые покрытия. Звукопоглощающие материалы должны быть с максимальным коэффициентом звукопоглощения в диапазоне частот 63-8000 Гц.


Мероприятия по оптимизации интенсивности электромагнитных излучений на рабочих местах, оснащенных ПЭВМ и УВО, должны включать организационно-технические мероприятия, состоящие из рационального размещения рабочих мест и применения экранов и фильтров:


- ПЭВМ и УВО следует располагать при однорядном их размещении на расстоянии не менее 1 м от стен; рабочие места с мониторами должны располагаться между собой на расстоянии не менее 1,5 м;


- минимальная ширина проходов с передней стороны пультов и панелей управления оборудованием ПЭВМ и УВО при однорядном его расположении должна быть не менее 1 м, при двухрядном – не менее 1,2 м ;


- расстояние между рабочими столами с видеомониторами должно быть не менее 2 м, а расстояние между боковыми поверхностями – не менее 1,2 м;


- экран монитора ПЭВМ и УВО располагают на расстоянии 600-700 мм от пользователя, но не ближе 500 мм, с учетом размеров цифровых знаков и символов.


3.2. Электробезопасность и пожарная безопасность


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


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


Во время работы оператору запрещается:


- касаться одновременно экрана монитора и клавиатуры; прикасаться к задней панели системного блока при включенном питании;


- переключать разъемы интерфейсных кабелей периферийных устройств, при включенном питании;


- загромождать верхние панели устройств посторонними предметами;


- производить отключение питания во время выполнения активной задачи;


- производить частые переключения питания;


- допускать попадание влаги на поверхность системного блока, монитора, рабочую поверхность клавиатуры, дисковода, принтера и других устройств;


- производить самостоятельно вскрытие и ремонт оборудования.


Оператору запрещается приступать к работе при обнаружении любой неисправности оборудования до ее устранения.


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


Образующиеся заряды статического электричества устраняют чаще всего путем заземления электропроводных частей производственного оборудования. Сопротивление такого заземления должно быть не более 100 Ом. При невозможности устройства заземления практикуется повышение относительной влажности воздуха в помещении. Можно увеличить объемную проводимость диэлектрика, для чего в него вносят графит, ацетиленовую сажу, алюминиевую пудру, а в жидкие диэлектрики — специальные добавки. Для ряда машин и агрегатов нашли применение нейтрализаторы статического электричества (коронного разряда, радиоизотопные, аэродинамические и комбинированные). Во всех типах этих устройств путем ионизации воздуха вблизи элемента конструкции, накапливающего заряд статического электричества, образуются ионы, в то числе со знаком, противоположным знаку заряда, что и вызывает его нейтрализацию.


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


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


Под правильной организацией понимается строгое выполнение ряда организационных и технических мероприятий. А так же средств, установленных действующими ПТЭ (правилами технической эксплуатации), ПТБ (правилами техники безопасности) и ПУЭ (правила установки электроустановок).


В зависимости от категории помещения необходимо принять определенные меры, обеспечивающие достаточную электробезопасность при эксплуатации и ремонте электрооборудования. Так, в помещениях с повышенной опасностью электроинструменты, переносные светильники должны быть выполнены с двойной изоляцией или напряжение питания их не должно превышать 42В. В ВЦ к таким помещениям могут быть отнесены помещения машинного зала, помещения для размещения сервисной и периферийной аппаратуры. В особо опасных же помещениях напряжение питания переносных светильников не должно превышать 12В, а работа с электротранспортируемым напряжением не выше 42В разрешается только с применением СИЗ (диэлектрических перчаток, ковриков и т.п.). Работы без снятия напряжения на токоведущих частях и вблизи них, работы, проводимые непосредственно на этих частях или при приближении к ним на расстояние менее установленного ПЭУ. К этим работам можно отнести работы по наладке отдельных узлов, блоков. При выполнении такого рода работ в электроустановках до 1000В необходимо применение определенных технических и организационных мер. Таких как, ограждения расположенные вблизи рабочего места и других токоведущих частей, к которым возможно случайное прикосновение; работа в диэлектрических перчатках или стоя на диэлектрическом коврике; применение инструмента с изолирующими рукоятками, при отсутствии такого инструмента следует пользоваться диэлектрическими перчатками. Работы этого вида должны выполняться не менее чем двумя работниками.


В соответствии с ПТЭ и ПТВ потребителям и обслуживающему персоналу электроустановок предъявляются определенные требования. Лица, не достигшие 18-летнего возраста, не могут быть допущены к работам в электроустановках; лица не должны иметь увечий и болезней, мешающих производственной работе; лица должны после соответствующей теоретической и практической подготовки пройти проверку знаний и иметь удостоверение на доступ к работам в электроустановках.


В ВЦ разрядные токи статического электричества чаще всего возникают при прикосновении к любому из элементов ЭВМ. Такие разряды опасности для человека не представляют, но кроме неприятных ощущений они могут привести к выходу из строя ЭВМ. Для снижения величины возникающих зарядов статического электричества в ВЦ покрытие технологических полов следует выполнять из однослойного поливинилхлоридного антистатического линолеума. Другим методом защиты является нейтрализация заряда статического электричества ионизированным газом. В промышленности широко применяются радиоактивные нетрализаторы. К общим мерам защиты от статического электричества в ВЦ можно отнести общие и местное увлажнение воздуха.


С целью предупреждения пожара в помещениях и в здании в целом существует ряд правил запрещающих


- Пользоваться нагревательными электроприборами для отопления поме­щений, приготовления и разогрева пищи вне специально отведённых мест и помещений, согласованных с Государственной противопожарной службой;


- Пользоваться электроприборами, потребляемая мощность которых превышает допустимую потребляемую мощность электросети, а также включать в электросеть одновременно несколько электроприборов, суммарная потребляемая мощность которых превышает допустимую;


- Оставлять без присмотра и по окончании рабочего дня любые электроприборы и устройства, находящиеся под напряжением;


- Подключать электроприборы без стандартных штепсельных подключающих устройств;


- Подключать к электросети неисправные электроприборы;


- Приносить, хранить и использовать горючие и легковоспламеняющиеся жидкости, огнеопасные предметы и материалы;


- Закрывать на трудно открываемые запоры двери эвакуационных выходов в период нахождения людей в здании;


- Отключать автоматические средства противопожарной защиты, систему оповещения о пожаре, автоматические устройства обнаружения пожара (автоматическую пожарную сигнализацию), установки автоматического пожаротушения.


При обнаружении пожара или его признаков (дым, запах гари и др.), каждый человек обязан немедленно:


- Сообщить об этом в городскую пожарную охрану по телефону 01;


- Оповестить о пожаре или его признаках людей, находящихся поблизости, и принять необходимые меры для эвакуации всех людей из здания (из опасной зоны);


- При появлении опасных факторов пожара (дым, потеря видимости, высокая температура, токсичные пары горения) немедленно эвакуироваться в безопасную зону;


- При возможности сообщить о пожаре руководителям, должностным лицам и всем людям, находящимся в здании.


ЗАКЛЮЧЕНИЕ


Для разработки программного приложения выбранной предметной области и реализации запросов пользователя, была использована наиболее эффективная модель данных – реляционная модель.


В результате разработки программного приложения – автоматизированного рабочего места менеджера по продажам недвижимости были выполнены следующие поставленные задачи:


- была обеспечена целостность структуры данных;


- была выбрана наиболее эффективная модель данных;


- была проведена организация сбора и обработки данных для формирования отчетов;


- была проведена организация контроля заполнения;


- для ускорения работы с большими объемами информации был выбран механизм BDE;


- по средства возможностей системы Delphi была организована обработка входных и выходных данных;


- при помощи языка SQL в приложении был организован быстрый поиск требуемой информации.


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


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


1. Бобровский С.И., «Delphi 7» - СПб.: Питер, 2005. – 736 с.: ил.


2. Фаронов В.В., «Программирование баз данных в Delphi 7. Учебный курс» - СПб.: Питер, 2005 – 459 с.: ил.


3. Нуржасарова М.А., Рыскулова Б.Р., Тургумбаева Х.Х, «Охрана труда»: Учебное пособие – Астана: Фолиант, 2007 – 224 с.


4. Девисилов В.А., «Охрана труда»: Учебник – 2-е изд., испр. и доп. – М.: Форум: Инфра – М, 2005 – 448 с.: ил. – (Профессиональное образование).


5. Райордан Р., «Основы реляционных баз данных», пер. с англ. – М.: Издательско-торговый дом и «Русская редакция», 2001 – 384 с.: ил.


6. Гайдамакин Н.А., «Автоматизированные информационные системы, базы и банки данных. Вводный курс»: Учебное пособие – М.: Гелиос АРВ, 2002 – 368 с., ил.


7. Яворский В.В., Томилова Н.И., «Технология разработки программного обеспечения»: Учебник - Астана: Фолиант, 2007 – 376 с.


8. Культин Н.Б., «Основы программирования в Delphi 7» - СПб.: БХВ – Петербург, 2004 – 608 с.: ил.


9. Дарахвелидзе П.Г., Марков Е.П., «Программирование в Delphi 7» - СПб.: БХВ – Петербург, 2004 – 784 с.: ил.


10. Бабушкина И.А., «Практикум по объектно-ориентированному программированию»: Бабушкина И.А., Окулова С.М.: - М: Бином, Лаборатория знаний, 2004 – 366 с.: ил.


Приложение А – Входные и выходные документы


Рис.7 - Договор на оказание услуг









Рис.8 – Отчет агента









Рис.9 – Заявка на оказание услуг









Приложение В – Интерфейс приложения


Рис.10 – Главная форма



Рис.11 – Справочник о клиентах



Рис.12 – Табличные данные о клиентах



Рис.13 – Справочник о сотрудниках



Рис.14 –Табличные данные о сотрудниках



Рис.15 –Архив предложений



Рис.16 –Табличные данные архива предложений



Рис.17 – Поиск данных в архиве предложений



Приложение С – Листинг приложения





unit Unit1;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, StdCtrls;


type


TForm1 = class(TForm)


Button1: TButton;


Button2: TButton;


procedure Button1Click(Sender: TObject);


procedure Button2Click(Sender: TObject);


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form1: TForm1;


implementation


uses Unit10, Unit11, Unit12, Unit2, Unit3, Unit4, Unit5, Unit6, Unit7,


Unit8, Unit9;


{$R *.dfm}


procedure TForm1.Button1Click(Sender: TObject);


begin


form3.Visible:=true;


form1.Visible:=false;


end;


procedure TForm1.Button2Click(Sender: TObject);


begin


form2.Visible:=true;


end;


end.


// форма для просмотра отчетов


unit Unit2;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, StdCtrls, DB, DBTables, Grids, DBGrids, Mask, DBCtrls, ExtCtrls,


RpDefine, RpCon, RpConDS, RpConBDE, RpRave;


type


TForm2 = class(TForm)


Image1: TImage;


Bevel1: TBevel;


Label1: TLabel;


RvTableConnection1: TRvTableConnection;


RvTableConnection2: TRvTableConnection;


RvProject1: TRvProject;


RvTableConnection3: TRvTableConnection;


RvProject2: TRvProject;


Label2: TLabel;


Label3: TLabel;


RvProject3: TRvProject;


procedure Label1Click(Sender: TObject);


procedure Label2Click(Sender: TObject);


procedure Label3Click(Sender: TObject);


procedure FormActivate(Sender: TObject);


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form2: TForm2;


implementation


uses Unit1, Unit10, Unit11, Unit12, Unit3, Unit4, Unit5, Unit6, Unit7,


Unit8, Unit9;


{$R *.dfm}


procedure TForm2.Label1Click(Sender: TObject);


begin


rvProject1.Execute;


end;


procedure TForm2.Label2Click(Sender: TObject);


begin


rvProject2.Execute;


end;


procedure TForm2.Label3Click(Sender: TObject);


begin


rvProject3.Execute;


end;


procedure TForm2.FormActivate(Sender: TObject);


begin


form2.Width:=450;


form2.Height:=202;


end;


end.






// главная форма приложения


unit Unit3;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, StdCtrls, Menus, jpeg, ExtCtrls;


type


TForm3 = class(TForm)


MainMenu1: TMainMenu;


N1: TMenuItem;


N2: TMenuItem;


N3: TMenuItem;


N4: TMenuItem;


N5: TMenuItem;


N6: TMenuItem;


Image1: TImage;


Image2: TImage;


N8: TMenuItem;


N15: TMenuItem;


N16: TMenuItem;


N17: TMenuItem;


N18: TMenuItem;


N7: TMenuItem;


N9: TMenuItem;


N10: TMenuItem;


N11: TMenuItem;


N12: TMenuItem;


N13: TMenuItem;


procedure Button1Click(Sender: TObject);


procedure N3Click(Sender: TObject);


procedure N4Click(Sender: TObject);


procedure N5Click(Sender: TObject);


procedure N6Click(Sender: TObject);


procedure FormClose(Sender: TObject; var Action: TCloseAction);


procedure FormActivate(Sender: TObject);


procedure Image2Click(Sender: TObject);


procedure N10Click(Sender: TObject);


procedure N16Click(Sender: TObject);


procedure N11Click(Sender: TObject);


procedure N9Click(Sender: TObject);


procedure N18Click(Sender: TObject);


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form3: TForm3;


implementation


uses Unit1, Unit10, Unit11, Unit12, Unit2, Unit4, Unit5, Unit6, Unit7,


Unit8, Unit9, Unit13, Unit14, Unit15;


{$R *.dfm}


procedure TForm3.N16Click(Sender: TObject);


begin


form12.Visible:=true;


end;


procedure TForm3.N11Click(Sender: TObject);


begin


form12.Visible:=true;


end;


procedure TForm3.N9Click(Sender: TObject);


begin


form14.Visible:=true;


end;


procedure TForm3.N18Click(Sender: TObject);


begin


form2.Visible:=true;


end;


end.


// справочник о сотрудниках


unit Unit4;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, Menus, ExtCtrls, DBCtrls, StdCtrls, Mask, jpeg, DB, DBTables;


type


TForm4 = class(TForm)


MainMenu1: TMainMenu;


N1: TMenuItem;


thyenmcz1: TMenuItem;


DBEdit1: TDBEdit;


Label1: TLabel;


DBEdit2: TDBEdit;


Label2: TLabel;


DBImage1: TDBImage;


DBMemo1: TDBMemo;


Label3: TLabel;


DBEdit3: TDBEdit;


DBEdit4: TDBEdit;


Label4: TLabel;


Label5: TLabel;


DBEdit5: TDBEdit;


DBLookupComboBox1: TDBLookupComboBox;


Label6: TLabel;


DBLookupComboBox2: TDBLookupComboBox;


Label7: TLabel;


Label8: TLabel;


N7: TMenuItem;


N8: TMenuItem;


Image2: TImage;


procedure TForm4.Image5Click(Sender: TObject);


begin


form5.Table1.Last;


end;


procedure TForm4.Image4Click(Sender: TObject);


begin


form5.Table1.First;


end;


procedure TForm4.Image2Click(Sender: TObject);


begin


form5.Table1.Next;


end;


procedure TForm4.Image3Click(Sender: TObject);


begin


form5.Table1.Prior;


end;


procedure TForm4.FormActivate(Sender: TObject);


begin


form4.Left:=195;


form4.Top:=155;


form4.AutoSize:=true;


end;


procedure TForm4.N16Click(Sender: TObject);


begin


form11.Visible:=true;


end;


procedure TForm4.N15Click(Sender: TObject);


begin


form5.Visible:=true;


form4.Visible:=false;


end;


end.


//табличные данные о сотрудниках


unit Unit5;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, Menus, DB, DBTables, ExtCtrls, DBCtrls, Grids, DBGrids,


StdCtrls, Buttons, ComCtrls;


type


TForm5 = class(TForm)


MainMenu1: TMainMenu;


implementation


uses Unit1, Unit10, Unit11, Unit12, Unit2, Unit3, Unit4, Unit6, Unit7,


Unit8, Unit9;


{$R *.dfm}


procedure TForm5.N1Click(Sender: TObject);


begin


form4.Visible:=true;


form5.Visible:=false;


end;


procedure TForm5.FormClose(Sender: TObject; var Action: TCloseAction);


begin


form5.Visible:=false;


form3.Visible:=true;


form3.Enabled:=true;


end;


procedure TForm5.FormActivate(Sender: TObject);


begin


form5.Height:=325;


form5.Width:=650;


form5.Left:=190;


form5.Top:=211;


form5.Table1.Active:=true;


end;


procedure TForm5.FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


begin


form5.DBGrid1.Height:=form5.Height-75;


form5.DBGrid1.Width:=form5.Width-10;


form5.Panel1.Left:=round(form5.Width/2)-150;


form5.Panel1.Top:=form5.Height-75;


end;


procedure TForm5.N4Click(Sender: TObject);


begin


form5.Table1.Edit;


end;


procedure TForm5.N5Click(Sender: TObject);


begin


form5.Table1.Delete;


end;


MainMenu1: TMainMenu;


N1: TMenuItem;


N2: TMenuItem;


N4: TMenuItem;


DBEdit1: TDBEdit;


DBEdit2: TDBEdit;


> DBEdit3: TDBEdit;


DBEdit4: TDBEdit;


DBEdit5: TDBEdit;


Label1: TLabel;


Label2: TLabel;


Label3: TLabel;


Label4: TLabel;


Label5: TLabel;


Image2: TImage;


Image3: TImage;


Image4: TImage;


Image5: TImage;


Label6: TLabel;


Panel1: TPanel;


N3: TMenuItem;


N5: TMenuItem;


N6: TMenuItem;


N7: TMenuItem;


N8: TMenuItem;


N9: TMenuItem;


N10: TMenuItem;


N11: TMenuItem;


procedure N3Click(Sender: TObject);


procedure N2Click(Sender: TObject);


procedure N6Click(Sender: TObject);


procedure Jnrhsnm(Sender: TObject; var Action: TCloseAction);


procedure FormActivate(Sender: TObject);


procedure Image3Click(Sender: TObject);


procedure Image2Click(Sender: TObject);


procedure Image4Click(Sender: TObject);


procedure Image5Click(Sender: TObject);


procedure N5Click(Sender: TObject);


procedure N7Click(Sender: TObject);


procedure N8Click(Sender: TObject);


procedure N9Click(Sender: TObject);


procedure N10Click(Sender: TObject);


procedure N11Click(Sender: TObject);


procedure FormClose(Sender: TObject; var Action: TCloseAction);


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form6: TForm6;


procedure TForm6.Image4Click(Sender: TObject);


begin


form9.Table3.Active:=true;


form9.Table3.Next;


end;


procedure TForm6.Image5Click(Sender: TObject);


begin


form9.Table3.Active:=true;


form9.Table3.Last;


end;


procedure TForm6.N5Click(Sender: TObject);


begin


form7.Visible:=true;


form6.Visible:=false;


end;


procedure TForm6.N7Click(Sender: TObject);


begin


form9.Table3.Active:=true;


form9.Table3.Insert;


end;


procedure TForm6.N8Click(Sender: TObject);


begin


form9.Table3.Active:=true;


form9.Table3.Delete;


end;


procedure TForm6.N9Click(Sender: TObject);


begin


form9.Table3.Active:=true;


form9.Table3.Edit;


end;


procedure TForm6.N10Click(Sender: TObject);


begin


form9.Table3.Active:=true;


form9.Table3.Post;


end;


procedure TForm6.N11Click(Sender: TObject);


begin


form9.Table3.Active:=true;


form9.Table3.Cancel;


end;


procedure TForm6.FormClose(Sender: TObject; var Action: TCloseAction);


begin


form6.Visible:=false;


var


Form7: TForm7;


implementation


uses Unit1, Unit10, Unit11, Unit12, Unit2, Unit3, Unit4, Unit5, Unit6,


Unit8, Unit9;


{$R *.dfm}


procedure TForm7.N3Click(Sender: TObject);


begin


form7.Visible:=false;


form6.Visible:=true;


end;


procedure TForm7.N2Click(Sender: TObject);


begin


form1.Close;


end;


procedure TForm7.FormClose(Sender: TObject; var Action: TCloseAction);


begin


form3.Visible:=true;


form7.Visible:=false;


form3.Enabled:=true;


end;


procedure TForm7.FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


begin


form7.DBGrid1.Height:=form7.Height-75;


form7.DBGrid1.Width:=form7.Width-10;


form7.Panel1.Left:=round(form7.Width/2)-150;


form7.Panel1.Top:=form7.Height-75;


end;


procedure TForm7.FormActivate(Sender: TObject);


begin


form7.Height:=325;


form7.Width:=650;


form7.Left:=190;


form7.Top:=211;


form9.Table3.Active:=true;


end;


procedure TForm7.N4Click(Sender: TObject);


begin


form9.Table3.Edit;


end;


type


TForm8 = class(TForm)


MainMenu1: TMainMenu;


N1: TMenuItem;


N7: TMenuItem;


DBEdit1: TDBEdit;


DBEdit2: TDBEdit;


DBEdit3: TDBEdit;


DBEdit4: TDBEdit;


DBEdit5: TDBEdit;


DBEdit6: TDBEdit;


DBEdit7: TDBEdit;


DBEdit8: TDBEdit;


DBEdit9: TDBEdit;


DBMemo1: TDBMemo;


DBCheckBox1: TDBCheckBox;


DBCheckBox2: TDBCheckBox;


DBCheckBox3: TDBCheckBox;


DBCheckBox4: TDBCheckBox;


DBLookupComboBox1: TDBLookupComboBox;


Table1: TTable;


DataSource1: TDataSource;


Table1ID_kv: TAutoIncField;


Table1RNN_kl: TStringField;


Table1Kol_kom: TIntegerField;


Table1Zena: TIntegerField;


Table1Uliza: TStringField;


Table1Dom: TStringField;


Table1Kv: TIntegerField;


Table1Ploshad: TFloatField;


Table1Etag: TStringField;


Table1Lift: TBooleanField;


Table1Remont: TBooleanField;


Table1Balkon: TBooleanField;


Table1Telefon: TBooleanField;


Table1Status: TStringField;


Table1Dop: TMemoField;


Table2: TTable;


Table1st: TStringField;


Table3: TTable;


Table1FIO: TStringField;


DBLookupComboBox2: TDBLookupComboBox;


Label8: TLabel;


Bevel1: TBevel;


Label9: TLabel;


Image2: TImage;


Image3: TImage;


Image4: TImage;


Image5: TImage;


N2: TMenuItem;


N8: TMenuItem;


{$R *.dfm}


procedure TForm8.N2Click(Sender: TObject);


begin


form1.Close;


end;


procedure TForm8.N7Click(Sender: TObject);


begin


form3.Enabled:=true;


form3.Visible:=true;


form8.Visible:=false;


end;


procedure TForm8.N5Click(Sender: TObject);


begin


form9.Visible:=true;


form8.Visible:=false;


end;


procedure TForm8.N6Click(Sender: TObject);


begin


form8.Table1.Insert;


end;


procedure TForm8.FormClose(Sender: TObject; var Action: TCloseAction);


begin


Form8.Visible:=false;


form3.Visible:=true;


form3.Enabled:=true;


end;


procedure TForm8.FormActivate(Sender: TObject);


begin


form15.Table2.Active:=false;


form9.Table1.Active:=false;


form8.Table1.Active:=true;


form8.Table2.Active:=true;


form9.Table2.Active:=false;


form8.Table3.Active:=true;


form9.Table3.Active:=false;


form8.Left:=210;


form8.Top:=155;


form8.AutoSize:=true;


if form8.Table1Status.Value='2' then begin


form8.Label2.Visible:=false;


form8.Label3.Visible:=false;


form8.DBEdit8.Visible:=false;


form8.DBEdit9.Visible:=false;


end;


if form8.Table1Status.Value='1' then begin


form8.Label3.Visible:=true;


form8.DBEdit8.Visible:=true;


form8.DBEdit9.Visible:=true;


end;


end;


procedure TForm8.Image5Click(Sender: TObject);


begin


form8.Table1.First;


if form8.Table1Status.Value='2' then begin


form8.Label2.Visible:=false;


form8.Label3.Visible:=false;


form8.DBEdit8.Visible:=false;


form8.DBEdit9.Visible:=false;


end;


if form8.Table1Status.Value='1' then begin


form8.Label2.Visible:=true;


form8.Label3.Visible:=true;


form8.DBEdit8.Visible:=true;


form8.DBEdit9.Visible:=true;


end;


end;


procedure TForm8.N8Click(Sender: TObject);


begin


form9.Visible:=true;


form8.Visible:=false;


end;


procedure TForm8.N9Click(Sender: TObject);


begin


form10.Visible:=true;


end;


procedure TForm8.N10Click(Sender: TObject);


begin


form8.Table1.Delete;


end;


procedure TForm8.N11Click(Sender: TObject);


begin


Form8.Table1.Edit;


end;


procedure TForm8.N12Click(Sender: TObject);


begin


Form8.Table1.Post;


end;


procedure TForm8.N13Click(Sender: TObject);


begin


form8.Table1.Cancel;


Table3Adres_kl: TStringField;


Table3Telefon_dom: TStringField;


Table3Telefon_sot: TStringField;


Table2ID_status: TStringField;


Table2Status: TStringField;


procedure N2Click(Sender: TObject);


procedure N3Click(Sender: TObject);


procedure FormClose(Sender: TObject; var Action: TCloseAction);


procedure FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


procedure FormActivate(Sender: TObject);


procedure N4Click(Sender: TObject);


procedure N5Click(Sender: TObject);


procedure N6Click(Sender: TObject);


procedure N7Click(Sender: TObject);


procedure N8Click(Sender: TObject);


procedure Image1Click(Sender: TObject);


procedure Image2Click(Sender: TObject);


procedure Image3Click(Sender: TObject);


procedure Image4Click(Sender: TObject);


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form9: TForm9;


implementation


uses Unit1, Unit10, Unit11, Unit12, Unit2, Unit3, Unit4, Unit5, Unit6,


Unit7, Unit8, Unit13, Unit14, Unit15;


{$R *.dfm}


procedure TForm9.N2Click(Sender: TObject);


begin


form1.Close;


end;


procedure TForm9.N3Click(Sender: TObject);


begin


form8.Visible:=true;


form9.Visible:=false;


end;


procedure TForm9.FormClose(Sender: TObject; var Action: TCloseAction);


begin


form9.Visible:=false;


form3.Visible:=true;


end;


procedure TForm9.Image1Click(Sender: TObject);


begin


form9.Table1.First;


end;


procedure TForm9.Image2Click(Sender: TObject);


begin


form9.Table1.Prior;


end;


procedure TForm9.Image3Click(Sender: TObject);


begin


form9.Table1.Next;


end;


procedure TForm9.Image4Click(Sender: TObject);


begin


form9.Table1.Last;


end;


end.


//справочник – Статус квартир


unit Unit10;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, Menus, ExtCtrls, DBCtrls, Grids, DBGrids, DB, DBTables;


type


TForm10 = class(TForm)


DataSource1: TDataSource;


DBGrid1: TDBGrid;


MainMenu1: TMainMenu;


N1: TMenuItem;


N2: TMenuItem;


N3: TMenuItem;


N4: TMenuItem;


N5: TMenuItem;


procedure N2Click(Sender: TObject);


procedure FormClose(Sender: TObject; var Action: TCloseAction);


procedure FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


procedure FormActivate(Sender: TObject);


procedure N5Click(Sender: TObject);


procedure N3Click(Sender: TObject);


procedure N4Click(Sender: TObject);


procedure N1Click(Sender: TObject);


end;


procedure TForm10.N4Click(Sender: TObject);


begin


form9.Table2.Refresh;


end;


procedure TForm10.N1Click(Sender: TObject);


begin


form9.Table2.Edit;


end;


end.


//справочник –должность сотрудника


unit Unit11;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, DB, DBTables, ExtCtrls, DBCtrls, Grids, DBGrids, Menus;


type


TForm11 = class(TForm)


DataSource1: TDataSource;


DBGrid1: TDBGrid;


Table1: TTable;


Table1ID_dogn: TAutoIncField;


Table1Dolgn: TStringField;


Table1Zarplata: TIntegerField;


MainMenu1: TMainMenu;


N1: TMenuItem;


N2: TMenuItem;


N3: TMenuItem;


N4: TMenuItem;


N5: TMenuItem;


procedure N1Click(Sender: TObject);


procedure N2Click(Sender: TObject);


procedure N3Click(Sender: TObject);


procedure N4Click(Sender: TObject);


procedure N5Click(Sender: TObject);


procedure FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


procedure FormActivate(Sender: TObject);


private


{ Private declarations }


public


{ Public declarations }


end;


var


//поиск данных в архиве предложений


unit Unit12;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics,


Controls, Forms,Dialogs, StdCtrls, ExtCtrls, Mask, DBCtrls,


Menus, Buttons, DB, Grids DBGrids, DBTables;


type


TForm12 = class(TForm)


Panel1: TPanel;


MainMenu1: TMainMenu;


N1: TMenuItem;


N2: TMenuItem;


Label1: TLabel;


CheckBox1: TCheckBox;


Edit1: TEdit;


Edit2: TEdit;


Edit3: TEdit;


Bevel1: TBevel;


CheckBox2: TCheckBox;


CheckBox3: TCheckBox;


Bevel2: TBevel;


CheckBox4: TCheckBox;


Edit4: TEdit;


Bevel3: TBevel;


CheckBox5: TCheckBox;


Edit5: TEdit;


CheckBox10: TCheckBox;


Edit6: TEdit;


BitBtn1: TBitBtn;


DBGrid1: TDBGrid;


Query1: TQuery;


DataSource1: TDataSource;


CheckBox11: TCheckBox;


CheckBox12: TCheckBox;


CheckBox13: TCheckBox;


CheckBox14: TCheckBox;


CheckBox15: TCheckBox;


procedure FormActivate(Sender: TObject);


procedure CheckBox1Click(Sender: TObject);


procedure CheckBox2Click(Sender: TObject);


procedure CheckBox3Click(Sender: TObject);


procedure CheckBox4Click(Sender: TObject);


procedure CheckBox5Click(Sender: TObject);


procedure CheckBox10Click(Sender: TObject);


procedure BitBtn1Click(Sender: TObject);


procedure CheckBox6Click(Sender: TObject);


procedure CheckBox7Click(Sender: TObject);


procedure CheckBox8Click(Sender: TObject);


procedure CheckBox9Click(Sender: TObject);


edit2.Enabled:=false;


edit3.Enabled:=false;


edit4.Enabled:=false;


edit5.Enabled:=false;


edit6.Enabled:=false;


CheckBox11.Enabled:=false;


CheckBox12.Enabled:=false;


CheckBox5.Enabled:=false;


CheckBox10.Enabled:=false;


end;


procedure TForm12.CheckBox1Click(Sender: TObject);


begin


if CheckBox1.Checked=true then begin


edit1.Color:=clWhite;


edit1.Enabled:=true;


checkbox2.Checked:=false;


checkbox3.Checked:=false;


checkbox4.Checked:=false;


checkbox5.Checked:=false;


checkbox10.Checked:=false;


checkbox13.Checked:=false;


checkbox14.Checked:=false;


end;


if CheckBox1.Checked=false then begin


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


end;


procedure TForm12.CheckBox2Click(Sender: TObject);


begin


if CheckBox2.Checked=true then begin


edit2.Color:=clWhite;


edit2.Enabled:=true;


CheckBox1.Checked:=false;


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


if CheckBox2.Checked=false then begin


Edit2.Color:=$00C4C4C4;


edit2.Enabled:=false;


end;


end;


procedure TForm12.CheckBox3Click(Sender: TObject);


begin


if CheckBox3.Checked=true then begin


edit3.Color:=clWhite;


edit3.Enabled:=true;


procedure TForm12.CheckBox10Click(Sender: TObject);


begin


if CheckBox10.Checked=true then begin


edit6.Color:=clWhite;


edit6.Enabled:=true;


CheckBox1.Checked:=false;


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


if CheckBox10.Checked=false then begin


Edit6.Color:=$00C4C4C4;


edit6.Enabled:=false;


end;


end;


procedure TForm12.BitBtn1Click(Sender: TObject);


begin


if checkbox1.Checked=true then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT Status.Status as Статус,ID_kv as


Квартира,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Домì, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE(ID_kv="'+Edit1.Text+'")


AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=true then


if checkbox3.Checked=false then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Код, Status.Status


as Статус, RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza


as Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag


as Этаж FROM Predlogenia, Status WHERE(


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status


as Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza


as Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag


as Этаж FROM Predlogenia, Status WHERE(Zena="'+Edit3.Text+'")


AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=true then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox11.Checked=false then


if checkbox12.Checked=false then


if checkbox13.Checked=true then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE(Zena="'+Edit3.Text+'")


AND(Predlogenia.status="2")AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=true then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox11.Checked=false then


if checkbox12.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=true then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza


As Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as Этаж FROM Predlogenia, Status WHERE(Zena="'+Edit3.Text+'")


AND(Predlogenia.status="1")AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE(Zena<"'+Edit3.Text+'")


AND(Predlogenia.Status="2")And (Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=true then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox11.Checked=true then


if checkbox12.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=true then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE(Zena<"'+Edit3.Text+'")


AND(Predlogenia.Status="1")And (Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=true then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox11.Checked=false then


if checkbox12.Checked=true then


if checkbox13.Checked=true then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РННÍ, Kol_kom as Комнат, Zena as Цена,


Uliza as Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as Этаж FROM Predlogenia, Status WHERE (Zena>"'+Edit3.Text+'") AND(Predlogenia.Status="2")And (Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=true then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=true then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl asРННÍ, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKE UPPER("%'+Edit4.Text+'%")AND(Predlogenia.Status="1")


AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=true then


if checkbox5.Checked=true then


if checkbox10.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKE UPPER("%'+Edit4.Text+'%")AND(Dom="'+Edit5.Text+'")


AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=true then


if checkbox5.Checked=true then


if checkbox10.Checked=false then


if checkbox13.Checked=true then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv asНомер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKE UPPER("%'+Edit4.Text+'%")AND(Kv="'+Edit6.Text+'")


AND(Predlogenia.Status="2")AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=true then


if checkbox5.Checked=false then


if checkbox10.Checked=true then


if checkbox13.Checked=false then


if checkbox14.Checked=true then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKE UPPER("%'+Edit4.Text+'%")AND(Kv="'+Edit6.Text+'")


AND(Predlogenia.Status="1")AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=true then


if checkbox5.Checked=true then


if checkbox10.Checked=true then


if checkbox13.Checked=false then


if checkbox14.Checked=true then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKEUPPER("%'+Edit4.Text+'%")AND(Kv="'+Edit6.Text+'")


AND(Dom="'+Edit5.Text+'")AND(Predlogenia.Status="1")


AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


Этаж FROM Predlogenia, Status WHERE Predlogenia.Status=ID_status';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox13.Checked=true then


if checkbox14.Checked=false then


if checkbox15.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE (Predlogenia.Status="2")AND


(ID_status=Predlogenia.Status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=true then


if checkbox15.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia,


Status WHERE (Predlogenia.Status="1")


AND(ID_status=Predlogenia.Status)';


Query1.Open;


end;


end;


procedure TForm12.CheckBox6Click(Sender: TObject);


else CheckBox13.Enabled:=true;


CheckBox1.Checked:=false;


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


procedure TForm12.CheckBox15Click(Sender: TObject);


begin


if CheckBox15.Checked=true then begin


checkbox2.Checked:=false;


checkbox3.Checked:=false;


checkbox4.Checked:=false;


checkbox5.Checked:=false;


checkbox10.Checked:=false;


checkbox13.Checked:=false;


checkbox14.Checked:=false;


end;


end;


procedure TForm12.FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


begin


form12.DBGrid1.Height:=form12.Height-260;


form12.DBGrid1.Width:=form12.Width-5;


end;


end.


// интерфейс пользователя


unit Unit13;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, ExtCtrls;


type


TForm13 = class(TForm)


Image1: TImage;


Image2: TImage;


Image3: TImage;


Image4: TImage;


Panel1: TPanel;


procedure Image4Click(Sender: TObject);


procedure Image3Click(Sender: TObject);


procedure Image2Click(Sender: TObject);


procedure Image1Click(Sender: TObject);


private


{ Private declarations }


public


DBEdit7: TDBEdit;


MainMenu1: TMainMenu;


N1: TMenuItem;


N2: TMenuItem;


N3: TMenuItem;


N4: TMenuItem;


Label1: TLabel;


DBLookupComboBox1: TDBLookupComboBox;


Label2: TLabel;


DBLookupComboBox2: TDBLookupComboBox;


Label3: TLabel;


DBLookupComboBox3: TDBLookupComboBox;


DBNavigator1: TDBNavigator;


procedure N4Click(Sender: TObject);


procedure FormActivate(Sender: TObject);


procedure FormClose(Sender: TObject; var Action: TCloseAction);


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form14: TForm14;


implementation


uses Unit1, Unit10, Unit11, Unit12, Unit13, Unit2, Unit3, Unit4, Unit5,


Unit6, Unit7, Unit8, Unit9, Unit15;


{$R *.dfm}


procedure TForm14.N4Click(Sender: TObject);


begin


form15.Visible:=true;


end;


procedure TForm14.FormActivate(Sender: TObject);


begin


form15.Table2.Active:=true;


form15.Table3.Active:=true;


form14.Height:=360;


form14.Width:=450;


form14.Left:=300;


form14.Top:=200;


form14.AutoSize:=true


end;


procedure TForm14.FormClose(Sender: TObject; var Action: TCloseAction);


begin


form15.Table3.Active:=false;


form15.Table2.Active:=false;


end;


end.


// табличные данные архива сделок


unit Unit15;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, DB, DBTables, ExtCtrls, DBCtrls, Grids, DBGrids;


type


TForm15 = class(TForm)


DataSource1: TDataSource;


DBGrid1: TDBGrid;


DBNavigator1: TDBNavigator;


Table1: TTable;


Table1ID_sd: TAutoIncField;


procedure TForm3.Button1Click(Sender: TObject);


begin


form1.Close;


end;


procedure TForm3.N3Click(Sender: TObject);


begin


form4.Visible:=true;


form3.Visible:=false;


end;


procedure TForm3.N4Click(Sender: TObject);


begin


form1.Close;


end;


procedure TForm3.N5Click(Sender: TObject);


begin


form6.Visible:=true;


form3.Visible:=false;


end;


procedure TForm3.N6Click(Sender: TObject);


begin


form8.Visible:=true;


form3.Visible:=false;


end;


procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction);


begin


form1.Close;


end;


procedure TForm3.FormActivate(Sender: TObject);


begin


form3.AutoSize:=true;


form3.ClientHeight:=513;


form3.ClientWidth:=663;


form3.Left:=180;


form3.Top:=100;


end;


procedure TForm3.Image2Click(Sender: TObject);


begin


form13.Visible:=true;


form13.Left:=form3.Left+100;


form13.Top:=form3.Top+200;


form13.ClientHeight:=145;


form13.ClientWidth:=480;


form3.Enabled:=false;


end;


procedure TForm3.N10Click(Sender: TObject);


begin


form6.Visible:=true;


form3.Visible:=false;


end;


procedure TForm4.N5Click(Sender: TObject);


begin


form5.Visible:=true;


form4.Visible:=false;


end;


procedure TForm4.thyenmcz1Click(Sender: TObject);


begin


form3.Visible:=true;


form4.Visible:=false;


form3.Enabled:=true;


end;


procedure TForm4.N6Click(Sender: TObject);


begin


form11.Visible:=true;


end;


procedure TForm4.FormClose(Sender: TObject; var Action: TCloseAction);


begin


form4.Visible:=false;


form3.Visible:=true;


form3.Enabled:=true;


end;


procedure TForm4.N10Click(Sender: TObject);


begin


form5.Table1.Insert;


end;


procedure TForm4.N11Click(Sender: TObject);


begin


form5.Table1.Delete;


end;


procedure TForm4.N12Click(Sender: TObject);


begin


form5.Table1.Edit;


end;


procedure TForm4.N13Click(Sender: TObject);


begin


form5.Table1.Post;


end;


procedure TForm4.N14Click(Sender: TObject);


begin


form5.Table1.Cancel;


end;


Afqk1: TMenuItem;


N1: TMenuItem;


DBGrid1: TDBGrid;


DataSource1: TDataSource;


Table1: TTable;


N4: TMenuItem;


N5: TMenuItem;


N6: TMenuItem;


Update1: TMenuItem;


Save1: TMenuItem;


Image1: TImage;


Image2: TImage;


Image3: TImage;


Image4: TImage;


Panel1: TPanel;


Table2: TTable;


Table1RNN_sotr: TStringField;


Table1FIO_sotr: TStringField;


Table1Adres: TStringField;


Table1Telefon_dom: TStringField;


Table1Telefon_sot: TStringField;


Table1Dolgnost: TIntegerField;


Table1Foto: TGraphicField;


Table1Dop: TMemoField;


Table1Dolgn: TStringField;


Table1Zarplata: TIntegerField;


Table2ID_dogn: TAutoIncField;


Table2Dolgn: TStringField;


Table2Zarplata: TIntegerField;


procedure N1Click(Sender: TObject);


procedure FormClose(Sender: TObject; var Action: TCloseAction);


procedure FormActivate(Sender: TObject);


procedure FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


procedure N4Click(Sender: TObject);


procedure N5Click(Sender: TObject);


procedure N6Click(Sender: TObject);


procedure Save1Click(Sender: TObject);


procedure Update1Click(Sender: TObject);


procedure N2Click(Sender: TObject);


procedure Image1Click(Sender: TObject);


procedure Image2Click(Sender: TObject);


procedure Image3Click(Sender: TObject);


procedure Image4Click(Sender: TObject);


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form5: TForm5;


procedure TForm5.N6Click(Sender: TObject);


begin


form5.Table1.Append;


end;


procedure TForm5.Save1Click(Sender: TObject);


begin


form5.Table1.Post;


end;


procedure TForm5.Update1Click(Sender: TObject);


begin


form5.Table1.Refresh;


end;


procedure TForm5.N2Click(Sender: TObject);


begin


form1.Close;


end;


procedure TForm5.Image1Click(Sender: TObject);


begin


form5.Table1.First;


end;


procedure TForm5.Image2Click(Sender: TObject);


begin


form5.Table1.Prior;


end;


procedure TForm5.Image3Click(Sender: TObject);


begin


form5.Table1.Next;


end;


procedure TForm5.Image4Click(Sender: TObject);


begin


form5.Table1.Last;


end;


end.


// справочник о клиентах


unit Unit6;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, Menus, ExtCtrls, DBCtrls, StdCtrls, Mask, jpeg;


type


TForm6 = class(TForm)


implementation


uses Unit1, Unit10, Unit11, Unit12, Unit2, Unit3, Unit4, Unit5, Unit7,


Unit8, Unit9;


{$R *.dfm}


procedure TForm6.N3Click(Sender: TObject);


begin


form1.Close;


end;


procedure TForm6.N2Click(Sender: TObject);


begin


form6.Visible:=false;


form3.Visible:=true;


form3.Enabled:=true;


end;


procedure TForm6.N6Click(Sender: TObject);


begin


form7.Visible:=true;


form6.Visible:=false;


end;


procedure TForm6.Jnrhsnm(Sender: TObject; var Action: TCloseAction);


begin


form6.Visible:=false;


form3.Visible:=true;


form3.Enabled:=true;


end;


procedure TForm6.FormActivate(Sender: TObject);


begin


form6.Left:=280;


form6.Top:=205;


form6.AutoSize:=true;


form9.Table3.Active:=true;


end;


procedure TForm6.Image3Click(Sender: TObject);


begin


form9.Table3.Active:=true;


form9.Table3.Prior;


end;


procedure TForm6.Image2Click(Sender: TObject);


begin


form9.Table3.Active:=true;


form9.Table3.First;


end;


form3.Visible:=true;


form3.Enabled:=true;


end;


end.


// табличные данные о клиентах


unit Unit7;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, Menus, ExtCtrls, DBCtrls, Grids, DBGrids, DB, DBTables;


type


TForm7 = class(TForm)


MainMenu1: TMainMenu;


N1: TMenuItem;


N3: TMenuItem;


DataSource1: TDataSource;


DBGrid1: TDBGrid;


N4: TMenuItem;


N5: TMenuItem;


N6: TMenuItem;


N7: TMenuItem;


N8: TMenuItem;


Panel1: TPanel;


Image4: TImage;


Image1: TImage;


Image2: TImage;


Image3: TImage;


procedure N3Click(Sender: TObject);


procedure N2Click(Sender: TObject);


procedure FormClose(Sender: TObject; var Action: TCloseAction);


procedure FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


procedure FormActivate(Sender: TObject);


procedure N4Click(Sender: TObject);


procedure N5Click(Sender: TObject);


procedure N6Click(Sender: TObject);


procedure N7Click(Sender: TObject);


procedure N8Click(Sender: TObject);


procedure Image1Click(Sender: TObject);


procedure Image2Click(Sender: TObject);


procedure Image3Click(Sender: TObject);


procedure Image4Click(Sender: TObject);


private


{ Private declarations }


public


{ Public declarations }


end;


procedure TForm7.N5Click(Sender: TObject);


begin


form9.Table3.Append;


end;


procedure TForm7.N6Click(Sender: TObject);


begin


form9.Table3.Delete;


end;


procedure TForm7.N7Click(Sender: TObject);


begin


form9.Table3.Refresh;


end;


procedure TForm7.N8Click(Sender: TObject);


begin


form9.Table3.Post;


end;


procedure TForm7.Image1Click(Sender: TObject);


begin


form9.Table3.First;


end;


procedure TForm7.Image2Click(Sender: TObject);


begin


form9.Table3.Prior;


end;


procedure TForm7.Image3Click(Sender: TObject);


begin


form9.Table3.Next;


end;


procedure TForm7.Image4Click(Sender: TObject);


begin


form9.Table3.Last;


end;


end.


//архив предложений


unit Unit8;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, Menus, StdCtrls, DBCtrls, ExtCtrls, Mask, DB, DBTables, jpeg;


N9: TMenuItem;


N3: TMenuItem;


N4: TMenuItem;


N5: TMenuItem;


N6: TMenuItem;


N10: TMenuItem;


N11: TMenuItem;


N12: TMenuItem;


N13: TMenuItem;


Table2ID_status: TStringField;


Table2Status: TStringField;


Label13: TLabel;


Label12: TLabel;


Label11: TLabel;


Label10: TLabel;


Label14: TLabel;


Panel1: TPanel;


Label1: TLabel;


Bevel2: TBevel;


Label2: TLabel;


Label3: TLabel;


Bevel3: TBevel;


procedure N2Click(Sender: TObject);


procedure N7Click(Sender: TObject);


procedure N5Click(Sender: TObject);


procedure N6Click(Sender: TObject);


procedure FormClose(Sender: TObject; var Action: TCloseAction);


procedure FormActivate(Sender: TObject);


procedure Image3Click(Sender: TObject);


procedure Image4Click(Sender: TObject);


procedure Image2Click(Sender: TObject);


procedure Image5Click(Sender: TObject);


procedure N8Click(Sender: TObject);


procedure N9Click(Sender: TObject);


procedure N10Click(Sender: TObject);


procedure N11Click(Sender: TObject);


procedure N12Click(Sender: TObject);


procedure N13Click(Sender: TObject);


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form8: TForm8;


implementation


uses Unit1, Unit10, Unit11, Unit12, Unit2, Unit3, Unit4, Unit5, Unit6,


Unit7, Unit9, Unit13, Unit14, Unit15;


form8.Label2.Visible:=true;


form8.Label3.Visible:=true;


form8.DBEdit8.Visible:=true;


form8.DBEdit9.Visible:=true;


end;


end;


procedure TForm8.Image3Click(Sender: TObject);


begin


form8.Table1.Next;


if form8.Table1Status.Value='2' then begin


form8.Label2.Visible:=false;


form8.Label3.Visible:=false;


form8.DBEdit8.Visible:=false;


form8.DBEdit9.Visible:=false;


end;


if form8.Table1Status.Value='1' then begin


form8.Label2.Visible:=true;


form8.Label3.Visible:=true;


form8.DBEdit8.Visible:=true;


form8.DBEdit9.Visible:=true;


end;


end;


procedure TForm8.Image4Click(Sender: TObject);


begin


form8.Table1.Last;


if form8.Table1Status.Value='2' then begin


form8.Label2.Visible:=false;


form8.Label3.Visible:=false;


form8.DBEdit8.Visible:=false;


form8.DBEdit9.Visible:=false;


end;


if form8.Table1Status.Value='1' then begin


form8.Label2.Visible:=true;


form8.Label3.Visible:=true;


form8.DBEdit8.Visible:=true;


form8.DBEdit9.Visible:=true;


end;


end;


procedure TForm8.Image2Click(Sender: TObject);


begin


form8.Table1.Prior;


if form8.Table1Status.Value='2' then begin


form8.Label2.Visible:=false;


form8.Label3.Visible:=false;


form8.DBEdit8.Visible:=false;


form8.DBEdit9.Visible:=false;


end;


if form8.Table1Status.Value='1' then begin


form8.Label2.Visible:=true;


end;


end.


//табличные данные архива предложений


unit Unit9;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


Dialogs, DB, DBTables, Menus, ExtCtrls, DBCtrls, Grids, DBGrids;


type


TForm9 = class(TForm)


MainMenu1: TMainMenu;


N1: TMenuItem;


N3: TMenuItem;


DataSource1: TDataSource;


DBGrid1: TDBGrid;


N4: TMenuItem;


N5: TMenuItem;


N6: TMenuItem;


N7: TMenuItem;


N8: TMenuItem;


Panel1: TPanel;


Image4: TImage;


Image1: TImage;


Image2: TImage;


Image3: TImage;


Table1: TTable;


Table2: TTable;


Table3: TTable;


Table1ID_kv: TAutoIncField;


Table1RNN_kl: TStringField;


Table1Kol_kom: TIntegerField;


Table1Zena: TIntegerField;


Table1Uliza: TStringField;


Table1Dom: TStringField;


Table1Kv: TIntegerField;


Table1Ploshad: TFloatField;


Table1Etag: TStringField;


Table1Lift: TBooleanField;


Table1Remont: TBooleanField;


Table1Balkon: TBooleanField;


Table1Telefon: TBooleanField;


Table1Status: TStringField;


Table1Dop: TMemoField;


Table1stat: TStringField;


Table1FIO: TStringField;


Table3RNN_kl: TStringField;


Table3FIO_kl: TStringField;


form3.Enabled:=true;


end;


procedure TForm9.FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


begin


form9.DBGrid1.Height:=form9.Height-75;


form9.DBGrid1.Width:=form9.Width-10;


form9.Panel1.Left:=round(form9.Width/2)-150;


form9.Panel1.Top:=form9.Height-75;


end;


procedure TForm9.FormActivate(Sender: TObject);


begin


form9.Left:=190;


form9.Top:=211;


form9.Height:=325;


form9.Width:=650;


form9.Table1.Active:=true;


form8.Table1.Active:=false;


form8.Table2.Active:=false;


form9.Table2.Active:=true;


form8.Table3.Active:=false;


form9.Table3.Active:=true;


form15.Table2.Active:=false;


end;


procedure TForm9.N4Click(Sender: TObject);


begin


form9.Table1.Edit;


end;


procedure TForm9.N5Click(Sender: TObject);


begin


form9.Table1.Append;


end;


procedure TForm9.N6Click(Sender: TObject);


begin


form9.Table1.Delete;


end;


procedure TForm9.N7Click(Sender: TObject);


begin


form9.Table1.Refresh;


end;


procedure TForm9.N8Click(Sender: TObject);


begin


form9.Table1.Post;


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form10: TForm10;


implementation


uses Unit1, Unit11, Unit12, Unit2, Unit3, Unit4, Unit5, Unit6, Unit7,


Unit8, Unit9, Unit13;


{$R *.dfm}


procedure TForm10.N2Click(Sender: TObject);


begin


form9.Table2.Append;


end;


procedure TForm10.FormClose(Sender: TObject; var Action: TCloseAction);


begin


form8.Visible:=true;


form10.Visible:=false;


end;


procedure TForm10.FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


begin


form10.DBGrid1.Height:=form10.Height-10;


form10.DBGrid1.Width:=form10.Width;


end;


procedure TForm10.FormActivate(Sender: TObject);


begin


form10.Height:=217;


form10.Width:=217;


form9.Table2.Active:=true;


form8.Table2.Active:=false;


end;


procedure TForm10.N5Click(Sender: TObject);


begin


form9.Table2.Post;


end;


procedure TForm10.N3Click(Sender: TObject);


begin


Form9.Table2.Delete;


Form11: TForm11;


implementation


uses Unit1, Unit10, Unit12, Unit2, Unit3, Unit4, Unit5, Unit6, Unit7,


Unit8, Unit9;


{$R *.dfm}


procedure TForm11.N1Click(Sender: TObject);


begin


form11.Table1.Post;


end;


procedure TForm11.N2Click(Sender: TObject);


begin


form11.Table1.Edit;


end;


procedure TForm11.N3Click(Sender: TObject);


begin


form11.Table1.Delete;


end;


procedure TForm11.N4Click(Sender: TObject);


begin


form11.Table1.Refresh;


end;


procedure TForm11.N5Click(Sender: TObject);


begin


form11.Table1.Append;


end;


procedure TForm11.FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


begin


form11.DBGrid1.Height:=form11.Height-75;


form11.DBGrid1.Width:=form11.Width-5;


end;


procedure TForm11.FormActivate(Sender: TObject);


begin


form11.Height:=220;


form11.Width:=290;


form11.Table1.Active:=true;


end;


end.


procedure CheckBox11Click(Sender: TObject);


procedure CheckBox12Click(Sender: TObject);


procedure CheckBox13Click(Sender: TObject);


procedure CheckBox14Click(Sender: TObject);


procedure CheckBox15Click(Sender: TObject);


procedure FormConstrainedResize(Sender: TObject;


var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form12: TForm12;


implementation


uses Unit1, Unit10, Unit11, Unit2, Unit3, Unit4, Unit5, Unit6,


Unit7, Unit8, Unit9;


{$R *.dfm}


procedure TForm12.FormActivate(Sender: TObject);


begin


form12.Height:=368;


form12.Width:=500;


form12.Top:=220;


form12.Left:=295;


CheckBox1.Checked:=false;


CheckBox2.Checked:=false;


CheckBox3.Checked:=false;


CheckBox4.Checked:=false;


CheckBox5.Checked:=false;


CheckBox10.Checked:=false;


CheckBox11.Checked:=false;


CheckBox12.Checked:=false;


CheckBox13.Checked:=false;


CheckBox14.Checked:=false;


Edit1.Color:=$00C4C4C4;


Edit2.Color:=$00C4C4C4;


Edit3.Color:=$00C4C4C4;


Edit4.Color:=$00C4C4C4;


Edit5.Color:=$00C4C4C4;


Edit6.Color:=$00C4C4C4;


edit1.Enabled:=false;


CheckBox11.Enabled:=true;


CheckBox12.Enabled:=true;


CheckBox11.Checked:=false;


CheckBox12.Checked:=false;


CheckBox1.Checked:=false;


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


if CheckBox3.Checked=false then begin


Edit3.Color:=$00C4C4C4;


edit3.Enabled:=false;


CheckBox11.Enabled:=false;


CheckBox12.Enabled:=false;


end;


end;


procedure TForm12.CheckBox4Click(Sender: TObject);


begin


if CheckBox4.Checked=true then begin


edit4.Color:=clWhite;


edit4.Enabled:=true;


CheckBox5.Enabled:=true;


CheckBox10.Enabled:=true;


CheckBox1.Checked:=false;


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


if CheckBox4.Checked=false then begin


Edit4.Color:=$00C4C4C4;


edit4.Enabled:=false;


CheckBox5.Enabled:=false;


CheckBox10.Enabled:=false;


end;


end;


procedure TForm12.CheckBox5Click(Sender: TObject);


begin


if CheckBox5.Checked=true then begin


edit5.Color:=clWhite;


edit5.Enabled:=true;


CheckBox1.Checked:=false;


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


if CheckBox5.Checked=false then begin


Edit5.Color:=$00C4C4C4;


edit5.Enabled:=false;


end; end;


Kol_kom="'+Edit2.Text+'")AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=true then


if checkbox3.Checked=false then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox13.Checked=true then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер_заявки,


Status.Status as Статус,RNN_kl as РНН, Kol_kom as Комнат,


Zena as Цена,Uliza as Улица, Dom as Дом, Kv as Квартира,


Ploshad as Площадь, Etag as Этаж FROM Predlogenia, Status WHERE


(Kol_kom="'+Edit2.Text+'") AND (Predlogenia.status="2")AND


(Predlogenia.status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=true then


if checkbox3.Checked=false then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=true then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE(Kol_kom="'+Edit2.Text+'")


AND(Predlogenia.status="1")AND(Predlogenia.status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=true then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox11.Checked=false then


if checkbox12.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=false then begin


if checkbox2.Checked=false then


if checkbox3.Checked=true then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox11.Checked=true then


if checkbox12.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as номер, Status.Status as


статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE(Zena<"'+Edit3.Text+'")AND


(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=true then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox11.Checked=false then


if checkbox12.Checked=true then


if checkbox13.Checked=false then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as , Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE(Zena>"'+Edit3.Text+'")


AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=true then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox11.Checked=true then


if checkbox12.Checked=false then


if checkbox13.Checked=true then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


if checkbox3.Checked=true then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox11.Checked=false then


if checkbox12.Checked=true then


if checkbox13.Checked=false then


if checkbox14.Checked=true then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv asНомер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Кварира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE(Zena>"'+Edit3.Text+'")


AND(Predlogenia.Status="1")And (Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=true then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Домì, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKE UPPER("%'+Edit4.Text+'%")And (Predlogenia.Status=ID_status)';


Query1.Open; end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=true then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox13.Checked=true then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKE UPPER("%'+Edit4.Text+'%")AND(Predlogenia.Status="2")


AND(Predlogenia.Status=ID_status)';


Query1.Open;


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKE UPPER("%'+Edit4.Text+'%")AND(Dom="'+Edit5.Text+'")


AND(Predlogenia.Status="2")AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=true then


if checkbox5.Checked=true then


if checkbox10.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=true then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv asНомер, Status.Status as Статус,RNN_kl as РЕЕÍ, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKE UPPER("%'+Edit4.Text+'%")AND(Dom="'+Edit5.Text+'")


AND(Predlogenia.Status="1")AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then "


if checkbox4.Checked=true then


if checkbox5.Checked=false then


if checkbox10.Checked=true then


if checkbox13.Checked=false then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKE UPPER("%'+Edit4.Text+'%")AND(Kv="'+Edit6.Text+'")


AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=true then


if checkbox5.Checked=false then


if checkbox10.Checked=true then


if checkbox13.Checked=true then


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=true then


if checkbox5.Checked=true then


if checkbox10.Checked=true then


if checkbox13.Checked=true then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKEUPPER("%'+Edit4.Text+'%")AND(Kv="'+Edit6.Text+'")


AND(Dom="'+Edit5.Text+'")AND(Predlogenia.Status="2")


AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=true then


if checkbox5.Checked=true then


if checkbox10.Checked=true then


if checkbox13.Checked=false then


if checkbox14.Checked=false then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as


Этаж FROM Predlogenia, Status WHERE UPPER(Uliza)


LIKE UPPER("%'+Edit4.Text+'%")AND(Kv="'+Edit6.Text+'")


AND(Dom="'+Edit5.Text+'")AND(Predlogenia.Status=ID_status)';


Query1.Open;


end;


if checkbox1.Checked=false then


if checkbox2.Checked=false then


if checkbox3.Checked=false then


if checkbox4.Checked=false then


if checkbox5.Checked=false then


if checkbox10.Checked=false then


if checkbox13.Checked=false then


if checkbox14.Checked=false then


if checkbox15.Checked=true then begin


Query1.Close;


Query1.SQL.Clear;


Query1.SQL.Text:='SELECT ID_kv as Номер, Status.Status as


Статус,RNN_kl as РНН, Kol_kom as Комнат, Zena as Цена,Uliza as


Улица, Dom as Дом, Kv as Квартира, Ploshad as Площадь, Etag as begin


CheckBox1.Checked:=false;


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


procedure TForm12.CheckBox7Click(Sender: TObject);


begin


CheckBox1.Checked:=false;


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


procedure TForm12.CheckBox8Click(Sender: TObject);


begin


CheckBox1.Checked:=false;


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


procedure TForm12.CheckBox9Click(Sender: TObject);


begin


CheckBox1.Checked:=false;


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


procedure TForm12.CheckBox11Click(Sender: TObject);


begin


if CheckBox11.Checked=true then CheckBox12.Enabled:=false


else CheckBox12.Enabled:=true;


end;


procedure TForm12.CheckBox12Click(Sender: TObject);


begin


if CheckBox12.Checked=true then CheckBox11.Enabled:=false


else CheckBox11.Enabled:=true;


end;


procedure TForm12.CheckBox13Click(Sender: TObject);


begin


if CheckBox13.Checked=true then CheckBox14.Enabled:=false


else CheckBox14.Enabled:=true;


CheckBox1.Checked:=false;


Edit1.Color:=$00C4C4C4;


edit1.Enabled:=false;


end;


procedure TForm12.CheckBox14Click(Sender: TObject);


begin


if CheckBox14.Checked=true then CheckBox13.Enabled:=false


{ Public declarations }


end;


var


Form13: TForm13;


implementation


uses Unit1, Unit10, Unit11, Unit12, Unit2, Unit3, Unit4, Unit5, Unit6,


Unit7, Unit8, Unit9;


{$R *.dfm}


procedure TForm13.Image4Click(Sender: TObject);


begin


form13.Visible:=false;


form3.Enabled:=true;


end;


procedure TForm13.Image3Click(Sender: TObject);


begin


form8.Visible:=true;


form13.Visible:=false;


end;


procedure TForm13.Image2Click(Sender: TObject);


begin


form4.Visible:=true;


form13.Visible:=false;


end;


procedure TForm13.Image1Click(Sender: TObject);


begin


form6.Visible:=true;


form13.Visible:=false;


end; end.


//архив сделок


unit Unit14;


interface


uses


Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,


Forms, Dialogs, DBCtrls, StdCtrls, Mask, ExtCtrls, Menus;


type


TForm14 = class(TForm)


Panel2: TPanel;


Label4: TLabel;


Label5: TLabel;


Label6: TLabel;


Label7: TLabel;


Label8: TLabel;


Label9: TLabel;


Label10: TLabel;


DBEdit2: TDBEdit;


DBEdit3: TDBEdit;


DBEdit4: TDBEdit;


DBEdit5: TDBEdit;


DBEdit6: TDBEdit;


Table1RNN_sotr: TStringField;


Table1Zena_kv: TIntegerField;


Table1Oplata: TIntegerField;


Table1Data: TDateField;


Table1Dop: TMemoField;


Table2: TTable;


Table3: TTable;


Table1RNN_prod: TStringField;


Table1RNN_pok: TStringField;


Table1FIO_sotr: TStringField;


Table1FIO_prod: TStringField;


Table1FIO_pok: TStringField;


procedure FormActivate(Sender: TObject);


procedure FormClose(Sender: TObject; var Action: TCloseAction);


procedure FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


private


{ Private declarations }


public


{ Public declarations }


end;


var


Form15: TForm15;


implementation


uses Unit1, Unit10, Unit11, Unit12, Unit13, Unit14, Unit2, Unit3, Unit4,


Unit5, Unit6, Unit7, Unit8, Unit9;


{$R *.dfm}


procedure TForm15.FormActivate(Sender: TObject);


begin


form15.Table2.Active:=true;


form15.Table3.Active:=true;


form5.Table1.Active:=false;


form9.Table3.Active:=false;


form8.Table3.Active:=false;


form15.Height:=325;


form15.Width:=650;


form15.Left:=190;


form15.Top:=211;


end;


procedure TForm15.FormClose(Sender: TObject; var Action: TCloseAction);


begin


form15.Table2.Active:=false;


form15.Table3.Active:=false;


end;


procedure TForm15.FormConstrainedResize(Sender: TObject; var MinWidth,


MinHeight, MaxWidth, MaxHeight: Integer);


begin


form15.DBGrid1.Height:=form15.Height-75;


form15.DBGrid1.Width:=form15.Width-10;


end;


end.


Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: АРМ менеджера по продаже недвижимости

Слов:12882
Символов:156462
Размер:305.59 Кб.