Разработка АИС по принятию и обработке заявок

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

Разработка АИС по принятию и обработке заявок

Федеральное государственное бюджетное образовательноеучреждение высшего профессионального образования«Удмуртский государственный университет»

Кафедра «Теоретических основ информатики»

Специальность 080801.65 «Прикладная информатика (в экономике)»






ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА

На тему

Разработка АИС по принятию и обработке заявок



Работу выполнил В.П. Кычанов

студент группыЗС-351400-41 (к)

Научный руководитель

к.ф.-м.н., доцент М.А. Клочков




Ижевск 2012

Аннотация


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

Содержание


Введение

. Описание предметной области

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

. Анализ задачи

.1 Обзор существующих систем

.1.1 Службы поддержки (Service Desk)

.1.1.1 Naumen Service Desk

.1.1.2 TrackStudio Service Desk

.1.2 Службы помощи (Help Desk)

.1.2.1 HelpdeskAdvanced

.1.2.2 AstroSoft HelpDesk

.1.2.3 HEAT Power Desk

.1.3 Системы учета заявок

.1.3.1 Регистрация заявок LAN

.1.3.2 Заявки ИТ

.1.4 Вывод

.2 Выбор инструментальных средств

.2.1 Клиент-серверные СУБД

.2.1.1 Microsoft SQL Server

.2.1.2 Interbase

.2.1.3 Firebird (FirebirdSQL)

.2.1.4 MySQL

.2.2 Язык программирования и среда разработки

.2.3 Вывод

. Решение задачи

.1 Создание модели ИС

.2 Проектирование базы данных

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

.2.2 Даталогическая модель данных

.2.3 Физическая модель данных

.2.4 Построение схемы данных

.3 Разработка интерфейса

.3.1 Приложение «Заявки - Пользователь»

.3.1.1 Главное окно

.3.1.2 Окно «Настройки»

.3.1.3 Окно заявки

.3.1.4 Окно «Снимок экрана»

.3.2 Приложение «Заявки - Оператор»

.3.2.1 Главное окно

.3.2.2 Окно «Заявка»

.3.2.3 Окно настроек

.3.2.4 Окно «Снимок экрана»

.3.3 Приложение «Заявки - Исполнитель»

.3.3.1 Главное окно

.3.3.2 Окно «Настройки»

.3.3.3 Окно «Заявка»

.3.3.4 Окно «Снимок экрана»

.3.4 Приложение «Заявки - Настройка»

.3.4.1 Главное окно

.3.4.2 Окно «Инциденты»

.3.4.3 Окно «Исполнители»

.3.4.4 Окно «Настройка БД»

.3.4.5 Окно «Очистка БД за период»

.3.4.6 Окно «Очистка всей БД»

.3.4.7 Окно «Отчеты»

. Результаты испытаний

Заключение

Список источников

Приложение 1. Диаграмма «Деятельность отдела ИТ по принятию и обработке заявок»

Приложение 2. Примеры отчетов

Приложение 3. Коды программ

Введение


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

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

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

1. Описание предметной области


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

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

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

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

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

Рано или поздно обращения пользователей за помощью в ИТ-подразделение становятся нормой. Но при этом возникают новые трудности. Приняв решение обратиться за поддержкой в отдел ИТ, пользователь обычно оказывается перед проблемой: кому именно задать вопрос?

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

Можно спросить любого сотрудника отдела ИТ. Он, скорее всего, посоветует, к кому именно следует обратиться. Далее нужно спросить у рекомендованного. Цепочка может продолжаться и дальше. Пользователю действовать таким образом неудобно.

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

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

Службы поддержки пользователей обеспечивают:

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

Стандартный способ регистрации и выдачи заданий специалистам.

Контроль над последовательностью исполнения работ, потраченным временем и ресурсами.

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

Эскалация запросов и инцидентов, оповещение соответствующих администраторов.

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

Отчётность по затратам времени и средств на выполнение запросов.

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

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

Запросы на обслуживание (стандартные запросы на поддержку функционирования системы).

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

Запросы на изменение состояния системы - например, установку нового оборудования и программного обеспечения.

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

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


Этап 1

Проектирование базы данных (БД) системы учёта заявок в отдел информационных технологий:

. Проектирование инфологической модели БД.

. Проектирование даталогической модели БД.

. Построение физической модели БД.

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

Этап 2

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

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

. Оформление заявки в отдел ИТ (место заявителя).

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

А. Регистрировать заявки в БД

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

В. Отслеживать статус заявок

. Прием заявки в отделе ИТ (место оператора).

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

А. Отображать заявки, зарегистрированные в системе

Б. Назначать приоритет заявке

В. Назначать исполнителя заявки

Г. Иметь возможность открывать закрытые заявки

. Исполнение заявки в отделе ИТ (место исполнителя).

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

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

Б. Иметь возможность фильтровать заявки по приоритетности, типу инцидента

В. Формировать ответ на заявку

Г. Закрывать исполненные заявки

. Настройка ИС (место администратора ИС)

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

А. Инициализация системы (создать пустую БД заявок, зарегистрировать исполнителей)

Б. Регистрировать новых исполнителей

В. Добавлять новые типы инцидентов

Г. Формировать отчеты о работе системы

3. Анализ задачи

 

.1 Обзор существующих систем

 

.1.1 Службы поддержки (Service Desk)

 

.1.1.1 Naumen Service Desk


Поддержка ОС:

Кроссплатформенное ПО

Сайт программы:

<#"600071.files/image001.gif">

Рисунок 4.1. Инфологическая модель данных

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

 

Рисунок 4.2 Даталогическая модель данных

- соответствует сущности Исполнитель

Таблица 4.2

Таблица admins

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

Тип поля

Описание

id_users

Счетчик

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

admin

Текстовый (50)

Имя исполнителя


attach - соответствует сущности Данные заявки

Таблица 4.3

Таблица attach

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

Тип поля

Описание

id_ticket

Счетчик

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

image

Двоичные данные

Образ данных


comments - соответствует сущности Комментарий

Таблица 4.4

Таблица comments

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

Тип поля

Описание

id_ticket

Счетчик

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

dt_comments

Дата и время

Время комментария

comments

Текстовый

Комментарий


incident - соответствует сущности Тип инцидента

Таблица 4.5

Таблица incident

Наименование поляТип поляОписание



id_incident

Счетчик

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

name_incident

Текстовый (50)

Имя инцидента


priority - соответствует сущности Приоритет заявки

Таблица 4.6

Таблица priority

Наименование поляТип поляОписание



id_priority

Счетчик

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

name_priority

Текстовый (20)

Приоритет


status - соответствует сущности Статус заявки

Таблица 4.7

Таблица status

Наименование поляТип поляОписание



id_status

Счетчик

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

name_status

Текстовый (20)

Статус


ticket - соответствует сущности Заявка

Таблица 4.8

Таблица ticket

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

Тип поля

Описание

id_ticket

Счетчик

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

id_incident

Числовой

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

id_status

Числовой

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

id_priority

Числовой

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

id_users

Числовой

Идентификатор исполнителя

fio

Текстовый (50)

Системное имя заявителя

phone

Текстовый (20)

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

open_ticket

Дата и время

Время открытия

close_ticket

Дата и время

Время закрытия

work_time

Дата и время

Время выполнения

tabel

Числовой

Номер заявителя

pc_inv

Текстовый (50)

Имя ПК

room

Числовой

Номер кабинета

deleted

Логический

Удалена или нет

otklon

Логический

Отклонена или нет


4.2.3 Физическая модель данных

На рисунке 4.3. изображена физическая модель данных, разработанная в AllFusion ERwin Data Modeler r7.2.

Рисунок 4.3 Физическая модель данных

4.2.4 Построение схемы данных

На рисунке 4.4. приведен список таблиц, реализованных в Microsoft SQL Server 2008

Рисунок 4.4 Список таблиц БД

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

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

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

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

Рисунок 4.5 Схема данных

4.3 Разработка интерфейса

 

.3.1 Приложение «Заявки - Пользователь»

 

.3.1.1 Главное окно

Главное окно приложения «Заявки - Пользователь» изображено на рисунке 4.6. Позволяет создать заявку в отдел ИТ. Заполнение всех полей формы обязательно, за исключением снимка экрана. Имя пользователя и сетевое имя компьютера заполняются автоматически. Приложение отображает заявки созданные пользователем с компьютера, на котором запущено приложение. Количество отображаемых заявок изменяется в настройках. Для просмотра заявки необходимо выполнить двойной клик указателем мышь на заявке.

Рис 4.6 Главное окно приложения «Заявки - Пользователь»

 

.3.1.2 Окно «Настройки»

Окно «Настройки» приложения «Заявки - Пользователь» изображено на рисунке 4.7. Форма содержит поля для ввода имени сервера БД, имени БД, количества отображаемых заявок и интервал обновления списка заявок.

Рис. 4.7 Окно «Настройки» приложения «Заявки - Пользователь»

 

.3.1.3 Окно заявки

Окно «Заявка» в приложении «Заявки - Пользователь» изображено на рисунке 4.8. Для открытия окна заявки необходимо выполнить двойной клик указателем мышь по заявке в главном окне.

Рис. 4.8 Окно «Заявка» в приложении «Заявки - Пользователь»

 

.3.1.4 Окно «Снимок экрана»

Окно «Снимок экрана» в приложении «Заявки - Пользователь» изображено на рисунке 4.9.

Рис. 4.9 Окно «Снимок экрана» в приложении «Заявки - Пользователь»

 

.3.2 Приложение «Заявки - Оператор»

 

.3.2.1 Главное окно

Главное окно в приложении «Заявки - Оператор» изображено на рисунке 4.10. Дает пользователю информацию по заявкам, поступившим в систему, отображает закрытые (выполненные) заявки. Для открытия заявки и просмотра данных необходимо выполнить двойной клик указателем мышь на заявке.

Рис. 4.10 Главное окно в приложении «Заявки - Оператор»

При сворачивании окна приложение прячется в системный трей (рисунок 4.11).

Рисунок 4.11

При получении новой заявки на экран выводится всплывающее сообщение (рисунок 4.12.), если приложение свернуто, то оно выводится на экран.

Рисунок 4.12

4.3.2.2 Окно «Заявка»

Окно «Заявка» в приложении «Заявки - Оператор» изображено на рисунке 4.13. Отображает информацию для принятия решения о назначении исполнителя или отклонении заявки. Позволяет назначить исполнителя и указать приоритетность заявки.

Рис. 4.13 Окно «Заявка» в приложении «Заявки - Оператор»

 

.3.2.3 Окно настроек

Окно «Настройки» в приложении «Заявки - Оператор» изображено на рисунке 4.14. Форма содержит поля для ввода имени сервера БД, имени БД, времени обновления списка заявок.

Рис. 4.14 Окно «Настройки» в приложении «Заявки - Оператор»

4.3.2.4 Окно «Снимок экрана»

Окно «Снимок экрана» в приложении «Заявки - Оператор» изображено на рисунке 4.15.

Рис. 4.15 Окно «Снимок экрана» в приложении «Заявки - Оператор»

 

.3.3 Приложение «Заявки - Исполнитель»

 

.3.3.1 Главное окно

Главное окно в приложении «Заявки - Исполнитель» изображено на рисунке 4.16. Отображает списки заявок по приоритетности.

Рис. 4.16 Главное окно в приложении «Заявки - Исполнитель»

При сворачивании окна приложение прячется в системный трей (рисунок 4.17.).

Рисунок 4.17

При получении новой заявки на экран выводится всплывающее сообщение (рисунок 4.18.), если приложение свернуто, то оно выводится на экран.

Рисунок 4.18

4.3.3.2 Окно «Настройки»

Окно «Настройки» в приложении «Заявки - Исполнитель» изображено на рисунке 4.19. Форма содержит поля для ввода имени сервера БД, имени БД, времени обновления списка заявок.

Рис. 4.19 Окно «Настройки» в приложении «Заявки - Исполнитель»

 

.3.3.3. Окно «Заявка»

Окно «Заявка» в приложении «Заявки - Исполнитель» изображено на рисунке 4.20.

Рис. 4.20 Окно «Заявка» в приложении «Заявки - Исполнитель»

 

.3.3.4 Окно «Снимок экрана»

Окно «Снимок экрана» в приложении «Заявки - Исполнитель» изображено на рисунке 4.21.

Рис. 4.21 Окно «Снимок экрана» в приложении «Заявки - Исполнитель»

 

.3.4 Приложение «Заявки - Настройка»

 

.3.4.1 Главное окно

Главное окно в приложении «Заявки - Настройка» изображено на рисунке 4.22.

Рисунок 4.22 Главное окно в приложении «Заявки - Настройка»

 

.3.4.2 Окно «Инциденты»

Окно «Инциденты» в приложении «Заявки - Настройка» изображено на рисунке 4.23. Форма отображает информацию о типах инцидентов в системе и позволяет добавить новые типы инцидентов.

Рисунок 4.23 Окно «Инциденты» в приложении «Заявки - Настройка»

 

.3.4.3 Окно «Исполнители»

Окно «Исполнители» в приложении «Заявки - Настройка» изображено на рисунке 4.24. Форма отображает информацию об исполнителях и позволяет добавить в систему новых исполнителей.

Рисунок 4.24 Окно «Исполнители» в приложении «Заявки - Настройка»

 

.3.4.4 Окно «Настройка БД»

Окно «Настройка БД» в приложении «Заявки - Настройка» изображено на рисунке 4.25. Форма содержит поля для ввода имени сервера БД, имени БД.

Рисунок 4.25 Окно «Настройка БД» в приложении «Заявки - Настройка»

При начальной настройке системы для создания пустой базы данных необходимо в окне «Настройка БД» нажать кнопку «Создать базу данных». При успешном создании БД на экран выведется соответствующее сообщение.

 

.3.4.5 Окно «Очистка БД за период»

Окно «Очистка БД за период» в приложении «Заявки - Настройка» изображено на рисунке 4.26. Дает возможность удалить заявки из базы данных или установить статус «Удалена» за определенный период.

Рисунок 4.26 Окно «Очистка БД за период» в приложении «Заявки - Настройка»

 

.3.4.6 Окно «Очистка всей БД»

Окно «Очистка всей БД» в приложении «Заявки - Настройка» изображено на рисунке 4.27. Дает возможность удалить все заявки из базы данных или установить статус «Удалена».

Рисунок 4.27 Окно «Очистка всей БД» в приложении «Заявки - Настройка»

 

.3.4.7 Окно «Отчеты»

Окно «Отчеты» в приложении «Заявки - Настройка» изображено на рисунке 4.28. Дает возможность формировать отчеты по заявкам в системе, включая заявки со статусом «Удалена». Отчеты формируются в документы Microsoft Word. Примеры отчетов находятся в Приложении 2.

Рисунок 4.28. Окно «Отчеты» в приложении «Заявки - Настройка»

5. Результаты испытаний


Тестирование производилось под управлением операционной системы Microsoft Windows XP Professional Service Pack 3, Microsoft Windows 7 Professional Service Pack 1. В качестве СУБД выступал Microsoft SQL Server 2008 R2 Standard Edition. В качестве пакета приложений Microsoft Office, необходимого для формирования отчетов выступал Microsoft Office 2007. В ходе тестирования были проверены все функции системы. Ошибок выявлено не было.

Заключение


В ходе выполнения работы:

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

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

Поставленная задача выполнена полностью.

Список источников


1. <#"600071.files/image030.gif">

Рисунок П 1.1 Контекстная диаграмма «Деятельность отдела ИТ по принятию и обработке заявок»

Рисунок П 1.3 Диаграмма декомпозиции «Принять заявку»

Рисунок П1.4. Диаграмма декомпозиции «Рассмотрение заявки»

Рисунок П 1.5 Диаграмма декомпозиции «Управление»

Приложение 2

 

Отчет о невыполненных заявках - 14.06.2012 4:04:24

Номер

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

Инцидент

Текст заявки

1

1831-00-325

Отсутствуют сетевые диски

Нет диска G

3

1831-00-478

Проблема с принтером

Печатает с полосой

5

1831-00-784

Создание нового рабочего места

Новое место

6

1831-00-045

Проблема с принтером

Не печатает

7

1831-00-657

Не открывается файл

G:\obmen\вася.txt

8

1831-00-465

Проблема с электронной почтой

Много спама

9

1831-00-479

Телефония

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

11

1831-00-478

Проблема с компьютером

Не загружается windows

13

1831-00-657

Перемещение техники

Переключить принтер

14

1831-00-479

Другое

Не могу подписать файл

15

1831-00-112

Проблема с электронной почтой

Проблемная почта

Всего заявок - 12

Всего типов инцидентов - 9

Всего пользователей - 9

Отчет о выполненных заявках - 14.06.2012 4:08:00 за период - с 07.06.2012 20:06:47 по 14.06.2012 0:00:00

Номер

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

Инцидент

2

1831-00-112

Проблема с компьютером

4

1831-00-953

Проблема с интернетом

10

user

Отсутствуют сетевые диски

12

user

Проблема с сетью

16

1831-00-045

Отсутствуют сетевые диски

Всего заявок - 5

Всего типов инцидентов - 4

Всего пользователей - 4

Отчет о заявках по исполнителям - 14.06.2012 4:10:57 за период - с 07.06.2012 20:06:47 по 14.06.2012 0:00:00

Кычанов В.П.

31831-00-478 Проблема с принтером

-00-045 Проблема с принтером

-00-479 Телефония

-00-478 Проблема с компьютером

-00-657 Перемещение техники

Миронов В.В.

11831-00-325 Отсутствуют сетевые диски

-00-784 Создание нового рабочего места

-00-657 Не открывается файл

-00-479 Другое

Тестовый

21831-00-112 Проблема с компьютером

-00-953 Проблема с интернетом

-00-465 Проблема с электронной почтой

user Отсутствуют сетевые диски

user Проблема с сетью

-00-112 Проблема с электронной почтой

-00-045 Отсутствуют сетевые диски

Отчет об отклоненных заявках - 14.06.2012 4:12:15 за период - с 07.06.2012 20:06:47 по 14.06.2012 0:00:00

Номер

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

Инцидент

Текст заявки

17

Не назначен

Проблема с компьютером

Не включается

Всего заявок - 1

Всего типов инцидентов - 1

Всего пользователей - 1

Приложение 3. Коды программ


«Заявки - Пользователь»

Class Form1server As StringStartDate As String = "19811121 00:00:00"time As String = "00:00:00"PC As String = My.Computer.NameUSR As String = Split(My.User.Name, "\")(1)img_path As String = .Computer.FileSystem.SpecialDirectories.Tempsrv As String = Split(GetSettings(), "%")(0)it_db As String = Split(GetSettings(), "%")(1)refr_time As String = Split(GetSettings(), "%")(2)ticket_count As String = Split(GetSettings(), "%")(3)

Sub Form1_Load(ByVal sender As System.Object, ByVal e As .EventArgs) Handles MyBase.Load.MaximizeBox = False.Interval = CInt(refr_time) * 1000_user.Text = USR_pc.Text = PCsrv <> "1" And it_db <> "1" ThenTestConnect(srv, "master") ThenTestConnect(srv, it_db) Then()("Не найдена база данных. Обратитесь к администратору за

именем базы данных", MsgBoxStyle.Information, "Информация")result As MsgBoxResult = MsgBox("Изменить базу данных?", .OkCancel, "Информация")result = MsgBoxResult.Ok Then.Visible = True.Enabled = FalseIfIf("Не правильные настройки. SQL Server не найден", .Information, "Информация")result As MsgBoxResult = MsgBox("Выполнить настройку?", .OkCancel, "Сообщение")result = MsgBoxResult.Ok Then.Visible = True.Enabled = FalseIfIfresult As MsgBoxResult = MsgBox("Программа не настроена.

Настроить?", MsgBoxStyle.OkCancel, "Сообщение")result = MsgBoxResult.Ok Then.Visible = True.Enabled = FalseIfIfSub

Sub picbox_screen_Click(ByVal sender As System.Object, ByVal e System.EventArgs) Handles picbox_screen.Click()Sub

Sub button_create_Click(ByVal sender As System.Object, ByVal e System.EventArgs) Handles button_create.Clicksrv <> "1" And it_db <> "1" ThenTestConnect(srv, it_db) Thencon_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter1 As New SqlClient.SqlDataAdapterDataSet1 As New DataSetSqlConnection1 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand1 As New SqlClient.SqlCommandtbox_room.Text = "" Then_room.BackColor = Color.RedIftbox_phone.Text = "" Then_phone.BackColor = Color.RedIf(cbox_priority.SelectedIndex = -1) Or (cbox_priority.Text = "") Or _

(cbox_priority.SelectedItem <> cbox_priority.Text) Then_priority.BackColor = Color.RedIf(cbox_type.SelectedIndex = -1) Or (cbox_type.Text = "") Or _

(cbox_type.SelectedItem <> cbox_type.Text) Then_type.BackColor = Color.RedIftbox_ticket.Text = "" Then_ticket.BackColor = Color.RedIf(tbox_room.Text <> "") And (tbox_phone.Text <> "") And

(tbox_ticket.Text <> "") And _

(cbox_priority.SelectedIndex > -1) And (cbox_priority.SelectedItem = _priority.Text) And _

(cbox_type.SelectedIndex > -1) And (cbox_type.SelectedItem = _type.Text) Thendn As String = GetDateNowString()cmd As String = _

"INSERT INTO [ticket] " & _

"([fio],[phone],[id_incident],[id_priority]," & _

"[id_status],[id_users],[open_ticket],[close_ticket]," & _

"[work_time],[tabel],[pc_inv],[room],[deleted],[otklon]) " & _

"VALUES ('" & __user.Text & "','" & __phone.Text & "'," & _(cbox_type.SelectedIndex + 1) & "," & _(cbox_priority.SelectedIndex + 1) & "," & _

"1" & "," & _

"-1" & "," & _

"CONVERT(datetime,'" & dn & "',12)" & "," & _

"CONVERT(datetime,'" & StartDate & "',12)" & "," & _

"CONVERT(time,'" & time & "',12)" & "," & _

"1" & ",'" & tbox_pc.Text & "','" & tbox_room.Text & "','0','0')".CommandText = cmd.InsertCommand = SqlCommand1.InsertCommand.Connection = SqlConnection1.InsertCommand.Connection.Open().InsertCommand.ExecuteNonQuery().InsertCommand.Connection.Close()l_id As Integer = GetLastID()(l_id, "----Пользователь----" & vbCrLf & _ticket.Text.ToString, dn)attach As String = img_path & "\img_zayavka_" & CStr(l_id) & ".jpg"_screen.Image.Save(attach, .Drawing.Imaging.ImageFormat.Jpeg)ex As Exception_screen.ErrorImage.Save(attach, .Drawing.Imaging.ImageFormat.Jpeg)Try(l_id, attach).Computer.FileSystem.DeleteFile(attach)()("Заявка создана", MsgBoxStyle.Information, "Сообщение")Not CheckBox1.Checked Then(srv, it_db)If

IfIf_screen.Image = picbox_screen.ErrorImage_screen.Refresh()ex As ExceptionTryresult As MsgBoxResult = MsgBox("Программа не настроена.

Настроить?", MsgBoxStyle.OkCancel, "Сообщение")result = MsgBoxResult.Ok Then.Visible = True.Enabled = FalseIfIfSub

Sub tbox_room_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles tbox_room.Click_room.BackColor = Color.WhiteSub

Sub cbox_priority_Click(ByVal sender As System.Object, ByVal e System.EventArgs) Handles cbox_priority.Click_priority.BackColor = Color.WhiteSub

Sub tbox_phone_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles tbox_phone.Click_phone.BackColor = Color.WhiteSub

Sub cbox_type_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles cbox_type.Click_type.BackColor = Color.WhiteSub

Sub tbox_ticket_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles tbox_ticket.Click_ticket.BackColor = Color.WhiteSub

Function GetDateNowString() As Stringsd, sm, sy, sh, sn, ss As Stringdn As Date = DateAndTime.NowDateAndTime.Hour(dn) < 10 Then= "0" + DateAndTime.Hour(dn).ToString= DateAndTime.Hour(dn).ToStringIfDateAndTime.Minute(dn) < 10 Then= "0" + DateAndTime.Minute(dn).ToString= DateAndTime.Minute(dn).ToStringIfDateAndTime.Second(dn) < 10 Then= "0" + DateAndTime.Second(dn).ToString= DateAndTime.Second(dn).ToStringIf= DateAndTime.Year(dn).ToStringDateAndTime.Month(dn) < 10 Then= "0" + DateAndTime.Month(dn).ToString= DateAndTime.Month(dn).ToStringIfDateAndTime.Day(dn) < 10 Then= "0" + DateAndTime.Day(dn).ToString= DateAndTime.Day(dn).ToStringIf= sy & sm & sd & " " & sh & ":" & sn & ":" & ssFunction

Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As .EventArgs) Handles Timer1.Ticksrv <> "1" And it_db <> "1" ThenTestConnect(srv, it_db) Then(srv, it_db)IfIfSub

Sub FillDataGridView(ByVal server As String, ByVal DBN As )SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetcon_string As String = "Data Source=" & server & ";Initial Catalog="

& DBN & ";Integrated Security=True"SqlConnection2 As New SqlClient.SqlConnectionc_row, c_col As Integercmd As String = "SELECT TOP " & ticket_count & " [id_ticket]" & _

",[id_status]" & _

",[id_users]" & _

",[open_ticket]" & _

",[close_ticket]" & _

",[id_incident]" & _

"FROM [ticket] where fio like '" & USR & "' and PC_inv like '" & _& "' and deleted = 0 and otklon = 0 ORDER BY [ID_ticket] DESC".ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)_row = DataSet2.Tables.Item(0).Rows.Count_col = DataSet2.Tables.Item(0).Columns.Countc_row > 0 Then.RowCount = c_row.ColumnCount = c_col.Columns.Item(0).HeaderText = "Номер заявки".Columns.Item(1).HeaderText = "Статус заявки".Columns.Item(2).HeaderText = "Исполнитель".Columns.Item(3).HeaderText = "Открыта".Columns.Item(4).HeaderText = "Закрыта".Columns.Item(5).HeaderText = "Тип инцидента"i = 1 To c_rowj = 1 To c_colj = 2 Then.Item(j - 1, i - 1).Value = (DataSet2.Tables.Item(0).Rows.Item(i - 1).Item(j - 1))j = 3 Then.Item(j - 1, i - 1).Value = (DataSet2.Tables.Item(0).Rows.Item(i - 1).Item(j - 1))j = 5 ThenDataSet2.Tables.Item(0).Rows.Item(i - 1).Item(j - 1).ToString =

"21.11.1981 0:00:00" Then.Item(j - 1, i - 1).Value = "Не закрыта".Item(j - 1, i - 1).Value = .Tables.Item(0).Rows.Item(i - 1).Item(j - 1).ToStringIfj = 6 Then.Item(j - 1, i - 1).Value = (DataSet2.Tables.Item(0).Rows.Item(i - 1).Item(j - 1)).Item(j - 1, i - 1).Value = .Tables.Item(0).Rows.Item(i - 1).Item(j - 1).ToStringIfIfIfIfIf.SelectCommand.Connection.Close()ex As ExceptionTrySub

Sub clearText()_room.Text = ""_pc.Text = PC_pc.ReadOnly = True_user.Text = USR_user.ReadOnly = True.Checked = False_phone.Text = ""_ticket.Text = ""_priority.Text = ""_type.Text = ""Sub

Function GetStatus(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [name_status]" & _

"FROM [status] where id_status = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Function GetAdmin(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [admin]" & _

"FROM [admins] where id_users = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Function GetIncident(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [name_incident]" & _

"FROM [incident] where id_incident = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Function GetComment(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [comments]" & _

"FROM [comments] where id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Function GetLastID() As Integercon_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "select MAX(id_ticket) as id_ticket from ticket " & _

"where fio like '" & tbox_user.Text & "' and " & _

"pc_inv like '" & tbox_pc.Text & "'".ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Sub FillComment(ByVal id As Integer, ByVal comment As String, dn As String)con_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter1 As New SqlClient.SqlDataAdapterDataSet1 As New DataSetSqlConnection1 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand1 As New SqlClient.SqlCommandcmd As String = _

"INSERT INTO [comments]" & _

"([id_ticket]" & _

",[dt_comments]" & _

",[comments])" & _

"VALUES" & _

"(" & CStr(id) & ",CONVERT(datetime,'" & dn & "'),'" & comment & "')"_ticket.Text = cmd.CommandText = cmd.InsertCommand = SqlCommand1.InsertCommand.Connection = SqlConnection1.InsertCommand.Connection.Open().InsertCommand.ExecuteNonQuery().InsertCommand.Connection.Close()Sub

Sub FillAttach(ByVal id As Integer, ByVal attach As String)con_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter1 As New SqlClient.SqlDataAdapterDataSet1 As New DataSetSqlConnection1 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand1 As New SqlClient.SqlCommandcmd As String = _

"INSERT INTO [attach] (" & _

"[id_ticket],[image]) " & _

"VALUES (" & id & ",0x0)".CommandText = cmd.InsertCommand = SqlCommand1.InsertCommand.Connection = SqlConnection1.InsertCommand.Connection.Open().InsertCommand.ExecuteNonQuery().InsertCommand.Connection.Close()SqlBlob(attach, id)Sub

Sub File2SqlBlob(ByVal SourceFilePath As String, ByVal id As )con_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"cn As New SqlClient.SqlConnection(con_string)cmd As New SqlClient.SqlCommand("UPDATE attach SET =@Image WHERE id_ticket=" & CStr(id), cn)fs As New System.IO.FileStream(SourceFilePath, IO.FileMode.Open, .FileAccess.Read)b(fs.Length() - 1) As Byte.Read(b, 0, b.Length).Close()P As New SqlClient.SqlParameter("@Image", SqlDbType.Image, .Length, ParameterDirection.Input, False, 0, 0, Nothing, .Current, b).Parameters.Add(P).Open().ExecuteNonQuery().Close()Sub

Sub SqlBlob2File(ByVal DestFilePath As String, ByVal id As )con_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"PictureCol As Integer = 0cn As New SqlClient.SqlConnection(con_string)cmd As New SqlClient.SqlCommand("SELECT image FROM attach id_ticket=" & CStr(id), cn).Open()dr As SqlClient.SqlDataReader = cmd.ExecuteReader().Read()b(dr.GetBytes(PictureCol, 0, Nothing, 0, Integer.MaxValue) - 1) As .GetBytes(PictureCol, 0, b, 0, b.Length).Close().Close()fs As New System.IO.FileStream(DestFilePath, IO.FileMode.Create, .FileAccess.Write).Write(b, 0, b.Length).Close()Sub

Sub GetPrintSceen().Hide().Thread.Sleep(1000)bmpScreenShot As BitmapgfxScreenshot As Graphics= New Bitmap(Screen.PrimaryScreen.Bounds.Width, .PrimaryScreen.Bounds.Height, .PixelFormat.Format32bppArgb)= Graphics.FromImage(bmpScreenShot).CopyFromScreen(Screen.PrimaryScreen.Bounds.X, .PrimaryScreen.Bounds.Y, 0, 0, Screen.PrimaryScreen.Bounds.Size, .SourceCopy)_screen.Image = bmpScreenShot.Show()Sub

Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) LinkLabel1.LinkClicked.Visible = True.Activate()Sub

TestConnect(ByVal server As String, ByVal DBN As String) As con_string As String = "Data Source=" & server & ";Initial Catalog="

& DBN & ";Integrated Security=True"result As String = ""cn As New SqlClient.SqlConnection(con_string).Open().Close()ex As Exception= ex.MessageTryresult = "" Then= True= FalseIfFunction

FillForm()con_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"(srv, it_db)SqlAdapter1 As New SqlClient.SqlDataAdapterDataSet1 As New DataSetSqlConnection1 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand1 As New SqlClient.SqlCommand.CommandText = "select * from incident".SelectCommand = SqlCommand1.SelectCommand.Connection = SqlConnection1c_row As Integer.SelectCommand.Connection.Open().Fill(DataSet1)_row = DataSet1.Tables.Item(0).Rows.Count_type.Items.Clear()i = 1 To c_row_type.Items.Add(DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(1)).SelectCommand.Connection.Close()ex As Exception

Try

SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = "select * from priority".SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)_row = DataSet2.Tables.Item(0).Rows.Count_priority.Items.Clear()i = 1 To c_row_priority.Items.Add(DataSet2.Tables.Item(0).Rows.Item(i - 1).Item(1)).SelectCommand.Connection.Close()ex As Exception

Try

'GetPrintSceen()Sub

GetSettings() As Strings As String = "1%1%30%10"r As ObjectMy.Computer.FileSystem.FileExists(My.Application.Info.DirectoryPath

& "\settings.ini") Then= .Computer.FileSystem.OpenTextFileReader(My.Application.Info.Direct& "\settings.ini")= r.ReadLine.Close()s = "" Then s = "1%1%30%10"If= sFunction

Sub Form1_FormClosed(ByVal sender As System.Object, ByVal e System.Windows.Forms.FormClosedEventArgs) Handles .FormClosedwr As ObjectMy.Computer.FileSystem.FileExists(My.Application.Info.DirectoryPath

& "\settings.ini") Then.Computer.FileSystem.DeleteFile(My.Application.Info.DirectoryPath &

"\settings.ini")If= .Computer.FileSystem.OpenTextFileWriter(My.Application.Info.Directo& "\settings.ini", False).WriteLine(srv & "%" & it_db & "%" & refr_time & "%" & ticket_count).Close()Sub

Sub DataGridView1_CellDoubleClick(ByVal sender As .Object, ByVal e As .Windows.Forms.DataGridViewCellEventArgs) Handles .CellDoubleClickcur_row As Integer = DataGridView1.CurrentRow.Indexcur_id_value As Integer = DataGridView1.Item(0, cur_row).Valuecur_inc_value As String = DataGridView1.Item(5, cur_row).Value(cur_id_value, cur_inc_value)Sub

OpenTicket(ByVal id As Integer, ByVal id_inc As String).Visible = True.Activate().l_id.Text = "Заявка №" & CStr(id).l_incident.Text = "Тип инцидента - " & id_inc.tbox_ticket.Text = GetComment(id)SubSub CheckBox1_CheckedChanged(ByVal sender As System.Object, e As System.EventArgs) Handles CheckBox1.CheckedChangedCheckBox1.Checked Then_pc.Text = ""_pc.ReadOnly = False_user.ReadOnly = False_pc.Text = PC_user.Text = USR_pc.ReadOnly = True_user.ReadOnly = TrueIfSubClass

Public Class Form2

Sub Button2_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles Button2.Click(tbox_server.Text = "") Then_server.BackColor = Color.Redtbox_DB.Text = "" Then tbox_DB.BackColor = Color.Redtbox_DB.Text = "" Then_DB.BackColor = Color.RedForm1.TestConnect(tbox_server.Text, tbox_DB.Text) Thentbox_refresh_t.Text = "" Then tbox_refresh_t.Text = "30"(tbox_server.Text, tbox_DB.Text, tbox_refresh_t.Text, _count_tick.Text).Close().FillForm()result As MsgBoxResult = MsgBox("Не правильные настройки!

Повторить?", MsgBoxStyle.OkCancel, "Информация")result = MsgBoxResult.Ok Then_server.BackColor = Color.Red_DB.BackColor = Color.RedIfIfIfIfSub

Sub Form2_FormClosed(ByVal sender As System.Object, ByVal e System.Windows.Forms.FormClosedEventArgs) Handles .FormClosed.Enabled = TrueSub

Sub SaveSettings(ByVal server As String, ByVal DBN As String, refr_tm As String, ByVal c_tick As String).srv = server.it_db = DBN.refr_time = refr_tm.ticket_count = c_tickSub

Sub tbox_server_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles tbox_server.Click_server.BackColor = Color.WhiteSub

Sub tbox_DB_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles tbox_DB.Click_DB.BackColor = Color.WhiteSub

Sub Form2_Load(ByVal sender As System.Object, ByVal e As .EventArgs) Handles MyBase.Load_server.Text = Form1.srv_DB.Text = Form1.it_db_refresh_t.Text = Form1.refr_time_count_tick.Text = Form1.ticket_countSub

Sub Button1_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles Button1.ClickForm1.TestConnect(tbox_server.Text, tbox_DB.Text) Then("Соединение успешно установлено", MsgBoxStyle.Information,

"Сообщение")("Неправильные настройки", MsgBoxStyle.Information,

"Сообщение")IfSubClass

Class Form3

Private Sub Form3_FormClosed(ByVal sender As System.Object, ByVal e System.Windows.Forms.FormClosedEventArgs) Handles .FormClosed.Enabled = TrueSubClass

«Заявки - Оператор»

Public Class Form1server As StringStartDate As String = "19811121 00:00:00"PC As String = My.Computer.NameUSR As String = Split(My.User.Name, "\")(1)img_path As String = .Computer.FileSystem.SpecialDirectories.Temptmp1 As Stringsrv As String = Split(GetSettings(), "%")(0)it_db As String = Split(GetSettings(), "%")(1)refr_time As String = Split(GetSettings(), "%")(2)ticket_count As String = Split(GetSettings(), "%")(3)c1, c2 As Integer

Sub Form1_Load(ByVal sender As System.Object, ByVal e As .EventArgs) Handles MyBase.Load.ForeColor = Me.BackColor.MaximizeBox = False.Interval = CInt(refr_time) * 1000srv <> "1" And it_db <> "1" ThenTestConnect(srv, "master") ThenTestConnect(srv, it_db) Then()= DataGridView1.RowCount= DataGridView2.RowCount("Не найдена база данных. Обратитесь к администратору за

именем базы данных", MsgBoxStyle.Information, "Информация")result As MsgBoxResult = MsgBox("Изменить базу данных?", .OkCancel, "Информация")result = MsgBoxResult.Ok Then.Visible = True.Enabled = FalseIfIf("Не правильные настройки. SQL Server не найден", .Information, "Информация")result As MsgBoxResult = MsgBox("Выполнить настройку?", .OkCancel, "Сообщение")result = MsgBoxResult.Ok Then.Visible = True.Enabled = FalseIfIfresult As MsgBoxResult = MsgBox("Программа не настроена.

Настроить?", MsgBoxStyle.OkCancel, "Сообщение")result = MsgBoxResult.Ok Then.Visible = True.Activate().Enabled = FalseIfIfSub

FillForm()(srv, it_db, DataGridView1, "1").TabPages.Item(0).Text = "Поступившие (" & (DataGridView1.RowCount) & ")"(srv, it_db, DataGridView2, "5").TabPages.Item(1).Text = "Закрытые (" & (DataGridView2.RowCount) & ")"Sub

GetSettings() As Strings As String = "1%1%30%10"r As ObjectMy.Computer.FileSystem.FileExists(My.Application.Info.DirectoryPath

& "\settings.ini") Then= .Computer.FileSystem.OpenTextFileReader(My.Application.Info.Direct& "\settings.ini")= r.ReadLine.Close()s = "" Then s = "1%1%30%10"If= sFunction

TestConnect(ByVal server As String, ByVal DBN As String) As con_string As String = "Data Source=" & server & ";Initial Catalog="

& DBN & ";Integrated Security=True"result As String = ""cn As New SqlClient.SqlConnection(con_string).Open().Close()ex As Exception= ex.MessageTryresult = "" Then= True= FalseIfFunction

Sub SqlBlob2File(ByVal DestFilePath As String, ByVal id As )con_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"PictureCol As Integer = 0cn As New SqlClient.SqlConnection(con_string)cmd As New SqlClient.SqlCommand("SELECT image FROM attach id_ticket=" & CStr(id), cn).Open()dr As SqlClient.SqlDataReader = cmd.ExecuteReader().Read()b(dr.GetBytes(PictureCol, 0, Nothing, 0, Integer.MaxValue) - 1) As .GetBytes(PictureCol, 0, b, 0, b.Length).Close().Close()fs As New System.IO.FileStream(DestFilePath, IO.FileMode.Create, .FileAccess.Write).Write(b, 0, b.Length).Close()Sub

Function GetComment(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [comments]" & _

"FROM [comments] where id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Function GetIncident(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [name_incident]" & _

"FROM [incident] where id_incident = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

база данный информационный заявка

Private Function GetStatus(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [name_status]" & _

"FROM [status] where id_status = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Function GetUsersID(ByVal admin As String) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & _db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [id_users]" & _

"FROM [admins] where [admin] like '" & CStr(admin) & "'".ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= CStr(DataSet2.Tables.Item(0).Rows.Item(0).Item(0)).SelectCommand.Connection.Close()Function

FillDataGridView(ByVal server As String, ByVal DBN As String, DGV As DataGridView, ByVal status As String)SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetcon_string As String = "Data Source=" & server & ";Initial Catalog="

& DBN & ";Integrated Security=True"SqlConnection2 As New SqlClient.SqlConnectionc_row, c_col As Integercmd As String = "SELECT [id_ticket]" & _

",[fio]" & _

",[phone]" & _

",[pc_inv]" & _

",[room]" & _

",[open_ticket]" & _

",[id_incident]" & _

"FROM [ticket] WHERE [deleted] = 0 and [otklon] = 0 and [id_status] = "

& status.ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Close().SelectCommand.Connection.Open().Fill(DataSet2)_row = DataSet2.Tables.Item(0).Rows.Count_col = DataSet2.Tables.Item(0).Columns.Countc_row > 0 Then.RowCount = c_row.ColumnCount = c_col.Columns.Item(0).HeaderText = "Номер заявки".Columns.Item(1).HeaderText = "ФИО".Columns.Item(2).HeaderText = "Телефон".Columns.Item(3).HeaderText = "Имя компьютера".Columns.Item(4).HeaderText = "Кабинет".Columns.Item(5).HeaderText = "Открыта".Columns.Item(6).HeaderText = "Тип инцидента"i = 1 To c_rowj = 1 To c_colj = 7 Then.Item(j - 1, i - 1).Value = (DataSet2.Tables.Item(0).Rows.Item(i - 1).Item(j - 1))j = 0 Then DGV.Item(j - 1, i - 1).Value = .Tables.Item(0).Rows.Item(i - 1).Item(j - 1).Item(j - 1, i - 1).Value = DataSet2.Tables.Item(0).Rows.Item(i -

).Item(j - 1).ToStringIfIfex As Exception

TrySub

Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As .EventArgs) Handles Timer1.Tickm1, m2 As Stringrc1, rc2 As Integer()= DataGridView1.RowCount= DataGridView2.RowCountc1 < rc1 Or c2 < rc2 Thenc1 < rc1 Then= vbTab & "Поступившие - " & CStr(rc1 - c1) & "(" & rc1 & ")" & = rc1= ""Ifc2 < rc2 Then= vbTab & "Закрытые - " & CStr(rc2 - c2) & "(" & rc2 & ")"= rc2= ""IfMe.WindowState = FormWindowState.Minimized Then.Show().WindowState = FormWindowState.NormalIf.ShowBalloonTip(5000, "ticket_operator", "ЗАЯВКИ:" & & vbTab & vbCrLf & _& m2, ToolTipIcon.Info)IfSub

Sub DataGridView1_CellDoubleClick(ByVal sender As .Object, ByVal e As .Windows.Forms.DataGridViewCellEventArgs) Handles .CellDoubleClick, DataGridView2.CellDoubleClickcur_row As Integer = sender.CurrentRow.Indexcur_id_value As Integer = sender.Item(0, cur_row).Valuecur_inc_value As String = sender.Item(6, cur_row).Value.Text = CStr(cur_id_value).L_user.Text = "Пользователь - " & sender.Item(1, cur_row).Value

& _

" Тел. " & sender.Item(2, cur_row).Value & _

" Каб. " & sender.Item(4, cur_row).Value(cur_id_value, cur_inc_value)= img_path & "\image_z_" & CStr(cur_id_value) & ".jpg"File(tmp1, cur_id_value).PictureBox1.ImageLocation = tmp1.PictureBox1.Load()Sub

OpenTicket(ByVal id As Integer, ByVal id_inc As String).Visible = True.Activate().l_id.Text = "Заявка №" & CStr(id).l_incident.Text = "Тип инцидента - " & id_inc.tbox_ticket.Text = GetComment(id)Sub

Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) LinkLabel1.LinkClicked.Visible = True.Activate()Sub

Sub Form1_LocationChanged(ByVal sender As System.Object, e As System.EventArgs) Handles MyBase.LocationChangedMe.WindowState = FormWindowState.Minimized Then.Hide()IfSub

Sub NotifyIcon1_DoubleClick(ByVal sender As System.Object, e As System.EventArgs) Handles NotifyIcon1.DoubleClick.Show().WindowState = FormWindowState.NormalSub

Sub Form1_FormClosed(ByVal sender As System.Object, ByVal e System.Windows.Forms.FormClosedEventArgs) Handles .FormClosed.Dispose()SubClass

Public Class Form2

Sub Button2_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles Button2.Click(tbox_server.Text = "") Then_server.BackColor = Color.Redtbox_DB.Text = "" Then tbox_DB.BackColor = Color.Redtbox_DB.Text = "" Then_DB.BackColor = Color.RedForm1.TestConnect(tbox_server.Text, tbox_DB.Text) Thentbox_refresh_t.Text = "" Then tbox_refresh_t.Text = "30"(tbox_server.Text, tbox_DB.Text, tbox_refresh_t.Text, _count_tick.Text).Close().FillForm()result As MsgBoxResult = MsgBox("Не правильные настройки!

Повторить?", MsgBoxStyle.OkCancel, "Информация")result = MsgBoxResult.Ok Then_server.BackColor = Color.Red_DB.BackColor = Color.RedIfIfIfIfSub

Sub Form2_FormClosed(ByVal sender As System.Object, ByVal e System.Windows.Forms.FormClosedEventArgs) Handles .FormClosed.Enabled = TrueSub

Sub SaveSettings(ByVal server As String, ByVal DBN As String, refr_tm As String, ByVal c_tick As String).srv = server.it_db = DBN.refr_time = refr_tm.ticket_count = c_tickSub

Private Sub tbox_server_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles tbox_server.Click_server.BackColor = Color.WhiteSub

Sub tbox_DB_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles tbox_DB.Click_DB.BackColor = Color.WhiteSub

Sub Form2_Load(ByVal sender As System.Object, ByVal e As .EventArgs) Handles MyBase.Load_server.Text = Form1.srv_DB.Text = Form1.it_db_refresh_t.Text = Form1.refr_time_count_tick.Text = Form1.ticket_countSub

Sub Button1_Click(ByVal sender As System.Object, ByVal e As .EventArgs) Handles Button1.ClickForm1.TestConnect(tbox_server.Text, tbox_DB.Text) Then("Соединение успешно установлено", MsgBoxStyle.Information,

"Сообщение")("Неправильные настройки", MsgBoxStyle.Information,

"Сообщение")IfSubClass

Public Class Form3USR As String = Split(My.User.Name, "\")(1)cur_id As Integer

Sub Form3_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Enabled = True.Image.Dispose().Computer.FileSystem.DeleteFile(Form1.tmp1)Sub

Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked.PictureBox1.ImageLocation = Form1.tmp1.PictureBox1.Load().Visible = True.Activate()Sub

Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click.PictureBox1.ImageLocation = Form1.tmp1.PictureBox1.Load().Visible = True.Activate()Sub

Function GetComment(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [comments]" & _

"FROM [comments] where id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Clickselected_isp As Integer = cbox_ispoln.SelectedIndexselected_isp > -1 Then_id = CInt(Form1.Label1.Text)(cur_id, selected_isp)(cur_id, 2) 'назначено(cur_id, cbox_priority.SelectedIndex + 1)("Заявка назначена", MsgBoxStyle.Information, "Сообщение").FillForm()("Заявка не назначена. Не выбран исполнитель", MsgBoxStyle.Information, "Сообщение")If.FillDataGridView(Form1.srv, Form1.it_db, Form1.DataGridView1, "1").FillDataGridView(Form1.srv, Form1.it_db, Form1.DataGridView2, "5").Close()Sub

Sub UpdateIspoln(ByVal id As Integer, ByVal ispoln As Integer)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "UPDATE ticket" & vbCrLf & _

"set id_users = " & CStr(ispoln) & vbCrLf & _

"WHERE id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2).SelectCommand.Connection.Close()Sub

Sub UpdateStatus(ByVal id As Integer, ByVal status As Integer)con_string As String = "Data Source=" & Form1.srv & ";Initial

Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "UPDATE ticket" & vbCrLf & _

"set id_status = " & CStr(status) & vbCrLf & _

"WHERE id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2).SelectCommand.Connection.Close()Sub

Sub UpdateDT(ByVal id As Integer, ByVal DT As String)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "UPDATE ticket" & vbCrLf & _

"set close_ticket = convert(datetime,'" & DT & "')" & vbCrLf & _

"WHERE id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2).SelectCommand.Connection.Close()Sub

Function GetDateNowString() As Stringsd, sm, sy, sh, sn, ss As Stringdn As Date = DateAndTime.NowDateAndTime.Hour(dn) < 10 Then= "0" + DateAndTime.Hour(dn).ToString= DateAndTime.Hour(dn).ToStringIfDateAndTime.Minute(dn) < 10 Then= "0" + DateAndTime.Minute(dn).ToString= DateAndTime.Minute(dn).ToStringIfDateAndTime.Second(dn) < 10 Then= "0" + DateAndTime.Second(dn).ToString= DateAndTime.Second(dn).ToStringIf= DateAndTime.Year(dn).ToStringDateAndTime.Month(dn) < 10 Then= "0" + DateAndTime.Month(dn).ToString= DateAndTime.Month(dn).ToStringIfDateAndTime.Day(dn) < 10 Then= "0" + DateAndTime.Day(dn).ToString= DateAndTime.Day(dn).ToStringIf= sy & sm & sd & " " & sh & ":" & sn & ":" & ssFunction

Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)

Sub

Sub Form3_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Showncon_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter1 As New SqlClient.SqlDataAdapterDataSet1 As New DataSetSqlConnection1 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand1 As New SqlClient.SqlCommand.CommandText = "select * from admins".SelectCommand = SqlCommand1.SelectCommand.Connection = SqlConnection1.SelectCommand.Connection.Open().Fill(DataSet1)c_row As Integer = DataSet1.Tables.Item(0).Rows.Count_ispoln.Items.Clear()i = 2 To c_row_ispoln.Items.Add(DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(1)).SelectCommand.Connection.Close()SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = "select name_priority from priority".SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)_row = DataSet2.Tables.Item(0).Rows.Count_priority.Items.Clear()i = 1 To c_row_priority.Items.Add(DataSet2.Tables.Item(0).Rows.Item(i - 1).Item(0)).SelectCommand.Connection.Close()SqlAdapter3 As New SqlClient.SqlDataAdapterDataSet3 As New DataSetSqlConnection3 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand3 As New SqlClient.SqlCommand.CommandText = "SELECT [id_priority]" & vbCrLf & _

"FROM [ticket] where id_ticket = " & Form1.Label1.Text.SelectCommand = SqlCommand3.SelectCommand.Connection = SqlConnection3.SelectCommand.Connection.Open().Fill(DataSet3)npriority As String = DataSet3.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()_priority.SelectedIndex = npriority - 1Sub

Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Clickselected_pri As Integer = cbox_priority.SelectedIndexselected_pri > -1 Then_id = CInt(Form1.Label1.Text)(cur_id, selected_pri + 1)("Приоритет изменен", MsgBoxStyle.Information, "Сообщение")("Приоритет не изменен. Не выбран приоритет", MsgBoxStyle.Information, "Сообщение")IfSub

Sub UpdatePriority(ByVal id As Integer, ByVal priority As Integer)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "UPDATE ticket" & vbCrLf & _

"set id_priority = " & CStr(priority) & vbCrLf & _

"WHERE id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2).SelectCommand.Connection.Close()Sub

Sub LinkLabel2_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel2.LinkClicked(CInt(Form1.Label1.Text))("Заявка отклонена", MsgBoxStyle.Information, "Сообщение")Sub

Sub SetOtklon(ByVal id As Integer)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "UPDATE ticket" & vbCrLf & _

"set otklon = 1 " & vbCrLf & _

"WHERE id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2).SelectCommand.Connection.Close().Close().FillForm()SubClass

Class Form4

Sub Form4_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Enabled = True.Image.Dispose()SubClass

«Заявки - Исполнитель»

Public Class Form1server As StringStartDate As String = "19811121 00:00:00"PC As String = My.Computer.NameUSR As String = Split(My.User.Name, "\")(1)img_path As String = My.Computer.FileSystem.SpecialDirectories.Temptmp1 As Stringsrv As String = Split(GetSettings(), "%")(0)it_db As String = Split(GetSettings(), "%")(1)refr_time As String = Split(GetSettings(), "%")(2)ticket_count As String = Split(GetSettings(), "%")(3)c1, c2, c3 As IntegerSub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load.MaximizeBox = False.Interval = CInt(refr_time) * 1000srv <> "1" And it_db <> "1" ThenTestConnect(srv, "master") ThenTestConnect(srv, it_db) Then()= DataGridView1.RowCount= DataGridView2.RowCount= DataGridView3.RowCount("Не найдена база данных. Обратитесь к администратору за именем базы данных", MsgBoxStyle.Information, "Информация")result As MsgBoxResult = MsgBox("Изменить базу данных?", MsgBoxStyle.OkCancel, "Информация")result = MsgBoxResult.Ok Then.Visible = True.Enabled = FalseIfIf("Не правильные настройки. SQL Server не найден", MsgBoxStyle.Information, "Информация")result As MsgBoxResult = MsgBox("Выполнить настройку?", MsgBoxStyle.OkCancel, "Сообщение")result = MsgBoxResult.Ok Then.Visible = True.Enabled = FalseIfIfresult As MsgBoxResult = MsgBox("Программа не настроена. Настроить?", MsgBoxStyle.OkCancel, "Сообщение")result = MsgBoxResult.Ok Then.Visible = True.Enabled = FalseIfIfSub

FillForm()n1, n2, n3 As Integer(srv, it_db, DataGridView1, "3")= DataGridView1.RowCount.TabPages.Item(0).Text = "Высокий (" & CStr(n1) & ")"CStr(DataGridView1.Item(0, 0).Value) = "" Then.TabPages.Item(0).Text = "Высокий (0)"Ifex As ExceptionTry(srv, it_db, DataGridView2, "2")= DataGridView2.RowCount.TabPages.Item(1).Text = "Нормальный (" & CStr(n2) & ")"CStr(DataGridView2.Item(0, 0).Value) = "" Then.TabPages.Item(1).Text = "Нормальный (0)"Ifex As ExceptionTry(srv, it_db, DataGridView3, "1")= DataGridView3.RowCount.TabPages.Item(2).Text = "Низкий (" & CStr(n3) & ")"CStr(DataGridView3.Item(0, 0).Value) = "" Then.TabPages.Item(2).Text = "Низкий (0)"Ifex As ExceptionTrySub

GetSettings() As Strings As String = "1%1%30%10"r As ObjectMy.Computer.FileSystem.FileExists(My.Application.Info.DirectoryPath & "\settings.ini") Then= My.Computer.FileSystem.OpenTextFileReader(My.Application.Info.DirectoryPath & "\settings.ini")= r.ReadLine.Close()s = "" Then s = "1%1%30%10"If= sFunction

TestConnect(ByVal server As String, ByVal DBN As String) As Booleancon_string As String = "Data Source=" & server & ";Initial Catalog=" & DBN & ";Integrated Security=True"result As String = ""cn As New SqlClient.SqlConnection(con_string).Open().Close()ex As Exception= ex.MessageTryresult = "" Then= True= FalseIfFunction

Sub SqlBlob2File(ByVal DestFilePath As String, ByVal id As Integer)con_string As String = "Data Source=" & srv & ";Initial Catalog=" & it_db & ";Integrated Security=True"PictureCol As Integer = 0cn As New SqlClient.SqlConnection(con_string)cmd As New SqlClient.SqlCommand("SELECT image FROM attach WHERE id_ticket=" & CStr(id), cn).Open()dr As SqlClient.SqlDataReader = cmd.ExecuteReader().Read()b(dr.GetBytes(PictureCol, 0, Nothing, 0, Integer.MaxValue) - 1) As Byte.GetBytes(PictureCol, 0, b, 0, b.Length).Close().Close()fs As New System.IO.FileStream(DestFilePath, IO.FileMode.Create, IO.FileAccess.Write).Write(b, 0, b.Length).Close()Sub

Function GetComment(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [comments]" & _

"FROM [comments] where id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Function GetIncident(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [name_incident]" & _

"FROM [incident] where id_incident = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Function GetStatus(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [name_status]" & _

"FROM [status] where id_status = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Function GetUsersID(ByVal admin As String) As Stringcon_string As String = "Data Source=" & srv & ";Initial Catalog=" & it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [id_users]" & _

"FROM [admins] where [login] like '" & CStr(admin) & "'".ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= CStr(DataSet2.Tables.Item(0).Rows.Item(0).Item(0)).SelectCommand.Connection.Close()ex As ExceptionTryFunction

Sub FillDataGridView(ByVal server As String, ByVal DBN As String, ByRef DGV As DataGridView, ByVal priority As String)SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetcon_string As String = "Data Source=" & server & ";Initial Catalog=" & DBN & ";Integrated Security=True"SqlConnection2 As New SqlClient.SqlConnectionc_row, c_col As Integercmd As String = "SELECT [id_ticket]" & _

",[fio]" & _

",[phone]" & _

",[pc_inv]" & _

",[room]" & _

",[open_ticket]" & _

",[id_incident]" & _

"FROM [ticket] WHERE [id_users] = " & GetUsersID(USR) & " and [deleted] = 0 and [otklon] = 0 and [id_status] > 1 and [id_status] < 5 and [id_priority] = " & _.ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)_row = DataSet2.Tables.Item(0).Rows.Count_col = DataSet2.Tables.Item(0).Columns.Countc_row > 0 Then.RowCount = c_row.ColumnCount = c_col.Columns.Item(0).HeaderText = "Номер заявки".Columns.Item(1).HeaderText = "ФИО".Columns.Item(2).HeaderText = "Телефон".Columns.Item(3).HeaderText = "Имя компьютера".Columns.Item(4).HeaderText = "Кабинет".Columns.Item(5).HeaderText = "Открыта".Columns.Item(6).HeaderText = "Тип инцидента"i = 1 To c_rowj = 1 To c_colj = 7 Then.Item(j - 1, i - 1).Value = (DataSet2.Tables.Item(0).Rows.Item(i - 1).Item(j - 1))j = 0 Then DGV.Item(j - 1, i - 1).Value = .Tables.Item(0).Rows.Item(i - 1).Item(j - 1).Item(j - 1, i - 1).Value = DataSet2.Tables.Item(0).Rows.Item(i - 1).Item(j - 1).ToStringIf.Rows.Clear().RowCount = 0If.SelectCommand.Connection.Close()ex As ExceptionTrySub

Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles Timer1.Tickm1, m2, m3 As Stringrc1, rc2, rc3 As Integer()= DataGridView1.RowCount= DataGridView2.RowCount= DataGridView3.RowCountc1 < rc1 Or c2 < rc2 Or c3 < rc3 Thenc1 < rc1 Then= vbTab & "Высокий приоритет - " & CStr(rc1 - c1) & "(" & rc1 & ")" & vbCrLf= rc1= ""Ifc2 < rc2 Then= vbTab & "Нормальный приоритет - " & CStr(rc2 - c2) & "(" & rc2 & ")" & vbCrLf= rc2= ""Ifc3 < rc3 Then= vbTab & "Низкий приоритет - " & CStr(rc3 - c3) & "(" & rc3 & ")"= rc3= ""IfMe.WindowState = FormWindowState.Minimized Then.Show().WindowState = FormWindowState.NormalIf.ShowBalloonTip(5000, "ticket_admin", "НОВЫЕ ЗАЯВКИ:" & vbTab & vbTab & vbCrLf & _& m2 & m3, ToolTipIcon.Info)IfSub

Sub DataGridView1_CellDoubleClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick, DataGridView3.CellDoubleClick, DataGridView2.CellDoubleClickcur_row As Integer = sender.CurrentRow.IndexCStr(sender.Item(0, 0).Value) <> "" Thencur_row > -1 And sender.RowCount > 0 Thencur_id_value As Integer = sender.Item(0, cur_row).Valuecur_inc_value As String = sender.Item(6, cur_row).Value.L_user.Text = "Пользователь - " & sender.Item(1, cur_row).Value & _

" Тел. " & sender.Item(2, cur_row).Value & _

" Каб. " & sender.Item(4, cur_row).Value(cur_id_value, cur_inc_value)= img_path & "\image_z_" & CStr(cur_id_value) & ".jpg"File(tmp1, cur_id_value).PictureBox1.ImageLocation = tmp1.PictureBox1.Load()IfIfSubOpenTicket(ByVal id As Integer, ByVal id_inc As String).Visible = True.Activate().l_id.Text = "Заявка №" & CStr(id).l_incident.Text = "Тип инцидента - " & id_inc.tbox_ticket.Text = GetComment(id)Sub

Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked.Visible = True.Activate()Sub

Sub Form1_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Dispose()wr As ObjectMy.Computer.FileSystem.FileExists(My.Application.Info.DirectoryPath & "\settings.ini") Then.Computer.FileSystem.DeleteFile(My.Application.Info.DirectoryPath & "\settings.ini")If= My.Computer.FileSystem.OpenTextFileWriter(My.Application.Info.DirectoryPath & "\settings.ini", False).WriteLine(srv & "%" & it_db & "%" & refr_time & "%" & ticket_count).Close()Sub

Sub NotifyIcon1_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NotifyIcon1.DoubleClick.Show().WindowState = FormWindowState.NormalSub

Sub Form1_LocationChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.LocationChangedMe.WindowState = FormWindowState.Minimized Then.Hide()IfSubClass

Public Class Form2

Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click(tbox_server.Text = "") Then_server.BackColor = Color.Redtbox_DB.Text = "" Then tbox_DB.BackColor = Color.Redtbox_DB.Text = "" Then_DB.BackColor = Color.RedForm1.TestConnect(tbox_server.Text, tbox_DB.Text) Thentbox_refresh_t.Text = "" Then tbox_refresh_t.Text = "30"(tbox_server.Text, tbox_DB.Text, tbox_refresh_t.Text, tbox_count_tick.Text).Close().FillForm()result As MsgBoxResult = MsgBox("Не правильные настройки! Повторить?", MsgBoxStyle.OkCancel, "Информация")result = MsgBoxResult.Ok Then_server.BackColor = Color.Red_DB.BackColor = Color.RedIfIfIfIfSub

Sub Form2_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Enabled = TrueSub

Sub SaveSettings(ByVal server As String, ByVal DBN As String, ByVal refr_tm As String, ByVal c_tick As String).srv = server.it_db = DBN.refr_time = refr_tm.ticket_count = c_tickSub

Sub tbox_server_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tbox_server.Click_server.BackColor = Color.WhiteSub

Sub tbox_DB_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tbox_DB.Click_DB.BackColor = Color.WhiteSub

Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load_server.Text = Form1.srv_DB.Text = Form1.it_db_refresh_t.Text = Form1.refr_time_count_tick.Text = Form1.ticket_countSub

Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickForm1.TestConnect(tbox_server.Text, tbox_DB.Text) Then("Соединение успешно установлено", MsgBoxStyle.Information, "Сообщение")("Неправильные настройки", MsgBoxStyle.Information, "Сообщение")IfSubClass

Class Form3USR As String = Split(My.User.Name, "\")(1)cur_id As Integer

Sub Form3_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Enabled = True.Image.Dispose().Computer.FileSystem.DeleteFile(Form1.tmp1).Enabled = False(cur_id, 4) 'отложитьSub

Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked.PictureBox1.ImageLocation = Form1.tmp1.PictureBox1.Load().Visible = True.Activate()Sub

Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click.PictureBox1.ImageLocation = Form1.tmp1.PictureBox1.Load().Visible = True.Activate()Sub

Function GetComment(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [comments]" & _

"FROM [comments] where id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Clicktbox_otvet.Text <> "" Then(cur_id)_otvet.Text = ""IfSub

Sub UpdateComment(ByVal id As Integer)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "UPDATE comments" & vbCrLf & _

"SET comments = '" & tbox_ticket.Text & vbCrLf & _

"----" & USR & "----" & vbCrLf & __otvet.Text & "'" & vbCrLf & _

"WHERE (id_ticket = " & CStr(id) & ")".ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2).SelectCommand.Connection.Close()Sub

Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick_ticket.Text = GetComment(cur_id)Sub

Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click(cur_id, 4).Close()Sub

Sub UpdateStatus(ByVal id As Integer, ByVal status As Integer)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "UPDATE ticket" & vbCrLf & _

"set id_status = " & CStr(status) & vbCrLf & _

"WHERE id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2).SelectCommand.Connection.Close()Sub

Sub UpdateDT(ByVal id As Integer, ByVal DT As String)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "UPDATE ticket" & vbCrLf & _

"set close_ticket = convert(datetime,'" & DT & "')" & vbCrLf & _

"WHERE id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2).SelectCommand.Connection.Close()Sub

Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Clicktbox_otvet.Text <> "" Then(cur_id)_otvet.Text = ""_otvet.Text = "-------"(cur_id)_otvet.Text = ""If.Close()(cur_id, GetDateNowString())(cur_id, 5)(cur_id)Sub

Function GetDateNowString() As Stringsd, sm, sy, sh, sn, ss As Stringdn As Date = DateAndTime.NowDateAndTime.Hour(dn) < 10 Then= "0" + DateAndTime.Hour(dn).ToString= DateAndTime.Hour(dn).ToStringIfDateAndTime.Minute(dn) < 10 Then= "0" + DateAndTime.Minute(dn).ToString= DateAndTime.Minute(dn).ToStringIfDateAndTime.Second(dn) < 10 Then= "0" + DateAndTime.Second(dn).ToString= DateAndTime.Second(dn).ToStringIf= DateAndTime.Year(dn).ToStringDateAndTime.Month(dn) < 10 Then= "0" + DateAndTime.Month(dn).ToString= DateAndTime.Month(dn).ToStringIfDateAndTime.Day(dn) < 10 Then= "0" + DateAndTime.Day(dn).ToString= DateAndTime.Day(dn).ToStringIf= sy & sm & sd & " " & sh & ":" & sn & ":" & ssFunction

Sub UpdateWT(ByVal id As Integer)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = _

"UPDATE [ticket]" & vbCrLf & _

"SET [work_time] = (select [close_ticket]-[open_ticket] from [ticket] where id_ticket = " & CStr(id) & ")" & vbCrLf & _

"where id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2).SelectCommand.Connection.Close()SubClass

Class Form4

Sub Form4_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Enabled = True.Image.Dispose()SubClass

«Заявки - Настройка»

Public Class Form1server As StringStartDate As String = "19811121 00:00:00"PC As String = My.Computer.NameUSR As String = Split(My.User.Name, "\")(1)img_path As String = My.Computer.FileSystem.SpecialDirectories.Temptmp1 As Stringsrv As String = Split(GetSettings(), "%")(0)it_db As String = Split(GetSettings(), "%")(1)refr_time As String = Split(GetSettings(), "%")(2)ticket_count As String = Split(GetSettings(), "%")(3)

Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click.Visible = True.Activate()Sub

Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click.Visible = True.Activate()Sub

Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click.Visible = True.Activate()Sub

Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click.Visible = True.Activate().TextBox1.Text = srv.TextBox2.Text = it_dbSub

GetSettings() As Strings As String = "1%1%30%10"r As ObjectMy.Computer.FileSystem.FileExists(My.Application.Info.DirectoryPath & "\settings.ini") Then= My.Computer.FileSystem.OpenTextFileReader(My.Application.Info.DirectoryPath & "\settings.ini")= r.ReadLine.Close()s = "" Then s = "1%1%30%10"If= sFunction

TestConnect(ByVal server As String, ByVal DBN As String) As Booleancon_string As String = "Data Source=" & server & ";Initial Catalog=" & DBN & ";Integrated Security=True"result As String = ""cn As New SqlClient.SqlConnection(con_string).Open().Close()ex As Exception= ex.MessageTryresult = "" Then= True= FalseIfFunction

Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosingwr As ObjectMy.Computer.FileSystem.FileExists(My.Application.Info.DirectoryPath & "\settings.ini") Then.Computer.FileSystem.DeleteFile(My.Application.Info.DirectoryPath & "\settings.ini")If= My.Computer.FileSystem.OpenTextFileWriter(My.Application.Info.DirectoryPath & "\settings.ini", False).WriteLine(srv & "%" & it_db & "%" & refr_time & "%" & ticket_count).Close()SubClass

Public Class Form2

Sub Form2_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Visible = True.Activate()Sub

Sub Form2_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Shown.Visible = FalseSub

Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load(Form1.srv, Form1.it_db, DataGridView1)Sub

Sub FillDGVInc(ByVal server As String, ByVal DBN As String, ByRef DGV As DataGridView)SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetcon_string As String = "Data Source=" & server & ";Initial Catalog=" & DBN & ";Integrated Security=True"SqlConnection2 As New SqlClient.SqlConnectionc_row, c_col As Integercmd As String = "SELECT [id_incident],[name_incident] FROM [incident]".ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)_row = DataSet2.Tables.Item(0).Rows.Count_col = DataSet2.Tables.Item(0).Columns.Countc_row > 0 Then.RowCount = c_row.ColumnCount = c_col.Columns.Item(0).HeaderText = "Номер".Columns.Item(1).HeaderText = "Инцидент"i = 1 To c_rowj = 1 To c_col.Item(j - 1, i - 1).Value = DataSet2.Tables.Item(0).Rows.Item(i - 1).Item(j - 1).ToStringIf.SelectCommand.Connection.Close()ex As Exception("Ошибка: " & ex.Message, MsgBoxStyle.Information, "Сообщение").Close()TrySub

Sub TextBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.Click.BackColor = Color.White.Text = "".ForeColor = Color.BlackSub

Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickTextBox1.Text = "" Then.BackColor = Color.Red.Text = "Введите инцидент".ForeColor = Color.White(TextBox1.Text)(Form1.srv, Form1.it_db, DataGridView1)("Инцидент добавлен", MsgBoxStyle.Information, "Сообщение").Text = ""IfSub

Sub AddIncident(ByVal incident As String)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter1 As New SqlClient.SqlDataAdapterDataSet1 As New DataSetSqlConnection1 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand1 As New SqlClient.SqlCommandcmd As String = _

"INSERT" & vbCrLf & _

"INTO incident(name_incident)" & vbCrLf & _

"VALUES ('" & incident & "')".CommandText = cmd.InsertCommand = SqlCommand1.InsertCommand.Connection = SqlConnection1.InsertCommand.Connection.Open().InsertCommand.ExecuteNonQuery().InsertCommand.Connection.Close()ex As Exception("Ошибка: " & ex.Message, MsgBoxStyle.Information, "Сообщение")TrySubClass

Public Class Form3

Sub Form3_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Visible = True.Activate()Sub

Private Sub Form3_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Shown.Visible = FalseSub

Sub TextBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.Click.BackColor = Color.White.Text = "".ForeColor = Color.BlackSub

Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickTextBox1.Text = "" Or TextBox2.Text = "" ThenTextBox1.Text = "" Then.BackColor = Color.Red.Text = "Введите исполнителя".ForeColor = Color.WhiteIfTextBox2.Text = "" Then.BackColor = Color.Red.Text = "Введите логин".ForeColor = Color.WhiteIf(TextBox1.Text, TextBox2.Text)(Form1.srv, Form1.it_db, DataGridView1)("Исполнитель добавлен", MsgBoxStyle.Information, "Сообщение").Text = "".Text = ""IfSub

Sub AddIspoln(ByVal ispoln As String, ByVal isp_l As String)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter1 As New SqlClient.SqlDataAdapterDataSet1 As New DataSetSqlConnection1 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand1 As New SqlClient.SqlCommandcmd As String = _

"INSERT" & vbCrLf & _

"INTO admins(admin, login)" & vbCrLf & _

"VALUES ('" & ispoln & "','" & isp_l & "')".CommandText = cmd.InsertCommand = SqlCommand1.InsertCommand.Connection = SqlConnection1.InsertCommand.Connection.Open().InsertCommand.ExecuteNonQuery().InsertCommand.Connection.Close()Sub

Sub FillDGVIsp(ByVal server As String, ByVal DBN As String, ByRef DGV As DataGridView)SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetcon_string As String = "Data Source=" & server & ";Initial Catalog=" & DBN & ";Integrated Security=True"SqlConnection2 As New SqlClient.SqlConnectionc_row, c_col As Integercmd As String = "SELECT [id_users],[admin],[login] FROM [admins]".ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)_row = DataSet2.Tables.Item(0).Rows.Count_col = DataSet2.Tables.Item(0).Columns.Countc_row > 0 Then.RowCount = c_row.ColumnCount = c_col.Columns.Item(0).HeaderText = "Номер".Columns.Item(1).HeaderText = "Исполнитель".Columns.Item(2).HeaderText = "Логин"i = 1 To c_rowj = 1 To c_col.Item(j - 1, i - 1).Value = DataSet2.Tables.Item(0).Rows.Item(i - 1).Item(j - 1).ToStringIf.SelectCommand.Connection.Close()ex As Exception("Ошибка: " & ex.Message, MsgBoxStyle.Information, "Сообщение").Close()TrySub

Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load(Form1.srv, Form1.it_db, DataGridView1)Sub

Sub TextBox2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.Click.BackColor = Color.White.Text = "".ForeColor = Color.BlackSubClass

Imports Microsoft.Office.Interop

Class Form4

Sub Form4_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Visible = True.Activate()SubSub Form4_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Shown.Visible = FalseSub

Sub Form4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Loadd As Date = MinDate().Value = d.MinDate = d.MinDate = d.MaxDate = Date.Today.MaxDate = Date.TodaySub

Function MinDate() As Datecon_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "select open_ticket from ticket where id_ticket = (select MIN(id_ticket) from ticket)".ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton1.CheckedChangedRadioButton1.Checked Then.ForeColor = Color.Black.Enabled = False.Enabled = False.ForeColor = Color.DarkGray.ForeColor = Color.DarkGray.ForeColor = Color.DarkGrayd As Date = MinDate().Value = d.MinDate = d.MinDate = d.MaxDate = Date.Today.MaxDate = Date.Today.ForeColor = Color.DarkGrayIfSub

Sub RadioButton2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton2.CheckedChangedRadioButton2.Checked Then.ForeColor = Color.Black.Enabled = True.Enabled = True.ForeColor = Color.Black.ForeColor = Color.Black.ForeColor = Color.Blackd As Date = MinDate().Value = d.MinDate = d.MinDate = d.MaxDate = Date.Today.MaxDate = Date.Today.ForeColor = Color.DarkGrayIfSub

Sub RadioButton3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton3.CheckedChangedRadioButton3.Checked Then.ForeColor = Color.Black.Enabled = True.Enabled = True.ForeColor = Color.Black.ForeColor = Color.Black.ForeColor = Color.Blackd As Date = MinDate().Value = d.MinDate = d.MinDate = d.MaxDate = Date.Today.MaxDate = Date.Today.ForeColor = Color.DarkGrayIfSub

Sub RadioButton4_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton4.CheckedChangedRadioButton4.Checked Then.ForeColor = Color.Black.Enabled = True.Enabled = True.ForeColor = Color.Black.ForeColor = Color.Black.ForeColor = Color.Blackd As Date = MinDate().Value = d.MinDate = d.MinDate = d.MaxDate = Date.Today.MaxDate = Date.Today.ForeColor = Color.DarkGrayIfSub

Sub RadioButton5_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton5.CheckedChangedRadioButton5.Checked Then.ForeColor = Color.Black.Enabled = True.Enabled = True.ForeColor = Color.Black.ForeColor = Color.Black.ForeColor = Color.Blackd As Date = MinDate().Value = d.MinDate = d.MinDate = d.MaxDate = Date.Today.MaxDate = Date.Today.ForeColor = Color.DarkGrayIfSub

Sub RadioButton6_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton6.CheckedChangedRadioButton6.Checked Then.ForeColor = Color.Black.Enabled = True.Enabled = True.ForeColor = Color.Black.ForeColor = Color.Black.ForeColor = Color.Blackd As Date = MinDate().Value = d.MinDate = d.MinDate = d.MaxDate = Date.Today.MaxDate = Date.Today.ForeColor = Color.DarkGrayIfSub

Sub RadioButton7_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton7.CheckedChangedRadioButton7.Checked Then.ForeColor = Color.Black.Enabled = True.Enabled = True.ForeColor = Color.Black.ForeColor = Color.Black.ForeColor = Color.Blackd As Date = MinDate().Value = d.MinDate = d.MinDate = d.MaxDate = Date.Today.MaxDate = Date.Today.ForeColor = Color.DarkGrayIfSubSub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickRadioButton1.Checked Then_Nevyp()IfRadioButton2.Checked Then_Vyp()IfRadioButton3.Checked Then_PoIsp()IfRadioButton4.Checked Then_Otkl()IfRadioButton5.Checked Then_ProblUsers()IfRadioButton6.Checked Then_ProblPC()IfRadioButton7.Checked Then_Dynamic()IfSub

Sub Otchet_Nevyp()StartDate As String = Form6.GetDateString(DateTimePicker1.Value)EndDate As String = Form6.GetDateString(DateTimePicker2.Value)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter1 As New SqlClient.SqlDataAdapterDataSet1 As New DataSetSqlConnection1 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand1 As New SqlClient.SqlCommand.CommandText = "select [id_ticket],[fio],[id_incident] from [ticket]" & vbCrLf & _

"where [id_status] < 5 and [otklon] = 0 " & vbCrLf & _

"and [open_ticket] >= convert(datetime,'" & StartDate & "',12) and [open_ticket] <= convert(datetime,'" & EndDate & "',12)".SelectCommand = SqlCommand1.SelectCommand.Connection = SqlConnection1c_row, c_col As Integerid_ticket, fio, incident, comment As StringoWord As Word.ApplicationoDoc As Word.DocumentoTable As Word.TableoPara1, oPara2, oPara3, oPara4 As Word.Paragraph= CreateObject("Word.Application").Visible = True= oWord.Documents.Add= oDoc.Content.Paragraphs.Add.Range.Text = "Отчет о невыполненных заявках - " & DateAndTime.Now.ToString.Range.Font.Size = 13.Range.Font.Bold = True.Range.InsertParagraphAfter().SelectCommand.Connection.Open().Fill(DataSet1)_row = DataSet1.Tables.Item(0).Rows.Count_col = DataSet1.Tables.Item(0).Columns.Count= oDoc.Tables.Add(oDoc.Bookmarks.Item("\endofdoc").Range, c_row + 1, 4).Range.ParagraphFormat.SpaceAfter = 6.Range.Font.Size = 11.Range.Font.Bold = False.Rows.Borders.Enable = True.Columns.Borders.Enable = True.Columns(1).SetWidth(43, Word.WdRulerStyle.wdAdjustNone).Columns(2).SetWidth(80, Word.WdRulerStyle.wdAdjustNone).Columns(3).SetWidth(170, Word.WdRulerStyle.wdAdjustNone).Columns(4).SetWidth(179, Word.WdRulerStyle.wdAdjustNone).Rows.Item(1).Range.Font.Bold = True.Rows.Item(1).Shading.BackgroundPatternColor = Word.WdColor.wdColorGray15.Cell(1, 1).Range.Text = "Номер".Cell(1, 2).Range.Text = "Пользователь".Cell(1, 3).Range.Text = "Инцидент".Cell(1, 4).Range.Text = "Текст заявки"i = 1 To c_row_ticket = DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(0)= DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(1)= GetIncident(DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(2))= GetComment(id_ticket).Cell(i + 1, 1).Range.Text = CStr(id_ticket).Cell(i + 1, 2).Range.Text = CStr(fio).Cell(i + 1, 3).Range.Text = CStr(incident).Cell(i + 1, 4).Range.Text = Replace(CStr(comment), "----Пользователь----" & vbCrLf, "").SelectCommand.Connection.Close()= oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\endofdoc").Range)SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "select COUNT(*) from ticket where [id_status] < 5 and [otklon] = 0".ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)nz As String = DataSet2.Tables.Item(0).Rows.Item(0).Item(0).ToString.SelectCommand.Connection.Close().Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.Text = "Всего заявок - " & vbTab & vbTab & vbTab & nz.Range.Font.Size = 11.Range.Font.Bold = True.Range.InsertParagraphAfter()= oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\endofdoc").Range)SqlAdapter3 As New SqlClient.SqlDataAdapterDataSet3 As New DataSetSqlConnection3 As New SqlClient.SqlConnection= "select distinct [id_incident] from [ticket] where [id_status] < 5 and [otklon] = 0".ConnectionString = con_stringSqlCommand3 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand3.SelectCommand.Connection = SqlConnection3.SelectCommand.Connection.Open().Fill(DataSet3)ninc As String = DataSet3.Tables.Item(0).Rows.Count.ToString.SelectCommand.Connection.Close().Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.Text = "Всего типов инцидентов - " & vbTab & ninc.Range.Font.Size = 11.Range.Font.Bold = True.Range.InsertParagraphAfter()= oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\endofdoc").Range)SqlAdapter4 As New SqlClient.SqlDataAdapterDataSet4 As New DataSetSqlConnection4 As New SqlClient.SqlConnection= "select distinct convert(char(11),[fio]) from [ticket] where [id_status] < 5 and [otklon] = 0".ConnectionString = con_stringSqlCommand4 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand4.SelectCommand.Connection = SqlConnection4.SelectCommand.Connection.Open().Fill(DataSet4)nfio As String = DataSet4.Tables.Item(0).Rows.Count.ToString.SelectCommand.Connection.Close().Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.Text = "Всего пользователей - " & vbTab & nfio.Range.Font.Size = 11.Range.Font.Bold = True.Range.InsertParagraphAfter()ex As ExceptionTrySub

Sub Otchet_Vyp()StartDate As String = Form6.GetDateString(DateTimePicker1.Value)EndDate As String = Form6.GetDateString(DateTimePicker2.Value)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter1 As New SqlClient.SqlDataAdapterDataSet1 As New DataSetSqlConnection1 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand1 As New SqlClient.SqlCommand.CommandText = "select [id_ticket],[fio],[id_incident] from [ticket]" & vbCrLf & _

"where [id_status] = 5 and [otklon] = 0 " & vbCrLf & _

"and [open_ticket] >= convert(datetime,'" & StartDate & "',12) and [open_ticket] <= convert(datetime,'" & EndDate & "',12)".SelectCommand = SqlCommand1.SelectCommand.Connection = SqlConnection1c_row, c_col As Integerid_ticket, fio, incident, comment As StringoWord As Word.ApplicationoDoc As Word.DocumentoTable As Word.TableoPara0, oPara1, oPara2, oPara3, oPara4 As Word.Paragraph= CreateObject("Word.Application").Visible = True= oWord.Documents.Add= oDoc.Content.Paragraphs.Add.Range.Text = "Отчет о выполненных заявках - " & DateAndTime.Now.ToString.Range.Font.Size = 13.Range.Font.Bold = True.Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.InsertParagraphAfter()= oDoc.Content.Paragraphs.Add.Range.Text = "За период - с " & DateTimePicker1.Value.ToString & _

" по " & DateTimePicker2.Value.ToString.Range.Font.Size = 12.Range.Font.Bold = False.Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 20.Range.ParagraphFormat.SpaceAfterAuto = False.Range.InsertParagraphAfter().SelectCommand.Connection.Open().Fill(DataSet1)_row = DataSet1.Tables.Item(0).Rows.Count_col = DataSet1.Tables.Item(0).Columns.Count= oDoc.Tables.Add(oDoc.Bookmarks.Item("\endofdoc").Range, c_row + 1, 3).Range.Font.Size = 11.Range.Font.Bold = False.Rows.Borders.Enable = True.Columns.Borders.Enable = True.Columns(1).SetWidth(43, Word.WdRulerStyle.wdAdjustNone).Columns(2).SetWidth(80, Word.WdRulerStyle.wdAdjustNone).Columns(3).SetWidth(349, Word.WdRulerStyle.wdAdjustNone).Rows.Item(1).Range.Font.Bold = True.Rows.Item(1).Shading.BackgroundPatternColor = Word.WdColor.wdColorGray15.Cell(1, 1).Range.Text = "Номер".Cell(1, 2).Range.Text = "Пользователь".Cell(1, 3).Range.Text = "Инцидент"i = 1 To c_row_ticket = DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(0)= DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(1)= GetIncident(DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(2))= GetComment(id_ticket).Cell(i + 1, 1).Range.Text = CStr(id_ticket).Cell(i + 1, 2).Range.Text = CStr(fio).Cell(i + 1, 3).Range.Text = CStr(incident).SelectCommand.Connection.Close().Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False= oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\endofdoc").Range).Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.Text = "Всего заявок - " & vbTab & vbTab & vbTab & c_row.ToString.Range.Font.Size = 11.Range.Font.Bold = True.Range.InsertParagraphAfter()= oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\endofdoc").Range)SqlAdapter3 As New SqlClient.SqlDataAdapterDataSet3 As New DataSetSqlConnection3 As New SqlClient.SqlConnectioncmd As String = "select distinct [id_incident] from [ticket] where [id_status] = 5 and [otklon] = 0 " & _

"and [open_ticket] >= convert(datetime,'" & StartDate & "',12) and [open_ticket] <= convert(datetime,'" & EndDate & "',12)".ConnectionString = con_stringSqlCommand3 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand3.SelectCommand.Connection = SqlConnection3.SelectCommand.Connection.Open().Fill(DataSet3)ninc As String = DataSet3.Tables.Item(0).Rows.Count.ToString.SelectCommand.Connection.Close().Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.Text = "Всего типов инцидентов - " & vbTab & ninc.Range.Font.Size = 11.Range.Font.Bold = True.Range.InsertParagraphAfter()= oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\endofdoc").Range)SqlAdapter4 As New SqlClient.SqlDataAdapterDataSet4 As New DataSetSqlConnection4 As New SqlClient.SqlConnection= "select distinct convert(char(11),[fio]) from [ticket] where [id_status] = 5 and [otklon] = 0 " & _

"and [open_ticket] >= convert(datetime,'" & StartDate & "',12) and [open_ticket] <= convert(datetime,'" & EndDate & "',12)".ConnectionString = con_stringSqlCommand4 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand4.SelectCommand.Connection = SqlConnection4.SelectCommand.Connection.Open().Fill(DataSet4)nfio As String = DataSet4.Tables.Item(0).Rows.Count.ToString.SelectCommand.Connection.Close().Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.Text = "Всего пользователей - " & vbTab & nfio.Range.Font.Size = 11.Range.Font.Bold = True.Range.InsertParagraphAfter()ex As ExceptionTrySub

Sub Otchet_PoIsp()StartDate As String = Form6.GetDateString(DateTimePicker1.Value)EndDate As String = Form6.GetDateString(DateTimePicker2.Value)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter1 As New SqlClient.SqlDataAdapterDataSet1 As New DataSetSqlConnection1 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand1 As New SqlClient.SqlCommand.CommandText = "select distinct [id_users] from [ticket]" & vbCrLf & _

"where [otklon] = 0 " & vbCrLf & _

"and [open_ticket] >= convert(datetime,'" & _& "',12) and [open_ticket] <= convert(datetime,'" & _& "',12)".SelectCommand = SqlCommand1.SelectCommand.Connection = SqlConnection1c_row, c1_row As Integerid_ticket, fio, incident As StringoWord As Word.ApplicationoDoc As Word.DocumentoPara0, oPara1 As Word.Paragraph= CreateObject("Word.Application").Visible = True= oWord.Documents.Add= oDoc.Content.Paragraphs.Add.Range.Text = "Отчет о заявках по исполнителям - " & DateAndTime.Now.ToString.Range.Font.Size = 13.Range.Font.Bold = True.Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.InsertParagraphAfter()= oDoc.Content.Paragraphs.Add.Range.Text = "За период - с " & DateTimePicker1.Value.ToString & _

" по " & DateTimePicker2.Value.ToString.Range.Font.Size = 12.Range.Font.Bold = False.Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 20.Range.ParagraphFormat.SpaceAfterAuto = False.Range.InsertParagraphAfter().SelectCommand.Connection.Open().Fill(DataSet1)_row = DataSet1.Tables.Item(0).Rows.Countid_user As Integern_user As Stringi = 1 To c_row_user = DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(0)_user = GetAdmin(id_user).Range.Font.Bold = True.Range.ParagraphFormat.SpaceAfter = 10.Range.InsertAfter(n_user & vbCrLf)SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "select [id_ticket],[fio],[id_incident] from [ticket] where [otklon] = 0 " & _

"and [open_ticket] >= convert(datetime,'" & _& "',12) and [open_ticket] <= convert(datetime,'" & _& "',12) and [id_users] = " & id_user.ToString.ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)_row = DataSet2.Tables.Item(0).Rows.Countj = 1 To c1_row.Range.Font.Bold = False.Range.ParagraphFormat.SpaceAfter = 0_ticket = DataSet2.Tables.Item(0).Rows.Item(j - 1).Item(0)= DataSet2.Tables.Item(0).Rows.Item(j - 1).Item(1)= GetIncident(DataSet2.Tables.Item(0).Rows.Item(j - 1).Item(2)).Range.InsertAfter(id_ticket & vbTab & fio & vbTab & incident & vbCrLf)ex As ExceptionTrySub

Sub Otchet_Otkl()StartDate As String = Form6.GetDateString(DateTimePicker1.Value)EndDate As String = Form6.GetDateString(DateTimePicker2.Value)con_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter1 As New SqlClient.SqlDataAdapterDataSet1 As New DataSetSqlConnection1 As New SqlClient.SqlConnection.ConnectionString = con_stringSqlCommand1 As New SqlClient.SqlCommand.CommandText = "select [id_ticket],[fio],[id_incident] from [ticket]" & vbCrLf & _

"where [otklon] = 1 " & vbCrLf & _

"and [open_ticket] >= convert(datetime,'" & _& "',12) and [open_ticket] <= convert(datetime,'" & _& "',12)".SelectCommand = SqlCommand1.SelectCommand.Connection = SqlConnection1c_row, c_col As Integerid_ticket, fio, incident, comment As StringoWord As Word.ApplicationoDoc As Word.DocumentoTable As Word.TableoPara0, oPara1, oPara2, oPara3, oPara4 As Word.Paragraph= CreateObject("Word.Application").Visible = True= oWord.Documents.Add= oDoc.Content.Paragraphs.Add.Range.Text = "Отчет об отклоненных заявках - " & DateAndTime.Now.ToString.Range.Font.Size = 13.Range.Font.Bold = True.Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.InsertParagraphAfter()= oDoc.Content.Paragraphs.Add.Range.Text = "За период - с " & DateTimePicker1.Value.ToString & _

" по " & DateTimePicker2.Value.ToString.Range.Font.Size = 12.Range.Font.Bold = False.Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 20.Range.ParagraphFormat.SpaceAfterAuto = False.Range.InsertParagraphAfter().SelectCommand.Connection.Open().Fill(DataSet1)_row = DataSet1.Tables.Item(0).Rows.Count_col = DataSet1.Tables.Item(0).Columns.Count= oDoc.Tables.Add(oDoc.Bookmarks.Item("\endofdoc").Range, c_row + 1, 4).Range.ParagraphFormat.SpaceAfter = 6.Range.Font.Size = 11.Range.Font.Bold = False.Rows.Borders.Enable = True.Columns.Borders.Enable = True.Columns(1).SetWidth(43, Word.WdRulerStyle.wdAdjustNone).Columns(2).SetWidth(80, Word.WdRulerStyle.wdAdjustNone).Columns(3).SetWidth(170, Word.WdRulerStyle.wdAdjustNone).Columns(4).SetWidth(179, Word.WdRulerStyle.wdAdjustNone).Rows.Item(1).Range.Font.Bold = True.Rows.Item(1).Shading.BackgroundPatternColor = Word.WdColor.wdColorGray15.Cell(1, 1).Range.Text = "Номер".Cell(1, 2).Range.Text = "Пользователь".Cell(1, 3).Range.Text = "Инцидент".Cell(1, 4).Range.Text = "Текст заявки"i = 1 To c_row_ticket = DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(0)= DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(1)= GetIncident(DataSet1.Tables.Item(0).Rows.Item(i - 1).Item(2))= GetComment(id_ticket).Cell(i + 1, 1).Range.Text = CStr(id_ticket).Cell(i + 1, 2).Range.Text = CStr(fio).Cell(i + 1, 3).Range.Text = CStr(incident).Cell(i + 1, 4).Range.Text = Replace(CStr(comment), "----Пользователь----" & vbCrLf, "")= oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\endofdoc").Range).Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.Text = "Всего заявок - " & vbTab & vbTab & vbTab & c_row.Range.Font.Size = 11.Range.Font.Bold = True.Range.InsertParagraphAfter()= oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\endofdoc").Range)SqlAdapter3 As New SqlClient.SqlDataAdapterDataSet3 As New DataSetSqlConnection3 As New SqlClient.SqlConnectioncmd As String = "select distinct [id_incident] from [ticket] where [otklon] = 1 " & _

"and [open_ticket] >= convert(datetime,'" & _& "',12) and [open_ticket] <= convert(datetime,'" & _& "',12)".ConnectionString = con_stringSqlCommand3 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand3.SelectCommand.Connection = SqlConnection3.SelectCommand.Connection.Open().Fill(DataSet3)ninc As String = DataSet3.Tables.Item(0).Rows.Count.ToString.SelectCommand.Connection.Close().Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.Text = "Всего типов инцидентов - " & vbTab & ninc.Range.Font.Size = 11.Range.Font.Bold = True.Range.InsertParagraphAfter()= oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\endofdoc").Range)SqlAdapter4 As New SqlClient.SqlDataAdapterDataSet4 As New DataSetSqlConnection4 As New SqlClient.SqlConnection= "select distinct convert(char(11),[fio]) from [ticket] where [otklon] = 1 " & _

"and [open_ticket] >= convert(datetime,'" & _& "',12) and [open_ticket] <= convert(datetime,'" & _& "',12)".ConnectionString = con_stringSqlCommand4 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand4.SelectCommand.Connection = SqlConnection4.SelectCommand.Connection.Open().Fill(DataSet4)nfio As String = DataSet4.Tables.Item(0).Rows.Count.ToString.SelectCommand.Connection.Close().Range.ParagraphFormat.SpaceBefore = 0.Range.ParagraphFormat.SpaceBeforeAuto = False.Range.ParagraphFormat.SpaceAfter = 0.Range.ParagraphFormat.SpaceAfterAuto = False.Range.Text = "Всего пользователей - " & vbTab & nfio.Range.Font.Size = 11.Range.Font.Bold = True.Range.InsertParagraphAfter()ex As ExceptionTrySub

Sub Otchet_ProblUsers()

Sub

Sub Otchet_ProblPC()

Sub

Sub Otchet_Dynamic()

Sub

Function GetIncident(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [name_incident]" & _

"FROM [incident] where id_incident = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Function GetComment(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [comments]" & _

"FROM [comments] where id_ticket = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()Function

Function GetAdmin(ByVal id As Integer) As Stringcon_string As String = "Data Source=" & Form1.srv & ";Initial Catalog=" & Form1.it_db & ";Integrated Security=True"SqlAdapter2 As New SqlClient.SqlDataAdapterDataSet2 As New DataSetSqlConnection2 As New SqlClient.SqlConnectioncmd As String = "SELECT [admin]" & _

"FROM [admins] where id_users = " & CStr(id).ConnectionString = con_stringSqlCommand2 As New SqlClient.SqlCommand.CommandText = cmd.SelectCommand = SqlCommand2.SelectCommand.Connection = SqlConnection2.SelectCommand.Connection.Open().Fill(DataSet2)= DataSet2.Tables.Item(0).Rows.Item(0).Item(0).SelectCommand.Connection.Close()FunctionClass

System.Data.Odbc

Public Class Form5

Sub Form5_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Shown.Visible = FalseSub

Sub Form5_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Visible = True.Activate()Sub

Sub Form5_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load.Text = "Действие выполнять" & vbCrLf & "один раз"Sub

Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click.srv = TextBox1.Text.it_db = TextBox2.TextSub

Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click()Sub

Private Sub DBCreate()cmd1 As String = _

"CREATE DATABASE [" & TextBox2.Text & "] ON PRIMARY " & vbCrLf & _

"( NAME = N'" & TextBox2.Text & "', FILENAME = N'C:\" & TextBox2.Text & ".mdf' , SIZE = 3072KB , FILEGROWTH = 1024KB )" & vbCrLf & _

" LOG ON " & vbCrLf & _

"( NAME = N'" & TextBox2.Text & "_log', FILENAME = N'C:\" & TextBox2.Text & "_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%)" & & _

"ALTER DATABASE [" & TextBox2.Text & "] SET _LEVEL = 100" & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET ANSI_NULL_DEFAULT OFF " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET ANSI_NULLS OFF " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET ANSI_PADDING

OFF " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET ANSI_WARNINGS " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET ARITHABORT OFF

" & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET AUTO_CLOSE OFF

" & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET _CREATE_STATISTICS ON " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET AUTO_SHRINK " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET

AUTO_UPDATE_STATISTICS ON " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET _CLOSE_ON_COMMIT OFF " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET _DEFAULT GLOBAL " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET _NULL_YIELDS_NULL OFF " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET _ROUNDABORT OFF " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET _IDENTIFIER OFF " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET

RECURSIVE_TRIGGERS OFF " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET DISABLE_BROKER

" & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET

AUTO_UPDATE_STATISTICS_ASYNC OFF " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET

DATE_CORRELATION_OPTIMIZATION OFF " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET

PARAMETERIZATION SIMPLE " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET READ_WRITE " &

vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET RECOVERY " & vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET MULTI_USER " &

vbCrLf & _

"ALTER DATABASE [" & TextBox2.Text & "] SET PAGE_VERIFY "cmd2 As String = _

"USE [" & TextBox2.Text & "]" & vbCrLf & _

"IF NOT EXISTS (SELECT name FROM sys.filegroups WHERE is_default=1 AND name = N'PRIMARY') ALTER DATABASE [" & .Text & "] MODIFY FILEGROUP [PRIMARY] DEFAULT" & & _

"USE [" & TextBox2.Text & "]" & vbCrLf & _

"SET ANSI_NULLS ON" & vbCrLf & _

"SET QUOTED_IDENTIFIER ON" & vbCrLf & _

"CREATE TABLE [dbo].[status](" & vbCrLf & _

"[id_status] [int] IDENTITY(1,1) NOT NULL," & vbCrLf & _

"[name_status] [text] NOT NULL," & vbCrLf & _

" CONSTRAINT [PK_status] PRIMARY KEY CLUSTERED " & vbCrLf & _

"(" & vbCrLf & _

"[id_status] ASC" & vbCrLf & _

")WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]" & vbCrLf & _

") ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]" & vbCrLf & _

"SET ANSI_NULLS ON" & vbCrLf & _

"SET QUOTED_IDENTIFIER ON" & vbCrLf & _

"CREATE TABLE [dbo].[priority](" & vbCrLf & _

"[id_priority] [int] IDENTITY(1,1) NOT NULL," & vbCrLf & _

"[name_priority] [text] NOT NULL," & vbCrLf & _

" CONSTRAINT [PK_priority] PRIMARY KEY CLUSTERED " & vbCrLf & _

"(" & vbCrLf & _

"[id_priority] ASC" & vbCrLf & _

")WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]" & vbCrLf & _

") ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]" & vbCrLf & _

"SET ANSI_NULLS ON" & vbCrLf & _

"SET QUOTED_IDENTIFIER ON" & vbCrLf & _

"CREATE TABLE [dbo].[incident](" & vbCrLf & _

"[id_incident] [int] IDENTITY(1,1) NOT NULL," & vbCrLf & _

"[name_incident] [text] NOT NULL," & vbCrLf & _

" CONSTRAINT [PK_incident] PRIMARY KEY CLUSTERED " & vbCrLf & _

"(" & vbCrLf & _

"[id_incident] ASC" & vbCrLf & _

")WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]" & vbCrLf & _

") ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]" & vbCrLf & _

"SET ANSI_NULLS ON" & vbCrLf & _

"SET QUOTED_IDENTIFIER ON" & vbCrLf & _

"CREATE TABLE [dbo].[admins](" & vbCrLf & _

"[id_users] [int] IDENTITY(-1,1) NOT NULL," & vbCrLf & _

"[admin] [text] NOT NULL," & vbCrLf & _

"[login] [text] NOT NULL," & vbCrLf & _

" CONSTRAINT [PK_admins] PRIMARY KEY CLUSTERED " & vbCrLf & _

"(" & vbCrLf & _

"[id_users] ASC" & vbCrLf & _

")WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]" & vbCrLf & _

") ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]" & vbCrLf & _

"SET ANSI_NULLS ON" & vbCrLf & _

"SET QUOTED_IDENTIFIER ON" & vbCrLf & _

"CREATE TABLE [dbo].[ticket](" & vbCrLf & _

"[id_ticket] [int] IDENTITY(1,1) NOT NULL," & vbCrLf & _

"[fio] [text] NOT NULL," & vbCrLf & _

"[phone] [text] NOT NULL," & vbCrLf & _

"[id_incident] [int] NOT NULL," & vbCrLf & _

"[id_priority] [int] NOT NULL," & vbCrLf & _

"[id_status] [int] NOT NULL," & vbCrLf & _

"[id_users] [int] NULL," & vbCrLf & _

"[open_ticket] [datetime] NOT NULL," & vbCrLf & _

"[close_ticket] [datetime] NULL," & vbCrLf & _

"[work_time] [time] NULL," & vbCrLf & _

"[tabel] [smallint] NOT NULL," & vbCrLf & _

"[pc_inv] [text] NOT NULL," & vbCrLf & _

"[room] [text] NOT NULL," & vbCrLf & _

"[deleted] [bit] NOT NULL," & vbCrLf & _

"[otklon] [bit] NOT NULL," & vbCrLf & _

" CONSTRAINT [PK_ticket] PRIMARY KEY CLUSTERED " & vbCrLf

& _

"(" & vbCrLf & _

"[id_ticket] ASC" & vbCrLf & _

")WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]" & vbCrLf & _

") ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]" & vbCrLf & _

"SET ANSI_NULLS ON" & vbCrLf & _

"SET QUOTED_IDENTIFIER ON" & vbCrLf & _

"CREATE TABLE [dbo].[comments](" & vbCrLf & _

"[id_ticket] [int] NOT NULL," & vbCrLf & _

"[dt_comments] [datetime] NOT NULL," & vbCrLf & _

"[comments] [text] NOT NULL," & vbCrLf & _

" CONSTRAINT [PK_comments] PRIMARY KEY CLUSTERED " & vbCrLf & _

"(" & vbCrLf & _

"[id_ticket] ASC" & vbCrLf & _

")WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, _DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, _PAGE_LOCKS = ON) ON [PRIMARY]" & vbCrLf & _

") ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]" & vbCrLf & _

"SET ANSI_NULLS ON" & vbCrLf & _

"SET QUOTED_IDENTIFIER ON" & vbCrLf & _

"SET ANSI_PADDING ON" & vbCrLf & _

"CREATE TABLE [dbo].[attach](" & vbCrLf & _

"[id_ticket] [int] NOT NULL," & vbCrLf & _

"[image] [varbinary](max) NOT NULL," & vbCrLf & _

" CONSTRAINT [PK_attach] PRIMARY KEY CLUSTERED " & vbCrLf

& _

"(" & vbCrLf & _

"[id_ticket] ASC" & vbCrLf & _

")WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]" & vbCrLf & _

") ON [PRIMARY]" & vbCrLf & _

"SET ANSI_PADDING OFF" & vbCrLf & _

"ALTER TABLE [dbo].[attach] WITH CHECK ADD CONSTRAINT [FK_attach_ticket] FOREIGN KEY([id_ticket])" & vbCrLf & _

"REFERENCES [dbo].[ticket] ([id_ticket])" & vbCrLf & _

"ON UPDATE CASCADE" & vbCrLf & _

"ALTER TABLE [dbo].[attach] CHECK CONSTRAINT [FK_attach_ticket]" & vbCrLf & _

"ALTER TABLE [dbo].[comments] WITH CHECK ADD CONSTRAINT [FK_comments_ticket] FOREIGN KEY([id_ticket])" & vbCrLf & _

"REFERENCES [dbo].[ticket] ([id_ticket])" & vbCrLf & _

"ON UPDATE CASCADE" & vbCrLf & _

"ALTER TABLE [dbo].[comments] CHECK CONSTRAINT [FK_comments_ticket]" & vbCrLf & _

"ALTER TABLE [dbo].[ticket] WITH CHECK ADD CONSTRAINT [FK_ticket_admins] FOREIGN KEY([id_users])" & vbCrLf & _

"REFERENCES [dbo].[admins] ([id_users])" & vbCrLf & _

"ALTER TABLE [dbo].[ticket] CHECK CONSTRAINT [FK_ticket_admins]" & vbCrLf & _

"ALTER TABLE [dbo].[ticket] WITH CHECK ADD CONSTRAINT [FK_ticket_incident] FOREIGN KEY([id_incident])" & vbCrLf & _

"REFERENCES [dbo].[incident] ([id_incident])" & vbCrLf & _

"ALTER TABLE [dbo].[ticket] CHECK CONSTRAINT [FK_ticket_incident]" & vbCrLf & _

"ALTER TABLE [dbo].[ticket] WITH CHECK ADD CONSTRAINT [FK_ticket_priority] FOREIGN KEY([id_priority])" & vbCrLf & _

"REFERENCES [dbo].[priority] ([id_priority])" & vbCrLf & _

"ALTER TABLE [dbo].[ticket] CHECK CONSTRAINT [FK_ticket_priority]" & vbCrLf & _

"ALTER TABLE [dbo].[ticket] WITH CHECK ADD CONSTRAINT [FK_ticket_status] FOREIGN KEY([id_status])" & vbCrLf & _

"REFERENCES [dbo].[status] ([id_status])" & vbCrLf & _

"ALTER TABLE [dbo].[ticket] CHECK CONSTRAINT [FK_ticket_status]"cmd3 As String = _

"USE [" & TextBox2.Text & "]" & vbCrLf & _

"INSERT" & vbCrLf & _

"INTO admins(admin,login)" & vbCrLf & _

"VALUES ('Не назначен','Нет')" & vbCrLf & _

"INSERT" & vbCrLf & _

"INTO incident(name_incident)" & vbCrLf & _

"VALUES ('Другое'),('Не открывается файл'),('Отсутствуют сетевые диски'),('Перемещение техники')," & vbCrLf & _

"('Проблема с интернетом'),('Проблема с компьютером'),('Проблема с сетью'),('Проблема с электронной почтой')," & vbCrLf & _

"('Проблема с принтером'),('Создание нового рабочего места'),('Телефония')" & vbCrLf & _

"INSERT" & vbCrLf & _

"INTO priority(name_priority)" & vbCrLf & _

"VALUES ('Низкий'),('Нормальный'),('Высокий')" & vbCrLf & _

"INSERT" & vbCrLf & _

"INTO status(name_status)" & vbCrLf & _

"VALUES ('Открыта'),('Назначена'),('В работе'),('Отложена'),('Закрыта')"conn_string As String = "Driver={SQL Server};Server=" & TextBox1.Text & ";Trusted_Connection=Yes;Database=master;"Not Form1.TestConnect(TextBox1.Text, TextBox2.Text) Then(conn_string, cmd1)_string = "Driver={SQL Server};Server=" & TextBox1.Text & ";Trusted_Connection=Yes;Database=" & TextBox2.Text & ";"(conn_string, cmd2)(conn_string, cmd3)("База " & Chr(34) & TextBox2.Text & Chr(34) & " создана на сервере " & _(34) & TextBox1.Text & Chr(34) & ".", _.Information, "Сообщение")("База " & Chr(34) & TextBox2.Text & Chr(34) & " не создана на сервере " & _(34) & TextBox1.Text & Chr(34) & ", т.к. существует база с таким же именем.", _.Information, "Сообщение")IfSub

ExQuery(ByVal connectionString As String, ByVal cmd As String) As Integercommand As New OdbcCommand(cmd)connection As New OdbcConnection(connectionString).Connection = connection.Open()= command.ExecuteNonQuery()ex As Exception("Ошибка: " & ex.Message, MsgBoxStyle.Information, "Сообщение")TryUsingFunction

Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click.Visible = True.Activate()Sub

Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click.Visible = True.Activate()SubClass

Class Form6

Sub Form6_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Shown.Visible = FalseSub

Sub Form6_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Visible = True.Activate()Sub

Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChangedCheckBox1.Checked Then.Enabled = True.Enabled = FalseIfSub

Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox2.CheckedChangedCheckBox2.Checked Then.Enabled = True.Enabled = FalseIfSub

Sub Form6_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load.MaxDate = Date.Today.MaxDate = Date.TodaySub

Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.ClickStartDate, EndDate As StringCheckBox1.Checked Then= GetDateString(DateTimePicker1.Value.Date)= "20120101 00:00:00"IfCheckBox2.Checked Then= GetDateString(DateTimePicker2.Value.Date)= "21001231 00:00:00"IfNot DateTimePicker1.Value.Date = DateTimePicker2.Value.Date Thencmd As String = ""cmd1 As String = _

"declare @mint int, @maxt int" & vbCrLf & _

"SELECT @mint=MIN(id_ticket)" & vbCrLf & _

"FROM [ticket] where [open_ticket] > convert(datetime,'" & StartDate & "',12) and [open_ticket] < convert(datetime,'" & EndDate & "',12)" & vbCrLf & _

"select @maxt=MAX(id_ticket)" & vbCrLf & _

"FROM [ticket] where [open_ticket] > convert(datetime,'" & StartDate & "',12) and [open_ticket] < convert(datetime,'" & EndDate & "',12)" & vbCrLfcmd2 As String = _

"UPDATE ticket" & vbCrLf & _

"SET deleted = 1 where ([id_ticket] >= @mint) and ([id_ticket] <= @maxt) and ([deleted] = 0)"cmd3 As String = _

"delete from [comments] where ([id_ticket] >= @mint) and ([id_ticket] <= @maxt)" & vbCrLf & _

"delete from [attach] where ([id_ticket] >= @mint) and ([id_ticket] <= @maxt)" & vbCrLf & _

"delete from [ticket] where ([id_ticket] >= @mint) and ([id_ticket] <= @maxt)"conn_string As String = "Driver={SQL Server};Server=" & Form1.srv & ";Trusted_Connection=Yes;Database=" & Form1.it_db & ";"CheckBox3.Checked Then= cmd1 & cmd3= cmd1 & cmd2Ifdelt As Integer = Form5.ExQuery(conn_string, cmd)delt > 0 ThenCheckBox3.Checked Then("Удалено записей - " & CStr(delt / 3), MsgBoxStyle.Information, "Сообщение")("Удалено записей - " & CStr(delt), MsgBoxStyle.Information, "Сообщение")If("Нет данных для удаления", MsgBoxStyle.Information, "Сообщение")If("Нулевой интервал. Измените дату", MsgBoxStyle.Information, "Сообщение")IfSub

GetDateString(ByVal dt As DateTime) As Stringsd, sm, sy, sh, sn, ss As Stringdn As Date = dtDateAndTime.Hour(dn) < 10 Then= "0" + DateAndTime.Hour(dn).ToString= DateAndTime.Hour(dn).ToStringIfDateAndTime.Minute(dn) < 10 Then= "0" + DateAndTime.Minute(dn).ToString= DateAndTime.Minute(dn).ToStringIfDateAndTime.Second(dn) < 10 Then= "0" + DateAndTime.Second(dn).ToString= DateAndTime.Second(dn).ToStringIf= DateAndTime.Year(dn).ToStringDateAndTime.Month(dn) < 10 Then= "0" + DateAndTime.Month(dn).ToString= DateAndTime.Month(dn).ToStringIfDateAndTime.Day(dn) < 10 Then= "0" + DateAndTime.Day(dn).ToString= DateAndTime.Day(dn).ToStringIf= sy & sm & sd & " " & sh & ":" & sn & ":" & ssFunctionClassClass Form7

Sub Form7_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load.Text = "Физическое удаление" & vbCrLf & "записей"Sub

Sub Form7_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed.Visible = True.Activate()Sub

Private Sub Form7_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Shown.Visible = FalseSub

Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Clickcmd As String = ""cmd1 As String = _

"UPDATE ticket" & vbCrLf & _

"SET deleted = 1 where ([deleted] = 0)"cmd2 As String = _

"delete from [comments]" & vbCrLf & _

"delete from [attach]" & vbCrLf & _

"delete from [ticket]"conn_string As String = "Driver={SQL Server};Server=" & Form1.srv & ";Trusted_Connection=Yes;Database=" & Form1.it_db & ";"CheckBox3.Checked Then= cmd2= cmd1Ifdelt As Integer = Form5.ExQuery(conn_string, cmd)delt > 0 ThenCheckBox3.Checked Then("Удалено записей - " & CStr(delt / 3), MsgBoxStyle.Information, "Сообщение")("Удалено записей - " & CStr(delt), MsgBoxStyle.Information, "Сообщение")If.Close()("Нет данных для удаления", MsgBoxStyle.Information, "Сообщение")IfSubClass


Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!