35177

Разработка информационной системы закупки комплектующих для производства

Курсовая

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

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

Русский

2013-09-09

922 KB

41 чел.

Содержание

[1] Введение

[2] Описание предметной области

[3] 2. Концептуальная модель предметной области

[3.1] Проблемы предметной области

[3.2] Концепция информационно системы

[3.2.1]  Основные понятия

[3.2.2]  Функциональные требования

[3.2.2.1] Основные требования

[3.2.2.2] Обеспечивающие требования

[3.2.3]  Нефункциональные требования

[4] Логическая модель информационной системы

[4.1] Модель поведения

[5] Среда разработки – Visual Studio 2012

[5.1] 6.1 Начало работы над проектом.

[5.2] 6.3 Иллюстрированная модель работы программы.

[6] Заключение

[7] Список использованных источников

Введение

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

Целью курсовой работы является разработка информационной системы закупки комплектующих для производства


Описание предметной области

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

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

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

Коммерческая организация «Godlike Hardware»

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

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

1.2 Организационная структура организации

Организационная структура «Godlike Hardware» – это совокупность взаимодействующих отделов и структурных частей в рамках одной организации для достижения цели, поставленной перед ней. Организационная структура нашей организации представляется следующим образом. В состав магазина входит несколько разделов оборудования (групп товаров). Во главе организации стоит директор, у которого в непосредственном подчинении находятся работники склада и кассир. Работники склада осуществляют поиск и предоставление клиенту нужный ему товар, а кассир в свою очередь ведет расчетные операции с клиентом и выдачей ему чека. В подчинении директора также находится персонал отвечающий за заказ и поставку оборудования на склад магазина от производителя.

Описание бизнес-процессов по подразделениям организации «Godlike Hardware»

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

  1.  Склад

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

Функции и задачи отдела.

Прием товара на склад

Выдача товара на производство

  1.  Бухгалтерия

Любая коммерческая организация в соответствии с действующим законодательством несет налоговые обязанности и контролирует финансовое состояние для обеспечения соответствия с таковым. Эти функции выполняет отдел бухгалтерии.

Перечислим функции отдела:

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

  1.  Информационный отдел (IT-отдел)

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

Создание базы аппаратного и программного обеспечения.

Поддержка базы в работоспособном состоянии.

Помощь работникам компании в работе с базой обеспечения

Поддержка сайта компании.

Сборка и наладка серверов и ПК сотрудников.

В заключение выполним группировку по основным знаниям и аспектам предметной области комплексной архитектуры компании и представим её в виде таблицы:

Данные

Функции

Места обработки

Люди

Операционное время (процессы)

Цели

Требование оплаты

(цена единицы);

Сопроводительные документы (гарантийный талон);

Чек;

Формирование требования;

Заключение требуемых договоров;

Печать чека;

Место кассового терминала;

Клиент;

Ассистент;

Кассир;

Продажи;

Поставки;

Складское хранение;

Прибыль;


2. Концептуальная модель предметной области

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

Перечень высказываний при работе с ИС указан ниже:

Необходимые высказывания

1.

Предметная область определяется продажей товара и оказанием услуг.

2.

Клиенту предлагаются различные модели дверей из каталога.

3.

При выборе дверей клиент ориентируется на назначение, размеры и материал.

4.

Клиент делает заказ на покупку двери и (или) ее установку.

5.

Менеджер заносит данные о клиенте его заказе в ИС.

6

Менеджер смотрит в ИС на каком складе можно получит выбранный клиентом товар, какой сотрудник может оказать выбранную услугу.

7.

В конце дня менеджер заносит данные о доходе организации и выполненных заказах в ИС.

Необходимые высказывания, представленные в таблице, будут представлены на схеме:


3.Описание проблем и формирование концепции информационной системы

  1.  Проблемы предметной области

В данном разделе приведены результаты проблемного анализа предметной области.

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

Главной проблемой является отсутствие единой информационной базы данных включающей в себя информацию о:

-оборудовании;

-заказах;

-сотрудниках;

-поставщиках;

-доходах;

  1.  Концепция информационно системы

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

Концепция ИС содержит набор требований, сгруппированный как минимум в три подраздела:

  1.  Основные понятия, которые должна использовать в процессе функционирования ИС;
    1.  Функциональные требования (или функциональные возможности), которыми должна удовлетворять (обладать) ИС для того, чтобы успешно решать проблемы;

Нефункциональные требования, которые определяют другие аспекты построения ИС (режимы работы, среда разработки, типовую архитектуру, используемые форматы данных и т.п.

  1.   Основные понятия
  2.  Заказ – задание, запрос производства конкретного оборудования со склада;
  3.  Шоха – человек, закупающий оборудования и доставляющий его на склад.
  4.  Поставщик – организация, поставляемая продаваемые комплектующие.
  5.  Комплектующие – предмет который валяется у нас на складе.
  6.  Услуга – работа выполненная шохой по заказу начальника.
    1.   Функциональные требования

В данном разделе содержится перечень функциональных требований. Функциональные требования (functional requirements) определяют функциональность ПО, которую разработчики должны построить, чтобы пользователи смогли выполнить свои задачи в рамках бизнес-требований. Функциональные требования документируются в спецификации требований к ПО, где описывается так полно, как необходимо, ожидаемое поведение системы.

  1.  Основные требования
  2.  Обеспечить ввод и занесение в базу данных информации о заказах, поставщиках, сотрудниках, реализуемых комплектующих, оказанных услугах, доходах организации;
  3.  Редактировать и удалять введенную ранее информацию;
  4.  Осуществлять поиск списка товаров конкретных поставщиков;
  5.  Выводить для просмотра информацию из базы данных;
    1.  Обеспечивающие требования
  6.  Обеспечивать защиту информации от несанкционированного доступа и изменения;
  7.  Обеспечивать проверку правильности данных.
    1.   Нефункциональные требования

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

  1.  Информационная система должна иметь удобный пользовательский интерфейс.
  2.  Информационная система должна быть гибкой, то есть легко усовершенствоваться и дополняться.
  3.  Информационная система должна быть устойчива к сбоям.

  1.  Информационная система должна поддерживать хранение больших объемов данных.

  1.   Информационная система должна использовать современное программное и аппаратное обеспечение.

  1.  Концептуальная модель информационной системы

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

  1.  Слой представления: предоставляет услуги отображения данных, обработки событий пользовательского интерфейса (щелчки мыши, нажатия клавиш).
  2.  Слой предметной области: выполняет вычисления на основе вводимых и хранимых данных, проверку всех элементов данных и обработку команд, поступающих от слоя представления, а также передачу информации слою источника данных.
  3.  Слой источника данных: выполняет обращения к базе данных, обмен сообщениями, мониторинг транзакций.

Результат разработки концептуальной модели информационной системы представлен в таблице ниже:

Наименование класса

Назначение класса

Слой представления

1.

Формы для ввода  и редактирования заказа и его отображения

Граничный класс, отвечающий за отображение формы заказов

2.

Формы для ввода и редактирования информации о поставщиках и их товарах и их отображения

Граничный класс, отвечающий за отображение формы поставщиков

3.

Формы для ввода и редактирования информации о сотрудниках и ее отображения

Граничный класс, отвечающий за отображение формы сотрудников.

4.

Формы для ввода и редактирования информации о доходах и ее отображения

Граничный класс, отвечающий за отображение формы доходов.

5.

Кнопки и ссылки

Управляющий класс, методы которого отвечают за управление приложением в целом

Слой предметной области

6.

Таблица «Заказы»

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

7.

Таблица «Поставщики»

Класс хранения, содержащий информацию о поставщиках и поставляемых ими товарах.

8.

Таблица «Сотрудники»

Класс хранения, содержащий данные сотрудников, оказывающих услуги клиентам.

9.

Таблица «Доходы»

Класс хранения,  содержащий данные о доходах организации.

Слой источника данных

13.

Запросы к БД

Граничный класс для взаимодействия с базой данных

Результат разработки концептуальной модели информационной системы представлен на рисунке ниже:


  1.  Логическая модель информационной системы

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

  1.  Модель поведения

Модель поведения разработана посредством диаграмм последовательности. На рисунке ниже представлена диаграмма последовательности, моделирующая функцию создания новой записи:

 

На рисунке ниже представлена схема последовательности, моделирующая функцию редактирования записи:

 

На рисунке ниже представлена схема последовательности, моделирующая функцию поиска записи: 

 


На рисунке ниже представлена диаграмма последовательности, моделирующая функцию удаления записи:

5.2 Модель структуры

Модель структуры является целевой моделью курсового проекта, разработанная посредством диаграммы классов. На рисунке  представлена диаграмма классов ПО ИС, на которой отражены все классы, составляющие ПО ИС фирмы «Дверск»:


  1.  Среда разработки – Visual Studio 2012

Информационная система данного курсового проекта создана с помощью языка C#. Средой разработки является Visual Studio 2012  

Microsoft Visual Studio — линейка продуктов компании Майкрософт, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Данные продукты позволяют разрабатывать как консольные приложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии Windows Forms, а также веб-сайты, веб-приложения, веб-службы как в родном, так и в управляемом кодах для всех платформ, поддерживаемых Microsoft Windows, Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework и Microsoft Silverlight.

Visual Studio включает в себя редактор исходного кода с поддержкой технологии IntelliSense и возможностью простейшего рефакторинга кода. Встроенный отладчик может работать как отладчик уровня исходного кода, так и как отладчик машинного уровня. Остальные встраиваемые инструменты включают в себя редактор форм для упрощения создания графического интерфейса приложения, веб-редактор, дизайнер классов и дизайнер схемы базы данных. Visual Studio позволяет создавать и подключать сторонние дополнения (плагины) для расширения функциональности практически на каждом уровне, включая добавление поддержки систем контроля версий исходного кода (как например, Subversion и Visual SourceSafe), добавление новых наборов инструментов (например, для редактирования и визуального проектирования кода на предметно-ориентированных языках программирования или инструментов для прочих аспектов процесса разработки программного обеспечения (например, клиент Team Explorer для работы с Team Foundation Server).

6.1 Начало работы над проектом.

Запустить Visual Studio 2012.  

Для того, чтобы создать новый проект, воспользуйтесь командой Создать => Проект меню Файл или воспользуйтесь сочетанием клавиш Ctrl+Shift+N.

Вам будет предложенно выбрать тип проекта и его название

 Далее необходимо выбрать название проекта, она прописывается в поле «Имя решения» и расположение проекта, оно прописывается в поле «Расположение» 

Далее можно работать с формой и кодом, как в любой программной среде ООП. Перейти к коду можно нажав кнопку «F7».

Сохранение происходит по нажатию кнопки «Сохранить все» или по сочетанию клавиш Ctrl+Shift+S

6.3 Иллюстрированная модель работы программы.

Вид главной формы:

Вывод содержимого таблицы «Склад»:

Таблицы «Прайс» и «Корзина». Процесс закупки комплектующих:

Вывод информации о поставщиках:


Заключение

В процессе выполнения курсового проекта была разработана информационная система закупки комплектующих для производства. Основой для создания информационной системы послужил наказ Натальи Ивановны сделать курсовую работу вовремя. Для написания ИС использовался язык программирования C#. База данных создана с помощью Microsoft Access

В качестве среды разработки использовался Microsoft Visual Studio 2012

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


Список использованных источников

  1.   Методические рекомендации по курсовому проектированию.
  2.  http://www.cyberforum.ru/ado-net
  3.  http://www.cyberforum.ru/csharp-beginners/
  4.  Курс: Создание Windows-приложений на основе Visual C#.
    Автор: Ч.А. Кариев | ISBN: 978-5-9556-0080-2
  5.  Курс: Технология Microsoft ADO .NET

Автор: Ч.А. Кариев | ISBN: 978-5-9556-0097-0

  1.  Курс: Практикум прикладного программирования на C# в среде VS.NET 2008

Автор: В.М. Снетков

  1.  А.С. Сурядный «Microsoft Access 2010 Лучший самоучитель» 2012г.
  2.  Мартин Грабер «SQL для простых смертных» 2004г.
  3.  Герберт Шилдт «C# 4.0 Полное руководство» 2011г.
  4.  О. Н. Евсеева, А. Б. Шамшев «Работа с базами данных на языке C#. Технология ADO .NET» 2009г.
  5.  Конспект лекций.


Системные требования к ИС

Минимальная конфигурация компьютера:

  •  Intel Pentium 4 CPU или лучше;
  •  128MB RAM или выше;
  •  Microsoft .NET Framework 4.5


Листинг ИС

Form1.cs

using System;     //

using System.Collections.Generic;  //

using System.ComponentModel;  //

using System.Data;    //здесь прописываются

using System.Drawing;   //библиотеки, необходимые для работы

using System.Linq;    //программы

using System.Text;    //

using System.Threading.Tasks;  //

using System.Windows.Forms;   //

namespace WindowsFormsApplication1 //пространство имен WindowsFormsApplication1

{

   public partial class Form1 : Form

   {

       public Form1()

       {

           InitializeComponent();

       }

       private void button5_Click(object sender, EventArgs e)

       {

           Form2 Form2 = new Form2(); //создание переменной-ссылки на 2 форму

           Form2.Show();   //показ второй формы

       }

       private void button4_Click(object sender, EventArgs e)

       {

           Form1.ActiveForm.Close(); //закрытие формы

       }

       private void button2_Click(object sender, EventArgs e)

       {

            Form3 Form3 = new Form3();//создание переменной-ссылки на 3 форму

           Form3.Show();     //показ третей формы

       }

       private void button3_Click(object sender, EventArgs e)

       {

           Form4 Form4 = new Form4();   //создание переменной-ссылки на 3 форму

           Form4.Show();     //показ четвертой формы

       }

   }

}

Form2.cs

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Data.OleDb;

using System.Data.Sql;

using About;

namespace WindowsFormsApplication1

{

   public partial class Form2 : Form

   {

       public Form2()

       {

           InitializeComponent();

           DataView myDataView = new DataView(dataBaseDataSet.Склад); //создаем ссылочную переменную на таблицу Склад

           

       }

       public void Form2_Load(object sender, EventArgs e)

       {

           // TODO: данная строка кода позволяет загрузить данные в таблицу "dataBaseDataSet.Склад". При необходимости она может быть перемещена или удалена.

           this.складTableAdapter.Fill(this.dataBaseDataSet.Склад);

       }

       private void button1_Click(object sender, EventArgs e)

       {

           OleDbConnection Connection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=I:\Курсовой АИС\DataBase.accdb"); //указываем тип БД и путь к ней

           string sql = "insert into [Склад] values('" + this.textBox2.Text + "','" + this.textBox3.Text + "'," + this.textBox4.Text + ",'" + this.textBox5.Text + "')";

//вставляем в таблицу Склад запись со значениями из ТекстБоксов

           OleDbCommand command = new OleDbCommand(sql, Connection); //создаем переменную команды, в которую заносим информацию о соединении с таблицей БД и SQL запрос

           try

           {

               command.Connection.Open(); //открываем соединение

               command.ExecuteNonQuery(); //выполняем запрос

           }

           catch (Exeption ee)  //пытаемся «поймать» ошибку

           {

               MessageBox.Show(ee.ToString(), "Ошибка"); //отображаем ошибку

               return;      //возврат в исходное состояние

           }

           Connection.Close();  //закрываем соединение

           складTableAdapter.Update(dataBaseDataSet.Склад); //обновляем таблицу Склад

           складTableAdapter.Fill(dataBaseDataSet.Склад); //заполняем таблицу Склад

           textBox1.Text = null; //

           textBox2.Text = null; //Обнуляем значения

           textBox3.Text = null; //текстбоксов. Запись эквивалентна

           textBox4.Text = null; //edit1.Text = ‘’ в Delphi

           textBox5.Text = null; //

       }

       private void bindingNavigatorDeleteItem_Click(object sender, EventArgs e)

       {

           складTableAdapter.Update(dataBaseDataSet.Склад); //обновляем таблицу после удаления записи

       }

       private void button2_Click(object sender, EventArgs e)

       {

           if (dataGridView1.SelectedRows.Count >= 1) //если количество выделенных строк больше или = 1 тогда:

           {

               int ind = dataGridView1.SelectedCells[0].RowIndex; //обявляем переменную ind в которую заносим значение выделенной строчки

               dataGridView1.Rows.RemoveAt(ind); //…и удаляем ее)

               складTableAdapter.Update(dataBaseDataSet.Склад); //обновляем

               складTableAdapter.Fill(dataBaseDataSet.Склад); //заполняем

           }

           else //а если строка не выделенна

           {

               MessageBox.Show("Не выбрана не одна строка"); //то выдаем ошибку)

           }

       }

       private void button3_Click(object sender, EventArgs e)

       {

           ActiveForm.Close(); //закрываем текущую форму

           Form3 f = new Form3();//и

           f.Show();  //открываем форму №3

       }

       public void button5_Click(object sender, EventArgs e)

       {

           checkBox1.Checked = false; //сбрасываем флаг Checked с чекбокса

           DataView myDataView = new DataView(dataBaseDataSet.Склад);

//фильтрация посредством оператора Case

           switch (comboBox1.SelectedIndex)

           {

               case 0:

                   {

               myDataView.RowFilter = "Наименование = '" + this.textBox7.Text + "'";

               dataGridView1.DataSource = myDataView;

               break;

                   }

               case 1:

                   {

               myDataView.RowFilter = "[Группа товара] = '" + this.textBox7.Text + "'";

               dataGridView1.DataSource = myDataView;

               break;

                   }

               case 2:

                   {

               myDataView.RowFilter = "Количество = " + this.textBox7.Text + "";

               dataGridView1.DataSource = myDataView;

               break;

                   }

               case 3:

                   {

          myDataView.RowFilter = "[Компания-поставщик] = '" + this.textBox7.Text + "'";

          dataGridView1.DataSource = myDataView;

          break;

                   }

           }

       }

       public void checkBox1_CheckedChanged(object sender, EventArgs e)

       {

//сбрасываем фильтр и очищаем тексбокс с фильтрацией

           if (checkBox1.Checked == true)    

           {         

               dataGridView1.DataSource = складBindingSource;

               comboBox1.SelectedItem = null;

               textBox7.Text = null;

           }

           else

           {

               DataView myDataView = new DataView(dataBaseDataSet.Склад);

               switch (comboBox1.SelectedIndex)

               {

                   case 0:

                       {

                           myDataView.RowFilter = "Наименование = '" + this.textBox7.Text + "'";

                           dataGridView1.DataSource = myDataView;

                           break;

                       }

                   case 1:

                       {

                           myDataView.RowFilter = "[Группа товара] = '" + this.textBox7.Text + "'";

                           dataGridView1.DataSource = myDataView;

                           break;

                       }

                   case 2:

                       {

                           myDataView.RowFilter = "Количество = " + this.textBox7.Text + "";

                           dataGridView1.DataSource = myDataView;

                           break;

                       }

                   case 3:

                       {

                           myDataView.RowFilter = "[Компания-поставщик] = '" + this.textBox7.Text + "'";

                           dataGridView1.DataSource = myDataView;

                           break;

                       }

               }

           }

       }

       private void toolStripMenuItem5_Click(object sender, EventArgs e)

       {

           frmAbout frmAbout = new frmAbout();//открываем форму

           frmAbout.ShowDialog();  //»О программе»

       }

       private void Form2_FormClosing(object sender, FormClosingEventArgs e)

       {

           складTableAdapter.Update(dataBaseDataSet.Склад);

       }

       private void bindingNavigatorDeleteItem_Click_1(object sender, EventArgs e)

       {

           складTableAdapter.Update(dataBaseDataSet.Склад);

       }

       private void оПрограммеToolStripMenuItem_Click(object sender, EventArgs e)

       {

       }

       private void выходToolStripMenuItem_Click(object sender, EventArgs e)

       {

           Application.Exit(); //закрываем приложение

       }

       private void показатьСправкуToolStripMenuItem_Click(object sender, EventArgs e)

       {

//открываем справку

           Help.ShowHelp(this, @"I:\Курсовой АИС\coursework\WindowsFormsApplication1\Help.chm", HelpNavigator.TableOfContents);

       }

   }

}

Form3.cs

using About;

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Data.OleDb;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace WindowsFormsApplication1

{

   public partial class Form3 : Form

   {

       public Form3()

       {

           InitializeComponent();

           OleDbConnection Connection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=I:\Курсовой АИС\DataBase.accdb");

           string sql = "Delete * From [Корзина]";

           OleDbCommand command = new OleDbCommand(sql, Connection);

           command.Connection.Open();

           command.ExecuteNonQuery();

           Connection.Close();

           корзинаTableAdapter.Update(dataBaseDataSet.Корзина);

           корзинаTableAdapter.Fill(dataBaseDataSet.Корзина);

       }

       private void Form3_Load(object sender, EventArgs e)

       {

           // TODO: данная строка кода позволяет загрузить данные в таблицу "dataBaseDataSet.Прайс". При необходимости она может быть перемещена или удалена.

           this.прайсTableAdapter.Fill(this.dataBaseDataSet.Прайс);

           // TODO: данная строка кода позволяет загрузить данные в таблицу "dataBaseDataSet.Корзина". При необходимости она может быть перемещена или удалена.

           this.корзинаTableAdapter.Fill(this.dataBaseDataSet.Корзина);

       }

       private void bindingNavigatorDeleteItem_Click(object sender, EventArgs e)

       {

           прайсTableAdapter.Update(dataBaseDataSet.Прайс);

       }

       public void button1_Click(object sender, EventArgs e)

       {

           Form6 f = new Form6();

           f.ShowDialog();

           string name = dataGridView1[0, dataGridView1.CurrentRow.Index].Value.ToString();

           string price = dataGridView1[3, dataGridView1.CurrentRow.Index].Value.ToString();

           string group = dataGridView1[1, dataGridView1.CurrentRow.Index].Value.ToString();

           string company = dataGridView1[2, dataGridView1.CurrentRow.Index].Value.ToString();

           // работа 4.3 из папки 1

           if (Data.X != 0)

           {

               OleDbConnection Connection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=I:\Курсовой АИС\DataBase.accdb");

               string sql = "insert into [Корзина] values('" + name + "', '" + company + "', " + price + ", '" + group + "', " + Data.X + " , " + Data.X * Convert.ToInt32(price) + ");";

               OleDbCommand command = new OleDbCommand(sql, Connection);

               command.Connection.Open();

               command.ExecuteNonQuery();

               Connection.Close();

               корзинаTableAdapter.Update(dataBaseDataSet.Корзина);

               корзинаTableAdapter.Fill(dataBaseDataSet.Корзина);

               //dataGridView3.Rows.Add(name, company, price, group, Data.X, (Data.X* Convert.ToInt32(price)));

           }

           else

           {

               MessageBox.Show("Вы не указали количество товара");

           }

       }

       private void button2_Click(object sender, EventArgs e)

       {

           OleDbConnection Connection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=I:\Курсовой АИС\DataBase.accdb");

           string sql = "Delete * From [Корзина]";

           OleDbCommand command = new OleDbCommand(sql, Connection);

           command.Connection.Open();

           command.ExecuteNonQuery();

           Connection.Close();

           корзинаTableAdapter.Update(dataBaseDataSet.Корзина);

           корзинаTableAdapter.Fill(dataBaseDataSet.Корзина);

           //dataGridView3.Rows.Clear();

       }

       private void button3_Click_1(object sender, EventArgs e)

       {

           if (dataGridView3.SelectedRows.Count >= 1)

           {

               int ind = dataGridView3.SelectedCells[0].RowIndex;

               dataGridView3.Rows.RemoveAt(ind);

               корзинаTableAdapter.Update(dataBaseDataSet.Корзина);

               корзинаTableAdapter.Fill(dataBaseDataSet.Корзина);

           }

           else

           {

               MessageBox.Show("Не выбрана не одна строка");

           }

       }

       private void button4_Click(object sender, EventArgs e)

       {

           OleDbConnection Connection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=I:\Курсовой АИС\DataBase.accdb");

           string sql = "insert into [Склад] SELECT [Наименование], [Группа товара], [Количество], [Компания-поставщик] from [Корзина]";

           OleDbCommand command = new OleDbCommand(sql, Connection);

           try

           {

               command.Connection.Open();

               command.ExecuteNonQuery();

           }

           catch (Exeption ee)

           {

               MessageBox.Show(ee.ToString(), "Ошибка");

               return;

           }

           MessageBox.Show("Комплектующие закуплены", "Успех", MessageBoxButtons.OK, MessageBoxIcon.Information);

           Connection.Close();

           ActiveForm.Close();

           Form2 Form2 = new Form2();

           Form2.Show();

           }

       private void оПрограммеToolStripMenuItem_Click(object sender, EventArgs e)

       {

           frmAbout frmAbout = new frmAbout();

           frmAbout.ShowDialog();

       }

       private void выходToolStripMenuItem_Click(object sender, EventArgs e)

       {

           Application.Exit();

       }

       private void показатьСправкуToolStripMenuItem_Click(object sender, EventArgs e)

       {

           Help.ShowHelp(this, @"I:\Курсовой АИС\coursework\WindowsFormsApplication1\Help.chm", HelpNavigator.TableOfContents);

       }

       }

   }

Form4.cs

using About;

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace WindowsFormsApplication1

{

   public partial class Form4 : Form

   {

       public Form4()

       {

           InitializeComponent();

       }

       private void Form4_Load(object sender, EventArgs e)

       {

           // TODO: данная строка кода позволяет загрузить данные в таблицу "dataBaseDataSet.Поставщики". При необходимости она может быть перемещена или удалена.

           this.поставщикиTableAdapter.Fill(this.dataBaseDataSet.Поставщики);

       }

       private void справкаToolStripMenuItem_Click(object sender, EventArgs e)

       {

       }

       private void показатьСправкуToolStripMenuItem_Click(object sender, EventArgs e)

       {

           Help.ShowHelp(this, @"I:\Курсовой АИС\coursework\WindowsFormsApplication1\Help.chm", HelpNavigator.TableOfContents);

       }

       private void оПрограммеToolStripMenuItem_Click(object sender, EventArgs e)

       {

           frmAbout frmAbout = new frmAbout();

           frmAbout.ShowDialog();

       }

       private void выходToolStripMenuItem_Click(object sender, EventArgs e)

       {

           Application.Exit();

       }

   }

}

Form6.cs

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

namespace WindowsFormsApplication1

{

   public partial class Form6 : Form

   {

       public Form6()

       {

           InitializeComponent();

       }

       private void Form6_Load(object sender, EventArgs e)

       {

       }

       private void button2_Click(object sender, EventArgs e)

       {

//кнопка «отмена». Обнуляем глобальную переменную Х и закрываем форму

           Data.X = 0;

           Form6.ActiveForm.Close();

       }

       public void button1_Click(object sender, EventArgs e)

       {

//если тексбокс не пустой – заносим в глобальную переменную Х значение текстбокса и закрываем его

           if (textBox1.TextLength != 0)

           {

               Data.X = 0;

               Data.X = Convert.ToInt32(textBox1.Text);

               Form6.ActiveForm.Close();

           }

//иначе выводим сообщение:

           else

           {

               MessageBox.Show("Укажите количество товара");

           }

       }

   }

Program.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Data;

using System.Data.OleDb;

namespace WindowsFormsApplication1

{

   public static class Data

   {

       public static int X = 0; //объявляем глобальную переменную Х типа Integer

   }

   static class Program

   {

       /// <summary>

       /// Главная точка входа для приложения.

       /// </summary>

       [STAThread]

       static void Main()

       {

           Application.EnableVisualStyles();    //запуск

           Application.SetCompatibleTextRenderingDefault(false); //формы

           Application.Run(new Form1());    //№1

       }

   }

}


Производство

Выполняет заказ начальства

Заказывает то или иное оборудование со склада

     Шоха

Продаваемый товар или услуга

Принимает заявку начальства

Направляет  к клиенту

Менеджер

Заносит данные о доходе за прошедший день

Смотрит какой сотрудник может оказать услугу

Смотрит на каком складе товар

Заносит заказ

Информационная система

Шоха

Извлекает из ИС необходимую информацию, согласно которой координирует монтажников, которые удовлетворяют потребности клиентов тем самым принося доход организации

Заносит в ИС информацию о Заказах, Сотрудниках и Поставщиках, а так же формирует информацию о доходах

Информационная система

Сообщает о готовности работать

Сообщает о товарах и складах

Поставщик

Обращается с заказом

Менеджер

Начальник

Менеджер

Информационная система

Форма для ввода информации

Кнопка «Добавить»

Необходимая таблица

Кнопка «Добавить»

Занесение в БД

Запрос на добавление

Менеджер

Информационная система

Форма для ввода информации

Кнопка «Добавить»

Необходимая таблица

Кнопка «Добавить»

Занесение в БД

Запрос на добавление

Менеджер

нформационная система

Форма для ввода информации

Кнопка «Поиск»

Необходимая таблица

Кнопка «Поиск»

Извлечение данных из БД

Запрос на поиск и вывод данных

Менеджер

Информационная система

Кнопка «Удл.»

Необходимая таблица

Удаление записи из БД

Запрос на удаление

Информационная система

Комплектующие/поставщики

Конкретный заказ

Просмотр Таблицы с данными и кнопками «Добавить» «Ред.» «Удл.»

Действия

Редактировать

Добавить

Удалить

Поиск

Форма с выбором количества комплектующих

Кнопка «Добавить»

Временная таблица «Корзина» с отображением комплектующих, которые мы хотим закупить


 

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

1178. Нормирование труда 34.5 KB
  Экологическое обоснование, под которым понимается рациональное использование фонда рабочего времени. Физиологическое обоснование, под которым понимается обоснование норм времени с точки зрения напряженности, монотонности, температуры, освещения и т.д. выполняемой работы. Социальное обоснование, под которым понимается поддержание в рабочем творческого начала с помощью материальных и моральных символов.
1179. Формы и системы оплаты труда 81 KB
  Сдельная форма оплаты труда. Сдельно-премиальная система. Повременная форма оплаты труда. Бестарифная форма заработка сотрудников предприятия.
1180. Понятие о себестоимости продукции 48 KB
  Выявление и рациональное использование внутрипроизводственных резервов предприятия. Расчет затрат на выпуск производственной программы. Расчет (калькуляция) по всей номенклатуре выпускаемой продукции.
1181. Понятие о ценообразовании 63.5 KB
  Дифференциация по структуре ценообразования. Учет всех затрат, связанных с производством и сбытом продукции. Возмещение этих затрат. Гибкость цен. Основные принципы ценообразования.
1182. Производительность труда 50 KB
  Производительность труда характеризует эффективность и результативность затрат труда. Выработка и трудоемкость продукции.
1183. Прибыль предприятия 48.5 KB
  Экономический эффект от деятельности предприятия. Прибыль предприятия, полученная от любых видов деятельности. Налогооблагаемая прибыль. Фонд материального стимулирования. Фонд поддержки объектов социально-культурного назначения.
1184. Рентабельность. Сравнение результатов деятельности с затратами 157.5 KB
  Рентабельность сравнивает результаты деятельности с затратами, обеспечивающими эти результаты. Рентабельность характеризует степень и уровень отдачи в производстве производственных ресурсов.
1185. Формы внешнего финансирования 64 KB
  Сроки поставки по лизингу основных фондов минимальные. Средства производства, получаемые по лизинговой операции, не учитываются на балансе лизингополучателя и, следовательно, не увеличивают его кредиторскую задолженность. По лизингу оформляется чаще всего дорогостоящее, редкое, сложное оборудование или оборудование, изготовленное малоизвестными фирмами.
1186. Сущность банкротства 59 KB
  Под процедурами банкротства понимается система разнообразных мероприятий, направленных на урегулирование отношений между предприятием-должником и его кредиторами.