203

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

Реферат

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

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

Русский

2012-11-14

522.5 KB

58 чел.

Содержание:

  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.


 

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

45414. Принципы уголовного права 25 KB
  Принципы уголовного права Принцип законности ст. 3 УК конституционный принцип уголовного права. Данный принцип определяет что преступность и наказуемость деяния определяется только уголовным законом Российской Федерации. Данный принцип запрещает применение уголовного закона по аналогии ч.
45415. Строение и система уголовного права 29 KB
  Особенная часть уголовного права изучает конкретные преступления по их родам и видам: преступления против жизни здоровья личности; против свободы чести и достоинства личности; против половой неприкосновенности и половой свободы личности; против конституционных прав и свобод человека и гражданина; против семьи и несовершеннолетних; против собственности; преступления в сфере экономической деятельности; против интересов службы в коммерческих и иных организациях; против общественной безопасности; против здоровья населения и общественной...
45416. Понятие уголовной ответственности 26 KB
  Понятие уголовной ответственности Уголовная ответственность разновидность юридической ответственности. 8 УК РФ указывает что является основанием уголовной ответственности. Наибольшее распространение имеют три подхода к определению уголовной ответственности: обязанность лица совершившего преступление отвечать за содеянное в соответствии с уголовным законом; применение к виновному лицу мер уголовноправового характера; судимость как правовое последствие назначения наказания. Момент начала и окончания уголовной ответственности...
45417. Виды наказаний 23 KB
  44 УК РФ предусмотрены следующие виды наказаний: штраф; лишение права занимать определенные должности или заниматься определенной деятельностью; лишение специального воинского или почетного звания классного чина и государственных наград; обязательные работы; исправительные работы; ограничение по военной службе; ограничение свободы; арест; содержание в дисциплинарной воинской части; лишение свободы на определенный срок; пожизненное лишение свободы; смертная казнь. 45 УК РФ к основным видам наказания относятся: ...
45418. Умысел и его виды 31 KB
  Прямой умысел характеризуется тем что лицо совершившее преступление осознавало общественно опасный характер своих действий бездействия предвидело возможность или неизбежность наступления общественно опасных последствий интеллектуальный признак и желало их наступления волевой признак ч. Косвенный умысел характеризуется тем что лицо совершившее преступление осознавало общественно опасный характер своих действий бездействия предвидело возможность наступления общественно опасных последствий интеллектуальный момент не желало но...
45419. Действие уголовного закона во времени. Обратная сила уголовного закона 44.5 KB
  9 УК РФ; временем совершения преступления признается время совершения соответствующих действий бездействия независимо от времени наступления последствий ч. В зависимости от законодательной конструкции состава преступления время его совершения будет различным. Это может быть например групповой способ совершения преступления тяжесть наступивших последствий определённые социально значимые характеристики потерпевшего например совершение преступления в отношении несовершеннолетнего и т. Так к преступлениям с материальным составом...
45420. Необходимая оборона 28 KB
  Необходимая оборона Необходимая оборона это правомерная защита лицом своих прав и интересов других лиц общества или государства от общественно опасного посягательства путем вынужденного причинения вреда нападающему если при этом не было допущено превышение пределов необходимой обороны. Уголовный закон устанавливает условия правомерности необходимой обороны которые делятся на условия относящиеся к посягательству и на условия относящиеся к защите. Признак действительности нападения позволяет отграничить его от мнимого нападения и...
45421. НЕОКОНЧЕННОЕ ПРЕСТУПЛЕНИЕ 80 KB
  Оконченное и неоконченное преступления 1. Преступление признается оконченным если в совершенном лицом деянии содержатся все признаки состава преступления предусмотренного настоящим Кодексом. 29 признает преступление оконченным если в совершенном лицом деянии содержатся все признаки состава преступления предусмотренного УК. Момент определения окончания преступления зависит от особенностей законодательной конструкции того или иного преступления в первую очередь его объективной стороны то есть от того как в уголовном законе определено...
45422. Неосторожность и ее виды 31.5 KB
  26 УК РФ преступление признается совершенным по легкомыслию если лицо его совершившее предвидело возможность наступления общественно опасных последствий своего действия бездействия но без достаточных к тому оснований самонадеянно рассчитывало на их предотвращение. 26 УК интеллектуальный элемент преступного легкомыслия характеризуется указанием на предвидение только возможности наступления общественно опасных последствий и ничего не сказано об осознании лицом факта совершения им общественно опасных действий. Однако при этом следует...