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.


 

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

72454. ИСТОРИЯ ОТЕЧЕСТВА 498.5 KB
  В середине XVI века население России составило 5 млн. В течение года он опустошал казну истратив 05 млн. Император ограничил привилегии дворян заключил в 1800 году союз с Наполеоном вступил в переговоры с Папой Римским и договорился об объединении Православной и Католической Церквей предписал...
72455. История России 558.5 KB
  Природно-климатические особенности Восточной Европы. Взгляды на происхождение славян. Восточные славяне в VI-VIII веках новой эры. Быт, нравы, религия, политическая история. Образование государства у восточных славян. Норманнская теория. Киевская Русь - раннефеодальное государство 1Х-Х1 веков.
72456. Разработка информационных систем на базе мобильных интерфейсов 2.52 MB
  В процессе работы были проведены исследования в области городских информационных систем на базе мобильных интерфейсов, изучены подходы к реализации подобных систем для платформы Android. Результатом работы стала прототипная реализация приложения (Туристическая карта) для мобильных устройств на платформе Android.
72457. ПРЕДМЕТ ОТЕЧЕСТВЕННОЙ ИСТОРИИ. ИСТОРИЯ РОССИИ – НЕОТЪЕМЛЕМАЯ ЧАСТЬ ВСЕМИРНОЙ ИСТОРИИ 168.5 KB
  Сущность формы функции исторического знания Методы и источники изучения истории; понятие и классификация исторического источника Отечественная историография о прошлом и настоящем: общее и особенное Методология и теория исторической науки История России - неотъемлемая часть всемирной истории...
72458. Социология Э. Дюркгейма. Принцип социологизма и его применение к анализу социальных фактов 82.5 KB
  Эмиль Дюркгейм (1858-1917) – фр. социолог и философ, родоначальник фр. социологической школы, первый в мире профессор социологии, основатель и издатель журнала «Социологический стодневник» (1896-1913). Преподавал в университетах Бордо и Парижа, осуществил институциализацию социологии во Франции.
72459. Онтогенез 1.27 MB
  Классификация врожденных пороков развития. Значение нарушения механизмов онтогенеза в формировании пороков развития. Начальные стадии развития ланцетника: а дробление стадия двух четырех восьми шестнадцати бластомеров; б бластула; в гаструляция; г схематический поперечный разрез через...
72460. Учение Г. Менделя. Взаимодействие генов. Хромосомная теория наследственности 120 KB
  Взаимодействие генов. Менделя Хромосомная теория наследственности Взаимодействие генов. Взаимодействие аллельных генов. Взаимодействие неаллельных генов История возникновения генетики как науки Генетика наука сравнительно молодая.
72461. Методы исследования наследственности человека 155.5 KB
  Цитогенетический метод основан на Микроскопическом изучение структуры хромосомного набора Отдельных хромосом клеток человека Анализе генетических процессов в отдельных клетках Использование изучения генетических закономерностей целостного организма Биологическое изучение структуры хромосомного набора...