203

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

Реферат

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

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

Русский

2012-11-14

522.5 KB

60 чел.

Содержание:

  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.


 

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

57556. Богатырская тематика в изобразительном искусстве и музыке (А. П. Бородин – В. М. Васнецов) 81 KB
  Тип урока: интегрированный изобразительное искусство музыка биология продолжительность 90 мин. Организационный момент 2 мин. Изучение материала мотивация учебной деятельности подготовка к восприятию материала...
57557. Роль хімії та фізики в житті людини 94 KB
  Тип уроку: науковопрактична конференція. Головна проблема уроку: Інтеграція знань за допомогою методу проектів призводить до більш зацікавленого особистісно значимого і осмисленого сприйняття цих знаннь що посилює мотивацію і активність...
57558. Інтегрований урок “Любить свій край – це значить все любити” (Інтеграція з біологією та географією) 69.5 KB
  Мета уроку : повторити й поглибити знання учнів про займенник як частину мови його морфологічні ознаки; зясувати яку синтаксичну роль виконує в реченні займенник та які існують розряди займенників за значенням...
57559. Зречення принципів та ідеалів – шлях до успіху? (Б. Брехт «Життя Галілея», І. Багряний «Тигролови») 68 KB
  Уроки літератури є ефективними, якщо вони перетворюються на уроки життя. Життя – непередбачуване, гірке і солодке, одноманітне і барвисте, часом сумне чи радісне, але дивовижне й цікаве. А найголовніше (що дуже шкода) — дається один раз.
57560. МНОЖЕННЯ ЧИСЛА 2. РIЗНОМАНIТНIСТЬ ТВАРИН I ПТАХIВ 81.5 KB
  Мета: математика: перевірити знання учнів із теми Множення числа 2, формувати уміння знаходити значення виразів, які містять табличні випадки множення числа 2, розв’язувати задачі на множення, продовжувати змінювати приклади на додавання прикладами на множення...
57561. тематика й астрономія Що спільного між заходом Сонця в Донецьку і функцією синус Мотивація і плануван. 60 KB
  За допомогою відривного календаря легко помітити момент сходу та заходу Сонця для різних міст України на кожне число кожного місяца. Перше що залежить від різниці довготи Києва та інших міст України додається до часу сходу та заходу...
57562. Поезія і музика - це завжди неповторність, якийсь безсмертний дотик до душі... 84.5 KB
  Діти сьогодні у нас незвичайний урок. Учитель музики Діти з давніхдавен люди захоплювались не лише барвами природи а й її неповторними звуками і намагались наслідувати їх у своїх музичних творах. Учитель Дійсно вершиною художньої зображальності Вівальді...
57563. Інтегрований урок: Математика. Народознавство 58 KB
  Мета: Закріпити навички додавання і віднімання круглих десятків і сотень, навчити додавати трицифрові числа виду 520+340, вдосконалювати вміння розв’язувати розширені задачі на зведення до одиниці...
57564. Математично-географічна подорож з тем «Раціональні числа» і «Гідросфера» 70.5 KB
  Навчальна: навчити застосовувати знання з тем Додатні і відємні числа Координатна пряма Модуль Порівняння чисел до розвязування задач з географічним змістом; сформувати поняття болото показати причини їх утворення...