Фруктовый склад

Автор работы: Пользователь скрыл имя, 07 Декабря 2014 в 22:37, курсовая работа

Описание работы

Цель работы: создать средствами SQL Server 2008 базу данных фруктового склада, предусмотреть реализацию следующих возможностей: добавление данных в записную книжку; удаление данных из записной книжки; поиск данных по конкретным признакам; изменение каких-либо данных.
Существует некоторый фруктовый склад, занимающийся куплей-продажей товара. Товар имеет определенные характеристики, такие как наименование, единица измерения, количество данного товара на складе, цена товара за покупку и др. Покупка и продажа товара выступают в качестве сделки, которые характеризуются датой сделки, общей суммой сделки и др. Оптовый склад имеет своих поставщиков и своих покупателей, с которыми наш склад и совершает сделки. Склад имеет всю информацию о поставщиках и покупателях, которая хранится в базе данных.

Содержание работы

Введение………………………………………………………………………………………3
Краткое описание…………………………………………………………………………….4
Системный анализ……………………………………………………………………………5
Скрипт. Создание таблиц и базы данных…………………………………………………..6
Схема базы данных или диаграмма………………………………………………………....9
Программа написанная на С#//……………………………………………………………..11
Заключение…………………………………………………………………………………..17

Файлы: 1 файл

Курсовой ФР сад.doc

— 1.07 Мб (Скачать файл)

Кыргызский государственный университет строительства, транспорта и архитектуры им. Н. Исанова

 

 

группа: БИС–1–11

 

 

 

Курсовой проект

по дисциплине: Методы программирования

на тему:

«Фруктовый склад»

 

 

 

 

 

 

Выполнила: Русланова Ж.

Проверил: Бөрүбаев М.

 

 

 

 

 

Бишкек – 2014

Содержание

Введение………………………………………………………………………………………3

Краткое описание…………………………………………………………………………….4

Системный анализ……………………………………………………………………………5

Скрипт. Создание таблиц и базы данных…………………………………………………..6

Схема базы данных или диаграмма………………………………………………………....9

Программа написанная на С#//……………………………………………………………..11

Заключение…………………………………………………………………………………..17

 

Введение

C#–объектно–ориентированный язык программирования, разработанный корпорацией Майкрософт в 1998-2001гг.командой под руководством Андерса Хейлсберга, как основной язык для обработки приложений под платформу Microsoft.NET.

Цель работы: создать средствами SQL Server 2008 базу данных фруктового склада, предусмотреть реализацию следующих возможностей: добавление данных в записную книжку; удаление данных из записной книжки; поиск данных по конкретным признакам; изменение каких-либо данных

 

 

 

Краткое описание

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

 

Системный анализ

Думаю, что каждый из нас когда-либо заходил в супермаркет, чтоб приобрести различные товары, но мало кто из нас задумывается над тем, откуда же эти товары оказываются на полках наших больших магазинов. Хотелось бы рассмотреть эту проблему на примере моей курсовой работы “Фруктовый склад". Несомненно, эта база данных будет состоять из таких сущностей взаимоотношений, как клиенты, т.е. закупщики товаров, и поставщики, т.е. те, кто непосредственно предоставляют эти товары.

К этому складу относятся фрукты, которым присвоен определенный код и единица измерения (в килограммах или поштучно). Фрукты расположены на полках, также указана их цена, количество и дата. Чтоб склад всегда был заполнен, товары приобретают у дилеров. Т.е. в базе данных обязательно должны присутствовать клиенты, за которыми закреплены номер, имя (т.е. название супермаркета), город, адрес и телефон, и поставщики, за которыми также закреплены номер, имя, город, адрес и телефон. Между ними отношения в виде закупки-продажи. Т.е. надо учитывать, у какого поставщика приобретен товар, по какой цене, в каком количестве, в какое время и т.д. Также, когда товары со склада продают, необходимо следить за тем, какой супермаркет какой товар продал, по какой цене, в каком количестве и в какое время. Несомненно, делать вручную все это сложно, потому что надо вести отчеты, а считать и следить за каждой закупкой и продажей не так-то легко.

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

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

 

 

Скрипт. Создание таблиц и базы данных

create database Fruktoviy_sad

use Fruktoviy_sad

create table Sklad

(

IdSklad int identity primary key,

Nazvanie_tovara char(50)not null,

Kolichestvo_tov_na_sklade char (50) not null

)

create table Tovar

(

IdTovar int identity primary key,

Nazvanie_tovara char(50) not null,

IdSkl int foreign key references Sklad,

IdGor int foreign key references Goroda

)

create table Goroda

(

IdGoroda int identity primary key,

Nazvanie_goroda char (100) not null

)

create table Pokupka

(

IdPokupka int identity primary key,

FIO char(100) not null,

Tovar char(50) not null,

Kolichestvo char (40) not null,

Czena char (40) not null,

Itogo char (50) not null,

Data date,

Zamechanie char(70) not null,

IdSdel int foreign key references Sdelka,

IdTov int foreign key references Tovar

)

create table Pokupatel

(

IdPokupatel int identity primary key,

FIO char (100) not null,

Gorod_pokupatelya char (100) not null,

Adres char (50) not null,

Telefon numeric,

IdPok int foreign key references Pokupka

)

create table Prodaja

(

IdProdaja int identity primary key,

FIO char(100) not null,

Tovar char(50) not null,

Kolichestvo char (40) not null,

Czena char (40) not null,

Itogo char (50) not null,

Data date,

Zamechanie char(70) not null,

IdSdel int foreign key references Sdelka,

IdTov int foreign key references Tovar

)

create table Postavshik

(

IdPostavshik int identity primary key,

FIO char (100) not null,

Gorod_postavshika char (100) not null,

Adres char (50) not null,

Telefon numeric,

IdProd int foreign key references Prodaja

)

create table Sdelka

(

IdSdelka int identity primary key,

FIO_pokupatelya char(100) not null,

FIO_postavshika char(100) not null,

Data_sdelki date,

Itogo_sdelki char(50) not null

)

 

Схема базы данных или диаграмма

Рис 1. Диаграмма БД

 

Модель базы данных имеет следующий вид:

Таблица Покупатель (Pokupatel) включает в себя такие поля как (IdPokupatel, Firma_pokupatelya, Gorod_pokupatelya, Adres, Telefon);

Таблица Покупка (Pokupka) включает в себя такие поля как (IdPokupka, Firma_pokupatelya, Tovar, Kolichestvo, Czena, Itogo, Data, Zamechanie);

Таблица Поставщик (Postavshik) включает в себя такие поля как (IdPostavshik, FIO, Gorod_postavshika, Adres, Telefon);

Таблица Продажа (Prodaja) включает в себя такие поля как (IdProdaja, FIO, Tovar, Kolichestvo, Czena, Itogo, Data, Zamechanie);

Таблица Города (Goroda) включает в себя такие поля как (IdGorod, Nazvanie_goroda);

Таблица Товар (Tovar) включает в себя такие поля как (IdTovar, Nazvanie_tovara);

Таблица Склад (Sklad) включает в себя такие поля как (IdSklad, Nazvanie_tovara, Kolichestvo_tov_na_sklade);

Таблица Сделка (Sdelka) включает в себя такие поля как (IdSdelka, Firma_pokupatelya, FIO_postavshika, Data_sdelki, Itogo_sdelki).

 

Для каждой сущности выбран ключ – атрибут, значения которого однозначно идентифицируют кортеж:

1) таблица Pokupatel – ключевое поле IdPokupatel

2) таблица Postavshik – ключевое поле IdPostavshik

3) таблица Pokupka – ключевое поле IdPokupka

4) таблица Prodaja – ключевое поле IdProdaja

5) таблица Goroda – ключевое поле IdGorod

6) таблица Tovar – ключевое поле IdTovar

7) таблица Sklad – ключевое поле IdSklad

8) таблица Sdelka – ключевое поле IdSdelka

Все ключевые поля являются идентификационным номером, что облегчает работу с данными.

Все таблицы связаны между собой. Все связи таблиц, как видно из схемы, имеют отношение "один ко многим":

Предполагается также решение следующих задач:

выдача информации об определенном товаре;

выдача информации о сделках;

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

выдача информации о покупателях;

закупка товаров;

продажа товаров.

 

Программа написанная на С#

Рис 2. Главная кнопачная форма

Открыв ее, пользователю предлагаются следующие действия:

Купить товар;

Продать товар;

Информация со склада;

Сведения о программе.

 

Рис 3. Форма для покупки

Рис 4.Форма для регистрации покупателей

 

 

 

 

 

Рис 5.Форма для покупки

 

Рис 6.Все данные склада

 

 

Рис 7.Отчет о покупках

 

*Код для формы Покупки

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Data.SqlClient;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

 

namespace FR_Sad

{

    public partial class Покупка : Form

    {

        SqlConnection podkl = new SqlConnection("Data Source=.;Initial Catalog=Fruktoviy_sad;Integrated Security=True");

        SqlCommand komanda;

        string st;

        int IdPokupka;

 

        public Покупка()

        {

            InitializeComponent();

        }

 

        private void Покупка_Load(object sender, EventArgs e)

        {

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

            this.pokupatelTableAdapter.Fill(this.fruktoviy_sadDataSet.Pokupatel);

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

            this.tovarTableAdapter.Fill(this.fruktoviy_sadDataSet.Tovar);

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

            this.pokupkaTableAdapter.Fill(this.fruktoviy_sadDataSet.Pokupka);

        }

 

        private void btn_Купить_Click(object sender, EventArgs e)

        {

            try

            {

                DialogResult res = MessageBox.Show("                 Купить ?", "Выбор", MessageBoxButtons.YesNo);

                if (res == DialogResult.Yes)

                {

                    MessageBox.Show("       Куплено");

                    comboBox1.Text = "Куплено";

                }

                if (res == DialogResult.No)

                {

                    MessageBox.Show("        Покупка отменена");

                    comboBox1.Text = "Покупка отменена";

                }

                st = string.Format(@"update Pokupka set FIO ='{0}', Tovar='{1}', Kolichestvo='{2}', Czena='{3}',

                                Itogo='{4}', Data='{5}', Zamechanie='{6}' where IdPokupka='{7}'", FIO_pokup.SelectedValue, nazv_tov.Text,

                                kol_tov.Text, czena_pokup.Text, itogo_pokupki.Text, Convert.ToDateTime(datapokupki.Text), comboBox1.Text, IdPokupka);

                podkl.Open();

                using (komanda = new SqlCommand(st, podkl))

                {

                    komanda.ExecuteNonQuery();

                }

                this.pokupkaTableAdapter.Fill(this.fruktoviy_sadDataSet.Pokupka);

                podkl.Close();

            }

            catch (Exception q)

            {

                MessageBox.Show(q.Message);

            }

        }

 

        private void Dobavit_pokupku_Click(object sender, EventArgs e)

        {

            st = string.Format(@"insert into Pokupka (FIO, Tovar, Kolichestvo, Czena, Itogo, Data, Zamechanie)  

                            values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}')", FIO_pokup.SelectedValue, nazv_tov.Text,

                            kol_tov.Text, czena_pokup.Text, itogo_pokupki.Text, Convert.ToDateTime(datapokupki.Text), comboBox1.Text);

            podkl.Open();

            using (komanda = new SqlCommand(st, podkl))

            {

                komanda.ExecuteNonQuery();

            }

            this.pokupkaTableAdapter.Fill(this.fruktoviy_sadDataSet.Pokupka);

            podkl.Close();

        }

 

        private void btn_Итоги_Click(object sender, EventArgs e)

        {

            int a = int.Parse(kol_tov.Text) * int.Parse(czena_pokup.Text);

            itogo_pokupki.Text = a.ToString();

        }

 

        private void Izmenit_pokupku_Click(object sender, EventArgs e)

        {

            try

            {

                st = string.Format(@"update Pokupka set FIO ='{0}', Tovar='{1}', Kolichestvo='{2}', Czena='{3}',

                                Itogo='{4}', Data='{5}', Zamechanie='{6}' where IdPokupka='{7}'", FIO_pokup.SelectedValue, nazv_tov.Text,

                                kol_tov.Text, czena_pokup.Text, itogo_pokupki.Text, Convert.ToDateTime(datapokupki.Text), comboBox1.Text, IdPokupka);

                podkl.Open();

                using (komanda = new SqlCommand(st, podkl))

                {

                    komanda.ExecuteNonQuery();

                }

                this.pokupkaTableAdapter.Fill(this.fruktoviy_sadDataSet.Pokupka);

                podkl.Close();

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