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

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    3,1 Мб
  • Опубликовано:
    2014-02-19
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

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

СОДЕРЖАНИЕ


СПИСОК СОКРАЩЕНИЙ

ВВЕДЕНИЕ

1. Технико‒экономическое обоснование

2. Постановка задачи

3. Теоретическая часть

3.1 Порядок ведения похозяйственных книг

3.2 Состав информационной системы «Похозяйственная книга. WEB»

4. Проектная часть

4.1 Разработка базы данных

4.2 Разработка алгоритмов

4.3 Программная реализация алгоритмов

4.3.1 Структура программы

4.3.2 Организация взаимодействия с базой данных

4.3.3 Описание классов проекта

4.3.4 Формирование выходных документов

5. Программная документация

5.1 Описание применения

5.1.1 Назначение программы

5.1.2 Условия применения

5.1.3 Описание задачи

5.1.4 Входные и выходные данные

5.2 Руководство программиста

5.2.1 Назначение и условия применения программы

5.2.2 Характеристики программы

5.2.3 Обращение к программе

5.2.4 Входные и выходные данные

5.2.5 Сообщения

5.3 Руководство оператора

5.3.1 Назначение программы

5.3.2 Условия выполнения программы

5.3.3 Выполнение программы

5.3.4 Сообщения оператору

6. Тестирование

ЗАКЛЮЧЕНИЕ

СПИСОК ЛИТЕРАТУРЫ

ПРИЛОЖЕНИЕ A. ER-диаграмма базы данных

ПРИЛОЖЕНИЕ Б. Листинг наиболее значимых частей программы

СПИСОК СОКРАЩЕНИЙ


БД ‒ база данных.

ИС ‒ информационная система «Похозяйственная книга. WEB».

МО ‒ муниципальное образование.

КЛАДР ‒ классификатор адресов Российской Федерации.

ПК ‒ похозяйственная книга.

ОГРН ‒ основной государственный регистрационный номер.

ОКАТО ‒ общероссийский классификатор объектов административно-территориального деления.

ЛПХ ‒ личное подсобное хозяйство.

ЛС ‒ лицевой счет.

ПО ‒ программное обеспечение.

СУБД ‒ система управления базой данных.

ФИО ‒ фамилия, имя, отчество.

 

ВВЕДЕНИЕ


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

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

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

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

Похозяйственные книги закладываются 1 раз в 5 лет, записи в них уточняются ежегодно с 1 по 15 июля по состоянию на 1 июля. На основании этих записей финансового органы исчисляют сельско-хозяйственный налог, органы государственного страхования ведут учёт объектов обязательного страхования, органы народного образования осуществляют учёт детей, подлежащих обучению. По данным похозяйственных книг сельского учета органы местного самоуправления составляют также ежегодный отчёт, в котором содержатся сведения о численности и составе сельского населения по полу, возрасту и общественным группам.

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

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

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

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

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

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

Применение данного программного обеспечения в муниципальном образовании однозначно приводит:

·  к повышению качества и эффективности труда;

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

·        к снижению вероятности возникновения ошибки и всевозможных разночтений в ходе реализации требований к построению информационной системы.

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

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

·        В разделе «Постановка задачи» формулируются требования, которым должно удовлетворять разработанное программное обеспечение.

·        Раздел «Теоретическая часть» содержит описание принципов построения информационной системы «Похозяйственная книга. WEB».

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

·        В разделе «Программная документация» содержится описание применения разработанного программного обеспечения, а также более подробные руководства администратора и пользователя.

·        Раздел «Тестирование программы» посвящен проверке правильности функционирования разработанного программного обеспечения.

В качестве среды разработки для дипломного проекта была выбрана среда Visual Studio 2010, в качестве языка разработки выбран высокоуровневый объектно-ориентированный язык разработки C#, в качестве СУБД выбрана СУБД MS SQL Server 2008. Обоснование выбора среды разработки, языка разработки и системы управления базой данных приведено в «Технико-экономическом обосновании».

 

1.
Технико-экономическое обоснование


Одним из основных источников предоставления информации о ведении гражданами личного подсобного хозяйства являются по-хозяйственные книги. Свою историю эти книги, как говорилось ранее, берут с 1934 года и до 2010 года методическое сопровождение их ведения осуществлялось органами статистики. С выходом приказа Минсельхоза России от 11 октября 2010 г. № 345 «Об утверждении формы и порядка ведения похозяйственных книг органами местного самоуправления поселений и органами местного самоуправления городских округов» информационно-методические аспекты осуществления похозяйственного учета перешли органам управления агропромышленный комплекса.

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

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

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

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

Личное подсобное хозяйство (ЛПХ) ‒ устоявшаяся, исторически сложившаяся форма ведения индивидуального (семейного) сельско-хозяйственного производства сельскими жителями и жителями небольших городов для удовлетворения собственных потребностей в продуктах питания.

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

Личное подсобное хозяйство ведется гражданами непосредственно по месту жительства.

Федеральный закон «О личном подсобном хозяйстве» однозначно определяет личное подсобное хозяйство как форму не-предпринимательской деятельности граждан по производству и переработке сельскохозяйственной продукции для удовлетворения личных потребностей отдельного гражданина или гражданина и членов его семьи на земельном участке, предоставленном и (или) приобретенном для ведения ЛПХ.

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

Подход к личному подсобному хозяйству как к форме вторичной занятости, как к подсобному хозяйству проявляется и в нормировании земельных участков для его ведения. Размеры (нормы предоставления) земельных участков для ЛПХ должны устанавливаться органами власти субъектов Федерации и муниципальными органами в расчете на семью исходя из возможностей использования участков личным трудом граждан в свободное от основной работы время.

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

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

Внедрение данного проекта даст следующие преимущества:

·  удобство работы с данными;

·        уменьшение количества ошибок;

·        значительное повышение производительности;

·        рационализация документооборота посредством его информатизации;

·        упрощение создания, обработки и хранения документов и информации;

·        повышение скорости и качества составления отчетов при снижении трудоемкости данного процесса.

На данный существует широкий выбор объектно-ориентированных интегрированных сред для разработки программ и языков программи-рования. Самые известные из них:

·  Microsoft Visual Studio (Visual Basic, C++, C#);

·        Eclipse (Java, C++);

·        Qt Creator (C++);

·        Embarcadero RAD Studio (Delphi, C++).

Для выполнения дипломного проекта выбраны среда MS Visual Studio 2010 и язык программирования C#, обладающие следующими преимуществами:

·  удобная и гибкая среда программирования с подсветкой синтаксиса, автоматическим форматированием кода и всеохватывающей справочной системой MSDN;

·        совместимость с большинством версий операционной системы Windows: 2000/XP/Vista/7/8;

·        язык программирования C# реализует компонентно-ориентированный подход к программированию, который способствует меньшей машинно-архитектурной зависимости результирующего программного кода, большей гибкости, переносимости и легкости повторного использования (фрагментов) программ;

·        язык C# изначально ориентируется на безопасность кода, что особенно заметно в сравнении с языками C и C++;

·        в языке C# объединены лучшие идеи современных языков программирования: Java, C++, Visual Basic и других.

В качестве источника данных выбраны базы данных Microsoft SQL Server 2008. Сейчас существует большой выбор других СУБД, таких как Firebird, MySQL, Oracle. Для одних нужно приобретать лицензию (Oracle), для других этого делать не нужно (Firebird, MySQL). Некоторые из них, как, например, Firebird являются кроссплатформенными.SQL Server 2008 выбрана в качестве СУБД для разрабатываемого программного обеспечения по ряду причин:

·  предварительный опыт работы с СУБД MS SQL Server;

·        широта распространения;

·        возможности, предоставляемые СУБД разработчику;

·        простота организации взаимодействия с ней в используемой среде разработки Microsoft Visual Studio на языке программирования C#.

Немаловажным фактором выбора среды Visual Studio 2010 СУБД MS SQL Server 2008 является наличие на них официальной лицензии.

 

2.
Постановка задачи


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

Программное обеспечение должно решать следующие задачи:

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

·        оперативное формирование регламентированных справок по запросам населения и выписок из похозяйственных книг;

·        отслеживание наполнения данных в похозяйственных книгах;

·        корректное обрабатывание возможных ошибок или неправильно введенные пользователем данные;

·        консолидация на уровне муниципального образования данных похозяйственного учёта для формирования необходимой отчётности финансово-экономического, налогового и статисти-ческого характера;

·        соответствие требованиям действующего законодательства: Приказ Минсельхоза России от 11 октября 2010 г. № 345 «Об утверждении формы и порядка ведения похозяйственных книг органами местного самоуправления поселений и органами местного самоуправления городских округов», федеральный закон от 07.07. 2003 г. №112-ФЗ «О личном подсобном хозяйстве», федеральный закон от 21.10.2001 г. №136-ФЗ «Земельный кодекс Российской федерации», федеральный закон от 27.07.2010 г. № 210-ФЗ «Об организации предоставления государственных муниципальных услуг»;

·        хранение истории редактирования записей ИС.

Информационная система должна реализовывать следующие возможности:

·  создание единого информационного пространства администраций муниципальных образований с разграничением прав;

·        идентификация и аутентификация пользователей ИС способом: логин/пароль;

·        ведение журнала действий пользователей;

·        контроль доступа к данным и их истории;

·        формирование и ведение справочников и реестров данных;

·        хранение введенной информации в массивах (таблицах) ИС;

·        поиск, фильтрация и просмотр хранимых данных;

·        просмотр истории значений записей данных;

·        формирование и печать отчетных форм в установленных форматах.

Программа должна выполняться в операционных системах Windows 2000/XP/Vista/7/8, работать с СУБД Microsoft SQL Server 2008 и более новыми.

Программное обеспечение должно быть разработано в среде разработки Microsoft Visual Studio 2010 на языке программирования C#.

 

3. Теоретическая часть


Информационная система «Похозяйственная книга. WEB» (далее ИС) предназначена для автоматизации процесса ввода данных о подсобных хозяйствах на территории муниципальных образований работниками администрации в требуемых форматах в структурированные формы, хранения этих данных в массивах данных, их обработки, формирования отчетов требуемых форматов и справок населению.

Рисунок 3.1 ‒ Информационное взаимодействие в сфере сельского хозяйства с применением информационной системы «Похозяйственная книга. WEB»

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

·  приказ Минсельхоза России от 11 октября 2010 г. № 345 «Об утверждении формы и порядка ведения похозяйственных книг органами местного самоуправления поселений и органами местного самоуправления городских округов»,

·        федеральный закон от 07.07. 2003 г. №112-ФЗ «О личном подсобном хозяйстве»,

·        федеральный закон от 21.10.2001 г. №136-ФЗ «Земельный кодекс Российской федерации»,

·        федеральный закон от 27.07.2010 г. № 210-ФЗ «Об организации предоставления государственных муниципальных услуг».

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

Учет личных подсобных хозяйств осуществляется в похозяйственных книгах. Порядок ведения похозяйственных книг определяется Правительством Российской Федерации.

3.1    Порядок ведения похозяйственных книг


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

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

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

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

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

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

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

По истечении пятилетнего периода руководитель органа местного самоуправления издает правовой акт о перезакладке книг.

Завершенные книги хранятся в органе местного самоуправления до их передачи в государственные и муниципальные архивы в течение 75 лет. Например, книга, заложенная на 2010 ‒ 2014 гг., подлежит хранению до 2089 г. включительно, о чем делается запись на титульном листе книги.

Сведения собираются ежегодно по состоянию на 1 июля путем сплошного обхода хозяйств и опроса членов хозяйств в период с 1 по 15 июля.

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

Лицевой счет хозяйства (запись по каждому хозяйству) в книге открывают во время ее закладки.

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

Члены хозяйства самостоятельно определяют, кого из них записать первым.

В случае изменений паспортных данных главы хозяйства, запись зачеркивают и указывают данные нового паспорта главы хозяйства указывают в свободных строках раздела V с указанием даты внесения записи и основания изменения паспортных данных (например, "по достижении 45 лет" или "по утере").

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

Если члены хозяйства проживают в хозяйстве не постоянно, а временно или сезонно, в разделе I эти сведения отражаются в строке "Отметка о проживании и ведении хозяйства".

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

В разделе II записывается площадь земельных участков, находящихся в собственности или пользовании членов хозяйства.

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

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

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

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

Если члены хозяйства переезжают с места нахождения хозяйства (в том числе в случаях переезда в том же населенном пункте) и прекращают ведение хозяйства, то лицевой счет хозяйства закрывают путем отметки в верхней части листа: "Лицевой счет закрыт (указать дату) в связи (указать причину)".

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

Номера закрытых лицевых счетов другим хозяйствам не присваивают.

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

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

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

Выписка из книги составляется в двух экземплярах. Оба экземпляра являются подлинными.

Процесс ведения похозяйственной книги (ПК) с использованием ИС включает в себя следующие процедуры:

·  формирование ПК в электронном виде в ИС;

·        актуализация данных в ЛС ПК;

·        контроль соответствия данных в ИС и на распечатанных экземплярах ЛС из картотеки;

·        формирование ПК на бумажном носителе для передачи в архив.

 

3.2    Состав информационной системы «Похозяйственная книга. WEB»


Информационная система состоит из следующих модулей:

Модуль «Администрирование» ‒ предназначен для настройки работы информационной системы администратором. Реализует следующие возможности:

·  регистрация пользователей и определение их ролей в программном комплексе;

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

· 

Рисунок 3.2 ‒ Блок-схема процесса

Модуль «Похозяйственная книга» ‒ предназначен для создания и ведения Похозяйственных книг. Реализует следующие возможности:

·  ведение реестра Похозяйственных книг, доступных для работников администрации данного муниципального образования;

·        ведение реестров лицевых счетов Похозяйственных книг;

·        просмотр журнала изменений лицевых счетов;

·        формирование регламентированных справок и выписок из Похозяйственных книг;

Модуль «Отчеты» ‒ предназначен для формирования и печати:

·  выписок из Похозяйственных книг и лицевых счетов;

·        статистической и аналитической отчетности на основании данных ИС;

·        экспорт в Excel отчетов, сформированных пользователями ИС;

В системе существуют следующие пользовательские роли:

·  администратор;

·        работник администрации.

4.
Проектная часть


4.1   Разработка базы данных


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

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

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

Проектирование начинается с момента принятия стратегических решений и продолжается на этапах реализации и тестирования.

Процесс проектирования базы данных охватывает несколько основных сфер.

·  Проектирование объектов базы данных (таблицы, представления, индексы, триггеры, хранимые процедуры, функции, пакеты) для представления данных предметной области в базе данных.

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

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

·        Проектирование баз данных под назначение системы (интеллектуальный анализ данных, OLAP, OLTP и т.д.).

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

В программном обеспечении используется клиент-серверная архитектура.

Рисунок 4.1 - Двухзвенная модель архитектуры клиент-сервер

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

Основными элементами реляционной базы данных являются сущности, связи между ними и их свойства - атрибуты.

Сущность - любой различимый объект, информацию о котором необходимо хранить в базе данных.

Атрибут - поименованная характеристика сущности.

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

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

Реляционная база данных ‒ база данных, основанная на реляционной модели данных. Реляционность - это отношения (связи) от англ. relation.

Таблица состоит из столбцов и строк. Столбцы имеют свойства - имя, тип данных.

Таблицы должны обладать следующими свойствами:

·  у таблицы есть имя (уникальное)

·        нет двух одинаковых строк

·        столбцы имеют разные наименования (нет двух одинаковых столбцов)

·        порядок строк в таблице произвольный (т.е. не надо учитывать порядок строк, если не задана сортировка)

Структуру таблицы можно записать в таком виде:

·  имя столбца

·        тип данных для этого столбца

Связи

Между таблицами существуют связи (relation). Для установки связи необходимо иметь следующее:

·  Первичный ключ - это набор столбцов (атрибутов) таблицы, однозначно определяющих уникальность строки. Обычно это одно поле, называется ID. Оно является автоикрементным, т.е. при попытке добавления записи, там автоматически вставляется 1, 2, 3, 4… n+1, где n - это значение последнего добавленного ID.

·        Внешний ключ - это набор столбцов (атрибутов) таблицы, которые однозначно определяют уникальность строки в другой таблице. Опять же это обычно одно поле, названное [Имя таблицы] ID. Но не является автоинкрементным.

·        Прописана связь между первичным ключом и внешним ключом.

Связи бывают трех типов:

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

·        Один-ко-многим. Одной строк в таблице A соответствует одна или несколько строк в таблице B. Но одной строке в таблице B соответствует только одна строка в таблице A. В этом случае в таблице B существует внешний ключ, который однозначно определяет запись в таблице A.

·        Многие-ко-многим. Одной строке в таблице А соответствует одна или несколько строк в таблице В, что истинно и в обратном. В данном случае создается дополнительная таблица со своим первичным ключом, и двумя внешними ключами к таблице A и B. [5]

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

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

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

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

На основании исследования предметной области и требований к системе была спроектирована и реализована модель базы данных, представленная в Приложении А. В качестве инструмента использовалась Embarcadero ERStudio 8.0.

Ниже представлена физическая структура основных таблиц:

Таблица 4.1 ‒ Справочник «Пользователи» (SK_USER)

Поле

Тип

Описание

IdUser

bigint

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

IdRole

bigint

Роль пользователя

IdLocalAuthority

bigint

Орган местного самоуправления

Name

nvarchar(100)

Имя

Login

nvarchar(50)

Логин

Password

nvarchar(50)

Пароль

Email

nvarchar(100)

Эл. почта

Phone

nvarchar(100)

Телефон

SurName

nvarchar(100)

Фамилия

MiddleName

nvarchar(100)

Отчество


Таблица 4.2 ‒ Справочник «Роли» (CT_ROLE)

ПолеТипОписание



IdRole

bigint

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

Code

nvarchar(30)

Код роли

Name

nvarchar(100)

Наименование


Таблица 4.3 ‒ Реестр «Похозяйственная книга» (SK_HOUSEHOLD_BOOK)

ПолеТипОписание



IdHouseholdBook

bigint

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

IdUser

bigint

Пользователи

IdLocalAuthority

bigint

Орган местного самоуправления

Number

bigint

№ акта о закладке ПК

DateCreate

datetime

Дата создания записи

DateBegin

datetime

Дата начала действия

DateEnd

datetime

Дата окончания действия

Comment

nvarchar(200)

Дополнительные сведения

IsClosed

bit

Признак закрытия книги


Реестр «Похозяйственная книга» ‒ предназначен для хранения и просмотра данных о похозяйственных книгах, их количестве и содержании на территории муниципального образования

Таблица 4.4 - Реестр лицевых счетов подсобных хозяйств (RS_PERSONAL_ACCOUNT)

Поле

Тип

Описание

IdPersonalAccount

bigint

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

IdHouseHoldBook

bigint

Похозяйственная книга

IdFarmType

bigint

Название типа подсобного хозяйства

Number

bigint

Номер лицевого счета ПХ

NCadastr

nvarchar(50)

Кадастровый номер

IdKladrAddress

bigint

Адрес, на который открыт ЛС. Код КЛАДР.

DateBegin

datetime

Дата открытия ЛС

IdReasonBegin

bigint

Причина начала

DateEnd

datetime

Дата закрытия ЛС

IdReasonEnd

bigint

Причина окончания

Comment

nvarchar(200)

Дополнительные сведения

IdCitizen

Гражданин


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

Таблица 4.5 - Реестр «Жители»

(RS_CITIZEN)

Поле

Тип

Описание

IdCitizen

bigint

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


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

Таблица 4.6 - История ведения реестра «Жителей» (RS_CITIZEN_HISTORY)

ПолеТипОписание



IdCitizenHistory

bigint

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

IdCitizen

bigint

Жители

IdDocumentTypeCitizen

bigint

Тип документа уд. личность

DocumentSeriesNumber

nvarchar(50)

Серия и номер документа

DocumentDate

date

Дата выдачи документа

IdDocumentOrgan

bigint

Удостоверяющий орган

INN

nvarchar(12)

ИНН

SurName

nvarchar(40)

Фамилия

Name

nvarchar(40)

Имя

MiddleName

nvarchar(40)

Отчество

BirthDay

date

День рождения

IdKladrAddressBorn

bigint

Адрес

Sex

bit

Пол

IdKladrAddressRegistration

bigint

Адрес места регистрации

RegistrationDateBegin

date

Дата регистрации

RegistrationDateEnd

date

Дата окончания регистрации

IdKladrAddressResidence

bigint

Адрес места временной регистрации

ResidenceDateBegin

date

Дата начала временной регистрации

ResidenceDateEnd

date

Дата окончания временной регистрации

IdPatron

bigint

Патронируемый

IdNationality

bigint

Национальность

IdEducation

bigint

Вид образования

IdEducationalInstitution

bigint

Учебные заведения

IdEducationType

bigint

Форма образования

Job


Место работы

IdPension

bigint

Вид пенсии

IdDisability

bigint

Инвалидность

Commentary

nvarchar(200)

Комментарий

DeathDate

date

Дата смерти

IdPreferentialCategory

bigint

Льготная категория

IdKladrAddressLiving

bigint

Адрес фактического проживания

PhoneNumber

nvarchar(15)

Номер телефона

Email

nvarchar(50)

Эл. почта

DateActual

datetime

Дата актуализации


Таблица 4.7 ‒ Справочник «Территориальные ресурсы» (SK_PLOT)

Поле

Тип

Описание

IdPlot

bigint

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

IdPersonalAccount

bigint

Лицевой счет

IdOwnershipType

bigint

Вид собственности

IdDocumentTypeOwnership

bigint

Тип документа, подтверждающего факт собственности

IdPlotCategory

bigint

Категория земли

IdPlotType

bigint

Вид участка

IdCitizen

bigint

Гражданин

NNumber

int

Номер участка

NCadastr

nvarchar(50)

Кадастровый номер

IdKladrAddress

bigint

Адрес

Square

int

Площадь

IsProtected

bit

«Охраняемая зона»

DSeriesNumber

nvarchar(50)

Серия и номер документа

DBegin

datetime

Дата начала

DEnd

datetime

Дата окончания

DateActual

datetime

Дата актуализации

DIssue

datetime

Дата исхода


Справочник «Территориальные ресурсы» ‒ предназначен для хранения и просмотра данных о территориальных ресурсах, принадлежащих подсобным хозяйствам, на территории муниципального образования

Таблица 4.8 ‒ Справочник «Здания и сооружения»

(SK_BUILDING)

ПолеТипОписание



IdBuilding

bigint

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


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

Таблица 4.9 ‒ История ведения справочника «Здания и сооружения» (SK_BUILDING_HISTORY)

Поле

Тип

Описание

IdBuildingHistory

bigint

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

IdBuilding

bigint

Здания и сооружения

IdPersonalAccount

bigint

Лицевой счет

IdBuildingType

bigint

Тип зданий

NNumber

int

Номер

Square

int

Площадь здания (кв.м)

RoomsCount

int

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

SquareLivingRooms

int

Площадь жилых помещений

SquareNonLivingRooms

int

Площадь нежилых помещений

IsBroken

bit

Ветхое

IsNonLiving

bit

Нежилое

HasGas

bit

Газовая установка

HasWater

bit

Водопровод

TechnicalSertificate

nvarchar(200)

Технический паспорт

DateBuild

datetime

Год постройки

IdWallMaterial

bigint

Материалы стен

IdRoofingMaterial

bigint

Материалы кровли

DateActual

datetime

Дата разрушения

IdKladrAddress

datetime

Адрес

NCadastr

nvarchar(50)

Кадастровый номер

IdPlot

bigint

Участок

FloorCount

int

Количество этажей

FiredSquare

int

Отапливаема площадь

HasBathShower

bit

Ванна/душ


Таблица 4.10 ‒ Справочник «Оборудование и транспорт»

Поле

Тип

Описание

IdEquipment

bigint

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

IdEquipmentType

bigint

Вид оборудования

IdPersonalAccount

bigint

Лицевой счет

Count

int

Количество (ед.)

DatePurchase

datetime

Дата приобретения

Year

int

Год выпуска

DateActual

datetime

Дата актуализации

DateRegister

datetime

Дата регистрации

Comment

nvarchar(200)

Дополнительные сведения


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

Таблица 4.11‒ Справочник «Животные»

(SK_ANIMAL)

Поле

Тип

Описание

IdAnimal

bigint

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

IdPersonalAccount

bigint

Лицевой счет

IdAnimalGroup

bigint

Группы животных

Count

int

Количество

DateActual

datetime

Дата актуализации

IdAnimalBreed

bigint

Порода животного

Группа справочников «Жители»

Таблица 4.12 ‒ Связи многие-ко-многим.

(NN_PERSONAL_ACCOUNT_CITIZEN)

ПолеТипОписание



IdPersonalAccountCitizen

bigint

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

IdCitizen

bigint

Житель

IdPersonalAccount

bigint

Лицевой счет

IdResidenceType

bigint

Вид проживания

IdCivilRelation

bigint

Вид семейных отношений

DateBegin

datetime

Дата начала

DateEnd

datetime

Дата окончания

DateActual

datetime

Дата актуализации


Таблица 4.13 ‒ Справочник «Виды проживания в ПХ» (CT_RESIDENCE_TYPE)

ПолеТипОписание



IdResidenceType

bigint

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

Name

nvarchar(40)

Название вида проживания

Code

nvarchar(30)

Код вида проживания


Таблица 4.14 ‒ Справочник «Виды семейных отношений» (CT_CIVIL_RELATION)

ПолеТипОписание



IdCivilRelation

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

Name

nvarchar(40)

Название семейного отношения

Code

nvarchar(30)

Код семейного отношения


Таблица 4.15 ‒ Справочник «Группы инвалидности»

(CT_DISABILITY)

ПолеТипОписание



IdDisability

bigint

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

Name

nvarchar(30)

Название группы инвалидности

Code

nvarchar(30)

Код группы инвалидности

Таблица 4.16 ‒ Справочник «Виды пенсии»

(CT_PENSION)

ПолеТипОписание



IdPension

bigint

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

Name

nvarchar(100)

Название вида пенсии

Code

nvarchar(50)

Код вида пенсии


Таблица 4.17 ‒ Справочник «Льготные категории» (CT_PREFERENTIAL_CATEGORY)

ПолеТипОписание



IdPreferentialCategory

bigint

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

Name

nvarchar(150)

Название льготной категории

Code

nvarchar(50)

Код льготной категории


Таблица 4.18 ‒ Справочник «Национальности»

(CT_NATIONALITY)

ПолеТипОписание



IdNationality

bigint

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

Name

nvarchar(50)

Название национальности

Code

nvarchar(30)

Код национальности


Таблица 4.19 ‒ Справочник «Причины исключения жителя из ЛС» (CT_PA_CITIZEN_EXCLUDE_REASON)

Поле

Тип

Описание

IdPACitizenExcludeReason

bigint

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

Code

nvarchar(30)

Код причины

Name

nvarchar(50)

Название причины


Справочник «Причины исключения жителя из ЛС» ‒ предназначен для хранения и просмотра информации о возможных причинах исключения жителя из ЛС ПХ.

Таблица 4.20 ‒ Справочник «Национальность»

(CT_CITIZENSHIP)

Поле

Тип

Описание

IdCitizenship

bigint

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

Name

nvarchar(100)

Название

CountryName

nvarchar(100)

Название страны


Группа справочников «Документы»

Таблица 4.21 ‒ Справочник «Удостоверяющие органы» (CT_DOCUMENT_ORGAN)

ПолеТипОписание



IdDocumentOrgan

bigint

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

Name

nvarchar(300)

Наименование

Code

nvarchar(30)

Код


Таблица 4.22 ‒Справочник «Типы документов, удостоверяющих личность» (CT_DOCUMENT_TYPE_CITIZEN)

ПолеТипОписание



IdDocumentTypeCitizen

bigint

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

Name

nvarchar(50)

Название типа документа

Code

nvarchar(30)

Код типа документа


Таблица 4.23 ‒ Справочник «Типы документов, подтверждающих факт собственности» (CT_DOCUMENT_TYPE_OWNERSHIP)

ПолеТипОписание



IdDocumentTypeOwnership

bigint

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

Name

nvarchar(50)

Название типа документа

Code

nvarchar(30)

Код типа документа


Таблица 4.24 ‒ Справочник «Виды прав собственности» (CT_OWNERSHIP_TYPE)

ПолеТипОписание



IdOwnershipType

bigint

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

Name

nvarchar(40)

Название типа документа

Code

nvarchar(30)

Код типа документа

PrintOrder

int

Порядок печати

PrintName

nvarchar(50)

Наименование при печати


Группа справочников «Образование»

Таблица 4.25 ‒ Справочник «Образование»

(CT_EDUCATION)

Поле

Тип

Описание

IdEducation

bigint

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

Name

nvarchar(50)

Название образования

Code

nvarchar(30)

Код образования


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

Таблица 4.26 ‒ Справочник «Форма обучения»

(CT_EDUCATION_TYPE)

Поле

Тип

Описание

IdEducationType

bigint

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

Name

nvarchar(300)

Название формы обучения

Code

nvarchar(30)

Код вида обучения


Справочник «Форма обучения» (вид обучения) ‒ предназначен для хранения и просмотра информации о названиях видов обучений физических лиц, проживающих на территориях подсобных хозяйств.

Таблица 4.27 ‒ Справочник «Типы учебных заведений» (CT_EDUCATIONAL_INSTITUTION_TYPE)

Поле

Тип

Описание

IdEducationalInstitutionType

bigint

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

Name

nvarchar(50)

Название типа уч. заведения

Code

nvarchar(30)

Код типа учебного заведения

Справочник «Типы учебных заведений» ‒ предназначен для хранения и просмотра информации о названиях типов учебных заведений.

Таблица 4.28 ‒ Справочник «Учебные заведения» (CT_EDUCATIONAL_INSTITUTION)

Поле

Тип

Описание

IdEducationalInstitution

bigint

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

IdEducationalInstitutionType

bigint

Типы учебных заведений

Name

nvarchar(300)

Наименование уч. заведения

Code

nvarchar(30)

Код учебного заведения

Справочник «Учебные заведения» ‒ предназначен для хранения, просмотра, добавления, редактирования и удаления данных о названиях учебных заведений.

Таблица 4.29 ‒ Справочник «Виды оборудования» (CT_EQUIPMENT_TYPE)

Поле

Тип

Описание

IdEquipmentType

bigint

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

Name

nvarchar(150)

Название вида оборудования

Code

nvarchar(50)

Код вида оборудования

PrintName

nvarchar(200)

Наименование при печати

GroupOrder

int

Группа печати


Таблица 4.30 ‒ Связи многие-ко-многим.

(NN_CITIZEN_BUILDING)

Поле

Тип

Описание

IdCitizenBuilding

bigint

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

IdCitizen

bigint

Житель

IdBuilding

bigint

Строение

Part

nvarchar(100)

Доля

IdOwnershipType

bigint

Вид собственности

IdDocumentTypeOwnership

bigint

Тип документа подтверждающего факт собственности

DSeriesNumber

nvarchar(50)

Серия и номердокумента

DBegin

datetime

Дата начала

DEnd

datetime

Дата окончания

DIssue

datetime

Дата исхода

DateActual

datetime

Дата актуализации

IsMainOwner

bit

Признак владения


Таблица 4.31 ‒ Справочник «Типы зданий»

(CT_BUILDING_TYPE)

Поле

Тип

Описание

IdBuildingType

bigint

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

Name

nvarchar(40)

Название типа здания

Code

nvarchar(30)

Код типа здания


Таблица 4.32 ‒ Справочник «Стеновые материалы» (CT_WALL_MATERIAL)

Поле

Тип

Описание

IdWallMaterial

bigint

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

Name

nvarchar(50)

Наименование стеновых материалов

Code

nvarchar(30)

Код материала стеновых материалов


Таблица 4.33 ‒ Справочник «Кровельные материалы» (CT_ROOFING_MATERIAL)

ПолеТипОписание



IdRoofingMaterial

bigint

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

Name

nvarchar(40)

Наименование кровельных материалов

Code

nvarchar(30)

Код кровельных материалов


Группа справочников «Сельское хозяйство»

Таблица 4.34 ‒ Справочник «Виды животных »

(CT_ANIMAL_TYPE)

Поле

Тип

Описание

IdAnimalType

bigint

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

Name

nvarchar(50)

Название типа животных

Code

nvarchar(30)

Код типа животных

Used

bit

Признак использования


Таблица 4.35 ‒ Справочник «Группы животных »

(CT_ANIMAL_GROUP)

ПолеТипОписание



IdAnimalGroup

bigint

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

IdAnimalType

bigint

Виды животных

Name

nvarchar(50)

Название группы животных

Code

nvarchar(30)

Код группы животных

PrintName

nvarchar(200)

Наименование при печати

PrintOrder

int

Порядок печати


Таблица 4.36 ‒ Справочник «Породы животных »

(CT_ANIMAL_BREED)

ПолеТипОписание



IdAnimalBreed

bigint

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

Name

nvarchar(50)

Название породы животного

Code

nvarchar(30)

Код породы животного


Таблица 4.37 ‒ Справочник «Виды посевных участков» (CT_LAND_RESOURCE_TYPE)

ПолеТипОписание



IdLandResourceType

bigint

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

Name

Название вида посевного участка

Code

nvarchar(50)

Код вида посевного участка


Таблица 4.38 ‒ Справочник «Виды посевных культур» (CT_LAND_RESOURCE_GROUP)

ПолеТипОписание



IdLandResourceGroup

bigint

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

IdLandResourceType

bigint

Виды посевных участков

Name

nvarchar(70)

Название вида посевных культур

Code

nvarchar(60)

Код вида посевных культур

PrintName

nvarchar(200)

Наименование при печати

PrintOrder

int

Порядок печати

IsPrintable

bit

Признак «распечатан»

Таблица 4.39 ‒ Справочник «Посевной участок»

(SK_LAND_RESOURCE)

ПолеТипОписание



IdLandResource

bigint

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

IdPersonalAccount

bigint

Лицевой счет

IdLandResourceGroup

bigint

Виды посевных культур

Square

numeric(18,2)

Площадь

DateActual

datetime

Дата актуализации

Number

bigint

Номер


Таблица 4.40 ‒ Справочник «Категория участков» (CT_PLOT_CATEGORY)

ПолеТипОписание



IdPlotCategory

bigint

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

Name

nvarchar(100)

Название категории участка

Code

nvarchar(30)

Код категории участка


Таблица 4.41 ‒ Справочник «Вид участков»

(CT_PLOT_TYPE)

ПолеТипОписание



IdPlotType

bigint

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

Name

nvarchar(70)

Название вида участка

Code

nvarchar(50)

Код вида участка


Таблица 4.42 ‒ Справочник «Тип подсобного хозяйства» (CT_FARM_TYPE)

Поле

Тип

Описание

IdFarmType

bigint

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

Name

nvarchar(50)

Название типа подсобного хозяйства

Code

nvarchar(30)

Код типа подсобного хозяйства


Таблица 4.43 ‒ Справочник «Причины открытия ЛС» (CT_PA_BEGIN_REASON)

ПолеТипОписание



IdReasonBegin

bigint

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

Code

nvarchar(30)

Код

Name

nvarchar(70)

Причина открытия


Таблица 4.44 ‒ Справочник «Причины закрытия ЛС» (CT_PA_END_REASON)

ПолеТипОписание



IdReasonEnd

bigint

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

Code

nvarchar(30)

Код

Name

nvarchar(70)

Причина закрытия


Таблица 4.45 ‒ Справочник «Муниципальные образования» (CT_LOCAL_AUTHORITY)

Поле

Тип

Описание

IdLocalAuthority

bigint

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

IdKladrAddress

bigint

Адрес КЛАДР

Code

nvarchar(30)

Код

Name

nvarchar(300)

Наименование

ShortName

nvarchar(50)

Наименование (краткое)

SurnameRuk

nvarchar(40)

Фамилия

NameRuk

nvarchar(40)

Имя

SecnameRuk

nvarchar(40)

Отчество

NameRP

nvarchar(300)

Наименование районного подразделения

OKPO

nvarchar(30)

ОКПО

INN

nvarchar(12)

ИНН

KPP

nvarchar(9)

КПП

OGRN

nvarchar(13)

ОГРН

OKATO

nvarchar(30)

ОКАТО

PhoneFaxNumber

nvarchar(15)

Номер факса

Email

nvarchar(50)

Эл. Почта

RegOrgan

nvarchar(200)

Рег. организация


Таблица 4.46 ‒ Действия пользователей

(CT_USER_ACTION)

Поле

Тип

Описание

IdUserAction

bigint

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

Code

nvarchar(30)

Код

Name

nvarchar(150)

Наименование


Таблица 4.47 ‒ Журнал активности пользователей

(JR_USER_ACTIVITY)

ПолеТипОписание



IdUserActivity

bigint

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

IdUser

bigint

Пользователь

IdUserAction

bigint

Действие

Date

datetime

Дата

Comment

nvarchar(200)

Коментарий


Таблица 4.48 ‒ Связи многие-ко-многим.

(NN_HOUSEHOLD_BOOK_VILLAGE)

Поле

Тип

Описание

IdHouseholdBookVillage

bigint

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

IdHouseholdBook

bigint

Похозяйственная книга

IdKladrAddress

bigint

Адрес КЛАДР

IdVillageExcludeReason

bigint

Причина исключени населенного пункта

DateInclude

datetime

Дата включения

DateExclude

datetime

Дата исключения

DateActual

datetime

Дата актуализации


Таблица 4.49 ‒ Причины исключения населенного пункта (CT_VILLAGE_EXCLUDE_REASON)

Поле

Тип

Описание

IdVillageExcludeReason

bigint

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

Code

nvarchar(30)

Код

Name

nvarchar(50)

Причины исключения населенного пункта


Группа справочников «Населенные пункты»

«КЛАДР» - базовый справочник, предназначен для хранения информации об адресах населенных пунктов.

Таблица 4.50 ‒ Справочник «Регион»

(SK_KLADR_REGION)

Поле

Тип

Описание

IdRegion

bigint

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

Name

nvarchar(40)

Название

Code

nvarchar(11)

Код

IdObjectType

bigint

Тип объекта

[Index]

nvarchar(6)

Индекс

OKATO

nvarchar(11)

Код ОКАТО

Status

nvarchar(1)

Статус

Actuality

bit

Актуальность


Таблица 4.51 - Справочник «Административная единица» (SK_KLADR_DISTRICT)

ПолеТипОписание



IdDistrict

bigint

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

IdRegion

bigint

Регион

Name

nvarchar(40)

Название

Code

nvarchar(11)

Код

IdObjectType

bigint

Тип объекта

[Index]

nvarchar(6)

Индекс

OKATO

nvarchar(11)

Код ОКАТО

Status

nvarchar(1)

Статус

Actuality

bit

Актуальность


Таблица 4.52 ‒ Справочник «Тип объекта»

(SK_KLADR_OBJECT_TYPE)

Поле

Тип

Описание

IdObjectType

bigint

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

[Level]

nvarchar(1)

Уровень

ScName

nvarchar(10)

Сокращенное название

Name

nvarchar(29)

Название

Code

nvarchar(3)

Код


Таблица 4.53 ‒ Справочник «Адрес» (SK_KLADR_ADDRESS)

Поле

Тип

Описание

IdKladrAddress

bigint

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

IdKladrRegion

bigint

Регион

IdKladrDistrict

bigint

Административная единица

IdKladrCity

bigint

Город

IdKladrPlace

bigint

Площадь

IdKladrStreet

bigint

Улица

Dom

nvarchar(10)

Дом

Korp

nvarchar(10)

Корпус

Kv

nvarchar(10)

Квартира

Description

nvarchar(300)

Описание

[Index]

nvarchar(6)

Индекс

Region

Регион

District

nvarchar(250)

Административная единица

Place

nvarchar(250)

Площадь

Street

nvarchar(250)

Улица

OKATO

nvarchar(11)

Код ОКАТО

City

nvarchar(250)

Город


Таблица 4.54 - Справочник «Город» (SK_KLADR_CITY)

Поле

Тип

Описание

IdCity

bigint

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

IdRegion

bigint

Регион

IdDistrict

bigint

Административная единица

Name

nvarchar(40)

Название

Code

nvarchar(11)

Код

IdObjectType

bigint

Тип объекта

[Index]

nvarchar(6)

Индекс

OKATO

nvarchar(11)

Код ОКАТО

Status

nvarchar(1)

Статус

Actuality

bit

Актуальность


Таблица 4.55 - Справочник «Площадь» (SK_KLADR_PLACE)

ПолеТипОписание



IdPlace

bigint

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

IdRegion

bigint

Регион

IdDistrict

bigint

Административная единица

IdCity

bigint

Город

Name

nvarchar(40)

Название

Code

nvarchar(11)

Код

IdObjectType

bigint

Тип объекта

[Index]

nvarchar(6)

Индекс

OKATO

nvarchar(11)

Код ОКАТО

Status

nvarchar(1)

Статус

Actuality

bit

Актуальность


Таблица 4.56- Справочник «Улица» (SK_KLADR_STREET)

Поле

Тип

Описание

IdStreet

bigint

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

IdRegion

bigint

Регион

IdCity

bigint

Город

IdPlace

bigint

Площадь

Name

nvarchar(40)

Название

Code

nvarchar(15)

Код

IdObjectType

bigint

Тип объекта

[Index]

nvarchar(6)

Индекс

OKATO

nvarchar(11)

Код ОКАТО


Таблица 4.57 - Справочник «Настройки» (MT_SETTING)

Поле

Тип

Описание

IdSetting

bigint

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

Description

nvarchar(250)

Описание

Code

nvarchar(30)

Код

Value

nvarchar(150)

Значение


Типы данных полей:

·  int - целое (4 байта);

·        bigint - длинное целое (8 байта);

·        float - вещественный тип данных (4 байта);

·        datetime - дата и время (8 байта);

·        nvarchar (n) - unicode символьное поле фиксированной длины, n - максимальное количество символов, 1 символ - 2 байта;

·        varbinary(MAX) - байтовый массив;

·        bit - 1 бит.

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

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

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

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

Для обеспечения целостности данных используют ограничения ссылочной целостности, которые применяются в ситуациях, когда значения одного столбца должны быть связаны со значениями другого столбца. К ограничениям данного типа относятся ограничения внешнего ключа (foreign key). Данные ограничения реализуются на уровне СУБД MS SQL Server 2008.

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

При проектировании таблиц базы данных, для большинства таблиц создавались индексы. Индекс, в контексте СУБД MS SQL Server, это способ быстрого получения данных из базы данных. Таблицы в базе данных могут иметь большое количество строк, которые хранятся в произвольном порядке, и их поиск по заданному значению путем последовательного просмотра таблицы строка за строкой может занимать много времени. Индекс формируется из значений одного или нескольких столбцов таблицы и указателей на соответствующие строки таблицы и, таким образом, позволяет находить нужную строку по заданному значению. Ускорение работы с использованием индексов достигается в первую очередь за счет того, что все данные хранятся в виде сбалансированной структуры данных.

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

 

4.2    Разработка алгоритмов


Рассмотрим основные схемы алгоритмов, описывающие работу разрабатываемой программы.

Общий алгоритм работы разрабатываемого программного обеспечения представлен на рисунке 4.2.

Рисунок 4.2 ‒ Общий алгоритм работы разрабатываемой программы

Алгоритм действия со справочниками рисунок 4.3.

Рисунок 4.3 ‒ Алгоритм действия со справочниками

Рисунок. 4.4 ‒ Алгоритм действия с реестром «Похозяйственная книга»

Алгоритм действия с похозяйственной книгой рисунок 4.5.

Рисунок 4.5 ‒ Алгоритм действия с похозяйственной книгой

Рисунок 4.6 ‒ Алгоритм действия с реестром «Лицевые счета»

Алгоритм действия с лицевым счетом рисунок 4.7.

Рисунок 4.7 ‒ Алгоритм действия с лицевым счетом

Рисунок 4.8 ‒ Алгоритм действия с реестром «Жители»

4.3    Программная реализация алгоритмов

 

4.3.1 Структура программы

Обобщенная структура разрабатываемого программного обеспечения представлена на рисунке 4.9.

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

Рисунок 4.9 ‒ Обобщенная структура разработанной программы

4.3.2 Организация взаимодействия с базой данных

ASP.NET ‒ это веб-платформа, предоставляющая все необходимые службы для создания серверных веб-приложений корпоративного класса. ASP.NET создана на основе платформы .NET Framework, поэтому все функции .NET Framework доступны для приложений ASP.NET. Приложения могут быть написаны на любом языке, совместимом со средой CLR, включая Visual Basic и C#.

Веб-приложения обычно получают доступ к источникам данных для сохранения и извлечения динамических данных. Можно создать код для доступа к данным с помощью классов из пространства имен System.Data (ADO.NET) и пространства имен System.Xml..NET включает в себя несколько типов серверных элементов управления, используемых в декларативной модели привязки данных, в том числе элементы управления источниками данных и элементы управления с привязкой к данным, а также управляющий элемент-расширитель запросов. Эти элементы управления контролируют базовые задачи, необходимые веб-модели без сведений о состоянии для отображения и обновления данных на веб-страницах ASP.NET. Элементы управления позволяют добавлять на страницу поведение при привязке данных без необходимости изучения особенностей жизненного цикла запросов страницы.

Элементы управления источником данных - это элементы управления ASP.NET, управляющие задачами подключения к источнику данных и чтения и записи данных. Элементы управления источником данных не отрисовывают пользовательский интерфейс, а вместо этого выступают как посредник между конкретным источником данных (например базой данных, бизнес-объектом или файлом XML) и другими элементами управления на веб-странице ASP.NET. Элементы управления источником данных предоставляют широкие возможности для извлечения и изменения данных, включая запросы, сортировку, разбиение по страницам, фильтрацию, обновление, удаление и вставку. Элементы управления источниками данных происходят из базового класса ContextDataSource, предоставляющего типы контекста, которые используются этими элементами управления. Этот базовый класс позволяет создать элементы управления источниками данных, которые поддерживают модели данных, например платформу Entity Framework и Службы данных WCF..NET - это часть Microsoft .NET Framework, набор средств и слоев, позволяющих приложению легко управлять и взаимодействовать со своим файловым или серверным хранилищем данных.

В NET Framework библиотеки ADO.NET находятся в пространстве имен System.Data. Эти библиотеки обеспечивают подключение к источникам данных, выполнение команд, а также хранение, обработку и выборку данных.

Встроенный язык запросов (LINQ) предоставляет унифицированную модель программирования для создания запросов и обновления данных из различных типов источников, а также расширяет возможности обработки данных непосредственно в языках C# и Visual Basic. В LINQ к реляционным данным применяются принципы объектно-ориентирован-ного программирования. Для работы с LINQ можно использовать элемент управления LinqDataSource. Можно также создавать запросы LINQ непосредственно для доступа к данным с веб-страницы. [7]

В.NET Framework 3.5 появилась новая технология - ASP.NET MVC..NET MVC ‒ это часть платформы ASP.NET. Разработка приложений ASP.NET MVC ‒ это альтернатива разработке страниц веб-форм ASP.NET, но не замена модели веб-форм..NET MVC является реализаций шаблона Model-View-Controller под платформу .NET. Шаблон "Model-View-Controller" (MVC) ‒ это архитектурный принцип, согласно которому веб-приложение делится на компоненты. Такое разделение облегчает управление отдельными частями приложения, что упрощает их разработку, изменение и тестирование.

Основные принципы его работы.

Архитектурный шаблон Model-View-Controller подразумевает под собой разделение приложения на три основных компонента: Model, View и Controller. Каждый из этих компонентов отвечает за свои задачи:

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

·        View отвечает за взаимодействие с пользователем (UI). Посредством этого компонента будут выводиться данные клиенту, реализовываться интерфейс для их редактирования и т.п.

·        Controller - это связующее звено между первыми двумя компонентами. Controller получает данные о запросе к серверу, обрабатывает эти данные (например, получает значения из отправленной формы) и передает их в Model. После обработки или получения данных он выбирает, каким же именно способом отобразить данные клиенту (нужный View).

В результате получается полный контроль над выводимым HTML и более "легкие" приложения. Также значительно упрощается тестирование приложений, так как теперь можно легко писать Unit Test'ы для модели и контроллера.

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

Также стоит отметить, что в таком подходе отсутствует ViewState, так как больше нет необходимости хранить состояния страниц, чтобы их повторно воссоздавать на сервере. Нет обработчиков событий, нет ViewState, нет Drag'n'Drop контролов на форму.

Еще одна полезная особенность - нет необходимости реализовывать URL-Rewriting. Для ASP.NET MVC такой подход является стандартным - весь путь определяет контроллер, который необходимо использовать на сервере (при этом последний уровень определят имя контроллера, а остальные - его месторасположение), а параметры передаются через HTTP POST.делит пользовательский интерфейс на три разных объекта: контроллер получает входные данные и обрабатывает их, модель содержит логику домена, представление оформляет полученный результат. В контексте Веб-приложений входные данные - это HTTP-запрос. Ход обработки запросов показан на рисунке 4.10.

Рисунок 4.10 - Ход обработки запроса в схеме MVC

В ASP.NET этот процесс выглядит иначе. Там входные данные отправляются на страницу (в представление). Представление отвечает и за обработку входных данных, и за отображение результата. В MVC эти обязанности разделяются. [8]

Модель пользователя: SK_USER.

using System.ComponentModel.DataAnnotations;

using System.ComponentModel.DataAnnotations.Schema;System.Collections.Generic;Zacroma.Models.Spr

{class SK_USER

{

[Key]

[ScaffoldColumn(false)]long IdUser { get; set; }

[Required(ErrorMessage = "Поле \"Роль\" должно быть заполнено")]

[Display(Name = "Роль")]long IdRole { get; set; }

[NotMapped]

[Display(Name = "Роль")]string RoleName { get; set; }

[Required(ErrorMessage = "Поле \"Орган местного самоуправления\" должно быть заполнено")]

[Display(Name = "Орган местного самоуправления")]

public long IdLocalAuthority { get; set; }

[NotMapped]

[Display(Name = "Орган местного самоуправления")]

public string LocalAuthorityName { get; set; }

[Required(ErrorMessage = "Поле \"Фамилия\" должно быть заполнено")]

[Display(Name = "Фамилия")]

[MaxLength(100, ErrorMessage = "Количество символов в поле \"Фамилия\" не должно превышать 100")]

public string SurName { get; set; }

[Required(ErrorMessage = "Поле \"Имя\" должно быть заполнено")]

[Display(Name = "Имя")]

[MaxLength(100, ErrorMessage = "Количество символов в поле \"Имя\" не должно превышать 100")]

public string Name { get; set; }

[Required(ErrorMessage = "Поле \"Отчество\" должно быть заполнено")]

[Display(Name = "Отчество")]

[MaxLength(100, ErrorMessage = "Количество символов в поле \"Отчество\" не должно превышать 100")]

public string MiddleName { get; set; }

[Required(ErrorMessage = "Поле \"Логин\" должно быть заполнено")]

[Display(Name = "Логин")]

[MaxLength(50, ErrorMessage = "Количество символов в поле \"Логин\" не должно превышать 50")]

public string Login { get; set; }

[Display(Name = "Пароль")]

[MaxLength(50, ErrorMessage = "Количество символов в поле \"Пароль\" не должно превышать 50")]

public string Password { get; set; }

[Display(Name = "Эл. почта")]

[MaxLength(100, ErrorMessage = "Количество символов в поле \"Эл. почта\" не должно превышать 100")]

public string Email { get; set; }

[Display(Name = "Телефон")]

[MaxLength(100, ErrorMessage = "Количество символов в поле \"Телефон\" не должно превышать 100")]

public string Phone { get; set; }

[NotMapped]string FIO { get { return SurName + " " + Name + " " + MiddleName; } }

[NotMapped]string FIO1 { get { return SurName + " " + Name[0] + ". " + MiddleName[0] + "."; } }

[NotMapped]

[Required(ErrorMessage = "Поле \"Пароль\" должно быть заполнено")]

[Display(Name = "Пароль")]string PasswordString

{{ return string.IsNullOrEmpty(Password) ? "" : StringCrypt.Decrypt(Password); }{ Password = StringCrypt.Encrypt(value ?? ""); }

}

}

}System;System.Collections.Generic;System.Data;System.Linq;Zacroma.Helpers;Zacroma.Models.Spr

{class SK_USERs

{ZacromaContext _context = new ZacromaContext();List<SK_USER> Users = new List<SK_USER>();

/// <summary>

/// Метод получающий список пользователей их роли, орган местного самоуправления

/// </summary>

/// <returns></returns>List<SK_USER> GetUsers()

{user = new UserInfo();

//Linq - запросresults = (users in _context.SK_USERroles in _context.CT_ROLEusers.IdRole equals roles.IdRolelocalAuthoritys in _context.CT_LOCAL_AUTHORITY on users.IdLocalAuthority equals localAuthoritys.IdLocalAuthority.IdLocalAuthority == user.LocalAutority.IdLocalAuthority.SurName, users.Name, users.MiddleNamenew

{,= roles.Name,= localAuthoritys.Name

}).ToList();= results.Select(x => FillData(x.users, x.roles, x.localAuthoritys)).ToList();

return Users;

}

/// <summary>

/// Метод возвращающий пользователей

/// </summary>

/// <param name="users"></param>

/// <param name="roles"></param>

/// <param name="localAuthoritys"></param>

/// <returns></returns>SK_USER FillData(SK_USER users, string roles, string localAuthoritys)

{.RoleName = roles;.LocalAuthorityName = localAuthoritys;

return users;

}

/// <summary>

/// Удаление пользователей

/// </summary>

/// <param name="users"></param>

/// <returns></returns>string DeleteUsers(IEnumerable<SK_USER> users)

{

{(var u in users)

{ob = _context.SK_USER.Find(u.IdUser);

_context.SK_USER.Remove(ob);

}

_context.SaveChanges();string.Empty;

}(Exception ex)

{ExceptionHelper.ProcessException(ex).Message;

}

}

/// <summary>

/// Редактирование пользователя

/// </summary>

/// <param name="user"></param>

/// <returns></returns>string EditUser(SK_USER user)

{

{

_context.Entry(user).State = EntityState.Modified;

_context.SaveChanges();string.Empty;

}(Exception ex)

{ExceptionHelper.ProcessException(ex).Message;

}

}

/// <summary>

/// Добавление пользователя

/// </summary>

/// <param name="user"></param>

/// <returns></returns>string AddUser(SK_USER user)

{

{

_context.SK_USER.Add(user);

_context.SaveChanges();string.Empty;

}(Exception ex)

{ExceptionHelper.ProcessException(ex).Message;

}

}

/// <summary>

/// Выбор пользователя

/// </summary>

/// <param name="idUser"></param>

/// <returns></returns>SK_USER SelectUser(long idUser)

{user = _context.SK_USER.Single(x => x.IdUser == idUser); user;

}

}

}

Более подробную реализацию MVC можно посмотреть в листинге программы в Приложении Б.

4.3.3 Описание классов проекта

На следующих рисунках показаны основные классы проекта.

·  CT_EDUCATION, CT_EDUCATIONs - классы модели «Образование»;

·        CT_EDUCATION_TYPE, CT_EDUCATION_TYPEs - классы модели «Формы обучения»;

·        CT_EDUCATION_INSTITUTION, CT_EDUCATION_INSTITUTIONs - классы модели «Учебные заведения»;

·        CT_EDUCATION_INSTITUTION_TYPE, CT_EDUCATION_INSTITUTION_TYPEs - классы модели «Виды учебных заведений »;

·        SK_USER, SK_USERs - классы модели «Пользователи»;

·        MT_SETTING, MT_SETTINGs - классы модели «Настройки».

Рисунок 4.11 - Неполный список классов моделей справочников

Рисунок 4.12 - Неполный список классов контроллеров справочников

·  Educations - контроллер образования.

·        EducationTypes - контроллер формы обучения.

·        EducationalInstitutions - контроллер учебных заведений.

·        EducationalInstitutionTypes - контроллер видов учебных заведений.

·        Users - контроллер пользователей.

·        Settings - контроллер настроек.

Рисунок 4.13 - Классы некоторых контроллеров проекта

·  BaseController - класс базового контроллера для всего asp.net MVC 4 проекта.

·        DesktopController - контроллер главной страницы

·        LoginController - контроллер логин

·        MessageController - контроллер сообщений

·        PrintController - контроллер печати

·  ColumnInfo - класс информация о столбцах.

·        FieldInfo - класс информация о полях

·        SelectOptions - класс выбора опций.

·        CommonMVCExtensions - общий расширенный класс MVC.

·        CommonMVCBuilder - общий класс MVC построитель.

·        StringCrypt - класс криптографической защиты строки.

·        MvcApplication - класс приложения MVC.

·        Global - глобальный класс.

·        Report - класс отчета.

·        UserInfo - класс информация пользователя.

·  ZacromaContext - класс унаследован от DbContext.

Рисунок 4.14 - Классы проекта

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

ИС «Похозяйственная книга» содержит следующие типы отчетов.правки и выписки из похозяйственных книг:

·  выписка из похозяйственной книги о наличии у гражданина права на земельный участок;

·        выписка из лицевого счета;

·        справка о вхождении населенного пункта в муниципальное образование;

·        справка о расположении дома;

·        справка о расположении земельного участка;

·        справка в БТИ;

·        справка в нотариат о проживании;

·        справка в нотариат о регистрации;

·        справка в нотариат о наследстве;

·        справка в отдел социальной защиты;

Отчеты в установленной форме:

·  похозяйственная книга.

Построенный отчет можно экспортировать во множество форматов: PDF, XPS, XML, HTML, Word, Excel, RTF, TXT, CSV, EMF, BMP, JPEG, GIF, PNG и TIFF, и отправить на печать.

Структура отчетных документов представлена в Приложении Б.

 

5. Программная документация


5.1    Описание применения


5.1.1 Назначение программы

Информационная система «Похозяйственная книга.WEB» (далее - ИС) предназначена для ведения учета данных о личных подсобных хозяйствах, а именно: административного учета сельского населения, наличия у него земли, сведений о площадях земельных участков личного подсобного хозяйства, занятых посевами и посадками сельскохозяйственных культур, плодовыми, ягодными насаждениями; количестве сельскохозяйственных животных, птицы и пчел; сельскохозяйственной технике, оборудовании, транспортных средствах, принадлежащих на праве собственности или ином праве гражданину, ведущему хозяйство.

ИС решает следующие задачи:

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

·        соответствие требованиям действующего законодательства: Приказ Минсельхоза России от 11 октября 2010 г. № 345 «Об утверждении формы и порядка ведения похозяйственных книг органами местного самоуправления поселений и органами местного самоуправления городских округов», федеральный закон от 07.07. 2003 г. №112-ФЗ «О личном подсобном хозяйстве», федеральный закон от 21.10.2001 г. №136-ФЗ «Земельный кодекс Российской федерации», федеральный закон от 27.07.2010 г. № 210‒ФЗ «Об организации предоставления государственных муниципальных услуг»;

·        оперативное формирование регламентированных справок по запросам населения и выписок из похозяйственных книг;

·        контроль корректности данных в похозяйственных книгах и отслеживание их наполнения;

·        консолидация на уровне муниципального образования данных похозяйственного учёта для формирования необходимой отчётности финансово-экономического, налогового и статистического характера;

·        хранение истории редактирования записей ИС.

ИС реализует следующие возможности:

·  создание единого информационного пространства администраций муниципальных образований с разграничением прав;

·        идентификация и аутентификация пользователей ИС способом: логин/пароль;

·        ведение журнала действий пользователей;

·        контроль доступа к данным и их истории;

·        формирование и ведение справочников и реестров данных;

·        хранение введенной информации в массивах (таблицах) ИС;

·        поиск, фильтрация и просмотр хранимых данных;

·        просмотр истории значений записей данных;

·        формирование и печать отчетных форм в установленных форматах.

 

5.1.2 Условия применения

Программное обеспечение работает в среде операционных систем Windows XP, Windows Vista, Windows 7 или Windows 8. На сервере должен быть установлен .NET Framework версии 4.0 и выше. На сервере должен быть установлена СУБД Microsoft SQL Server не ниже версии 2008, веб-сервер IIS версии не ниже 7. Надежность работы в операционных системах Windows, СУБД SQL Server, веб-серверах IIS более ранних версий не гарантируется.

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

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

5.1.3 Описание задачи

Основной задачей является комплексная автоматизация ведения похозяйственного учета в регионах.

Для решения поставленной задачи используются среда разработки Microsoft Visual Studio 2010 SP 1, язык программирования C# 4.0, ASP.NET MVC 4.0, набор компонентов Kendo UI, kendoui.aspnetmvc.2013.1.514 или более новые, объектно-ориентированный подход к построению программы и СУБД MS SQL Server 2008.

5.1.4 Входные и выходные данные

Информационная системы «Похозяйственная книга. WEB» обеспечивает хранение необходимой информации посредством использования справочников и реестров.

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

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

Справочники информационной системы, доступные пользователю с ролью «Адмнистратор»:

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

·        Должности ‒ базовый справочник, предназначен для добавле-ния, хранения и просмотра информации о должностях работников в органах местных самоуправлений;

·        Роли пользователей - базовый справочник, используется для добавления, хранения и просмотра информации о ролях пользователей ИС.

Необходимая информация содержится в базе данных Microsoft SQL Server, вводится пользователями вручную. Корректная работа с СУБД Microsoft SQL Server младше версии 2008 не гарантируется.

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

5.2    Руководство программиста

 

5.2.1 Назначение и условия применения программы

Информационная система «Похозяйственная книга.WEB» предназначена для ведения учета данных о личных подсобных хозяйствах.

ИС «Похозяйственная книга WEB» реализует следующие возможности:

·  создание единого информационного пространства администраций муниципальных образований с разграничением прав;

·        идентификация и аутентификация пользователей ИС способом: логин/пароль;

·        ведение журнала действий пользователей;

·        контроль доступа к данным и их истории;

·        формирование и ведение справочников и реестров данных;

·        хранение введенной информации в массивах (таблицах) ИС;

·        поиск, фильтрация и просмотр хранимых данных;

·        просмотр истории значений записей данных;

·        формирование и печать отчетных форм в установленных форматах.

 

5.2.2 Характеристики программы

Настройка СУБД

Для создания базы данных приложения в СУБД необходимо скопировать файл базы данных из дистрибутива в папку MSSQL\Data и подключить базу данных в SQL Server Management Studio (см. рисунок 5.1).

Для подключения базы данных в SQL Server Management Studio необходимо нажать правой клавишей мыши на название раскрывающегося списка «Databases» и в контекстном меню выбрать пункт «Attach». В результате открывается диалоговое окно «Attach Databases», в котором следует выполнить функцию «Add» и в появившемся окне «Locate Database Files» указать имя файла (*.mdf) скопированной ранее базы данных. При нажатии кнопки <ОК> название выбранной базы данных отображается в окне «Attach Databases».

Рисунок 5.1 ‒ Выполнение создания БД

В результате нажатия кнопки <ОК> в окне «Attach Databases» указанная база данных подключается к СУБД и ее можно будет увидеть в раскрывающемся списке «Databases».

Развертывание сайта на IIS

Перед развертыванием ресурса необходимо посмотреть существующие пулы приложений IIS и, при необходимости, добавить новый или изменить параметры существующего.

Для добавления нового пула необходимо нажать правой клавишей мыши на название «Пулы приложений» и в контекстном меню выбрать пункт «Добавить пул приложений…» (см. рисунок 5.2).

Рисунок 5.2 ‒ Добавление нового пула

В результате откроется диалоговое окно «Добавление пула приложений», в котором необходимо указать: имя пула, версии среды .NET Framework (версия v. 4.0), режим управляемого конвейера (встроенный) и установить отметку «немедленный запуск пула приложений» (см. рисунок 5.3).

Рисунок. 5.3 ‒ Добавление нового пула

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

Таблица 5.1

Название поля

Значение

Версия среды .NET Framework

v4.0

Разрешены 32-разрядные приложения

True

Загрузить профиль пользователя

False

Удостоверение

ApplicationPoolIdentity


Для обеспечения безопасности и конфиденциальности информации необходимо задействовать шифрование передаваемых данных с помощью протокола HTTPS. Для этого необходимо создать два сертификата безопасности: корневой и, подписанный корневым, сертификат сервера. Сделать это можно с помощью свободно-распространяемой программы OpenSSL. После её установки для работы понадобится отдельная папка, например C:\IIS. В ней следует создать пустую папку с названием «newcerts» и два файла: «serial» (без расширения), с единственной записанной в него строкой «01», и пустой файл «index.txt». Затем, следует открыть файл OpenSSL.cfg (он находится в каталоге OpenSSL/bin) и поменять значение в поле [CA_default] dir на C:\IIS.

Далее необходимо выполнить следующие действия:

создать корневой сертификат сервера. Для этого следует открыть командную строку, установить значение «текущая папка» равным OpenSSL\bin и выполнить команду (в одну строку):

openssl req -new -x509 -newkey rsa:4096 -days 10000 -out c:\iis\rootcert.crt -keyout c:\iis\rootcert.key;

установить корневой сертификат в хранилище доверенных центров сертификации компьютера. Для этого следует открыть консоль сервера, набрав в поле ввода окна «Выполнить» команду «mmc» и добавить оснастку сертификатов в консоль (см. рисунок 5.4).

Рисунок 5.4 ‒ Добавление в консоль оснастки с сертификатами

Рисунок 5.5 ‒ Импорт корневого сертификата

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

Рисунок 5.6 ‒ Сертификаты IIS

на панели «Действия» нажать кнопку «Создать запрос сертификата» и в открывшемся диалоговом окне в поле [Полное имя] обязательно ввести доменное имя сервера или его IP-адрес. Затем следует сохранить файл в каталог c:\iis под именем «servercert.csr»;

подписать запрос сертификата сервера корневым сертификатом, выполнив в OpenSSL команду (в одну строку):

openssl ca -days 1000 -policy policy_anything -keyfile c:\iis\rootrcert.key -cert c:\iis\rootcert.crt -in c:\iis\servercert.csr -out c:\iis\servercert.cer;

1. открыть сертификаты сервера (см. рис.6), выполнить функцию «Запрос установки сертификатов» с помощью кнопки на панели «Действия», выбрать созданный сертификат сервера «servercert.cer» и ввести его имя (например, servercert) в соответствующее поле.

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

.   создать новую папку (для нового сайта) в каталоге c:\sites и скопировать в неё содержимое дистрибутива сайта;

2.      выбрать пункт меню «Добавить веб-сайт» нажав правой кнопки мыши на название папки «сайты» в окне «Диспетчер служб IIS» (см. рисунок. 5.7)

Рис. 5.7 ‒ Добавление сайта

. в открывшемся окне «Добавление веб-сайта» (рис. 5.8) следует обязательно указать:

·  имя сайта;

·        пул приложений;

·        физический путь к папке сайта;

·        тип привязки «https»;

·        порт;

·        сертификат сервера servercert.

Рисунок 5.8 ‒ Диалоговое окно «Добавление веб-сайта»

После нажатия кнопки <ОК> в диалоговом окне «Добавление веб-сайта» сайт начинает функционировать. Его работоспособность можно проверить, набрав в адресной строке браузера IP-адрес сервера и через двоеточие указанный порт.

Настройка подключения приложения к БД осуществляется с помощью файла конфигурации сайта «web.xml», который находится в корневом каталоге сайта.

Содержание файла выглядит она следующим образом:

<connectionStrings>

<add name="ZacromaContext"="data source= Server\Instance;Database=Zaсroma;user id=sa;password=ok;"="System.Data.SqlClient" />

</connectionStrings>

Для подключения к базе данных необходимо настроить следующие атрибуты:

·  data source ‒ наименование сервера (домен или IP‒адрес) и наименование СУБД (через слеш), здесь Server ‒ это имя компьютера, а Instance ‒ имя экземпляра;

·        database ‒ наименование БД в СУБД;

·        user id ‒ наименование пользователя в СУБД;

·  password ‒ пароль пользователя в СУБД.

5.2.3 Обращение к программе

Обращение к программе осуществляется с помощью ввода текста в адресную строку браузера, в которой отображается URL-адрес (Uniform Resource Locator, единый указатель ресурсов ‒ единообразный локатор ресурса).

Завершение работы программы возможно в любой момент с помощью: меню «Выход», закрытие вкладки в браузере.

5.2.4 Входные и выходные данные

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

Необходимая информация содержится в базе данных Microsoft SQL Server, вводится пользователями вручную. Корректная работа с СУБД Microsoft SQL Server младше версии 2008 не гарантируется.

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

5.2.5 Сообщения

При работе программы оператору могут выдаваться сообщения в окнах программы или в виде отдельных стандартных модальных окон. Перечень сообщений и порядок действия описан в документе «Руководство оператора».

5.3    Руководство оператора

база данные местный самоуправление

5.3.1 Назначение программы

Информационная система «Похозяйственная книга.WEB» предназначена для ведения учета данных о личных подсобных хозяйствах.

ИС «Похозяйственная книга WEB» реализует следующие возможности:

·  создание единого информационного пространства администраций муниципальных образований с разграничением прав;

·        идентификация и аутентификация пользователей ИС способом: логин/пароль;

·        ведение журнала действий пользователей;

·        контроль доступа к данным и их истории;

·        формирование и ведение справочников и реестров данных;

·        хранение введенной информации в массивах (таблицах) ИС;

·        поиск, фильтрация и просмотр хранимых данных;

·        просмотр истории значений записей данных;

·        формирование и печать отчетных форм в установленных форматах.

5.3.2 Условия выполнения программы

Программное обеспечение работает в среде операционных систем Windows XP, Windows Vista, Windows 7 или Windows 8. На сервере должен быть установлен .NET Framework версии 4.0 и выше. На сервере должен быть установлена СУБД Microsoft SQL Server не ниже версии 2008, веб-сервер IIS версии 7. Надежность работы в операционных системах Windows, СУБД SQL Server, веб-серверах IIS более ранних версий не гарантируется.

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

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

5.3.3 Выполнение программы

Запуск и основное окно приложения

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

.   В веб-браузере ввести адрес приложения. Откроется диалоговое окно для авторизации пользователя.

Рисунок 5.9 ‒ Окно запуска приложения

2. Ввести имя (логин) и пароль пользователя в соответствующие поля окна. По кнопке <Вход> выполняется авторизация пользователя ИС. В результате успешной авторизации открывается основное окно приложения.

Рисунок 5.10 ‒ Основное окно приложения

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

Рисунок 5.11 ‒ Главное меню программы.

 

Реестр похозяйственных книг

Форма, содержащая реестр похозяйственной книги (ПК), предназначена для:

·  формирования и просмотра реестра ПК;

·        редактирования реквизитов открытых ПК;

·        просмотра изменений в реквизитах ПК;

·        включения и исключения населенных пунктов в ПК;

·        печати ПК.

Форма вызывается выбором пункта «Реестр ПК» главного меню программы. В ней отображаются данные только открытых (активных) на данный момент похозяйственных книг.

Форма состоит из двух частей:

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

Рисунок 5.12 ‒ Форма «Реестр ПК»

Форма «Реестр ПК» содержит следующие поля:

Таблица 5.2

№ п/п

Наименование поля

Значение

1.

Статус

Возможные статусы похозяйственной книги: - активна - период действия ПК не истек, к ПК не применена функция «Закрыть», данные в ПК можно редактировать и добавлять новые записи; - неактивна - период действия ПК истек, но функция «Закрыть» не применена, данные в ПК можно редактировать, добавлять новые записи можно только с датой актуальности, входящей в период действия ПК; - закрыта - ПК, к которой применена функция «Закрыть», данные ПК можно только просматривать.

2.

Номер

Номер ПК.

3.

Дата начала действия

Дата начала действия данной ПК.

4.

Дата окончания действия

Дата начала действия данной ПК.

5.

ФИО работника

Фамилия, Имя, Отчество сотрудника, создавшего данную ПК

6.

Орган местного самоуправления

Название органа местного самоуправления, осуществляющего ведение данной ПК.

7.

Дата создания

Дата создания ПК.

8.

Количество ЛС

Количество ЛС в ПК.

9.

Дополнительные сведения

Дополнительные сведения о ПК.

10.

Группа полей «Фильтр»

Содержит поля для ввода пользователем условий отбора записей.


По каждому столбцу создана возможность фильтрации и сортировки.

Работа с формой осуществляется с помощью следующих функций:

Обновить - используется для обновления отображаемых данных. Также для применения настроек фильтра записей блока;

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

Пользователю по умолчанию предлагаются следующие значения полей:

[Номер] ‒ номер следующей ПК, [Дата начала действия ПК] ‒ текущая дата,

[Дата окончания действия ПК] ‒ [Дата начала действия ПК] +5 лет;

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

Рисунок 5.13 ‒ Диалоговое окно «Добавление записи»

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

Рисунок 5.14 ‒ Диалоговое окно «Изменение записи»

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

Рисунок 5.15 ‒ Диалоговое окно «Изменение записи» для ПК, содержащей записи о ЛС

Закрыть - используется для изменения статуса ПК на значение «Закрыть». В результате записи ПК со статусом «Закрыть» можно будет только просматривать;

Открыть - используется для перехода к форме «Похозяйственная книга»;

Печать - используется для печати текущей ПК или Постановления о перезакладке ПК.

При выборе пользователем из раскрывающегося списка «Печать» значения «Печатная форма ПК» открывается печатная форма «Похозяйственная книга» в редакторе для просмотра отобранных записей ЛС.

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

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

Населенные пункты - используется вывода на экран формы «Населенные пункты ПК», а также для отмены ее отображения;

Применить фильтр - используется для отображения данных в соответствии со значениями, введенными в поля группы «Фильтр»;

Очистить фильтр - используется для очищения полей фильтра от введенных ранее значений.

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

Рисунок 5.16 ‒ Форма «Населенные пункты ПК»

Форма «Населенные пункты ПК» содержит следующие поля:

Таблица 5.3

№ п/п

Наименование поля

Значение

1.

Населенный пункт

Название населенного пункта.

2.

Дата включения в ПК

Дата включения населенного пункта (улицы) в ПК.

3.

Дата исключения из ПК

Дата исключения населенного пункта (улицы) из ПК.

4.

Причина исключения

Причина исключения населенного пункта из ПК.

5.

Дата актуальности

Дата изменения значения данной записи на текущее.


По каждому столбцу создана возможность фильтрации и сортировки.

Работа с формой осуществляется с помощью следующих функций:

Включить пункт в ПК - используется для добавления информации о населенном пункте в текущую ПК. В результате открывается диалоговое окно «Включение населенного пункта», в котором пользователь выбирает из справочника «КЛАДР» название добавляемого населенного пункта с помощью кнопки («Поиск») и дату его включения в ПК с помощью календаря.

Рисунок 5.17 ‒ Диалоговое окно «Включение населенного пункта»

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

Рисунок 5.18 ‒ Диалоговое окно «Исключение населенного пункта»

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

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

Дата актуальности - используется для установления значения фильтра [Дата актуальности];

Применить - используется для отображения значений в форме в соответствии с установленными значениями фильтра. В результате в форме «Населенные пункты ПК» будут отображаться значения, актуальные на момент времени, указанный в поле [Дата актуализации].

Похозяйственная книга. Содержание

Форма «Похозяйственная книга» предназначена для:

·  просмотра реестра лицевых счетов текущей ПК;

·        открытия нового лицевого счета в текущей ПК;

·        просмотра изменений в реквизитах лицевых счетов текущей ПК.

Форма «Похозяйственная книга» открывается из формы «Реестр похозяйственных книг» в результате двойного клика по соответствующей записи или в результате успешного выполнения функции панели инструментов «Открыть». В ней отображаются лицевые счета подсобных хозяйств (ПХ) выбранной ПК.

Рисунок 5.19 ‒ Форма «Похозяйственная книга»

Таблица 5.4

№ п/п

Наименование поля

Описание

1.

№ ЛС

Номер лицевого счета ПХ

2.

Записан первым

Фамилия, имя, отчество главы ПХ

3.

Кадастровый номер

Кадастровый номер территории, на которой зарегистрировано ПХ

4.

Адрес

Адрес ПХ, на который открыт лицевой

5.

Разрешенное использование

Название вида разрешенного использования ресурсов ПХ.

6.

Дата открытия ЛС

Дата открытия лицевого счета ПХ

7.

Основание

Основание открытия лицевого счета ПХ

8.

Дата закрытия ЛС

Дата закрытия лицевого счета ПХ

9.

Основание закрытия ЛС

Основание закрытия лицевого счета ПХ

10.

Дополнительные сведения

Дополнительные сведения о ПХ.


По каждому столбцу создана возможность фильтрации и сортировки.

Работа с формой осуществляется с помощью следующих функций:

Обновить - используется для обновления отображаемых данных;

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

Пользователю по умолчанию предлагаются следующие значения полей:

[№ ЛС] ‒ номер следующего лицевого счета в текущей ПК;

[Дата открытия] ‒ системная дата на момент создания записи.

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

Поля, отмеченные знаком , обязательны для заполнения.

Рисунок 5.20 ‒ Окно «Добавить лицевой счет»

Закрыть - используется для закрытия текущего ЛС. В результате открывается диалоговое окно «Закрытие счета», в котором пользователь указывает дату закрытия счета с помощью календаря и основание закрытия с помощью раскрывающегося списка значений справочника.

Рисунок 5.21 ‒ Диалоговое окно «Закрытие счета»

Открыть - используется для перехода к содержанию лицевого счета. Подробнее см. «Лицевой счет. Содержание»;

Очистить фильтр - используется для очищения полей фильтра от введенных ранее значений.

Лицевой счет. Содержание

Форма «Лицевой счет» открывается из формы «Похозяйственная книга» в результате двойного клика по соответствующей записи или в результате успешного выполнения функции панели инструментов «Открыть».

Форма «Лицевой счет» используется для:

·  просмотра содержания лицевого счета текущей ПК;

·        редактирования содержания лицевого счета текущей ПК;

·        просмотра изменений в записях текущего лицевого счета;

·        просмотра и редактирование реквизитов лицевого счета.

Рисунок 5.22 ‒ Форма «Лицевой счет»

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

Работа с формой осуществляется с помощью следующих функций:

Обновить - используется для обновления отображаемых данных. Также для применения настроек фильтра записей блока;

Сохранить - используется для сохранения внесенных изменений в реквизиты и содержание ЛС;

Печать - используется для формирования печатной формы «Лицевой счет». В результате форма открывается в редакторе для просмотра. Подробнее см. Печатная форма «Лицевой счет».

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

Применить фильтр - используется для отображения в форме «Лицевой счет» значений, актуальных на момент времени, указанный в поле [Дата актуализации];

Очистить фильтр - используется для изменения значения поля [Дата актуализации] на текущее;

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

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

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

·        посевные площади - предназначена для просмотра, добавления и редактирования данных о посевных площадях подсобного хозяйства;

·        животные, птицы и пчелы - предназначена для просмотра, добавления и редактирования данных о животных, птицах и пчелах, принадлежащих подсобному хозяйству;

·        оборудование и транспорт - предназначена для просмотра, добавления и редактирования данных об оборудовании и транспорте в подсобном хозяйстве;

·        здания - предназначена для просмотра, добавления и редактирования данных о зданиях, находящихся на территории подсобного хозяйства.

Члены подсобного хозяйства

Рисунок 5.23 ‒ Вкладка «Члены ПХ»

Таблица 5.5

№ п/п

Наименование поля

Описание

1.

Записан первым

Установленная отметка означает, что данный член ПХ является главой хозяйства

ИНН

ИНН члена ПХ, записанного первым

3.

Фамилия

Фамилия члена ПХ

4.

Имя

Имя члена ПХ

5.

Отчество

Отчество члена ПХ

6.

Дата рождения

Дата рождения члена ПХ

7.

Пол

Пол члена ПХ

8.

Тип документа, удостоверяющего личность

Значение из справочника «Типы документов, удостоверяющих личность»

9.

Серия документа

Серия документа, удостоверяющего личность

10.

Номер документа

Номер документа, удостоверяющего личность

11.

Адрес места рождения

Код КЛАДР

12.

Дата выдачи документа

Дата выдачи документа, удостоверяющего личность

13.

Кем выдан

Наименование выдавшего органа.

14.

Отношение к первому члену хозяйства

Значение из справочника «Семейный отношения»

15.

Адрес места регистрации

Код КЛАДР

16.

Дата регистрации

Дата прописки

17.

Дата окончания регистрации

Дата выписки

18.

Адрес места временного проживания

Код КЛАДР

19.

Дата начала временного проживания

Дата начала проживания по временному адресу

20.

Дата окончания временного проживания

Дата окончания проживания по временному адресу

21.

Вид проживания в ПХ

Значение из справочника «Виды проживаний» [Название]

22.

Дата прибытия

Дата прибытия в ПХ

23.

Прибыл из

Код КЛАДР

24.

Дата выбытия

Дата выбытия их ПХ

25.

Причина выбытия

Причина выбытия из ПХ (для умерших указывается № акта о смерти)

26.

Патронируемый

Признак патронируемого члена ПХ

27.

Фамилия патроната

Значение из справочника «Члены подсобного хозяйства»

28.

Имя патроната

Рисунок 1.

29.

Отчество патроната


30.

Национальность

Значение из справочника «Национальности»

31.

Образование

Значение из справочника «Вид образования»

32.

Тип учебного заведения

Значение из справочника «Типы учебных заведений»

33.

Название учебного заведения

Название учебного заведения

34.

Вид обучения

Значение из справочника «Виды обучений»

35.

Место работы

Название организации, в которой работает член ПХ

36.

Инвалидность

Значение из справочника «Группы инвалидности»

37.

Вид пенсии

Значение из справочника «Виды пенсии»

38.

Комментарии

Комментарии пользователя

39.

Дата актуальности

Дата изменения значения данной записи на текущее.


Обновить - используется для обновления отображаемых данных. Также для применения настроек фильтра записей блока;

Добавить - используется для добавления нового члена ПХ. В результате открывается диалоговое окно «Добавление записи», в котором пользователь заполняет поля соответствующими значениями.

Пользователю по умолчанию предлагаются следующие значения полей:

[Дата начала] ‒ системная дата на момент создания записи;

Поля, отмеченные знаком , обязательны для заполнения.

Рисунок 5.24 ‒ Диалоговое окно «Добавление записи»

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

Для корректной работы ИС предусмотрено, что член ПХ, записанный первым может быть исключен их ПХ только в случае его закрытия.

Записан первым - используется для установления в текущей записи признака «Записан первым». В результате, отметка в записи, соответствующей предыдущему главе хозяйства, снимается. Поле «Отношение к главе хозяйства» становится пустым для всех членов ПХ, кроме нового главы хозяйства. В строке записи с вновь установленным признаком «Записан первым» в поле «Отношение к главе хозяйства» устанавливается значение «записан первым»;

Печать - используется для формирования справок и выписок по данным ЛС. Пользователь выбирает из списка название требуемой печатной формы:

·  справка в отдел социальной защиты;

·        выписка из лицевого счета;

·        справка в нотариат о проживании;

·        справка в нотариат о наследстве.

Территориальные ресурсы

Рисунок 5.25 ‒ «Территориальные ресурсы»

Таблица 5.6

№ п/п

Наименование поля

Описание

1.

Номер

Порядковый номер участка в ПХ

2.

Кадастровый номер

Кадастровый номер земельного участка

3.

Адрес участка

Адрес земельного участка - код КЛАДР

4.

Площадь

Площадь земельного участка в кв. м.

5.

Категория земли

Значение из справочника «Категория земель» [Название]

6.

Вид участка

Название вида участка. Значение из справочника «Виды участков [Название]

7.

«Охраняемая зона»

Признак «Охраняемая зона». Установленная отметка означает, что данная территория является охраняемой или заповедной зоной.

8.

Сведения о правах собственности

Значение из справочника «Права собственности» [Название]

9.

Владелец

Значение из справочника «Члены подсобного хозяйства», где значение поля [Сведения о правах собственности] = «В собственности»

10.

Тип документа, подтверждающего факт собственности

Значение из справочника «Типы документов, подтверждающих факт собственности» [Название]

11.

Серия документа

Серия документа, подтверждающего факт собственности

12.

Номер документа

Номер документа, подтверждающего факт собственности

13.

Дата выдачи документа

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

14.

Дата начала действия документа

Дата начала действия документа

15.

Дата окончания действия документа

Дата окончания действия документа

16.

Дата актуальности

Дата изменения значения данной записи на текущее.


Обновить - используется для обновления отображаемых данных. Также для применения настроек фильтра записей блока;

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

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

ИС по умолчанию предлагаются следующие значения полей:

[Номер участка] - следующий номер участка для текущего лицевого счета;

Для участка под номером 1:

[Кадастровый номер], [Адрес участка], [Владелец] - в соответствии с данными из реквизитов лицевого счета.

Поля, отмеченные знаком , обязательны для заполнения.

Рисунок 5.26 ‒ Диалоговое окно «Добавление записи»

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

Печать - используется для формирования справок и выписок по данным ЛС. Пользователь выбирает из списка название требуемой печатной формы:

·  справка о наличии права собственности;

·        выписка о расположении земельного участка.

Посевные площади

Рисунок 5.27 ‒ Вкладка «Посевные площади»

№ п/п

Наименование поля

Описание

1.

Группа

Название группы записей: - посевные участки; - посевы и посадки; - многолетние насаждения

2.

Вид

Название вида в текущей группе: участка, посева или насаждения.

3.

Площадь

Площадь, учтенная в текущей группе: под участок, посевы или насаждения.

4.

Дата актуальности

Дата изменения значения данной записи на текущее.


Обновить - используется для обновления отображаемых данных. Также для применения настроек фильтра записей блока;

Добавить - используется для добавления записи о площади земельного участка, используемой под посевы и посадки, или о площади посевов, посадок и насаждений. В результате открывается диалоговое окно «Добавление записи», в котором пользователь заполняет поля соответствующими значениями: [Вид] - с помощью раскрывающегося списка справочных данных и [Площадь] - с помощью стрелок или клавиатуры. Поля, отмеченные знаком , обязательны для заполнения.

Рисунок 5.28 ‒ Диалоговое окно «Добавление записи»

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

Животные, птицы и пчелы.

Рисунок 5.29 ‒ Вкладка «Животные, птицы и пчелы»

Таблица 5.7

№ п/п

Наименование поля

Описание

1.

Вид животного или птицы

Название вида животного

2.

Группа животного или птицы

Название группы животного. Значение из справочника «Группы животных»

3.

Порода животного или птицы

Название породы животного. Значение из справочника «Породы животных»

4.

Количество (голов)

Количество голов животных данной группы, указанной породы (пчелосемей)

5.

Дополнительные сведения

Данные, не отраженные в таблице, которые следует зафиксировать

6.

Дата актуальности

Дата изменения значения данной записи на текущее.


Обновить - используется для обновления отображаемых данных. Также для применения настроек фильтра записей блока;

Добавить - используется для добавления записи о животном, птице или пчелах в ПХ. В результате открывается диалоговое окно, в котором пользователь заполняет поля соответствующими значениями: [Группа животных] - с помощью раскрывающегося списка справочных данных и [Количество] - с помощью стрелок или клавиатуры. Поля, отмеченные знаком , обязательны для заполнения.

Изменить - используется для редактирования записи о животном, птице или пчелах в ПХ.

Оборудование и транспорт.

Рисунок 5.30 ‒ Вкладка «Оборудование и транспорт

Таблица 5.8

№ п/п

Наименование поля

Описание

1.

Вид оборудования

Название вида оборудования. Значение из справочника «Виды оборудования»

2.

Количество (ед.)

Количество единиц техники данного вида в ПХ

3.

Дата приобретения

Дата приобретения данной единицы техники

4.

Год выпуска

Год выпуска данной единицы техники

5.

Дата актуальности

Дата изменения значения данной записи на текущее.


Обновить - используется для обновления отображаемых данных. Также для применения настроек фильтра записей блока;

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

Рисунок 5.31 ‒ Диалоговое окно «Добавление записи»

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

Рисунок 5.32 ‒ Вкладка «Здания»

Таблица 5.9

№ п/п

Наименование поля

Описание

1.

№ здания

Номер здания в пределах лицевого счета

2.

Адрес строения

Адрес здания или строения.

3.

Тип здания

Название типа здания. Значение из справочника «Типы зданий»

4.

Площадь здания (кв.м)

Площадь здания (его часть, принадлежащая ПХ)

5.

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

Количество комнат, принадлежащих ПХ

6.

Площадь жилых помещений

Площадь жилых помещений, принадлежащих ПХ

7.

Площадь нежилых помещений

Площадь нежилых помещений, принадлежащих ПХ

8.

Ветхое

Установленная отметка означает , что помещение признано ветхим

9.

Нежилое

Установленная отметка означает , что помещение признано нежилым

10.

Сведения о правах собственности

Значение из справочника «Права собственности» [Название]

11.

Владелец

Значение из справочника «Члены подсобного хозяйства», где значение поля [Сведения о правах собственности] = «В собственности»

12.

Доля

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

13.

Тип документа, подтверждающего факт собственности

Значение из справочника «Типы документов, подтверждающих факт собственности» [Название]

14.

Серия документа

Серия документа, подтверждающего факт собственности

15.

Номер документа

Номер документа, подтверждающего факт собственности

16.

Дата начала действия документа

Дата начала действия документа

17.

Дата окончания действия документа

Дата окончания действия документа

18.

Газовая установка

Установленная отметка означает наличие газовой установки

19.

Водопровод

Установленная отметка означает наличие водопровода

20.

Ванна/душ

Установленная отметка означает наличие ванны/душа

21.

Технический паспорт

Номер технического паспорта

22.

Год постройки

Год постройки здания

23.

Материал стен

Материал стен

24.

Материал кровли

25.

Дата актуальности

Дата изменения значения данной записи на текущее.

Обновить - используется для обновления отображаемых данных. Также для применения настроек фильтра записей блока;

Добавить - используется для добавления нового здания в ПХ. В результате открывается диалоговое окно «Добавление записи», в котором пользователь заполняет соответствующие значения полей с помощью соответствующих кнопок или с клавиатуры. Поля, отмеченные знаком , обязательны для заполнения.

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

Изменить - используется для редактирования данных о здании в ПХ. Печать - используется для формирования справок и выписок по данным ЛС. Пользователь выбирает из списка название требуемой печатной формы:

·  справка в БТИ;

·        справка в нотариат о регистрации;

·        справка о расположении дома.

Рисунок 5.33 ‒ Диалоговое окно «Добавление записи»

Администрирование

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

Пункт меню «Роли» позволяет открыть форму «Роли пользователей» для просмотра возможных ролей пользователей ИС.

Рисунок 5.34 ‒ Форма «Роли»

Пункт меню «Пользователи» позволяет открыть форму «Учетные записи пользователей» для добавления/изменения данных пользователей и определения их роли в ИС.

Рисунок 5.35 ‒ Форма «Пользователи»

Таблица 5.10

Наименование поля

Значение

Логин

Имя пользователя в ИС.

Фамилия

Фамилия пользователя

Имя

Имя пользователя

Отчество

Отчество пользователя

Роль

Роль пользователя в ИС

Орган местного самоуправления

Организация, в которой работает пользователь

Электронная почта

Адрес электронной почты

Телефон

Телефон пользователя


Добавить - используется для добавления нового пользователя в ИС и назначения ему определенной роли.

Рисунок 5.36 ‒ Диалоговое окно «Добавить запись»

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

Удалить - используется для удаления пользователя из ИС. В результате ИС запрашивает подтверждение удаления.

Настройки

C помощью пункта меню «Настройки» осуществляется общая настройка рабочего места ИС под конкретного пользователя. Пункт меню доступен пользователю ИС с ролью «Администратор».

Рисунок 5.37 ‒ Форма «Основные настройки»

Таблица 5.11

№ п/п

Наименование поля

Значение

1.

Код

Код настройки в таблице базы данных

2.

Значение

Текущее значение настройки

3.

Описание

Описание настройки

Обновить - используется для обновления отображаемых данных. Также для применения настроек фильтра записей окна;

Изменить - используется для изменения значений полей таблицы настроек. В результате появляется диалоговое окно «Изменение записи».

Рисунок 5.38 ‒ Диалоговое окно «Настройка»

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

Рисунок 5.39 ‒ Панель задач ИС

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

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

·        расположить окна рядом - используется для настройки расположения окон ИС для удобной работы пользователя. В результате все окна ИС, открытые на текущий момент будут расположены на экране рядом друг с другом;

·        расположить окна каскадом - используется для настройки расположения окон ИС для удобной работы пользователя. В результате все окна ИС, открытые на текущий момент будут расположены на экране одно под другим;

·        сбросить настройки всех таблиц - используется для возврата к стандартным настройкам отображения таблиц с данными в формах. В результате наэкран выводится окно предупреждения;

·        удалить неиспользуемые адреса КЛАДРа используется для удаления из базы данных ИС случайно сформированные пользователем и не используемые ИС адреса справочника КЛАДР. В результате на экран выводится информационное окно о количестве удаленных записей.

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

Журнал предназначен для просмотра информации о работе пользователей с ИС. Доступ к нему осуществляется с помощью пункта меню «Журналы».

Пункт меню доступен пользователю с ролью «Администратор».

Рисунок 5.40 ‒ Журнал активности пользователей

Таблица 5.12

№ п/п

Наименование поля

Значение

1.

Логин

Имя пользователя в ИС

2.

Пользователь

ФИО сотрудника муниципального образования, производившего данное действие

3.

Действие

Действие пользователя в ИС

4.

Комментарий

Краткое описание действия пользователя

5.

Дата

Дата и время произведенного действия в ИС


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

Очистить фильтр - используется для очистки полей фильтра от введенных ранее значений.

Уведомления о событиях

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

Рисунок 5.41 ‒ Форма «События»

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

Справочники и реестры

Работа с этой категорией справочников ИС осуществляется с помощью следующих функций:

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

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

·  <Сохранить> - выполняется создание новой записи справочника. При создании записи справочника выполняются следующие проверки введенных данных. Если нарушена уникальность введенных данных (запись с введенными значениями существует в справочнике), то пользователю выдается сообщение «Ошибка добавления. Нарушение уникальности. Дублирование записей». По кнопке <OK> информационное сообщение закрывается, и запись справочника не создается.

·        <Отмена> - диалоговое окно закрывается, и никакие действия не производятся.

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

Удалить - используется для удаления текущей записи справочника.

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

Очистить фильтр - используется для очистки полей фильтра от введенных ранее значений.

К примеру, на рисунке 62 представлена форма реестра жителей.

Рисунок 5.42 ‒ Форма «Реестр жителей».

5.3.4 Сообщения оператору

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

При вводе пользователя и пароля могут возникать ошибки следующего вида.

Рисунок 5.43 ‒ Сообщение: все поля должны быть заполнены.

Рисунок 5.44 ‒ Сообщение: неверное имя пользователя или пароль.

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

Рисунок 5.45 ‒ Сообщение: при принятии изменений все привязанные лицевые счета будут закрыты.

При исключении населенного пункта из похозяйственной книги:

Рисунок 5.46 ‒ Сообщение: при исключении населенного пункта все связанные с ним ЛС будут закрыты.

При включении, исключении из похозяйственной книги могут выводится ошибки следующего содержания, см. Рисунок 5.47, 5.48.

Рисунок 5.47 ‒ Сообщение: дата включения не может быть раньше даты начала действия ПК.

Рисунок 5.48 ‒ Сообщение: дата исключения не может быть раньше даты начала действия ПК или позже даты окончания.

.

Рисунок 5.49 ‒ Сообщение: дата исключения позже даты включения.

При закрытии книги может возникнуть следующая ошибка.

Рисунок 5.50 ‒ Сообщение: дата закрытия не может быть раньше даты открытия

Рис 5.51‒ Сообщение: дата закрытия не может быть раньше даты открытия лицевого счета.

Рисунок 5.52 ‒ Сообщение: обнаружена книга с таким же номероми пересекающимся периодом

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

Рисунок 5.52 ‒ Сообщение: изменения запрещены

При создании лицевого счета могут возникнуть ошибки следующего содержания.

Рисунок 5.53 ‒ Сообщение: лицевой счет существует в данной ПК

Рисунок 5.54 ‒ Сообщение: дата откытия/закрытия не входит в период действия ПК

Рассмотрим содержание лицевых счетов похозяйственной книги.

На вкладке «Члены ПХ» могут возникать следующие исключительные ситуации. См Рисунок 5.55 - 5.56.

Рисунок 5.55 ‒ Сообщение: обнаружены пробелы

Рисунок 5.56 ‒ Сообщение: адрес регистрации содержит ошибки

На вкладке «Территориальные ресурсы» могут возникать следующие исключительные ситуации. См. Рисунок 5.57.

Рисунок 5.57 ‒ Сообщение: кадастровый номер не соответствует адресу

На вкладке «Посевные площади», «Здания»

Рисунок 5.58 ‒ Сообщение: площадь не может быть меньше единицы

На вкладке «Здания».

Рисунок 5.58 ‒ Сообщение: кол-во этаже не может быть меньше единицы

На вкладке «Животные, пчелы, птицы».

Рисунок 5.59 ‒ Сообщение: кол-во животных не может быть меньше единицы

Рисунок 5.60 ‒ Сообщение: кол-во оборудования не может быть меньше единицы

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

Рисунок 5.61 ‒ Сообщение: нельзя в качестве патроната выбрать самого жителя

Рисунок 5.62 ‒ Сообщение: ошибка при ведении справочника

6. Тестирование


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

Таблица 6.1 - Список тестов для разработанной программы

Условия

Действие

Ожидаемый результат

1

Выход на страницу ресурса

Ввод URL для выхода на страницу ресурса

Открылась страница авторизации

2

Открыто окно авторизации

Ввести пользователя и неверный пароль

Получено сообщение о неправильной паре логин-пароль

3

Открыто окно авторизации

Ввести пользователя и неверный пароль

Текущее окно закрылось. Открылось главная страница программы. Набор команд меню соответствует роли пользователя.

4

Открыта главная страница программы

Выбор команды меню «Меню à Выход»

Программа завершила свою работу

5

Открыта главная страница программы

Выбор команды меню «МенюàПохозяйственные книги» или запуск ярлыка на рабочем столе

Открылся реестр похозяйственных книг

6

Открыта главная страница программы

Выбор команды меню «Меню àЛицевые счета» или запуск ярлыка на рабочем столе

Открылся реестр лицевых счетов

7

Открыта главная страница программы

Выбор команды меню «Меню àЖители» или запуск ярлыка на рабочем столе

Открылся реестр жителей

8

Открыта главная страница программы

Выбор команды меню «Меню àСправочники» или запуск ярлыка на рабочем столе

Открылся перечень справочников

9

Открыта главная страница программы

Выбор команды меню «Меню àОтчеты» или запуск ярлыка на рабочем столе

Открылся перечень отчетов

10

Открыта главная страница программы

Выбор команды меню «Отчеты à Отчет о наличии хозяйств, домов»

Составленный отчет отобразился на экране

11

Открыта главная страница программы

Выбор команды меню «Отчеты à Список проживающих больше года»

Составленный отчет отобразился на экране

12

Открыта главная страница программы

Выбор команды меню «Отчет à Журнал регистрации заявлений о выборе СМО»

Составленный отчет отобразился на экране

13

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

Сохранение отчета в различные текстовые и графические форматы

Сохранение прошло успешно

14

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

Отправление отчета на печать

Отчет успешно распечатан

15

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

Сохранение

Сохранение успешно

16

Реестр ПК

Обновление

Обновление произведено успешно

17

Реестр ПК

Добавление

Открылась форма добавления ПК

18

Открыта страница добавления ПК

Добавление записи о ПК дата окончания раньше даты начала

Вывод ошибочного сообщения

19

Открыта страница добавления ПК

Добавление записи о ПК

Успешное добавление

20

Открыта страница добавления ПК

Попытка выбрать заведомо неправильный орган местного самоуправление

При выборе органа местного самоуправления остаются только правильные

21

Открыта страница изменения ПК

Изменение записи о ПК

Успешное изменение

22

Реестр ПК

Закрытие ПК

Успешное закрытие

23

Реестр ПК

«Печать à Печатная форма ПК»

Составленный отчет отобразился на экране

24

Реестр ПК

«Населенные пункты»

Открылись населенные пункты

25

Реестр ПК

«Населенные пункты à Включить пункт в ПК»

Страница добавления населенных пунктов

26

Страница добавления населенных пунктов

Ввод заведомо неправильных дат

Вывод ошибочного сообщения

27

Страница добавления населенных пунктов

Ввод правильных дат

Успешное добавление

28

Страница исключения населенных пунктов

Ввод правильных данных

Успешное исключение

29

Населенные пункты

«Населенные пункты à Печать справки»

Составленный отчет отобразился на экране

30

Населенные пункты

«Населенные пункты à Дата актуальности применить»

Успешное применение фильтра

31

Открыто окно «Добавление нового застрахованного лица»

Ввод правильных данных. Нажать кнопку «Сохранить»

Действие успешно завершено. Окно закрылось.

32

Реестр ПК

Фильтрация данных

Применение фильтра успешно

33

Реестр ПК

Отмена фильтра

Отмена фильтра произошла успешно

34

Реестр ПК

Открытие реестра лицевых счетов ПК

Успешное открытие страницы реестра лицевых счетов ЛС

35

Реестр ЛС

Обновление реестра ЛС

Успешное обновление страницы реестра лицевых счетов ЛС

36

Реестр ЛС

Добавление записи ЛС

Успешное добавление

37

Реестр ЛС

Изменение записи ЛС

Успешное изменение

38

Реестр ЛС

Закрытие ЛС

Успешное закрытие

39

Реестр ЛС

Открытие содержания ЛС

Лицевой счет

40

Лицевой счет

Печать

Составленный отчет отобразился на экране

41

Лицевой счет

Обновление

Обновление страницы лицевого счета успешно

42

Лицевой счет

Сохранение

Сохранение страницы лицевого счета успешно

43

Лицевой счет

Применение/отмена фильтра

44

Содержание лицевого счета Члены ПХ

Обновление

Обновление страницы успешно

45

Содержание лицевого счета Члены ПХ

Добавление жителя в содержание лицевого счета

Страница добавления жителя

46

Страница добавления жителя

Выбор жителя из реестра Жителей

Добавления жителя успешно

47

Содержание лицевого счета Члены ПХ

Печать выписки из лицевого счета

Составленный отчет отобразился на экране

48

Содержание лицевого счета Члены ПХ

Закрытие страниц

Успешно

49

Реестр жителей

Обновление

Обновление страницы успешно

50

Реестр жителей

Добавление жителей

Страница добавления жителя

51

Страница добавления жителя реестра жителя

Ввод данных

При правильном вводе данных ошибок нет

52

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

При выборе патроната из списка самого себя

Ошибка редактирования

53

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

Редактирование данных

При правильном редактировании данных ошибок нет

54

Главная страница

Просмотр уведомлений

Ошибок не обнаружено

55

Главная страница. Учетные записи пользователей

Обновлеие

Обновление страницы успешно

56

Главная страница. Учетные записи пользователей

Добавление

Добавление учетной записи пользователя выполнено успешно

57

Главная страница. Учетные записи пользователей

Редактирование

Редактирование учетной записи пользователя выполнено успешно

58

Главная страница. Журнал пользователей

Просмотр

Просмотр журнала пользователей выполнен успешно

59

Главная страница. Роли.

Просмотр

Просмотр ролей выполнен успешно

60

Главная страница.

Расположение окон каскадом.

Правильное расположение окон.


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

ЗАКЛЮЧЕНИЕ


В ходе выполнения дипломного проектирования на языке C# в среде разработки Microsoft Visual Studio 2010 создано программное обеспечение для администраций муниципальных образований. Разработанное программное обеспечение призвано упростить и автоматизировать работу администраций муниципальных образований по хозяйственному учету населения.

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

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

ИС «Похозяйственная книга. WEB» обладает следующими преимуществами.

Единое информационное пространство:

·  хранение данных в единой БД под управлением современной СУБД;

·        единая система справочной информации;

·        возможность одновременного доступа участников к ИС.

Многопользовательская система

·  разграничение прав доступа пользователей к системе;

·        разграничение видимости данных пользователями системы;

·        контроль доступа к данным.

WEB - интерфейс

·  оперативный доступ участников к ИС независимо от местонахождения;

·        централизованное и единовременное обновление ИС;

·        отсутствие дополнительного ПО для установки ИС на компьютерах участников;

·        возможность доступа к информационной системе с мобильных устройств

Единообразие в оказании муниципальных услуг

·  единые формы справок и выписок из похозяйственных книг во всех муниципалитетах субъекта РФ, работающих с использованием данной ИС.

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

·  поддержка большего количества выходных отчетов;

·        поддержка импорта и экспорта различных форматов данных;

·        поддержка других баз данных;

·        возможность интеграции с любыми ИС, используемыми заказчиком.

·        возможность сопряжения с «Единым порталом государственных услуг РФ» и «Системой межведомственного электронного взаимодействия»

СПИСОК ЛИТЕРАТУРЫ

.            Скворцова Е.М. Похозяйственные книги сельсоветов 30-х годов ХХ в. // Социально-экономические и политические проблемы истории народов СССР. М., 1985.

2.      <#"701675.files/image081.gif">

ПРИЛОЖЕНИЕ Б. Листинг наиболее значимых частей программы


SK_USER.cs

Исходный код модели «Пользователя».

using System.ComponentModel.DataAnnotations;System.ComponentModel.DataAnnotations.Schema;System.Collections.Generic;Zacroma.Models.Spr

{class SK_USER

{

[Key]

[ScaffoldColumn(false)]long IdUser { get; set; }

[Required(ErrorMessage = "Поле \"Роль\" должно быть заполнено")]

[Display(Name = "Роль")]long IdRole { get; set; }

[NotMapped]

[Display(Name = "Роль")]string RoleName { get; set; }

[Required(ErrorMessage = "Поле \"Орган местного самоуправления\" должно быть заполнено")]

[Display(Name = "Орган местного самоуправления")]

public long IdLocalAuthority { get; set; }

[NotMapped]

[Display(Name = "Орган местного самоуправления")]

public string LocalAuthorityName { get; set; }

[Required(ErrorMessage = "Поле \"Фамилия\" должно быть заполнено")]

[Display(Name = "Фамилия")]

[MaxLength(100, ErrorMessage = "Количество символов в поле \"Фамилия\" не должно превышать 100")]

public string SurName { get; set; }

[Required(ErrorMessage = "Поле \"Имя\" должно быть заполнено")]

[Display(Name = "Имя")]

[MaxLength(100, ErrorMessage = "Количество символов в поле \"Имя\" не должно превышать 100")]

public string Name { get; set; }

[Required(ErrorMessage = "Поле \"Отчество\" должно быть заполнено")]

[Display(Name = "Отчество")]

[MaxLength(100, ErrorMessage = "Количество символов в поле \"Отчество\" не должно превышать 100")]

public string MiddleName { get; set; }

[Required(ErrorMessage = "Поле \"Логин\" должно быть заполнено")]

[Display(Name = "Логин")]

[MaxLength(50, ErrorMessage = "Количество символов в поле \"Логин\" не должно превышать 50")]

public string Login { get; set; }

[Display(Name = "Пароль")]

[MaxLength(50, ErrorMessage = "Количество символов в поле \"Пароль\" не должно превышать 50")]

public string Password { get; set; }

[Display(Name = "Эл. почта")]

[MaxLength(100, ErrorMessage = "Количество символов в поле \"Эл. почта\" не должно превышать 100")]

public string Email { get; set; }

[Display(Name = "Телефон")]

[MaxLength(100, ErrorMessage = "Количество символов в поле \"Телефон\" не должно превышать 100")]

public string Phone { get; set; }

[NotMapped]string FIO { get { return SurName + " " + Name + " " + MiddleName; } }

[NotMapped]string FIO1 { get { return SurName + " " + Name[0] + ". " + MiddleName[0] + "."; } }

[NotMapped]

[Required(ErrorMessage = "Поле \"Пароль\" должно быть заполнено")]

[Display(Name = "Пароль")]string PasswordString

{{ return string.IsNullOrEmpty(Password) ? "" : StringCrypt.Decrypt(Password); }{ Password = StringCrypt.Encrypt(value ?? ""); }

}

}

}

SK_USERs.cs

Исходный код модели «Пользователя».

using System;System.Collections.Generic;System.Data;System.Linq;Zacroma.Helpers;Zacroma.Models.Spr

{class SK_USERs

{ZacromaContext _context = new ZacromaContext();List<SK_USER> Users = new List<SK_USER>();

/// <summary>

/// Метод получающий список пользователей их роли, орган местного самоуправления

/// </summary>

/// <returns></returns>List<SK_USER> GetUsers()

{user = new UserInfo();

//Linq - запросresults = (users in _context.SK_USERroles in _context.CT_ROLE on users.IdRole equals roles.IdRolelocalAuthoritys in _context.CT_LOCAL_AUTHORITY on users.IdLocalAuthority equals localAuthoritys.IdLocalAuthority.IdLocalAuthority == user.LocalAutority.IdLocalAuthority.SurName, users.Name, users.MiddleNamenew

{,= roles.Name,= localAuthoritys.Name

}).ToList();= results.Select(x => FillData(x.users, x.roles, x.localAuthoritys)).ToList();

return Users;

}

/// <summary>

/// Метод возвращающий пользователей

/// </summary>

/// <param name="users"></param>

/// <param name="roles"></param>

/// <param name="localAuthoritys"></param>

/// <returns></returns>SK_USER FillData(SK_USER users, string roles, string localAuthoritys)

{.RoleName = roles;.LocalAuthorityName = localAuthoritys;

return users;

}

/// <summary>

/// Удаление пользователей

/// </summary>

/// <param name="users"></param>

/// <returns></returns>string DeleteUsers(IEnumerable<SK_USER> users)

{

{(var u in users)

{ob = _context.SK_USER.Find(u.IdUser);

_context.SK_USER.Remove(ob);

}

_context.SaveChanges();string.Empty;

}(Exception ex)

{ExceptionHelper.ProcessException(ex).Message;

}

}

/// <summary>

/// Редактирование пользователя

/// </summary>

/// <param name="user"></param>

/// <returns></returns>string EditUser(SK_USER user)

{

{

_context.Entry(user).State = EntityState.Modified;

_context.SaveChanges();string.Empty;

}(Exception ex)

{ExceptionHelper.ProcessException(ex).Message;

}

}

/// <summary>

/// Добавление пользователя

/// </summary>

/// <param name="user"></param>

/// <returns></returns>string AddUser(SK_USER user)

{

{

_context.SK_USER.Add(user);

_context.SaveChanges();string.Empty;

}(Exception ex)

{ExceptionHelper.ProcessException(ex).Message;

}

}

/// <summary>

/// Выбор пользователя

/// </summary>

/// <param name="idUser"></param>

/// <returns></returns>SK_USER SelectUser(long idUser)

{user = _context.SK_USER.Single(x => x.IdUser == idUser);user;

}

}

}.cs

Исходный код контроллера «Пользователя».System.Collections.Generic;System.Web.Mvc;Kendo.Mvc.Extensions;Kendo.Mvc.UI;Zacroma.Models.Spr;Zacroma.Controllers.Spr

{class UsersController : BaseController

{SK_USERs _model = new SK_USERs();ActionResult Users()

{PartialView();

}ActionResult GetUsers([DataSourceRequest] DataSourceRequest request)

{Json(_model.GetUsers().ToDataSourceResult(request));

}ActionResult GetUsersList()

{Json(_model.GetUsers(), JsonRequestBehavior.AllowGet);

}

[AcceptVerbs(HttpVerbs.Post)]ActionResult AddUser([DataSourceRequest] DataSourceRequest request, SK_USER user)

{(user != null && ModelState.IsValid)

{res = _model.AddUser(user);(!string.IsNullOrEmpty(res)).AddModelError("serverError", res);

}Json(new[] { user }.ToDataSourceResult(request, ModelState));

}

[AcceptVerbs(HttpVerbs.Post)]ActionResult EditUser([DataSourceRequest] DataSourceRequest request, SK_USER user)

{(user != null && ModelState.IsValid)

{res = _model.EditUser(user);(!string.IsNullOrEmpty(res)).AddModelError("serverError", res);

}Json(new[] { user }.ToDataSourceResult(request, ModelState));

}

[AcceptVerbs(HttpVerbs.Post)]ActionResult DeleteUsers(IEnumerable<SK_USER> users)

{res = _model.DeleteUsers(users);(!string.IsNullOrEmpty(res))

{.AddModelError("serverError", res);Json(new { success = false, response = res });

}Json(new { success = true });

}

}

}

Users.cshtml

Исходный код представления «Пользователя».

<script type="text/javascript">masterUsers = new Master();

</script>

@(Html.Kendo().Grid<Zacroma.Models.Spr.SK_USER>()

.Name("gridUsers")

.ToolBar(x =>

{.Template(@<text>

<a id="refreshUsers">

<span>Обновить</a>

<a id="addUsers">

<span>Добавить</a>

<a id="editUsers">

<span>Изменить</a>

<a id="deleteUsers">

<span>Удалить</a>

</text>);})

.Columns(columns =>

{.Bound(p => p.Login).Width(150);.Bound(p => p.SurName).Width(150);.Bound(p => p.Name).Width(150);.Bound(p => p.MiddleName).Width(150);.Bound(p => p.RoleName).Width(150);.Bound(p => p.LocalAuthorityName).Width(280);.Bound(p => p.Email).Width(200);.Bound(p => p.Phone);

})

.AutoBind(false)

.ColumnMenu()

.Sortable()

.Scrollable()

.Filterable()

.Events(x => x.Edit("masterUsers.onEdit").DataBound("masterUsers.dataBoundResizeGrid")

.ColumnHide("masterUsers.onColumnsStateChange").ColumnReorder("masterUsers.onColumnsStateChange")

.ColumnResize("masterUsers.onColumnsStateChange").ColumnShow("masterUsers.onColumnsStateChange"))

.Editable(x => x.Mode(GridEditMode.PopUp).TemplateName("User").Window(w => w.Width(315)).DisplayDeleteConfirmation(false))

.Selectable(x => x.Mode(GridSelectionMode.Multiple))

.Resizable(resize => resize.Columns(true))

.Reorderable(reorder => reorder.Columns(true))

.DataSource(dataSource => dataSource

.Ajax().ServerOperation(false)

.Events(events => events.Error("masterUsers.onError").RequestEnd("masterUsers.onRequestEnd"))

.Model(x => x.Id(y => y.IdUser))

.Read(x => x.Action("GetUsers", "Users"))

.Create(x => x.Action("AddUser", "Users"))

.Update(x => x.Action("EditUser", "Users"))

)

)

<script type="text/javascript">

$(document).ready(function () {kendoGrid = $("#gridUsers").data("kendoGrid");.init(

$("#gridUsers"),,

"Users/DeleteUsers");.resizeColumn(7, 150);.loadGridSettings();

$("#refreshUsers").click(masterUsers.refresh);

$("#editUsers").click(masterUsers.editGrid);

$("#deleteUsers").click(masterUsers.deleteGrid);.element.delegate("tbody>tr", "dblclick", function () {.editRow($(this));

});desktop = Ext.net.Desktop.desktop;win = desktop.windows.get("desktopUsersWindow");.addListener("resize", masterUsers.resizeGrid);

});

</script>

MT_SETTING.cs

Исходный код модели «Настроек».

using System.ComponentModel.DataAnnotations;Zacroma.Models.Settings

{class MT_SETTING

{

[Key]

[ScaffoldColumn(false)]long IdSetting { get; set; }

[Required(ErrorMessage = "Поле \"Описание\" должно быть заполнено")]

[Display(Name = "Описание")]

[MaxLength(250, ErrorMessage = "Количество символов в поле \"Описание\" не должно превышать 250")]

public string Description { get; set; }

[Required(ErrorMessage = "Поле \"Код\" должно быть заполнено")]

[Display(Name = "Код")]

[MaxLength(30, ErrorMessage = "Количество символов в поле \"Код\" не должно превышать 30")]

public string Code { get; set; }

[Required(ErrorMessage = "Поле \"Значение\" должно быть заполнено")]

[Display(Name = "Значение")]

[MaxLength(150, ErrorMessage = "Количество символов в поле \"Значение\" не должно превышать 150")]

public string Value { get; set; }

}

}

MT_SETTINGs.cs

Исходный код модели «Настроек».

using System;System.Collections.Generic;System.Data;System.Linq;Zacroma.Helpers;Zacroma.Models.Settings

{class MT_SETTINGs

{ZacromaContext _context = new ZacromaContext();List<MT_SETTING> Settings = new List<MT_SETTING>();IEnumerable<MT_SETTING> GetSettings()

{= _context.MT_SETTING.ToList();Settings;

}string EditSetting(MT_SETTING setting)

{

{

_context.Entry(setting).State = EntityState.Modified;

_context.SaveChanges();string.Empty;

}(Exception ex)

{ExceptionHelper.ProcessException(ex).Message;

}

}MT_SETTING SelectSetting(long idSetting)

{_context.MT_SETTING.Find(idSetting);

}

}

}

SettingsController.cs

Исходный код контроллера «Настроек».

using System.Collections.Generic;System.Web.Mvc;Kendo.Mvc.Extensions;Kendo.Mvc.UI;Zacroma.Models.Settings;Zacroma.Controllers.Spr

{class SettingsController : BaseController

{MT_SETTINGs _model = new MT_SETTINGs();ActionResult Settings()

{PartialView();

}ActionResult GetSettings([DataSourceRequest] DataSourceRequest request)

{Json(_model.GetSettings().ToDataSourceResult(request));

}

[AcceptVerbs(HttpVerbs.Post)]ActionResult EditSetting([DataSourceRequest] DataSourceRequest request, MT_SETTING setting)

{res = _model.EditSetting(setting);(!string.IsNullOrEmpty(res)).AddModelError("serverError", res);

}Json(new[] { setting }.ToDataSourceResult(request, ModelState));

}

}

}

Settings.cshtml

Исходный код представления «Настроек».

<script type="text/javascript">masterSettings = new Master();

</script>

@(Html.Kendo().Grid<Zacroma.Models.Settings.MT_SETTING>()

.Name("gridSettings")

.ToolBar(x =>

{.Template(@<text>

<a id="refreshSettings">Обновить</a>

<a id="editSetting">Изменить</a>

</text>);

})

.Columns(columns =>

{.Bound(p => p.Code).Title("Код").Width(200);.Bound(p => p.Value).Title("Значение").Width(300);.Bound(p => p.Description).Title("Описание");

})

.AutoBind(false)

.ColumnMenu()

.Sortable()

.Scrollable()

.Filterable()

.Selectable()

.Resizable(resize => resize.Columns(true))

.Reorderable(reorder => reorder.Columns(true))

.Events(x => x.Edit("masterSettings.onEdit").DataBound("masterSettings.dataBoundResizeGrid")

.ColumnHide("masterSettings.onColumnsStateChange").ColumnReorder("masterSettings.onColumnsStateChange")

.ColumnResize("masterSettings.onColumnsStateChange").ColumnShow("masterSettings.onColumnsStateChange"))

.Editable(x => x.Mode(GridEditMode.PopUp).TemplateName("Setting").DisplayDeleteConfirmation(false))

.DataSource(dataSource => dataSource

.Ajax().ServerOperation(false)

.Events(events => events.Error("masterSettings.onError")

.RequestEnd("masterSettings.onRequestEnd"))

.Model(x => x.Id(y => y.IdSetting))

.Read(x => x.Action("GetSettings", "Settings"))

.Update(x => x.Action("EditSetting", "Settings"))

)

)

<script type="text/javascript">

$(document).ready(function () {kendoGrid = $("#gridSettings").data("kendoGrid");.init($("#gridSettings"), kendoGrid, "Settings/DeleteSettings");.resizeColumn(2, 150);.loadGridSettings();

$("#refreshSettings").click(masterSettings.refresh);

$("#editSetting").click(masterSettings.editGrid);.element.delegate("tbody>tr", "dblclick", function () {.editRow($(this));

});desktop = Ext.net.Desktop.desktop;win = desktop.windows.get("desktopSettingsWindow");.addListener("resize", masterSettings.resizeGrid);

});

</script>

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

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!