203

Разработка практичного программного обеспечения для хранения данных компании в С#

Реферат

Информатика, кибернетика и программирование

Среда разработки поддерживает различные языки программировании в том числе С# и позволяет легко реализовать дизайн создаваемого приложения. Обзор основных функций программы Enterprise Management. Возможности настраиваемого интерфейса программного обеспечения.

Русский

2012-11-14

522.5 KB

52 чел.

Содержание:

  1.  Введение
  2.  Постановка задачи
  3.  Цель
  4.  Обоснование выбора среды разработки
  5.  Обзор основных функций программы
    1.  Работа с данными
    2.  Меню настроек. Работа с интерфейсом
  6.  Вывод
  7.  Список литературы


Введение:

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

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

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

Цель:

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

Обоснование выбора среды разработки:

Для решения данной задачи лучше всего подходит С# и среда программирования Microsoft Visual Studio 2010.  Язык имеет статическую типизацию, поддерживает 

полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые 

типы и методы, итераторы, анонимные функции с поддержкой замыканий, 

LINQ, исключения, комментарии в формате XML.

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

Обзор основных функций программы

«Enterprise Management»: 

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

Работа с данными.

После нажатия кнопки «БД» перед нами отображаются три поля для работы. Левое  поле содержит «дерево» с выбором данных, среднее – предназначено для работы с базой, правое – меню настроек.

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

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

 

 if (connectDB)

           {…}

       else { MessageBox.Show("Нет подключённых БД. Выполните соединение с БД!!!"); }

Программа «Enterprise Management» поддерживает работу с файлами баз данных, созданных в Microsoft Access 2007(*.accdb). Для открытия файлов необходимо в меню «База данных» выбрать «Открыть». После чего открывается окно обзора папок. По умолчанию указана папка «Мои документы». Необходимо указать папку, в которой содержатся файлы данных, программа выберет (если они есть) и соберёт в список, названия тех которые способна открыть. Дальше пользователь может выбрать необходимую БД. Ниже указана функция, осуществляющая эти операции:

private void openBD_Click(object sender, EventArgs e)

       {

           string tempPath;

           DirectoryInfo di; // каталог

           // получить имя каталога "Мои документы"

           di = new DirectoryInfo(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments));

           tempPath = di.FullName;

           // FolderBrowserDialog - окно Обзор папок

           FolderBrowserDialog fb = new FolderBrowserDialog();

           fb.Description = "Выберите папку,\n" + "в которой находятся база данных Access 2007";

           fb.ShowNewFolderButton = false;

           fb.SelectedPath = tempPath;//Стартовая папка

           // отображаем диалоговое окно

           if (fb.ShowDialog() == DialogResult.OK)

           {

               // пользователь выбрал каталог и

               // щелкнул на кнопке OK

               aPath = fb.SelectedPath;

               if (!isFolderEmptyy(fb.SelectedPath))

               {

                   MessageBox.Show("Доступные Базы Данных не найдены!", "Уведомление об ОШИБКЕ", MessageBoxButtons.OK);

               }

           }

       }

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

private void treeCompany_AfterSelect(object sender, System.Windows.Forms.TreeViewEventArgs e)

       {

           centerPanel.Controls.Clear();                                 // Удаляем с панели все элементы управления

           if (connectDB)

           {

               if (e.Node.Text == "Персонал" || e.Node.Text == "Отделы компании" || e.Node.Text == "Клиенты" || e.Node.Text == "Поставщики" || e.Node.Text == "На складе" || e.Node.Text == "Клиентов" || e.Node.Text == "Предприятия" || e.Node.Text == "Заказанный" || e.Node.Text == "Поставляемый")

               {

                   dataGridView = new DataGridView();           // Добавляем элемент DataGridView на форму

                   this.dataGridView.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;

                   dataGridView.Dock = DockStyle.Fill;

                   dataGridView.BackgroundColor = Color.WhiteSmoke;

                   dataGridView.AutoResizeColumns();

                   centerPanel.Controls.Add(dataGridView);

                   if (e.Node.Text == "Персонал") sql = "SELECT * FROM staff";                                        

//Из таблицы <name> использовать все столбцы (*)

                   else if (e.Node.Text == "Отделы компании") sql = "SELECT * FROM departments_of_the_enterprise";

                   else if (e.Node.Text == "Клиенты") sql = "SELECT * FROM clients";

                   else if (e.Node.Text == "Поставщики") sql = "SELECT * FROM providers";

                   else if (e.Node.Text == "На складе") sql = "SELECT * FROM product";

                   else if (e.Node.Text == "Заказанный") sql = "SELECT * FROM products_ordered";

                   else if (e.Node.Text == "Поставляемый") sql = "SELECT * FROM product_supplied";

                   else if (e.Node.Text == "Клиентов") sql = "SELECT * FROM orders";

                   else if (e.Node.Text == "Предприятия") sql = "SELECT * FROM order_by_company";

                   dataTable = new DataTable();         // DataTable сохраняет данные в памяти как таблицу

                   sqlCommand = new OleDbCommand(sql, connection);                     //Создаем команду

                   dataAdapter = new OleDbDataAdapter(sqlCommand);                     

// DataAdapter – посредник между базой данных и DataSet

                   commandBuilder = new OleDbCommandBuilder(dataAdapter);              

//Создаем построитель команд; Для адаптера становится доступной команда Update

                   dataAdapter.Fill(dataTable);                                       

// Данные из адаптера поступают в DataTable

                   dataGridView.DataSource = dataTable;                               

// Связываем данные с элементом DataGridView

                   connection.Close();                                                 // Очистка 

                   dataGridView.AutoResizeColumns();

                   activateAccessMenuDB();

               }

               else { centerPanel.Controls.Clear(); /*centerPanel.BackColor = Color.Black;*/ }

           }

           else { MessageBox.Show("Нет открытых БД. Откройте БД!!!"); }

       }

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

Вся информация отображается на экране и изменения внесённые пользователем не повлекут изменений в файле. Для того чтобы изменения вступили в силу, необходимо выбрать в меню «База данных» --> «Редактировать», а после окончания работы с данными необходимо выбрать в меню «База данных» --> «Сохранить». Сохранение произойдёт путём переноса данных с DataGridView в файл:

private void saveBD_Click(object sender, EventArgs e)

{

           try

           {

               dataAdapter.Update((DataTable)dataGridView.DataSource);

               MessageBox.Show("Изменения в базе данных выполнены!", "Уведомление о результатах", MessageBoxButtons.OK);

               saveBD.Enabled = false;

               changeBD.Enabled = true;

           }

           catch (Exception)

           {

               MessageBox.Show("Изменения в базе данных выполнить не удалось!", "Уведомление о результатах", MessageBoxButtons.OK);

           }

}

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

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

Меню настроек. Работа с интерфейсом.

Любое приложение должно предоставлять возможность настраивать интерфейс под нужды пользователя. «Enterprise Management» не исключение. Настройки в приложении подразделяются на два типа: локальные и глобальные.

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

private void changeCOLtext_Click(object sender, EventArgs e)

{

           Color CCC = Color.FromArgb(25, 50, 75);

           System.Windows.Forms.ColorDialog cdg = new System.Windows.Forms.ColorDialog();

           cdg.Color = CCC;

           if (cdg.ShowDialog() == DialogResult.OK)

           {

               CCC = cdg.Color;

               dataGridView.ForeColor = CCC;//цвет текста

           }

}

Аналогично построены и две другие функции.

К глобальным настройкам относится возможность изменения характеристик окна. Данные настройки располагаются в левом верхнем углу приложения, во вкладке «Enterprise Management». В появившемся модальном окне, пользователь имеет возможность изменить тип окна, прозрачность и его приоритет в сравнении с другими приложениями и окнами.  Прозрачность окна изменяется благодаря удобному трек-бару, прокручивая который можно видеть, как изменяется значение рядом.

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


Вывод:
Приложение «Enterprise Management» имеет удобный и красочный интерфейс и позволяет пользователю работать с данными компании, которые в свою очередь разделены на такие логические типы как контакты, товар и заказы. Каждая из  таблиц данных подключается к древовидному меню и отображается в поле для работы. Таблицы извлекаются из файла БД через определённые через sql-команды. Также в приложении имеется возможность открыть другую подготовленную БД. Пользователь имеет возможность редактировать данные и по желанию сохранять их в исходном файле.

«Enterprise Management» наглядно разделено и очень практично в использовании. А имеющиеся возможности настройки приложения позволяют его адаптировать под различные нужды пользователя.


Список литературы:

1.  Microsoft Visual C# в задачах и примерах: Культин Н.Б. – СПб.: БХВ-Петербург, 2009. – 320с.

2.  SQL: Полное руководство: Дж. Грофф, П. Вайнберг: Пер. с англд. – 2-е изд., перераб. И доп. – К.: Издательская группа BHV, 2001. – 816 с., ил.

3. С#4.0 на примерах: Ватсон Б.  — СПб.: БХВ-Петербург, 2011. — 608 с: ил. 4.


 

А также другие работы, которые могут Вас заинтересовать

40154. РАДИОПЕРЕДАЮЩИЕ И РАДИОПРИЕМНЫЕ УСТРОЙСТВА 44.5 KB
  Назначение классификация и основные параметры Радиопередающие устройства радиопередатчики предназначены для формирования колебаний несущей частоты; модуляции их по закону передаваемого сообщения и излучения полученного радиосигнала в пространство или передачи его по физическим линиям связи. Нестабильность частоты несущих колебаний. Абсолютной нестабильностью частоты называется отклонение частоты f излучаемого радиопередатчиком сигнала от номинального значения частоты fном. Относительной нестабильностью частоты называется отношение...
40155. Основы радиоэлектроники и связи 78 KB
  В ней рассматриваются способы математического представления сообщений сигналов и помех методы формирования и преобразования сигналов в электрических цепях вопросы анализа помехоустойчивости и оптимального приема сообщений основы теории информации и кодирования. Знания полученные в результате изучения дисциплины являются базой для глубокого усвоения материала по существующим и перспективным методам передачи информации сравнительному анализу этих методов и выявлению наиболее рациональных способов повышения эффективности радиоэлектронных...
40156. ОБЩИЕ СВЕДЕНИЯ О РАДИОТЕХНИЧЕСКИХ СИГНАЛАХ И ПОМЕХАХ 1.75 MB
  Импульсный сигнал – это сигнал конечной энергии существенно отличный от нуля в течение ограниченного интервала времени соизмеримого со временем завершения переходного процесса в системе для воздействия на которую этот сигнал предназначен. Конкретный вид случайного процесса который наблюдается во время опыта например на осциллографе называется реализацией этого случайного процесса. Примером такого процесса является процесс характеризующий состояние системы массового обслуживания когда система скачком в произвольные моменты времени t...
40157. ОСНОВНЫЕ ХАРАКТЕРИСТИКИ И СТАТИСТИЧЕСКИЕ МОДЕЛИ СЛУЧАЙНЫХ СИГНАЛОВ И ПОМЕХ 2.32 MB
  Для стационарного случайного процесса двумерная плотность вероятности и соответственно корреляционная функция зависят не от t1 и t2 в отдельности а только от их разности = t2 t1. В соответствии с этим корреляционная функция стационарного процесса определяется выражением 3.1 где математическое ожидание стационарного процесса; х1 х2 возможные значения случайного процесса соответственно в моменты времени t1 t2 ; = t2 – t1 интервал времени между сечениями; двумерная...
40158. ВРЕМЕННОЙ И СПЕКТРАЛЬНЫЙ АНАЛИЗ ПРОХОЖДЕНИЯ СЛУЧАЙНОГО ПРОЦЕССА ЧЕРЕЗ ЛИНЕЙНЫЕ СИСТЕМЫ 1.39 MB
  3 справедливы в полной мере если xt есть реализация случайного процесса t. Но эти формулы служат для решения основной задачи анализа линейной цепи при случайных воздействиях заключающейся в нахождении вероятностных характеристик выходного случайного процесса t если известны вероятностные характеристики входного случайного воздействия и определена цепь посредством задания порядка и коэффициентов дифференциального уравнения или импульсной характеристики. Требуется найти математическое ожидание t и корреляционную функцию...
40159. ОПТИМАЛЬНЫЙ РАДИОПРИЕМ КАК СТАТИСТИЧЕСКАЯ ЗАДАЧА 548 KB
  Введение в теорию оптимального радиоприема ОПТИМАЛЬНЫЙ РАДИОПРИЕМ КАК СТАТИСТИЧЕСКАЯ ЗАДАЧА Помехоустойчивость и ее основные задачи Особенность радиоприёма состоит в том что наряду с сигналами через антенную систему в приёмное устройство поступают разнообразные помехи. Количественно помехоустойчивость оценивается с помощью различных показателей использующих вероятностное описание помех и сигнала. Например применяются такие показатели как отношение сигнал шум на входе и выходе приёмного устройства вероятность правильного обнаружения...
40160. ИМПУЛЬСНЫЕ УСИЛИТЕЛИ МОЩНОСТИ 340.5 KB
  Основными определяющими факторами являются длительность фронта и среза импульса коллекторного перехода стокового тока транзистора и тип нагрузки активной и активно – индуктивной. Первый способ применяется когда возможно произвольно варьировать параметрами нагрузки. Тогда параметры нагрузки выбираются таким образом чтобы к моменту коммутации автоматически выполнялось условие Uкл=0 или Iкл=0. Второй способ используется если параметры нагрузки строго заданы и состоит во введении в схему дополнительных цепей искусственно разносящих во...
40161. ЦИФРОВАЯ ЭЛЕКТРОНИКА. МАТЕМАТИЧЕСКОЕ ОПИСАНИЕ ЦИФРОВЫХ УСТРОЙСТВ 295 KB
  2 Основные способы записи функций алгебры логики ФАЛ Функции алгебры логики ФАЛ – зависимость выходных переменных Zi выраженная через совокупность входных переменных х1х2хn. Логические устройства – работа которых описывается с помощью ФАЛ. 1 Описание ФАЛ в виде таблице истинности табл. Описание ФАЛ в виде алгебраического выражения: а логическое сложение ИЛИ – дизъюнкция б логическое умножение И – конъюнкция в отрицание инверсия НЕ если х = 1 то ;если х = 0 то Дизъюнктивная нормальная форма ДНФ –...
40162. ОСНОВНЫЕ ЛОГИЧЕСКИЕ ЭЛЕМЕНТЫ 378 KB
  По принципу действия: комбинационные – автоматы без памяти, входные сигналы которых определяются действующей на входе комбинацией переменных; последовательные – автоматы с памятью, выходные сигналы которых определяются не только действующей комбинацией переменных, но и предыдущей.