Диплом: Автоматизация обработки заявок ИП "Байбеков"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
96
СПИСОК СОКРАЩЕНИЙ
Обозначение
Описание
АИС
Автоматизированная информационная система
АРМ
Автоматизированное рабочее место
АТС
Автоматическая телефонная станция
АХО
Административно-хозяйственный отдел
БД
База данных
ЖЦ
Жизненный цикл
ИБ
Информационная безопасность
ИБП
Источник бесперебойного питания
ИО
Информационное обеспечение
ИС
Информационная система
ИТ
Информационные технологии
ООО
Общество с ограниченной ответственностью
ОС
Операционная система
ПК
Персональный компьютер
ПО
Программное обеспечение
ПС
Программное средство
СУБД
Система управления базами данных
СЭД
Система электронного документооборота
ТЗ
Техническое задание
ТЭО
Технико-экономическое обоснование
ЧДД
Чистый дисконтированный доход
ЭВМ
Электронно-вычислительная машина
97
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Ботов Д.С. Обзор современных средств создания и поддержки
предметно-ориентированных языков программирования // Вестник
Южно-Уральского государственного университета, 2013, №1
2. Гаевская А. Обзор систем электронного документооборота //
Корпоративные системы, 2015, №6
3. Дмитриева М.В. JavaScript. Быстрый старт. — СПб.: БХВ-Петербург,
2012. — 336 с.
4. Осетрова И.С. Разработка баз данных в MS SQL Server 2014. Учебное
пособие. — СПб: Университет ИТМО, 2016. – 114 с.
5. Охотников Е. Ruby - новые грани // RSDN Magazine. - 2012. - №4 - С.67-
86
6. Палицын В.А. Технико-экономическое обоснование дипломных
проектов: метод. пособие для студ. всех спец. БГУИР. В 4-х ч. Ч. 4:
Проекты программного обеспечения. Минск: БГУИР, 2016. – 76 с.
7. Пржиялковский В.В. Введение в Oracle. М.: НОУ "Интуит", 2016. —
358с.
8. Саммерфильд М. Программирование на языке Go. Разработка
приложений XXI века. М.: ДМК Пресс, 2013.—582 с.
9. Северенс Ч. Введение в программирование на Python. М.: Интуит, 2016.
— 232 с.
10. Сравнение языков программирования //
https://ru.wikipedia.org/wiki/Сравнение_языков_программирования
11. Устав ИП «БАЙБЕКОВ»
12. Федоров А.Г. Microsoft Visual Studio 2010. Первое знакомство.
Microsoft, 2011. - 42 с.
13. Флойд К.С. Введение в программирование на PHP5. 2-е изд. — М.:
Интуит, 2016. — 280 c.
98
14. Методология функционального моделирования IDEF0, Руководящий
документ, Госстандарт России
15. Аппаратное обеспечение вычислительных систем / Д.В. Денисов, В.А.
Артюхин, М. Ф. Седненков; под ред. Д.В. Денисова. – М.: Маркет ДС,
2010 – 184 с. (Университетская серия.)
16. Беленькая М.Н., Малиновский С.Т., Яковенко Н.В. Администрирование
в информационных системах. Научно-популярное издание. - М.:
Горячая линия - Телеком, 2011. - 300 с.
17. Вишневский А. Microsoft SQL Server. Эффективная работа. – Спб.:
«ПИТЕР, ИЗДАТЕЛЬСКИЙ ДОМ», 2009. – С. 541;
18. Гладченко А., Щербинин В. Репликация Microsoft SQL Server
2005/2008, «ЭКОМ Паблишерз», 2009.– С. 288;
19. Грекул В.И., Денищенко Г.Н., Коровкина Н.Л. Проектирование
информационных систем - М.: ИУИТ, 2012 - 300 с.
20. Доминик Байер. Microsoft ASP .NET. Обеспечение безопасности. СПб.:
«Питер», 2008. – С. 446.
21. Жилинский А.А. Самоучитель Microsoft SQL Server 2008 – М.: «BHV»,
2009. – С. 240;
22. Информационная безопасность и защита информации, Мельников В. П.,
М.: Академия, 2012, - 336 стр.
23. Кузнецов С. Д. Базы данных. Модели и языки – М.: Бином-Пресс, 2013
г. - 720 с.
24. Култыгин О.П. Администрирование баз данных. СУБД MS SQL Server.
- М: Московская финансово-промышленная академия, 2012 -232 с.
(Университетская серия).
25. Методология и технология разработки информационных систем:
http://www.piter-press.ru/
26. Нейгел К и др. С# 2008 и платформа .Net 3.5 для профессионалов. –
Диалектика, 2009. – 1659 с.
99
27. О.Л. Голицына, И.И. Попов, Н.В. Максимов Базы данных. Учебное
пособие. 3-е изд., перераб. и доп. М. : ФОРУМ, 2012. 400 с.
28. Роберт Э. Уолтерс, Майкл Коулс SQL Server 2008: ускоренный курс для
профессионалов. — М.: «Вильямс», 2009. — С. 768;
29. Роберт Э. Уолтерс, Майкл Коулс, Роберт Рей, Фабио Феррачати,
Дональд Фармер. SQL Server 2008: ускоренный курс для
профессионалов. М.: «Вильямс», 2009. – С. 768.
30. Смирнова Г.Н. Проектирование экономических информационных
систем. Учебник, М.: Финансы и статистика, 2009 г. – С. 512.
100
ПРИЛОЖЕНИЯ
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
using System.Globalization;
using System.IO;
using System.Text.RegularExpressions;
namespace DocVision
{
public partial class frmEditInDocs : Form
{
internal string rights;
string PathToFile;
frmEditInDocsSettings FrmEditInDocsSettings;//форма настройки
public int limitedID { get; set; } // ConstID - айди, ограничивающий открытие
одного и того же элемента дважды
//(например при редактировании)
public int rowStatus { get; set; } // статус строки, (-1) - режим выбора:
кликом по гриду
public bool isSDI { get; set; }
public event EventHandler<EventArgs> RaiseInDocSelected;
DataTable tblInDocs = new DataTable("InDocs");
DataTable tblInDocsRow = new DataTable("InDocsRow");
DataTable tblImageList = new DataTable("ImageList");
DataSet ds = new DataSet();
ImageList imgList = new ImageList();
CurrentFilter currentFilter;
bool checkChanges;
bool exitCancel;
DataRow row;
byte[] doc;
int dgvRowIndex;
int tblRowIndex;
int currentConstID;
bool EntryInDgv = false;
DateTime DefaultDate { get; set; }
DateTime DefaultInDate { get; set; }
int DefaultInDocType { get; set; }
public byte[] Doc
{
get { return doc; }
set { doc = value; }
}
public frmEditInDocs()
{
InitializeComponent();
dgvInDocs.AutoGenerateColumns = false;
imgList.Images.Add(GLOBAL2.Properties.Resources.document);
}
private void frmEditInDocs_Load(object sender, EventArgs e)
{
101
ComboBoxFill(cboDept, @"SELECT ID, Description FROM dbo.Dept ORDER BY
Description");
ComboBoxFill(cboInDocType, "SELECT ID, Description, NameInFile FROM
InDocTypes Order By Description");
ds.Tables.Add(tblInDocs);
ds.Tables.Add(tblInDocsRow);
ds.Tables.Add(tblImageList);
checkChanges = false;
DgvInDocsFill();
dgvInDocs.DataSource = tblInDocs;
UpdateHeaderText();
if (!FillTable(tblImageList, "SELECT * FROM ImageList ORDER BY
GroupName, Ord")) { Close(); }
//SetImageOnControls();
SwitchMode(rowStatus);
this.Location =
GLOBAL2.Properties.Settings.Default.frmEditInDocsLocation;
DefaultDate = DateTime.Now;
DefaultInDate = DateTime.Now;
DefaultInDocType = 0;
}
//
//
//
private void ComboBoxFill(ComboBox cb, string cmdtext)
{
SqlCommand cmd = new SqlCommand(cmdtext, new
SqlConnection(SessionProperties.currentConnectionString));
DataTable dt = new DataTable();
try
{
cmd.Connection.Open();
dt.Load(cmd.ExecuteReader());
cb.DataSource = dt;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Ошибка!!!", MessageBoxButtons.OK,
MessageBoxIcon.Error);
return;
}
finally
{
cmd.Connection.Close();
}
cb.ValueMember = "ID";
cb.DisplayMember = "Description";
}
private bool FillTable(DataTable tbl, string sqlText)
{
SqlConnection cn = new
SqlConnection(SessionProperties.currentConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandType = CommandType.Text;
cmd.CommandText = sqlText;
SqlDataReader reader = null;
tbl.Clear();
tbl.Columns.Clear();
try
{
cn.Open();
reader = cmd.ExecuteReader();
102
tbl.Load(reader);
cn.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "FillTable(" + tbl.ToString() +
", " + sqlText + ")", MessageBoxButtons.OK, MessageBoxIcon.Stop);
return false;
}
return true;
}// заполнение таблиц
private void SwitchMode(int mode)
{
switch (mode)
{
case -1: // режим выбора
tsbPeriod.Enabled = true;
tsbDocNew.Enabled = false;
tsbDocEdit.Enabled = false;
tsbDocDelete.Enabled = false;
tsbHistory.Enabled = false;
tsbSettings.Enabled = true;
cboDept.Enabled = false;
cboInDocType.Enabled = false;
tbNum.Enabled = false;
dtpDate.Enabled = false;
dtpInDate.Enabled = false;
tbDescription.Enabled = false;
btnImgFile.Enabled = false;
btnOk.Enabled = false;
btnScan.Enabled = false;
exitCancel = true;
checkChanges = false;
dgvInDocs.Enabled = true;
dgvInDocs.Focus();
break;
case 0://новый
tsbPeriod.Enabled = false;
tsbDocNew.Enabled = false;
tsbDocEdit.Enabled = false;
tsbDocDelete.Enabled = false;
tsbSettings.Enabled = false;
cboDept.SelectedValue = 0;
cboDept.Enabled = true;
cboInDocType.SelectedValue = DefaultInDocType;
cboInDocType.Enabled = true;
tbNum.Text = "";
tbNum.Enabled = true;
dtpDate.Value = DefaultDate;
dtpDate.Enabled = true;
dtpInDate.Value = DefaultInDate;
dtpInDate.Enabled = true;
tbDescription.Text = "";
tbDescription.Enabled = true;
lblImgFile.Text = "";
btnImgFile.Enabled = true;
btnFolder.Enabled = true;
btnScan.Enabled = true;
btnOk.Enabled = false;
exitCancel = false;
checkChanges = true;
103
rowStatus = mode;
btnExit.Text = "Esc - отмена";
EntryInDgv = false;
dgvInDocs.Enabled = false;
cboDept.Focus();
break;
case 1://правка
tsbPeriod.Enabled = false;
tsbDocNew.Enabled = false;
tsbDocEdit.Enabled = false;
tsbDocDelete.Enabled = false;
tsbSettings.Enabled = false;
cboDept.Enabled = true;
cboInDocType.Enabled = true;
tbNum.Enabled = true;
dtpDate.Enabled = true;
dtpInDate.Enabled = true;
tbDescription.Enabled = true;
btnImgFile.Enabled = true;
btnFolder.Enabled = true;
btnScan.Enabled = true;
btnOk.Enabled = false;
//dgvInDocs.Enabled = false;
exitCancel = false;
checkChanges = true;
rowStatus = mode;
btnExit.Text = "Esc - отмена";
EntryInDgv = false;
dgvInDocs.Enabled = false;
cboDept.Focus();
break;
case 2://просмотр документов
tsbPeriod.Enabled = true;
tsbDocNew.Enabled = true;
tsbDocEdit.Enabled = true;
tsbDocDelete.Enabled = true;
tsbSettings.Enabled = true;
cboDept.Enabled = false;
cboDept.SelectedValue = 0;
cboInDocType.Enabled = false;
cboInDocType.SelectedValue = 0;
tbNum.Enabled = false;
dtpDate.Enabled = false;
dtpInDate.Enabled = false;
tbDescription.Enabled = false;
btnImgFile.Enabled = false;
btnFolder.Enabled = false;
btnOk.Enabled = false;
btnScan.Enabled = false;
dgvInDocs.Enabled = true;
exitCancel = true;
checkChanges = false;
btnExit.Text = "Esc - выход";
if (this.Text.Contains("*"))
{
this.Text = this.Text.Substring(0,
this.Text.Length - 1);
}
dgvInDocs.Enabled = true;
dgvInDocs.Focus();
break;
}
}// установка режима формы
private void ControlsRefresh(DataGridViewCellEventArgs e)
104
{
if (!EntryInDgv)
{
SwitchMode(2);
EntryInDgv = true;
}
row = ((DataRowView)dgvInDocs.Rows[e.RowIndex].DataBoundItem).Row;
tblRowIndex = Array.IndexOf(tblInDocs.Select(), row);
cboDept.SelectedValue = row["DeptID"].ToString();
cboDept.Text = row["Dept"].ToString();
cboInDocType.SelectedValue = row["InDocTypesID"].ToString();
cboInDocType.Text = row["DocType"].ToString();
tbNum.Text = row["Num"].ToString();
dtpDate.Value = Convert.ToDateTime(row["Date"]);
dtpInDate.Value = Convert.ToDateTime(row["InDate"]);
tbDescription.Text = row["Description"].ToString();
lblImgFile.Text = row["ImgFile"].ToString();
currentConstID = (int)row["ConstID"];
}//обновление связанных с текущей строкой конролов
public static bool SaveChanges(DateTime Date, DateTime InDate,
int ConstID = 0,
int InDocTypeID = 0,
string Num ="",
int DeptID = 0,
string Description = "",
string ImgFile ="",
byte[] Img = null,
int rowStatus = 0)
{
SqlConnection cn = new
SqlConnection(SessionProperties.currentConnectionString);
SqlCommand cmd = new SqlCommand("dbo.EditInDocs", cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandTimeout = 0;
cmd.Parameters.Add("@ConstID", SqlDbType.Int);
cmd.Parameters["@ConstID"].Value = ConstID;
cmd.Parameters.Add("@InDocTypesID", SqlDbType.Int);
cmd.Parameters["@InDocTypesID"].Value = InDocTypeID;
cmd.Parameters.Add("@Num", SqlDbType.NVarChar, 20);
cmd.Parameters["@Num"].Value = Num;
cmd.Parameters.Add("@Date", SqlDbType.DateTime);
cmd.Parameters["@Date"].Value = Date;
cmd.Parameters.Add("@DeptID", SqlDbType.Int);
cmd.Parameters["@DeptID"].Value = DeptID;
cmd.Parameters.Add("@InDate", SqlDbType.DateTime);
cmd.Parameters["@InDate"].Value = InDate;
cmd.Parameters.Add("@Description", SqlDbType.NVarChar, 254);
cmd.Parameters["@Description"].Value = Description;
cmd.Parameters.Add("@ImgFile", SqlDbType.NVarChar, 254);
cmd.Parameters["@ImgFile"].Value = ImgFile;
cmd.Parameters.Add("@Img", SqlDbType.Image);
cmd.Parameters["@Img"].Value = Img;
cmd.Parameters.Add("@SessionsID", SqlDbType.Int);
cmd.Parameters["@SessionsID"].Value = SessionProperties.sessionID;
105
cmd.Parameters.Add("@RowStatus", SqlDbType.Int);
cmd.Parameters["@RowStatus"].Value = rowStatus;
cmd.Parameters.Add("@Msg", SqlDbType.NVarChar, 400);
cmd.Parameters["@Msg"].Value = "";
cmd.Parameters["@Msg"].Direction = ParameterDirection.Output;
cmd.Parameters.Add("@Res", SqlDbType.Int);
cmd.Parameters["@Res"].Value = 0;
cmd.Parameters["@Res"].Direction = ParameterDirection.Output;
SessionProperties.lastError = "";
try
{
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
int result = (int)cmd.Parameters["@Res"].Value;
if (result >= 0)
{
return true; // успех
}
else
{
MessageBox.Show((string)cmd.Parameters["@Msg"].Value, "Ошибка!!!",
MessageBoxButtons.OK, MessageBoxIcon.Stop);
return false; //Ошибка хранимой процедуры
}
}
catch (Exception ex)
{
SessionProperties.lastError = ex.Message;
MessageBox.Show(SessionProperties.lastError, "Ошибка!!!",
MessageBoxButtons.OK, MessageBoxIcon.Stop);
return false; // Ошибка SQL
}
}//сохранение изменений
private void DataChanged(object sender, EventArgs e)
{
if (checkChanges)
{
if (this.Text.IndexOf('*') == -1)
{
this.Text += "*";
}
btnOk.Enabled = true;
}
}
private void DgvInDocsFill()
{
SqlCommand cmd = new SqlCommand("SELECT * FROM ViewInDocs WHERE Date
BETWEEN @begDate AND @endDate ORDER BY Description", new
SqlConnection(SessionProperties.currentConnectionString));
cmd.Parameters.Add("@begDate",SqlDbType.DateTime);
cmd.Parameters.Add("@endDate",SqlDbType.DateTime);
cmd.Parameters["@begDate"].Value = SessionProperties.begDate;
cmd.Parameters["@endDate"].Value = SessionProperties.endDate;
try
{
cmd.Connection.Open();
tblInDocs.Clear();
tblInDocs.Load(cmd.ExecuteReader());
}
catch (Exception ex)

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)