Удаленное взаимодействие базы данных с конфигурацией "1С:Предприятие"
Публикации на Интернет-сервере запросов к базе данных. Реализация интерфейсной части информационной подсистемы, экранных форм и SQL запросов. Обоснование требований к серверу и рабочей станции пользователя. Расчёт себестоимости подсистемы "Запросы в ЖКХ".
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 29.06.2011 |
Размер файла | 6,7 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Заключение
Основным результатом проведенного дипломного проектирования явилось написание, отладка и внедрение в НКО ТСЖ "ИСТОК", а также в Невинномысском ГМУП "УЖКХ" информационной подсистемы "Запросы в ЖКХ". В ближайшем будущем данный программный комплекс будет принят в эксплуатацию для его производственной эксплуатации в рамках рабочего места бухгалтера ТСЖ и рабочего места сотрудника ЖКХ. Необходимость автоматизации запросов в ЖКХ уже давно стояла перед ТСЖ "ИСТОК", а на текущий момент, в связи с увеличением количества запросов, приобрела наибольшую актуальность.
9. Внедрение информационной подсистемы "Запросы в ЖКХ" будет способствовать более эффективным запросам в ЖКХ, позволит повысит скорость запросов а также скорость занесения в базу данных их результатов. При внедрении информационной подсистемы "Запросы в ЖКХ" скорость запросов возрастет в 30 раз. Годовой эффект от внедрения программного продукта составляет 11029,06 руб. Чистый дисконтированный доход за 2 года использования программного продукта равен 20219,94 руб. Срок окупаемости проекта 1,37 года.
На основе решения директоров ТСЖ и ЖКХ программа была написана на Microsoft Office Access 2007, платформе .Net Framework а также на "1С:Предприятие" 8.2. К основным достоинствам разработанного программного средства следует отнести те, которые были направлены на преодоление основной проблемы, возникающей при написании программ такого класса - это построение удалённого взаимодействия с базой данных с помощью веб-сервисров. Поэтому эффективная организация запросов к базе данных и публикация их на Интернет-сервере, а также доступ к серверу из 1С: "Предприятие" - основа эффективного функционирования описанной подсистемы.
Организация запросов и заполнение баз данных организованно таким образом, что пользователь затрачивает на это минимальное количество времени с наименьшим допущением ошибок. В ЖКХ ежедневно поступает множество запросов, поэтому эффективная организация удалённого доступа к базе играет существенную роль.
Дальнейшим шагом усовершенствования разработанной подсистемы будет написание программного средства для новой версии .NET Framework а также для новой версии "1С: Предприятие".
Библиографический список
1. Трофимова, М. В. Анализ систем управления. Учебное пособие [Текст]/ Под ред. Е. Н. Калашниковой, О. В. Кирпы. - Ставрополь: СевКавГТУ, 2010 - 171 с.
2. СанПиН 2.2.2/2.4.134-08 - Гигиенические требования к персональным электронно-вычислительным машинам и организации работы
3. СанПиН 2.2.4/2.1.8.055 - 96 электромагнитные излучения радиочастотного диапазона.
4. СанПиН 2.2.4/2.1.8.562-96 Минздрав России Москва Государственная система санитарно-эпидемиологического нормирования Российской Федерации
5. Митичкин С. А. Разработка в системе "1С:Предприятие" 8.2 [Текст], М. - ООО "1С:Паблишинг", 2010. - 413 с.: ил. (книга по 1С)
6. "1С:Предприятие". Платформа . Лицензирование [Электронный ресурс]// - www/1c-v8.ru/1cv8.php.
7. Варианты работы системы "1С:Предприятие 8" [Электронный ресурс] // - http://centercompte-ch.ru/st_varianti_raboti_1cv8.
8. Работа с Microsoft Office Access 2007 [Электронный ресурс] // - http://www.itshop.ru/Microsoft-Office-Access-2007/l9i7316
9. Распределенные базы-статьи [Электронный ресурс] //- 1С-mista.ru
10. Запросы-статьи про 1С-mista.ru [Электронный ресурс] //- http://www.m-ista.ru/articles1c/query теория по запросам и т. д.
11. Работа сVisual Sdio.net [Электронный ресурс] // - kompot.uc-oz.ru/publ/17-1-0-29
12. Веб-сервисы в "1с:Предприятие" 8.2 [Электронный ресурс] // - http://v8.1c.ru/overview/webservices
13. Гартвич А. В. - 1С: "Бухгалтерия" 8.2 как на ладони [Текст]. - "1С-Паблишинг" - 238 с.
14. Фирма "1С" - 1С: "Бухгалтерия" 8.2 Учебная версия [Текст]. "1С-Паблишинг", 2006. - 563 с.
15. Рекомендации по выбору оборудования для работы с 1С: "Предприятием" 8.2 [Электронный ресурс] // - http://v8.1c.ru/overview/reco-mendations (требования АО)
16. Системные требования 1С:Предприятия 8.2 [Электронный ресурс] // - http://v8.2c.ru/requirements/ (требования ПО)
17. Методология создания корпоративных ИС [Электронный ресурс] // - http://data.mf.gr-su.by/citforum/htdocs/database/kbd96/43.shtml
18. Методы и технологии реинжиниринга ИС [Электронный ресурс] // - http://www.citforu-m.ru/SE/project/isr/
19. Смирнова, Г. Н., Сорокин, А. А., Тельнов, Ю. Ф. Проектирование экономических информационных систем: Учебник [Текст]/ Г. Н. Смирнова, А. А. Сорокин , Ю. Ф. Тельнов / Под ред. Ю.Ф. Тельнова. - М: Финансы и статистика, 2009. - 512 с., ил.
20. ГОСТ 7.0.5--2008 - общие правила составления библиографических ссылок [Электронный ресурс] // - http://ru.wikisource.org/wiki/ГОСТ_Р_7.0.5.
Приложение А
Листинг программного кода информационной подсистемы "Запросы в ЖКХ"
В.1 - Листинг класса zadolgenost
using System;
using System.Data.OleDb;
using System.Data;
using System.Collections.Generic;
using System.Web.Configuration;
public class Dolg
{
public string Organization { get; set; }
public DateTime Date { get; set; }
public decimal Summ { get; set; }
}
public class Class1
{
public List<Dolg> GetDolg(int id)
{
List<Dolg> result = new List<Dolg>();
OleDbTransaction transaction = null;
OleDbConnection Base = new OleDbConnection(WebConfigurationManager.ConnectionStrings["БазаЖКХ"].ConnectionString);
try
{
Base.Open();
transaction = Base.BeginTransaction(IsolationLevel.ReadCommitted);
OleDbCommand cm = new OleDbCommand();
cm.Connection = Base;
cm.Transaction = transaction;
cm.CommandText = "SELECT предприятия.название_предприятия, задолженность.дата_задолженности, задолженность.сумма_задолженности FROM задолженность,предприятия " +
"WHERE предприятия.код_предприятия = задолженность.код_предприятия and предприятия.код_предприятия = @id";
cm.Parameters.AddWithValue("@id", id);
using (OleDbDataReader reader = cm.ExecuteReader())
{
while (reader.Read())
{
Dolg dolg = new Dolg();
dolg.Organization = (string)reader["название_предприятия"];
dolg.Date = (DateTime)reader["дата_задолженности"];
dolg.Summ = (decimal)reader["сумма_задолженности"];
result.Add(dolg);
}
}
transaction.Commit();
}
catch (Exception)
{
transaction.Rollback();
throw;
}
finally
{
Base.Close();
}
return result;
}
}
В.2 - Листинг класса slevo
using System;
using System.Data.OleDb;
using System.Data;
using System.Collections.Generic;
using System.Web.Configuration;
public class Spravka
{
public string Organization { get; set; }
public int kod { get; set; }
}
public class Class3
{
public List<Spravka> GetSpravka()
{
List<Spravka> result = new List<Spravka>();
OleDbTransaction transaction = null;
OleDbConnection Base = new OleDbConnection(WebConfigurationManager.ConnectionStrings["БазаЖКХ"].ConnectionString);
try
{
Base.Open();
transaction = Base.BeginTransaction(IsolationLevel.ReadCommitted);
OleDbCommand cm = new OleDbCommand();
cm.Connection = Base;
cm.Transaction = transaction;
cm.CommandText = "SELECT предприятия.название_предприятия, предприятия.код_предприятия FROM предприятия";
using (OleDbDataReader reader = cm.ExecuteReader())
{
while (reader.Read())
{
Spravka Spravka = new Spravka();
Spravka.Organization = (string)reader["название_предприятия"];
Spravka.kod = (int)reader["код_предприятия"];
result.Add(Spravka);
}
}
transaction.Commit();
}
catch (Exception)
{
transaction.Rollback();
throw;
}
finally
{
Base.Close();
}
return result;
}
}
В.3 - Листинг класса spravo
using System;
using System.Data.OleDb;
using System.Data;
using System.Collections.Generic;
using System.Web.Configuration;
public class Spravka1
{
public string vidresursa { get; set; }
public int kodresursa { get; set; }
}
public class Class4
{
public List<Spravka1> GetSpravka1()
{
List<Spravka1> result = new List<Spravka1>();
OleDbTransaction transaction = null;
OleDbConnection Base = new OleDbConnection(WebConfigurationManager.ConnectionStrings["БазаЖКХ"].ConnectionString);
try
{
Base.Open();
transaction = Base.BeginTransaction(IsolationLevel.ReadCommitted);
OleDbCommand cm = new OleDbCommand();
cm.Connection = Base;
cm.Transaction = transaction;
cm.CommandText = "SELECT ресурсы.код_ресурса, ресурсы.вид_ресурса FROM ресурсы";
using (OleDbDataReader reader = cm.ExecuteReader())
{
while (reader.Read())
{
Spravka1 Spravka1 = new Spravka1();
Spravka1.vidresursa = (string)reader["вид_ресурса"];
Spravka1.kodresursa = (int)reader["код_ресурса"];
result.Add(Spravka1);
}
}
transaction.Commit();
}
catch (Exception)
{
transaction.Rollback();
throw;
}
finally
{
Base.Close();
}
return result;
}
}
В.4 - Листинг класса tatifi
using System;
using System.Data.OleDb;
using System.Data;
using System.Collections.Generic;
using System.Web.Configuration;
public class Dolg1
{
public string vidresursa { get; set; }
public DateTime Date { get; set; }
public decimal Summ { get; set; }
}
public class Class5
{
public List<Dolg1> GetDolg1(int id)
{
List<Dolg1> result = new List<Dolg1>();
OleDbTransaction transaction = null;
OleDbConnection Base = new OleDbConnection(WebConfigurationManager.ConnectionStrings["БазаЖКХ"].ConnectionString);
try
{
Base.Open();
transaction = Base.BeginTransaction(IsolationLevel.ReadCommitted);
OleDbCommand cm = new OleDbCommand();
cm.Connection = Base;
cm.Transaction = transaction;
cm.CommandText = "SELECT ресурсы.вид_ресурса, тарифы.дата_с_которой_действует_тариф, тарифы.стоимость_ед_ресурса_руб FROM тарифы,ресурсы " +
"WHERE тарифы.код_ресурса = ресурсы.код_ресурса and ресурсы.код_ресурса = @id";
cm.Parameters.AddWithValue("@id", id);
using (OleDbDataReader reader = cm.ExecuteReader())
{
while (reader.Read())
{
Dolg1 dolg1 = new Dolg1();
dolg1.vidresursa = (string)reader["вид_ресурса"];
dolg1.Date = (DateTime)reader["дата_с_которой_действует_тариф"];
dolg1.Summ = (decimal)reader["стоимость_ед_ресурса_руб"];
result.Add(dolg1);
}
}
transaction.Commit();
}
catch (Exception)
{
transaction.Rollback();
throw;
}
finally
{
Base.Close();
}
return result;
}
}
В.5 - Листинг главной формы приложения WebService1
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Services;
using System.Data.Common;
using System.Data.OleDb;
namespace WebService1
{
public class Organization
{
public int Id { get; set; }
public string Name { get; set; }
}
/// <summary>
/// Summary description for Service1
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
public class Service1 : System.Web.Services.WebService
{
[WebMethod]
public List<Dolg> GetDolg(int idOrganization)
{
Class1 class1 = new Class1();
return class1.GetDolg(idOrganization);
}
[WebMethod]
public List<Spravka> GetSpravka()
{
Class3 class3 = new Class3();
return class3.GetSpravka();
}
[WebMethod]
public List<Spravka1> GetSpravka1()
{
Class4 class4 = new Class4();
return class4.GetSpravka1();
}
[WebMethod]
public List<Dolg1> GetDolg1(int idResurs)
{
Class5 class5 = new Class5();
return class5.GetDolg1(idResurs);
}
}
}
В.6 - Листинг модуля формы "Справка по организациям"1:C приложения "Запросы в ЖКХ"
Процедура получитьЧтоТо()
Прокси = WSСсылки.WSССылка1.СоздатьWSПрокси("http://tempuri.org/", "Service1", "Service1Soap");
ТипВходногоПараметра = Прокси.ФабрикаXDTO.Тип("http://tempuri.org/", "GetSpravka");
ВходнойПараметр = Прокси.ФабрикаXDTO.Создать(ТипВходногоПараметра);
рез = Прокси.GetSpravka(ВходнойПараметр);
для каждого строкаСправки из рез.GetSpravkaResult.Spravka цикл
НоваяСтрока = Отчет.ТабличнаяЧасть1.Добавить();
НоваяСтрока.НазваниеОрганизации = строкаСправки.Organization;
НоваяСтрока.КодОрганизации = строкаСправки.kod;
конеццикла;
Конецпроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
получитьЧтоТо() ;
КонецПроцедуры
В.7 - Листинг модуля формы "Запрос на задолженность"1:C приложения "Запросы в ЖКХ"
Процедура получитьЧтоЛибо()
КодПредприятия = Отчет.КодПредприятия;
Прокси = WSСсылки.WSССылка1.СоздатьWSПрокси("http://tempuri.org/", "Service1", "Service1Soap");
рез = Прокси.GetDolg(КодПредприятия);
для каждого строкаДолга из рез.Dolg цикл
НоваяСтрока = Отчет.ТабличнаяЧасть1.Добавить();
НоваяСтрока.Организация = строкаДолга.Organization;
НоваяСтрока.ДатаЗадолженности = строкаДолга.Date;
НоваяСтрока.СуммаЗадолженности = строкаДолга.Summ;
конеццикла;
Конецпроцедуры
&НаКлиенте
Процедура ПолучитьИнформацию(Команда)
получитьЧтоЛибо();
КонецПроцедуры
&НаКлиенте
Процедура Команда1(Команда)
получитьЧтоЛибо();
КонецПроцедуры
В.8 - Листинг модуля формы "Справка по ресурсам"1:C приложения "Запросы в ЖКХ"
Процедура получитьЧтоТо()
Прокси = WSСсылки.WSССылка1.СоздатьWSПрокси("http://tempuri.org/", "Service1", "Service1Soap");
ТипВходногоПараметра = Прокси.ФабрикаXDTO.Тип("http://tempuri.org/", "GetSpravka1");
ВходнойПараметр = Прокси.ФабрикаXDTO.Создать(ТипВходногоПараметра);
рез = Прокси.GetSpravka1(ВходнойПараметр);
для каждого строкаСправки из рез.GetSpravka1Result.Spravka1 цикл
НоваяСтрока = Отчет.ТабличнаяЧасть1.Добавить();
НоваяСтрока.КодРесурса = строкаСправки.kodresursa;
НоваяСтрока.ВидРесурса = строкаСправки.vidresursa;
конеццикла;
Конецпроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
получитьЧтоТо();
КонецПроцедуры
В.9 - Листинг модуля формы "Запрос на ресурсы"1:C приложения "Запросы в ЖКХ"
Процедура получитьЧтоЛибо()
КодРесурса = Отчет.КодРесурса;
Прокси = WSСсылки.WSССылка1.СоздатьWSПрокси("http://tempuri.org/", "Service1", "Service1Soap");
рез = Прокси.GetDolg1(КодРесурса);
для каждого строкаДолга из рез.Dolg1 цикл
НоваяСтрока = Отчет.ТабличнаяЧасть1.Добавить();
НоваяСтрока.ВидРесурса = строкаДолга.vidresursa;
НоваяСтрока.ДатаСКоторойДействуетТариф = строкаДолга.Date;
НоваяСтрока.СтоимостьЕдРесурса = строкаДолга.Summ;
конеццикла;
Конецпроцедуры
&НаКлиенте
Процедура ПолучитьИнформацию(Команда)
получитьЧтоЛибо();
КонецПроцедуры
Приложение Б
Листинг слайдов презентации
Рисунок Б.1 - Слайд №1 "Тема дипломного проекта, ФИО дипломника, учёная степень,учёное звание и ФИО руководителя"
Рисунок Б.2 - Слайд №2 "Актуальность, цели и задачи дипломного проекта"
Рисунок Б.3 - Слайд №3 "Диаграмма вариантов использования информационной подсистемы"
Рисунок Б.4 - Слайд №4 "Логическая модель базы данных"
Рисунок Б.5 - Слайд № "Интерфейс информационной подсистемы"
Рисунок Б.6 - Слайд №6 "Пример отчёта, формируемого информационной подсистемой"
Рисунок Б.7 - Слайд №7 "Показатели технико-экономической эффективности проекта"
Рисунок Б.8 - Слайд №8 "Показатели технико-экономической эффективности проекта"
Рисунок Б.9 - Слайд №9 "Итоги дипломного проектирования"
Размещено на Allbest.ru
Подобные документы
Создание логической модели базы данных информационной подсистемы "Computers". Ввод атрибутов, первичных ключей сущностей базы данных. Требования к центральному процессору, монитору, принтеру. Оценка экономической эффективности внедрения программы.
дипломная работа [1,2 M], добавлен 01.07.2011Инструментальные средства для разработки структуры информационной базы данных "Программа автоматизации учета расчетов с поставщиками", пользовательский интерфейс СУБД Access. Разработка запросов отбора данных и вычислений, экранных форм коррекции данных.
лабораторная работа [2,4 M], добавлен 15.11.2010Анализ предметной области, концептуальных требований и информационных потребностей к разрабатываемой базе данных студентов. Выбор информационных объектов и проектирование информационной структуры. Создание таблиц, отчетов, запросов на выборку и форм.
курсовая работа [69,4 K], добавлен 18.11.2010Формирование основных таблиц базы данных деканата и устанавливание к ним ключей. Заполнение баз необходимыми сведениями. Формулировка схем данных форм и запросов. Настройка некоторых запросов по своим свойствам. Создание форм через "мастера форм".
контрольная работа [1,0 M], добавлен 07.01.2011Разновидности систем управления базами данных. Анализ предметной области. Разработка структуры и ведение базы данных. Структурированный язык запросов SQL. Организация выбора информации из базы данных. Общие принципы проектирования экранных форм, макросов.
курсовая работа [3,1 M], добавлен 26.02.2016Системный анализ и анализ требований к базе данных. Особенности создания отчетов, запросов и форм в Visual Studio 2012. Программная реализация ER-диаграммы. Создание инфологической, логической и физической модели базы данных. Генерация ее в SQL Server.
курсовая работа [1,0 M], добавлен 22.11.2012Объекты и методы проведения предпроектного обследования предприятия, анализ результатов . Схема организационной структуры управления и документооборота. Назначение информационной подсистемы. Реализация подсистемы "Helpdesk" на основе "1С: Предприятие".
дипломная работа [6,9 M], добавлен 24.06.2011Сущности и функциональные зависимости базы данных. Атрибуты и связи. Таблицы базы данных. Построение ER-диаграммы. Организация ввода и корректировки данных. Реляционная схема базы данных. Реализация запросов, получение отчетов. Защита базы данных.
курсовая работа [2,4 M], добавлен 06.02.2016Построение информационно-логической модели базы данных. Корректировка данных средствами запросов. Проектирование алгоритмов обработки данных. Реализация пользовательского интерфейса средствами форм. Разработка запросов для корректировки и выборки данных.
курсовая работа [680,9 K], добавлен 19.10.2010Анализ функциональной структуры автоматизированной системы управления. Обоснование необходимости создания подсистемы учета материальных средств, проектирование информационной базы данных. Расчет себестоимости разработки внедряемого программного продукта.
дипломная работа [5,4 M], добавлен 26.06.2011