Информационная система жилищного кооператива
Для создании базы данных была выбрана система управления базами данных (СУБД) Microsoft Office Access. Положительной стороной Microsoft Office Access в возможностях написания приложений является механизм связи с различными внешними СУБД: связанные таблицы (связь с таблицей СУБД) и запросы к серверу (запрос на диалекте SQL, который понимает СУБД). Также Microsoft Office Access позволяет строить… Читать ещё >
Информационная система жилищного кооператива (реферат, курсовая, диплом, контрольная)
Содержание
1. Аналитический и литературный обзор предметной области
2. Проектирование базы данных
2.1 Инфологическое проектирование модели базы данных
2.2 Логическое проектирование модели базы данных
2.3 Физическое проектирование модели базы данных
3. Описание структуры программы
4. Выбор методов решения задачи и разработка основных алгоритмов Вывод
Жилищно-коммунальное хозяйство (ЖКХ) — это многоотраслевой комплекс, реформе которого уделяется самое пристальное внимание со стороны государства.
Сегодня основные фонды ЖКХ изношены. В обновлении и модернизации нуждаются объекты и системы водоснабжения, теплоснабжения, энергоснабжения. Необходимо также сформировать новую систему управления ЖКХ. Все это требует новых подходов к управлению коммунальным хозяйством и адекватных инструментов для реализации задач управления.
Задачи реформы ЖКХ:
В настоящий момент управление производством ЖКХ централизовано, почти не развита конкуренция. Потребители не могут влиять на количество и качество представляемых им услуг. Цели реформы направлены на изменение сложившейся ситуации. Для их достижения требуется решить такие задачи, как:
ѕ модернизация мощностей ЖКХ и жилищного фонда;
ѕ перевод ЖКХ на рыночные правила работы (с упразднением государственной монополии, с привлечением частного бизнеса и созданием конкуренции);
ѕ достижение высокого уровня качества коммунальных услуг и соблюдение социальных гарантий.
Роль информационных технологий (ИТ):
Цель использования ИТ в ЖКХ — обеспечить поддержку принятия решений на всех уровнях управления на основе достоверной информации и осуществлять ситуативное моделирование принимаемых решений.
Для реализации этих возможностей необходимо:
ѕ стандартизировать информационные системы, используемые органами государственной власти;
ѕ провести интеграцию ведомственных информационных систем на основе общих стандартов и требований в рамках общего информационного пространства сферы учета населения, социальной защиты и жилищно-коммунального хозяйства;
ѕ обеспечить эффективный и защищенный информационный обмен и электронное взаимодействие органов государственной власти, органов местного самоуправления между собой, с населением и организациями;
ѕ обеспечить работу в системах электронного документооборота с использованием электронной цифровой подписи в органах государственной власти, в том числе и на межведомственном уровне;
ѕ сформировать региональные и муниципальные информационные ресурсы.
1. Аналитический и литературный обзор предметной области
Жилищно-коммунальное хозяйство — комплекс подотраслей, обеспечивающий функционирование инженерной инфраструктуры различных зданий населенных пунктов, создающий удобства и комфортность проживания и нахождения в них граждан путем предоставления им широкого спектра жилищно-коммунальных услуг.
ЖКХ подразумевает:
ѕ Водопровод — прокладка и ремонт водопроводных труб, водозабор очистка и доставка воды в многоквартирные дома и на промышленные объекты, в т. ч. для последующего подогрева для нужд горячего водоснабжения и отопления.
ѕ Канализация — отведение сточных вод.
ѕ Теплоснабжение — обеспечение поставки жителям горячей воды и тепла, обеспечение работы котельных и ТЭЦ. Нарушение работы может вызвать топливно-энергетический кризис.
ѕ Капитальный ремонт зданий.
ѕ Текущий ремонт внутренних общедомовых инженерных коммуникаций и систем (здания).
ѕ Сбор, вывоз и утилизация мусора.
ѕ Текущая уборка мест общего пользования.
ѕ Содержание придомовых территорий (благоустройство).
ѕ Электроснабжение.
Для того чтобы конкретизировать определение ЖКХ, обратимся к структуре прикладной области (Рисунок 1.1).
Рисунок 1.1- Структура прикладной области В центре задачи находится работа с населением по всем услугам, связанным с жильем. Все предприятия, организации, службы, которые работают непосредственно с населением, входят в первый уровень рассматриваемой задачи.
Следующий уровень — это учреждения, которые работают не с населением, а с предприятиями первого уровня. Информационные системы этих учреждений могут содержать модули, предназначенные для работы с предприятиями первого уровня.
Стоит отметить, что на предприятиях ЖКХ используются информационные системы не только для работы с населением. Существуют также бухгалтерский, управленческий, налоговый учет.
Автоматизация ЖКХ обеспечивает поставщикам услуг повышение уровня оплаты и уменьшение основной задолженности населения.
Второй фактор — это удобства для населения при выполнении платежей.
Третий фактор — повышение эффективности использования бюджетных средств, предназначенных для льготирования и субсидирования населения в сфере коммунальных платежей. Министерство экономического развития и торговли (МЭРТ) рассматривает возможность частичного использования единой автоматизированной системы платежей в Москве, отмечая, что это приведет к экономии тридцати миллионов долларов в год, поскольку переплата социальных выплат минимизируется.
И четвертый фактор — автоматизация труда задействованных служб предприятий, участников ЖКХ. Это не только персонифицирует учет льготников и увеличит производительность труда инспекторов, но и предоставит возможность получения оперативной, полноценной и достоверной отчетной информации.
«Информационная Система ЖКХ» (ИС ЖКХ) охватывает все сферы работ по обслуживанию населения и автоматизирует деятельность всех отделов Управления ЖКХ:
ѕ рассчетно-кассовый центр (РКЦ);
ѕ отдел начисления субсидий;
ѕ паспортный стол;
ѕ отдел приватизации жилья;
ѕ экономический отдел;
ѕ юридический отдел;
ѕ отдел ЖКО;
ѕ делопроизводство;
ѕ бюджетная бухгалтерия.
ИС ЖКХ имеет модульную структуру и является гибко настаиваемым под конкретные требования организаций программным комплексом. Каждому отделу управления ЖКХ соответствует свой функциональный модуль, который работает с общими для всего программного комплекса данными. ИС ЖКХ может функционировать как в локальном варианте на одном компьютере, так и в сетевом с неограниченным количеством пользователей.
Таким образом, разрабатываемый программный продукт должен поддерживать следующие требования: добавление и изменение данных о жильце, поиск по фамилии и по адресу, возможность просматривать личные данные жильцов, предоставление всевозможных справок, квитанций для обслуживания нужд населения и ведения отчетности. База данных должна быть создана средствами Microsoft Office ACCESS.
2. Проектирование базы данных
2.1 Инфологическое проектирование модели базы данных
В предметной области «Жилищный кооператив» можно выделить следующие объекты — «Квартира», содержащий список квартир, их адреса и параметры, «Жильцы», хранящий информацию обо всех жильцах квартир, «Льготы», содержащий список льгот, «Виды услуг», содержащий список услуг и цену за них.
В предметной области можно выделить следующие процессы — оплата услуг, содержащий информацию об оплате жильцов за услуги, построение отчетов: Лицевой счет, О составе семьи и Квитанция об оплате услуг.
В рассматриваемой предметной области можно выделить следующие сущности: «Квартира», «Жильцы», «Оплата услуг», «Виды услуг», «Льготы».
Сущность «Квартира» характеризуются атрибутами: Лицевой счет квартиры, Общие квадратные метры, Улица, Дом, Номер квартиры, Льготников. Из рассмотренных выше атрибутов, подходящим для требований ключевых атрибутов является Лицевой счет квартиры, который будет принимать уникальные и числовые значения.
Сущность «Жильцы» характеризуются атрибутами: Лицевой счет квартиры, Полное имя жильца, Льгота, Главный квартиросъемщик, Дата прописки, Дата рождения, Факт родства. Из рассмотренных выше атрибутов нет подходящих для требований ключевых атрибутов, поэтому возникает необходимость добавить дополнительный атрибут Номер жильца, который будет принимать уникальные и числовые значения.
Сущность «Оплата услуг» характеризуются атрибутами: Лицевой счет квартиры, Факт оплаты, Месяц, Год. Из рассмотренных выше атрибутов нет подходящих для требований ключевых атрибутов, поэтому возникает необходимость добавить дополнительный атрибут Номер квитанции, который будет принимать уникальные и числовые значения.
Сущность «Льготы» характеризуется атрибутом: Название льготы. Этот атрибут не соответствует требованиям ключевых атрибутов, т.к. он принимает длинное текстовое значение и поэтому целесообразно добавить дополнительный атрибут Номер льготы, который будет принимать уникальное числовое значение и являться первичным ключом.
Сущность «Виды услуг» характеризуются атрибутами: Название услуги, Цена. В данной сущности нет необходимости для создания ключевого атрибута, так как сущность является справочной.
Между сущностями «Квартира» и «Жильцы» существует связь один ко многим, так как в одной квартире могут быть прописаны несколько жильцов. Первичным ключом сущности «Квартира» будет атрибут Лицевой счет квартиры по отношению к сущности «Жильцы» с внешним ключом Лицевой счет квартиры.
Рисунок 2.1.1 — Связь между сущностями «Квартира» и «Жильцы»
Между сущностями «Квартира» и «Оплата услуг» существует связь один ко многим, так как оплачивать услуги квартиры нужно каждый месяц. Первичным ключом сущности «Квартира» будет атрибут Лицевой счет квартиры по отношению к сущности «Оплата услуг» с внешним ключом Лицевой счет квартиры.
Рисунок 2.1.2 — Связь между сущностями «Квартира» и «Оплата услуг»
Между сущностями «Льготы» и «Жильцы» существует связь один ко многим, так как одна и та же льгота соответствует множеству жильцов. Первичным ключом сущности «Льготы» будет атрибут Номер льготы по отношению к внешнему ключу сущности «Жильцы». Так как атрибут Льгота сущности «Жильцы» принимает длинное текстовое значение, то заменяем его атрибутом Номер льготы, который будет принимать числовое значение и являться внешним ключом по отношению к которому будет создана связь с сущностью «Льготы».
Рисунок 2.1.3 — Связь между сущностями «Льготы» и «Жильцы»
Проанализировав предметную область «Жилищный кооператив» можно построить следующую ER-диаграмму:
2.2 Логическое проектирование модели базы данных
программа администрирование жилищный кооператив На логическом этапе проектирования модели базы данных описывается перевод сущностей инфологической модели в отношения.
Отношение «Квартира» (Лицевой счет квартиры, Общие квадратные метры, Улица, Дом, Номер квартиры, Льготников) находится в первой нормальной форме (1NF), так как на пересечении каждого столбца и строки находятся только элементарные значения атрибутов.
Отношение находится во второй нормальной форме (2NF), так как она находится в первой нормальной форме и не содержит неполных функциональных зависимостей непервичных атрибутов от первичного ключа.
Отношение находится в третьей нормальной форме (3NF), если они находится во второй нормальной форме и не содержат транзитивных зависимостей.
Отношение «Квартира» соответствует требованиям третьей нормальной формы.
Определим схему отношения «Квартира», которая будет реализована в виде таблицы «Квартира» в системе управления базами данных.
Таблица 1 — Схема отношения «Квартира»
Имя атрибута | Домен | Имя поля | Условие на значение | Описание | |
Лицевой счет квартиры | Числовой | ЛС_квартиры | Лицевой счет квартиры | ||
Общие квадратные метры | Числовой | Общие_квадр_метры | Общие квадратные метры | ||
Улица | Текстовый | Улица | Название улицы | ||
Дом | Числовой | Дом | Номер дома | ||
Номер квартиры | Числовой | Номер_квартиры | Номер квартиры | ||
Количество льготников | Числовой | Льготников | Количество льготников | ||
Отношение «Оплата услуг» (Лицевой счет квартиры, Факт оплаты, Месяц, Год, Номер квитанции) находится в первой нормальной форме (1NF), так как на пересечении каждого столбца и строки находятся только элементарные значения атрибутов.
Отношение находится во второй нормальной форме (2NF), так как она находится в первой нормальной форме и не содержит неполных функциональных зависимостей непервичных атрибутов от первичного ключа.
Отношение находится в третьей нормальной форме (3NF), если они находится во второй нормальной форме и не содержат транзитивных зависимостей.
Отношение «Оплата услуг» соответствует требованиям третьей нормальной формы.
Определим схему отношения «Оплата услуг», которая будет реализована в виде таблицы «Оплата услуг» в системе управления базами данных.
Таблица 2 — Схема отношения «Оплата услуг»
Имя атрибута | Домен | Имя поля | Условие на значение | Описание | |
Лицевой счет квартиры | Числовой | ЛС | Лицевой счет квартиры | ||
Факт оплаты | Текстовый | Факт оплаты | Факт оплаты | ||
Месяц | Текстовый | Месяц | Месяц | ||
Год | Числовой | Год | Год | ||
Номер квитанции | Числовой | Номер квитанции | Номер квитанции | ||
Отношение «Жильцы» (Лицевой счет квартиры, Номер льготы, Номер жильца, Полное имя жильца, Главный квартиросъемщик, Дата прописки, Дата рождения, Факт родства) находится в первой нормальной форме (1NF), так как на пересечении каждого столбца и строки находятся только элементарные значения атрибутов.
Отношение находится во второй нормальной форме (2NF), так как она находится в первой нормальной форме и не содержит неполных функциональных зависимостей непервичных атрибутов от первичного ключа.
Отношение находится в третьей нормальной форме (3NF), если они находится во второй нормальной форме и не содержат транзитивных зависимостей.
Отношение «Жильцы» соответствует требованиям третьей нормальной формы.
Определим схему отношения «Жильцы», которая будет реализована в виде таблицы «Жильцы» в системе управления базами данных.
Таблица 3 — Схема отношения «Жильцы»
Имя атрибута | Домен | Имя поля | Условие на значение | Описание | |
Лицевой счет квартиры | Числовой | ЛС квартиры_ | Лицевой счет квартиры | ||
Номер льготы | Числовой | ID_льготы_ | Номер льготы | ||
Номер жильца | Числовой | Номер_жильца | Номер жильца | ||
Полное имя жильца | Текстовый | ФИО | Полное имя жильца | ||
Главный квартиросъемщик | Текстовый | Главный_кв_съемщик | Указатель главного квартиросъемщика | ||
Дата прописки | Дата/время | Дата_прописки | Дата прописки | ||
Дата рождения | Дата/время | Дата_рождения | Дата рождения | ||
Факт родства | Текстовый | Факт_родства | Факт родства | ||
Отношение «Льготы» (Номер льготы, Название льготы) находится в первой нормальной форме (1NF), так как на пересечении каждого столбца и строки находятся только элементарные значения атрибутов.
Отношение находится во второй нормальной форме (2NF), так как она находится в первой нормальной форме и не содержит неполных функциональных зависимостей непервичных атрибутов от первичного ключа.
Отношение находится в третьей нормальной форме (3NF), если они находится во второй нормальной форме и не содержат транзитивных зависимостей.
Отношение «Льготы» соответствует требованиям третьей нормальной формы.
Определим схему отношения «Льготы», которая будет реализована в виде таблицы «Льготы» в системе управления базами данных.
Таблица 4 — Схема отношения «Льготы»
Имя атрибута | Домен | Имя поля | Условие на значение | Описание | |
Номер льготы | Числовой | ID_льготы | Номер льготы | ||
Название льготы | Текстовый | Название_льготы | Название льготы | ||
Отношение «Виды услуг» (Название услуги, Цена) находится в первой нормальной форме (1NF), так как на пересечении каждого столбца и строки находятся только элементарные значения атрибутов.
Отношение находится во второй нормальной форме (2NF), так как она находится в первой нормальной форме и не содержит неполных функциональных зависимостей непервичных атрибутов от первичного ключа.
Отношение находится в третьей нормальной форме (3NF), если они находится во второй нормальной форме и не содержат транзитивных зависимостей.
Отношение «Виды услуг» соответствует требованиям третьей нормальной формы.
Определим схему отношения «Виды услуг», которая будет реализована в виде таблицы «Виды услуг» в системе управления базами данных.
Таблица 5 — Схема отношения «Виды услуг»
Имя атрибута | Домен | Имя поля | Условие на значение | Описание | |
Название услуги | Текстовый | Название услуги | Название услуги | ||
Цена | Денежный | Цена | Цена | ||
2.3 Физическое проектирование модели базы данных
Для создании базы данных была выбрана система управления базами данных (СУБД) Microsoft Office Access. Положительной стороной Microsoft Office Access в возможностях написания приложений является механизм связи с различными внешними СУБД: связанные таблицы (связь с таблицей СУБД) и запросы к серверу (запрос на диалекте SQL, который понимает СУБД). Также Microsoft Office Access позволяет строить полноценные клиент-серверные приложения на СУБД Microsoft SQL Server. При этом имеется возможность совместить с присущей Microsoft Office Access простотой инструменты для управления БД и средства разработки.
Для разработки приложения используется интегрированная среда разработки Visual Studio 2005, язык C#.
Для полной функциональности приложения и базы данных создано пять таблиц, одна из которых под названием «Виды услуг» имеет роль справочника, то есть она не обладает ключевым полем и не имеет связи с другими таблицами.
Рисунок 2.3.1 — Структура таблицы «Виды услуг» в режиме конструктора Таблица «Виды услуг» содержит поле Название услуги, указывающее название услуги и поле Цена, указывающая цену. Название услуги и Цена используется при выводе отчета в CrystalReports. Поле Название услуги является текстовым и обязательным, а поле Цена — денежным и обязательным.
Общие данные обо всех квартирах хранятся в таблице «Квартира». Поле ЛС_квартиры является ключевым и обязательным.
Рисунок 2.3.2 — Структура таблицы «Квартира» в режиме конструктора Кроме этого в таблице «Квартира» содержатся поля: Общие_квадр_метры — общие квадратные метры квартиры, поля Улица, Дом, Номер_квартиры — указывают адрес квартиры, Льготников — поле, указывающее количество льготников, оно обновляется автоматически программными средствами при добавлении в выбранную квартиру нового жильца. Все поля являются обязательными.
Таблица «Квартира» связана с таблицами «Жильцы» и «Оплата услуг» по полю ЛС_квартиры, которое является ключевым полем.
Данные обо всех жильцах квартир хранятся в таблице «Жильцы». Поле Номер_жильца является ключевым и обязательным, тип поля — счетчик.
Рисунок 2.3.3- Структура таблицы «Жильцы» в режиме конструктора
Кроме этого в таблице «Жильцы» содержатся поля: ФИО — указывает полное имя жильца, поле ЛС_квартиры_ - указывает лицевой счет квартиры, в которой проживает данный жилец, ID_льготы_- поле, указывающее номер льготы жильца, Главный_кв_съемщик — поле, указывающее является ли жилец главным квартиросъемщиком квартиры, в которой прописан, Дата_прописки — указывает дату прописки, Дата_рождения — указывает дату рождения жильца, поле Факт_родства — указывает является ли человек членом семьи главного квартиросъемщика и если является, то есть возможность уточнить степень благодаря тому, что поле является текстовым. Все поля являются обязательными.
Таблица «Жильцы» связана с таблицами «Квартира» и «Льготы» по полям ЛС_квартиры_ и ID_льготы_ соответственно.
Данные обо всех оплаченных услугах хранятся в таблице «Оплата услуг». Поле Номер_квитанции является ключевым и обязательным, тип поля — счетчик.
Рисунок 2.3.4- Структура таблицы «Оплата услуг» в режиме конструктора Кроме этого в таблице «Оплата услуг» содержатся поля: ЛСуказывающее лицевой счет квартиры, поле Факт_оплаты — указывает факт оплаты за определенный месяц и год, Месяц — поле, указывающее месяц, за который выдается квитанция, Год — поле, указывающее год. Все поля являются обязательными.
Таблица «Оплата услуг» связана с таблицей «Квартира» по полю ЛС.
Данные обо всех имеющихся льготах хранятся в таблице «Льготы». Поле ID_льготы является ключевым и обязательным, тип поля — числовой.
Рисунок 2.3.5- Структура таблицы «Льготы» в режиме конструктора Кроме этого в таблице «Льготы» содержится поле Название_льготы, указывающее название льготы. Все поля являются обязательными.
Таблица «Льготы» связана с таблицей «Жильцы» по полю ID_льготы.
Ниже представлена схема данных предметной области «Жилищный кооператив» в СУБД Microsoft Office Access:
Рисунок 2.4.6 — Схема данных в СУБД Microsoft Office Access
3. Описание структуры программы
Структурная схема — схема, отражающая состав и взаимодействие по управлению частей разрабатываемого продукта. При объектной декомпозиции такими частями являются объекты (рисунок 3.1).
Рисунок 3.1 — Структурная схема программного продукта (объектная декомпозиция)
Данный программный продукт имеет следующую структурную схему: вначале открывается главная форма Form1, на которой можно открыть формы: Form2, Form3, Form4, LS_Form, OSS_Form, K_Form. На форме Form2 можно добавить данные, заполнив поля: Лицевой счет, Полное имя, Дата прописки, Дата рождения и выбрав нужное значение из объектов combobox: Название льготы, Степень родства, Главный квартиросъемщик. На этой же форме с помощью объекта класса GridView выводится таблица «Жильцы» с некоторыми дополняющими полями из таблицы «Льготы». Объект этого класса расположен и на формах: Form3, Form4. На форме Form3 можно выполнить изменение данных в базе. На форме Form4 можно произвести поиск по фамилии и по адресу. Выбор поиска производится с помощью объектов класса radiobutton. Для корректной работы программы все поля форм Form1, Form2, Form3должны быть заполнены и из всех объектов combobox должны быть выбраны нужные значения.
На главной форме можно выбрать отчеты, созданные в CrystalReports: Лицевой счет, О составе семьи, Квитанция о оплате услуг. Перед просмотром отчетов требуется выбрать из объекта combobox нужные параметры.
4. Выбор методов решения задачи и разработка основных алгоритмов
Структура обработки информации представляется в следующем виде:
Рисунок 4.1 — Структура обработки информации Рассмотрим структуру запроса, выбирающего данные. Для реализации запроса формируется строка подключения, которая вводится в объект класса OleDbConnection. Используется класс OleDbDataAdapter, в котором формируется SQL запрос на выборку данных из таблиц «Жильцы» и «Льготы». Результатами запроса заполняется объект класса DataTable, который используется как источник данных для объекта dataGridView.
OleDbConnection con;
con = new OleDbConnection (ConnectString);
con.Open ();
OleDbDataAdapter adapter = new OleDbDataAdapter
(«SELECT ФИО, ЛС_квартиры_, Главный_кв_съемщик, Дата_прописки, Дата_рождения, Факт_родства, [Льготы]. Название_льготы FROM [Жильцы] INNER JOIN [Льготы] ON [Жильцы]. ID_льготы_=[Льготы].ID_льготы ;», con);
DataTable Table = new DataTable («Table1»);
adapter.Fill (Table);
dataGridView1.DataSource = Table;
con.Close ();
Рассмотрим структуру запроса, добавляющего данные. Для реализации запроса формируется строка подключения, которая вводится в объект класса OleDbConnection. Используется класс OleDbCommand с SQL запросом на добавление данных из таблицы «Жильцы». Происходит проверка льготности жильца и в зависимости от значения формируется запрос на обновление данных с помощью объекта класса OleDbCommand с SQL запросом.
OleDbConnection con;
con = new OleDbConnection (ConnectString);
con.Open ();
OleDbCommand cmd = new OleDbCommand
(«INSERT INTO [Жильцы] (ФИО, ЛС_квартиры_, ID_льготы_, Главный_кв_съемщик, Дата_прописки, Дата_рождения, Факт_родства) VALUES ('» +
textBox1.Text + «','» + LS + «','» + ID_lg + «','» + comboBox3.SelectedItem.ToString () + «','» + textBox4. Text +
" ','" + textBox5. Text + «','» + fakt_rodstva + «');», con);
////Проверка на льготность
if (ID_lg ≠ 0)
{
stroka = «UPDATE [Квартира] SET Льготников=Льготников+1 WHERE ЛС_квартиры=» + LS + «;» ;
}
else
{
stroka="Select Льготников From Квартира;" ;
}
OleDbCommand cmd_ = new OleDbCommand (stroka, con);
cmd_.ExecuteNonQuery ();
Рассмотрим структуру запроса, изменяющего данные. Для реализации запроса формируется строка подключения, которая вводится в объект класса OleDbConnection. Используется объект класса OleDbCommand с SQL запросом на изменение данных в таблице «Жильцы». Происходит проверка на выполнение запроса, чтобы вывести информацию об успехе. В конце закрывается соединение и происходит обновление таблицы в объекте dataGridView1 с помощью метода Update ().
int ls = Convert. ToInt32(textBox1.Text);
OleDbConnection con;
con = new OleDbConnection (ConnectString);
con.Open ();
OleDbCommand cmd = new OleDbCommand
(«UPDATE [Жильцы] SET [Жильцы]. ФИО='» + textBox3. Text + «' WHERE (([Жильцы]. ЛС_квартиры_=» + ls + «)AND ([Жильцы]. ФИО='» + textBox2. Text + «'));», con);
if (cmd.ExecuteNonQuery () == 1 && (textBox1.Text ≠ «» && textBox2. Text ≠ «» && textBox3. Text ≠ «»))
{
Result.ForeColor = Color. Green;
Result.Text = «Данные успешно добавлены.» ;
}
else
{
Result.ForeColor = Color. Red;
Result.Text = «Ошибка! Данные не добавились» ;
}
con.Close ();
Update ();
Рассмотри структуру поискового запроса по адресу. Для реализации запроса формируется строка подключения, которая вводится в объект класса OleDbConnection. Используется объект класса OleDbCommand с SQL запросом на выборку данных из таблиц «Жильцы», «Квартира», «Льготы». Происходит проверка на выполнение запроса, чтобы вывести информацию об успехе. В конце закрывается соединение и происходит обновление таблицы в объекте dataGridView1 с помощью метода Update2().
OleDbConnection con;
con = new OleDbConnection (ConnectString);
con.Open ();
OleDbCommand cmd = new OleDbCommand
(«SELECT [Жильцы]. ФИО, [Жильцы]. ЛС_квартиры_, [Жильцы]. Главный_кв_съемщик, [Жильцы]. Дата_прописки, [Жильцы]. Дата_рождения, [Жильцы]. Факт_родства, [Квартира]. Улица,[Квартира].Дом,[Квартира].Номер_квартиры,[Льготы].Название_льготы FROM [Жильцы], [Квартира], [Льготы] WHERE [Жильцы]. ЛС_квартиры_=[Квартира].ЛС_квартиры AND [Жильцы]. ID_льготы_=[Льготы].ID_льготы AND [Квартира]. Улица='» + textBox2. Text + «' AND [Квартира]. Дом= „+ textBox3. Text + „AND [Квартира]. Номер_квартиры=“ + textBox4. Text + “ ;», con);
if (cmd.ExecuteNonQuery () == 0 && (textBox2.Text ≠ «» && textBox3. Text ≠ «» && textBox4. Text ≠ «»))
{
Result.ForeColor = Color. Green;
Result.Text = «Поиск завершен.» ;
}
else
{
Result.ForeColor = Color. Red;
Result.Text = «Ошибка! Данные не найдены1.» ;
}
con.Close ();
Update2();
Рассмотрим источники данных для отчетов, созданных в CrystalReports: Лицевой счет, О составе семьи, Квитанция о оплате услуг.
В отчете Лицевой счет используются объекты: command и command1.
В объекте command осуществлен SQL запрос на выборку данных из таблиц «Жильцы» и «Квартира». Присутствует параметр {?com1}, отвечающий за вывод данных из поля Лицевой счет таблицы «Квартира» в объект combobox.
Select a. ФИО, a. Дата_прописки, Общие_квадр_метры, Улица, Дом, Номер_квартиры From Жильцы as a, Квартира
Where a. ЛС_квартиры_={?com1} And a. Главный_кв_съемщик='Да' And Квартира. ЛС_квартиры={?com1}
В объекте command1 осуществлен SQL запрос на выборку данных из таблицы «Жильцы». Присутствует параметр {?com1}, отвечающий за вывод данных из поля Лицевой счет таблицы «Квартира» в объект combobox.
Select a. ФИО as fio, a. Факт_родства as q, a. Дата_прописки as w
From Жильцы as a
Where a. ЛС_квартиры_={?com1} And a. Главный_кв_съемщик='Нет'
В отчете Квитанция о оплате услуг используются объекты: command, command1, command2, command3, command4 и формула суммы @summa.
В объекте command осуществлен SQL запрос на выборку данных из таблицы «Виды услуг».
Select [Название услуги] as naz,[Цена] as cen
From [Виды услуг]
Where [Название услуги]='Мусор'
В объекте command1 осуществлен SQL запрос на выборку данных из таблицы «Виды услуг».
Select [Название услуги]as naz1,[Цена] as cen1
From [Виды услуг]
Where [Название услуги]='Уборка'
В объекте command2 осуществлен SQL запрос на выборку данных из таблиц «Виды услуг», «Квартира». Присутствует параметр {?com1}, отвечающий за вывод данных из поля Лицевой счет таблицы «Квартира» в объект combobox.
Select [Название услуги] as naz2, Цена*Общие_квадр_метры as cen2
From [Виды услуг],[Квартира]
Where [Название услуги]='Техобсл' And ЛС_квартиры={?com1};
В объекте command3 осуществлен SQL запрос на выборку данных из таблиц «Жильцы», «Квартира». Присутствует параметр {?com1}, отвечающий за вывод данных из поля Лицевой счет таблицы «Квартира» в объект combobox.
Select a. ФИО, Улица, Дом, Номер_квартиры
From Жильцы as a, Квартира
Where a. ЛС_квартиры_={?com1} And Квартира. ЛС_квартиры={?com1} And a. Главный_кв_съемщик='Да'
В объекте command4 осуществлен SQL запрос на выборку данных из таблицы «Оплата услуг». Присутствуют параметры {?com2},{?com3} отвечающие за вывод данных из полей Месяц и Год таблицы «Оплата услуг» в объект combobox.
Select Месяц, Год
From [Оплата услуг] as a
Where a. Месяц='{?com2}' And a. Год='{?com3}'
Формула суммы @summa вычисляет сумму платежа в зависимости от льготный квартиры.
IIF ({Квартира.Льготников}=0,
{command.cen}+{command1.cen1}+{command2.cen2},
({command.cen}+{command1.cen1}+{command2.cen2})/2)
Вывод
В результате написания программы «Информационная система жилищного кооператива» должна облегчить администрирование ЖЭКами, представить данные в более структурированном, удобном для восприятия и изменения виде. Приложение ориентировано на конечного пользователя, в данном случае работника ЖЭКа, не обладающего высокой квалификацией в области вычислительной техники. Поэтому приложение обладает простым, удобным и легко осваиваемым интерфейсом, который предоставляет пользователю все необходимые для работы функции и в то же время не дает ему возможность выполнить какие-либо лишние действия.