Хранилище данных "Прокат автотранспорта"

Автор: Пользователь скрыл имя, 13 Ноября 2015 в 13:14, курсовая работа

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

Задачей данного проекта является разработка системы поддержки принятия решений на основе хранилищ данных в предметной области «Фирма, разрабатывающая программное обеспечение».
Объектом проекта является предоставляемые функциональные возможности Microsoft Visual Studio 2012, Microsoft SQL Server 2008 и его служб.
Цель курсового проекта состоит в создании хранилища данных для предметной области «Фирма, разрабатывающая программное обеспечение».

Файлы: 1 файл

Записка.docx

— 2.26 Мб (Скачать)

 

ПРИЛОЖЕНИЕ А

Программный код приложения

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.SqlClient;

using Excel = Microsoft.Office.Interop.Excel;

using System.Diagnostics;

 

 

namespace разработка_ПО

{

    public partial class Form3 : Form

    {

        public string commandString, connectionString;

        private Excel.Application excelapp;

        public Form3()

        {

            InitializeComponent();

        }

 

        public void fun_edit(String cmd)

        {

            SqlCommand command = new SqlCommand();

            SqlConnection connection = new SqlConnection(connectionString);

            commandString = cmd;

            command.CommandText = cmd;

            command.Connection = connection;

            SqlDataReader reader;

            command.Connection.Open();

            reader = command.ExecuteReader();

            reader.Close();

            command.Connection.Close();

        }

 

        public string fun_screen(String cmd, String stlb)

        {

            String result = null;

            SqlCommand command = new SqlCommand();

            SqlConnection connection = new SqlConnection(connectionString);

            commandString = cmd;

            command.CommandText = cmd;

            command.Connection = connection;

            SqlDataReader reader;

            command.Connection.Open();

            reader = command.ExecuteReader();

            while (reader.Read())

            {

                result = Convert.ToString(reader[stlb]);

            }

            reader.Close();

            command.Connection.Close();

            return result;

        }

        public int nomer(DataGridView d)

        {

            int nomer;

            int i, max, flag = 0;

            max = int.MinValue;

 

            nomer = d.RowCount;

            for (i = 0; i < d.RowCount; i++)

            {

                if (max < Convert.ToInt32(d[0, i].Value)) max = Convert.ToInt32(d[0, i].Value);

            }

            for (i = 0; i < d.RowCount; i++)

            {

                if (nomer == Convert.ToInt32(d[0, i].Value))

                {

                    flag = 1;

                }

            }

            if (flag == 1) nomer = max + 1;

 

            return nomer;

        }

 

        private void Form3_Load(object sender, EventArgs e)

        {

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

            this.регистрация_ПОTableAdapter.Fill(this.progr_obDataSet.Регистрация_ПО);

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

            this.сотрудникиTableAdapter.Fill(this.progr_obDataSet.Сотрудники);

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

            this.язык_программированияTableAdapter.Fill(this.progr_obDataSet.Язык_программирования);

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

            this.отделTableAdapter.Fill(this.progr_obDataSet.Отдел);

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

            this.измерение_СотрудникиTableAdapter.Fill(this.progr_obDataSet.Измерение_Сотрудники);

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

            this.измерение_Язык_программированияTableAdapter.Fill(this.progr_obDataSet.Измерение_Язык_программирования);

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

            this.измерение_ОтделTableAdapter.Fill(this.progr_obDataSet.Измерение_Отдел);

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

            this.измерение_ДатаTableAdapter.Fill(this.progr_obDataSet.Измерение_Дата);

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

            this.таблица_фактовTableAdapter.Fill(this.progr_obDataSet.Таблица_фактов);

            this.Size = new System.Drawing.Size(900, 537);

 

        }

 

        private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)

        {

            switch (tabControl1.SelectedIndex)

            {

                case (0):

                    {

                        this.Size = new System.Drawing.Size(900, 537);

                        break;

                    }

                case (1):

                    {

                        this.Size = new System.Drawing.Size(693, 537);

                        break;

                    }

 

                case (2):

                    {

                        this.Size = new System.Drawing.Size(693, 537);

                        break;

                    }

                case (3):

                    {

                        this.Size = new System.Drawing.Size(693, 537);

                        break;

                    }

                case (4):

                    {

                        this.Size = new System.Drawing.Size(693, 537);

                        break;

                    }

                default: { break; }

            }

        }

 

        private void button2_Click(object sender, EventArgs e)

        {

            // MessageBox.Show(nomer(dataGridView7).ToString());

            int kol_ot = dataGridView6.RowCount - 1;

            int kol_ti = dataGridView3.RowCount - 1;

            int raz = kol_ot - kol_ti;

            if (kol_ot > kol_ti)

            {

                for (int i = 0; i < raz; i++)

                {

                    int j = kol_ot - raz + 1 + i;

                    connectionString = измерение_ОтделTableAdapter.Connection.ConnectionString;

                    commandString = "INSERT INTO [Измерение_Отдел]([Код отдела], [Название отдела], [Начальник отдела], [Штат сотрудников]) VALUES ('" +

               nomer(dataGridView3) + "', '" +

                   Convert.ToString(dataGridView6[1, j].Value) + "', '" +

                    Convert.ToString(dataGridView6[2, j].Value) + "', '" +

                    Convert.ToString(dataGridView6[3, j].Value)  + "')";

                    fun_edit(commandString);

                    this.измерение_ОтделTableAdapter.Adapter.Update(this.progr_obDataSet.Измерение_Отдел);

                    this.измерение_ОтделTableAdapter.Fill(this.progr_obDataSet.Измерение_Отдел);

 

                }

            }

        }

 

        private void button3_Click(object sender, EventArgs e)

        {

            // MessageBox.Show(nomer(dataGridView7).ToString());

            int kol_ot = dataGridView7.RowCount - 1;

            int kol_ti = dataGridView4.RowCount - 1;

            int raz = kol_ot - kol_ti;

            if (kol_ot > kol_ti)

            {

                for (int i = 0; i < raz; i++)

                {

                    int j = kol_ot - raz + 1 + i;

                    connectionString = измерение_Язык_программированияTableAdapter.Connection.ConnectionString;

                    commandString = "INSERT INTO [Измерение_Язык_программирования]([Код языка], [Название языка]) VALUES ('" +

               nomer(dataGridView4) + "', '" +

                   Convert.ToString(dataGridView7[1, j].Value) + "')";

                    fun_edit(commandString);

                    this.измерение_Язык_программированияTableAdapter.Adapter.Update(this.progr_obDataSet.Измерение_Язык_программирования);

                    this.измерение_Язык_программированияTableAdapter.Fill(this.progr_obDataSet.Измерение_Язык_программирования);

 

                }

            }

        }

 

        private void button4_Click(object sender, EventArgs e)

        {

            // MessageBox.Show(nomer(dataGridView7).ToString());

            int kol_ot = dataGridView8.RowCount - 1;

            int kol_ti = dataGridView5.RowCount - 1;

            int raz = kol_ot - kol_ti;

            if (kol_ot > kol_ti)

            {

                for (int i = 0; i < raz; i++)

                {

                    int j = kol_ot - raz + 1 + i;

                    connectionString = измерение_СотрудникиTableAdapter.Connection.ConnectionString;

                    commandString = "INSERT INTO [Измерение_Сотрудники]([Код программиста], [ФИО], [Адрес], [Телефон]) VALUES ('" +

               nomer(dataGridView5) + "', '" +

                   Convert.ToString(dataGridView8[1, j].Value) + "', '" +

                    Convert.ToString(dataGridView8[2, j].Value) + "', '" +

                    Convert.ToString(dataGridView8[3, j].Value) + "')";

                    fun_edit(commandString);

                    this.измерение_СотрудникиTableAdapter.Adapter.Update(this.progr_obDataSet.Измерение_Сотрудники);

                    this.измерение_СотрудникиTableAdapter.Fill(this.progr_obDataSet.Измерение_Сотрудники);

 

                }

            }

        }

 

        private void button1_Click(object sender, EventArgs e)

        {

 

            int kol_ot = dataGridView9.RowCount - 1;

            int kol_ti = dataGridView2.RowCount - 1;

            int raz = kol_ot - kol_ti;

            bool f1 = false;

            if (kol_ot > kol_ti)

            {

                for (int i = 0; i < dataGridView9.RowCount; i++)

                {

                    f1 = false;

                    for (int j = 0; j < dataGridView2.RowCount; j++)

                    {

                        if (Convert.ToDateTime(dataGridView9[6, i].Value) == Convert.ToDateTime(dataGridView2[1, j].Value))

                        {

                            f1 = true;

 

                        }

 

                    }

                    if (f1 == false)

                    {

 

                        DateTime d;

                        d = Convert.ToDateTime(dataGridView9[6, i].Value);

                        //  MessageBox.Show(d.Date.ToString("yyyy-MM-dd"));

                        int quarter = 0;

                        if (Convert.ToInt32(d.Month) >= 1 && Convert.ToInt32(d.Month) <= 3) { quarter = 1; }

                        if (Convert.ToInt32(d.Month) >= 4 && Convert.ToInt32(d.Month) <= 6) { quarter = 2; }

                        if (Convert.ToInt32(d.Month) >= 7 && Convert.ToInt32(d.Month) <= 9) { quarter = 3; }

                        if (Convert.ToInt32(d.Month) >= 10 && Convert.ToInt32(d.Month) <= 12) { quarter = 4; }

 

                        connectionString = измерение_ДатаTableAdapter.Connection.ConnectionString;

                        commandString = "INSERT INTO [Измерение_Дата] ([Код даты], [Дата], [Число], [Месяц], [Квартал], [Год]) VALUES ('" +

                    nomer(dataGridView2) + "', '" +

                   Convert.ToString(d.Date.ToString("yyyy-MM-dd")) + "', '" +

                   Convert.ToString(d.Day) + "', '" +

                    Convert.ToString(d.Month) + "', '" +

                     Convert.ToString(quarter) + "', '" +

                   Convert.ToString(d.Year) + "')";

                        fun_edit(commandString);

                        this.измерение_ДатаTableAdapter.Adapter.Update(this.progr_obDataSet.Измерение_Дата);

                        this.измерение_ДатаTableAdapter.Fill(this.progr_obDataSet.Измерение_Дата);

 

 

 

 

                    }

                }

            }

        }

 

        private void button5_Click(object sender, EventArgs e)

        {

            int kol_ot = dataGridView10.RowCount - 1;

            int kol_ti = dataGridView1.RowCount - 1;

            int raz = kol_ot - kol_ti;

            bool f1 = false;

            if (kol_ot > kol_ti)

            {

 

                for (int i = 0; i < raz; i++)

                {

                    int data = 0;

                    int j = kol_ot - raz + 1 + i;

 

                    // MessageBox.Show(j.ToString());

                    for (int ii = 0; ii < dataGridView2.RowCount; ii++)

                    {

                        String d1, d2;

                        d1 = Convert.ToString(dataGridView2[1, ii].Value);

                        d2 = Convert.ToString(dataGridView10[6, j].Value);

                        //MessageBox.Show(d1.ToString() + "    " + d2.ToString());

 

                        if (d1 == d2)

                        {

 

                            data = Convert.ToInt32(dataGridView2[0, ii].Value);

                            //MessageBox.Show(data.ToString());

                        }

                    }

 

                    connectionString = таблица_фактовTableAdapter.Connection.ConnectionString;

                    commandString = "INSERT INTO [Таблица фактов]([Код регистрации], [Название ПО], [Код отдела], [Код сотрудника], [Код языка], [Стоимость], [Дата]) VALUES ('" +

               nomer(dataGridView1) + "', '" +

                   Convert.ToString(dataGridView10[1, j].Value) + "', '" +

                   Convert.ToInt32(dataGridView10[2, j].Value) + "', '" +

                       Convert.ToInt32(dataGridView10[3, j].Value) + "', '" +

                           Convert.ToInt32(dataGridView10[4, j].Value) + "', '" +

                               Convert.ToInt32(dataGridView10[5, j].Value) + "', '" +

                               Convert.ToInt32(data) + "')";

                    fun_edit(commandString);

                    this.таблица_фактовTableAdapter.Adapter.Update(this.progr_obDataSet.Таблица_фактов);

                    this.таблица_фактовTableAdapter.Fill(this.progr_obDataSet.Таблица_фактов);

 

 

                }

            }

        }

 

        private void button6_Click(object sender, EventArgs e)

        {

            excelapp = new Excel.Application();

            excelapp.Visible = true;

            string workbookPath = Environment.CurrentDirectory + "\\Прибыль.xls";

            excelapp.Workbooks.Open(workbookPath,

             Type.Missing, Type.Missing, Type.Missing, Type.Missing,

Информация о работе Хранилище данных "Прокат автотранспорта"