Разработка и внедрение системы анализа и статистики данных

Разработка базы данных для торговой компании АО "Рамстор". Подготовка и выпуск отчетности, формирование статистики по товарам и покупателям. Формирование и выгрузка статических документов в табличный процессор MS Excel. Описание средств проектирования.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 07.04.2014
Размер файла 997,1 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

procedure BitBtn3Click (Sender: TObject);

procedure FormShow (Sender: TObject);

procedure BitBtn2Click (Sender: TObject);

procedure BitBtn1Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form5: TForm5;

page: integer;

implementation

uses Unit2, Unit1;

{$R *. dfm}

procedure renegate (a1,a2,a3,a4,a5: integer;

b1,b2,b3,b4,b5: string);

var

i,max,p: integer;

a: array [1.5] of integer;

b: array [1.5] of string;

begin

a [1]: =a1; a [2]: =a2; a [3]: =a3; a [4]: =a4; a [5]: =a5;

b [1]: =b1; b [2]: =b2; b [3]: =b3; b [4]: =b4; b [5]: =b5;

max: =0;

for i: =1 to 5 do

if a [i] >max then max: =a [i];

with Form5. Image1. Canvas do

begin

MoveTo (40,400); lineto (730,400);

MoveTo (40,400); lineto (40, 20);

MoveTo (40, 20); lineto (35,40);

MoveTo (40, 20); lineto (45,40);

MoveTo (730,400); lineto (710,405);

Продолжение приложения Б

MoveTo (730,400); lineto (710,395);

if max>11 then

begin

for i: =1 to 10 do

begin

MoveTo (37,400-33*i); lineto (43,400-33*i);

TextOut (1,390-33*i, inttostr (max div 10*i));

end;

for i: =1 to 5 do

begin

Rectangle (40+i*100,400,100+i*100,400- (a [i] div (max div 10) *33));

// FillRect (Rect (40+i*100+1,401+1,100+i*100-1,400- (a [i] div (max div 100) *3) +1));

TextOut (40+i*100,420,b [i]);

TextOut (40+i*100,400- (a [i] div (max div 10) *33+15), inttostr (a [i]));

end;

end

else

begin

for i: =1 to 10 do

begin

MoveTo (37,400-33*i); lineto (43,400-33*i);

TextOut (1,390-33*i, inttostr (i));

end;

for i: =1 to 5 do

begin

Rectangle (40+i*100,400,100+i*100,400- (a [i] *33));

Brush. Color: =clRed;

FillRect (Rect (40+i*100+1,400+1,100+i*100-1,400- (a [i] *33) - 1));

Brush. Color: =clWhite;

TextOut (40+i*100,420,b [i]);

TextOut (40+i*100,400- (a [i] *33+15), inttostr (a [i]));

end;

end;

end;

// showmessage (inttostr (max));

end;

procedure TForm5. FormClose (Sender: TObject; var Action: TCloseAction);

begin

Form2. BitBtn7. Enabled: =false;

Form2. BitBtn8. Enabled: =false;

Form2. Enabled: =true;

Продолжение приложения Б

Form2. Query2. Close;

Hide;

end;

procedure TForm5. BitBtn3Click (Sender: TObject);

begin

Form2. BitBtn7. Enabled: =false;

Form2. BitBtn8. Enabled: =false;

Form2. Enabled: =true;

Form2. Query2. Close;

Hide;

end;

procedure killbill;

var

a: array [1.5] of integer;

b: array [1.5] of string;

i: integer;

begin

case Form2.comboBox5. ItemIndex of

0: begin

Form2. Query2. Close;

Form2. Query2. SQL. Clear;

Form2. Query2. SQL. Text: ='select idt, sum (kolvo) from sale group by idt';

Form2. Query2. Open;

end;

1: begin

Form2. Query2. Close;

Form2. Query2. SQL. Clear;

Form2. Query2. SQL. Text: ='select idt, sum (kolvo) from sale where data="'+Form2. MaskEdit1. Text+'" group by idt';

Form2. Query2. Open;

end;

2: begin

Form2. Query2. Close;

Form2. Query2. SQL. Clear;

Form2. Query2. SQL. Text: ='select idt, sum (kolvo) from sale where data between "'+Form2. MaskEdit1. Text+'" and "'+Form2. MaskEdit2. Text+'" group by idt';

Form2. Query2. Open;

end;

end;

Продолжение приложения Б

Form2. Query2. First;

for i: =1 to 5 do

begin

a [i]: =Form2. Query2. Fields. Fields [1]. AsInteger;

b [i]: =Form2. Query2. Fields. Fields [0]. AsString;

Form2. Query2. Next;

end;

renegate (a [1],a [2],a [3],a [4],a [5],

b [1],b [2],b [3],b [4],b [5],);

end;

procedure TForm5. FormShow (Sender: TObject);

begin

Image1. Canvas. FillRect (Image1. BoundsRect);

killbill;

page: =1;

end;

procedure TForm5. BitBtn2Click (Sender: TObject);

var

a: array [1.5] of integer;

b: array [1.5] of string;

i: integer;

begin

Image1. Canvas. FillRect (Image1. BoundsRect);

page: =page+5;

case Form2.comboBox5. ItemIndex of

0: begin

Form2. Query2. Close;

Form2. Query2. SQL. Clear;

Form2. Query2. SQL. Text: ='select idt, sum (kolvo) from sale group by idt';

Form2. Query2. Open;

end;

1: begin

Form2. Query2. Close;

Form2. Query2. SQL. Clear;

Form2. Query2. SQL. Text: ='select idt, sum (kolvo) from sale where data="'+Form2. MaskEdit1. Text+'" group by idt';

Form2. Query2. Open;

end;

2: begin

Form2. Query2. Close;

Продолжение приложения Б

Form2. Query2. SQL. Clear;

Form2. Query2. SQL. Text: ='select idt, sum (kolvo) from sale where data between "'+Form2. MaskEdit1. Text+'" and "'+Form2. MaskEdit2. Text+'" group by idt';

Form2. Query2. Open;

end;

end;

Form2. Query2. RecNo: =page;

for i: =1 to 5 do

begin

a [i]: =Form2. Query2. Fields. Fields [1]. AsInteger;

b [i]: =Form2. Query2. Fields. Fields [0]. AsString;

Form2. Query2. Next;

end;

renegate (a [1],a [2],a [3],a [4],a [5],

b [1],b [2],b [3],b [4],b [5],);

end;

procedure TForm5. BitBtn1Click (Sender: TObject);

var

a: array [1.5] of integer;

b: array [1.5] of string;

i: integer;

begin

Image1. Canvas. FillRect (Image1. BoundsRect);

if Form2. Query2. RecNo>=5 then

begin

page: =page-5;

case Form2.comboBox5. ItemIndex of

0: begin

Form2. Query2. Close;

Form2. Query2. SQL. Clear;

Form2. Query2. SQL. Text: ='select idt, sum (kolvo) from sale group by idt';

Form2. Query2. Open;

end;

1: begin

Form2. Query2. Close;

Form2. Query2. SQL. Clear;

Form2. Query2. SQL. Text: ='select idt, sum (kolvo) from sale where data="'+Form2. MaskEdit1. Text+'" group by idt';

Form2. Query2. Open;

end;

Продолжение приложения Б

2: begin

Form2. Query2. Close;

Form2. Query2. SQL. Clear;

Form2. Query2. SQL. Text: ='select idt, sum (kolvo) from sale where data between "'+Form2. MaskEdit1. Text+'" and "'+Form2. MaskEdit2. Text+'" group by idt';

Form2. Query2. Open;

end;

end;

Form2. Query2. RecNo: =page;

for i: =1 to 5 do

begin

a [i]: =Form2. Query2. Fields. Fields [1]. AsInteger;

b [i]: =Form2. Query2. Fields. Fields [0]. AsString;

Form2. Query2. Next;

end;

renegate (a [1],a [2],a [3],a [4],a [5],

b [1],b [2],b [3],b [4],b [5],);

end;

end;

end.

unit Unit6;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Buttons, ExtCtrls;

type

TForm6 = class (TForm)

Image1: TImage;

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

BitBtn3: TBitBtn;

procedure BitBtn3Click (Sender: TObject);

procedure FormClose (Sender: TObject; var Action: TCloseAction);

procedure FormShow (Sender: TObject);

procedure BitBtn2Click (Sender: TObject);

procedure BitBtn1Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

Продолжение приложения Б

var

Form6: TForm6;

page: integer;

implementation

uses Unit2;

{$R *. dfm}

procedure renegate (a1,a2,a3,a4,a5: integer;

b1,b2,b3,b4,b5: string);

var

i,max,p: integer;

a: array [1.5] of integer;

b: array [1.5] of string;

begin

a [1]: =a1; a [2]: =a2; a [3]: =a3; a [4]: =a4; a [5]: =a5;

b [1]: =b1; b [2]: =b2; b [3]: =b3; b [4]: =b4; b [5]: =b5;

max: =0;

for i: =1 to 5 do

if a [i] >max then max: =a [i];

with Form6. Image1. Canvas do

begin

MoveTo (40,400); lineto (730,400);

MoveTo (40,400); lineto (40, 20);

MoveTo (40, 20); lineto (35,40);

MoveTo (40, 20); lineto (45,40);

MoveTo (730,400); lineto (710,405);

MoveTo (730,400); lineto (710,395);

for i: =1 to 10 do

begin

MoveTo (37,400-33*i); lineto (43,400-33*i);

TextOut (1,390-33*i, inttostr (max div 10*i));

end;

for i: =1 to 5 do

begin

Rectangle (40+i*100,400,100+i*100,400- (a [i] div (max div 100) *3));

Brush. Color: =clRed;

FillRect (Rect (40+i*100+1,401+1,100+i*100-1,400- (a [i] div (max div 100) *3) +1));

Brush. Color: =clWhite;

// FloodFill (40+i*100+1,401+1,clwhite,fsBorder);

TextOut (40+i*100,420,b [i]);

TextOut (40+i*100,400- (a [i] div (max div 100) *3+15), inttostr (a [i]));

Продолжение приложения Б

end;

MoveTo (40,400); lineto (730,400);

end;

// showmessage (inttostr (max));

end;

procedure killbill;

var

a: array [1.5] of integer;

b: array [1.5] of string;

i: integer;

begin

case Form2.comboBox3. ItemIndex of // cards inner join sale on cards. idcard = sale. idcard group by cards. fam,cards. idcard

0: begin

Form2. Query1. Close;

Form2. Query1. SQL. Clear;

Form2. Query1. SQL. Text: ='select fam, sum (summa) from cards inner join sale on cards. idcard = sale. idcard group by cards. fam,cards. idcard';

Form2. Query1. Open;

end;

1: begin

Form2. Query1. Close;

Form2. Query1. SQL. Clear;

Form2. Query1. SQL. Text: ='select fam, sum (summa) from cards inner join sale on cards. idcard = sale. idcard where data="'+Form2. Edit4. Text+'" group by cards. fam,cards. idcard';

Form2. Query1. Open;

end;

2: begin

Form2. Query1. Close;

Form2. Query1. SQL. Clear;

Form2. Query1. SQL. Text: ='select fam, sum (summa) from cards inner join sale on cards. idcard = sale. idcard where data between "'+Form2. Edit4. Text+'" and "'+Form2. Edit5. Text+'" group by cards. fam,cards. idcard';

Form2. Query1. Open;

end;

end;

Form2. Query1. First;

for i: =1 to 5 do

begin

Продолжение приложения Б

a [i]: =Form2. Query1. Fields. Fields [1]. AsInteger;

b [i]: =Form2. Query1. Fields. Fields [0]. AsString;

Form2. Query1. Next;

end;

renegate (a [1],a [2],a [3],a [4],a [5],

b [1],b [2],b [3],b [4],b [5],);

end;

procedure TForm6. BitBtn3Click (Sender: TObject);

begin

Form2. BitBtn6. Enabled: =false;

Form2. BitBtn9. Enabled: =false;

Form2. Enabled: =true;

Form2. Query1. Close;

Hide;

end;

procedure TForm6. FormClose (Sender: TObject; var Action: TCloseAction);

begin

Form2. BitBtn6. Enabled: =false;

Form2. BitBtn9. Enabled: =false;

Form2. Enabled: =true;

Form2. Query1. Close;

Hide;

end;

procedure TForm6. FormShow (Sender: TObject);

begin

Image1. Canvas. FillRect (Image1. BoundsRect);

killbill;

page: =1;

end;

procedure TForm6. BitBtn2Click (Sender: TObject);

var

a: array [1.5] of integer;

b: array [1.5] of string;

i: integer;

begin

Image1. Canvas. FillRect (Image1. BoundsRect);

page: =page+5;

case Form2.comboBox3. ItemIndex of

0: begin

Form2. Query1. Close;

Продолжение приложения Б

Form2. Query1. SQL. Clear;

Form2. Query1. SQL. Text: ='select fam, sum (summa) from cards inner join sale on cards. idcard = sale. idcard group by cards. fam,cards. idcard';

Form2. Query1. Open;

end;

1: begin

Form2. Query1. Close;

Form2. Query1. SQL. Clear;

Form2. Query1. SQL. Text: ='select fam, sum (summa) from cards inner join sale on cards. idcard = sale. idcard where data="'+Form2. Edit4. Text+'" group by cards. fam,cards. idcard';

Form2. Query1. Open;

end;

2: begin

Form2. Query1. Close;

Form2. Query1. SQL. Clear;

Form2. Query1. SQL. Text: ='select fam, sum (summa) from cards inner join sale on cards. idcard = sale. idcard where data between "'+Form2. Edit4. Text+'" and "'+Form2. Edit5. Text+'" group by cards. fam,cards. idcard';

Form2. Query1. Open;

end;

end;

Form2. Query1. RecNo: =page;

for i: =1 to 5 do

begin

a [i]: =Form2. Query1. Fields. Fields [1]. AsInteger;

b [i]: =Form2. Query1. Fields. Fields [0]. AsString;

Form2. Query1. Next;

end;

renegate (a [1],a [2],a [3],a [4],a [5],

b [1],b [2],b [3],b [4],b [5],);

end;

procedure TForm6. BitBtn1Click (Sender: TObject);

var

a: array [1.5] of integer;

b: array [1.5] of string;

i: integer;

begin

Image1. Canvas. FillRect (Image1. BoundsRect);

if Form2. Query1. RecNo>=5 then

begin

page: =page-5;

Продолжение приложения Б

case Form2.comboBox3. ItemIndex of

0: begin

Form2. Query1. Close;

Form2. Query1. SQL. Clear;

Form2. Query1. SQL. Text: ='select fam, sum (summa) from cards inner join sale on cards. idcard = sale. idcard group by cards. fam,cards. idcard';

Form2. Query1. Open;

end;

1: begin

Form2. Query1. Close;

Form2. Query1. SQL. Clear;

Form2. Query1. SQL. Text: ='select fam, sum (summa) from cards inner join sale on cards. idcard = sale. idcard where data="'+Form2. Edit4. Text+'" group by cards. fam,cards. idcard';

Form2. Query1. Open;

end;

2: begin

Form2. Query1. Close;

Form2. Query1. SQL. Clear;

Form2. Query1. SQL. Text: ='select fam, sum (summa) from cards inner join sale on cards. idcard = sale. idcard where data between "'+Form2. Edit4. Text+'" and "'+Form2. Edit5. Text+'" group by cards. fam,cards. idcard';

Form2. Query1. Open;

end

end;

Form2. Query1. RecNo: =page;

for i: =1 to 5 do

begin

a [i]: =Form2. Query1. Fields. Fields [1]. AsInteger;

b [i]: =Form2. Query1. Fields. Fields [0]. AsString;

Form2. Query1. Next;

end;

end;

renegate (a [1],a [2],a [3],a [4],a [5],

b [1],b [2],b [3],b [4],b [5],);

end;

end.

Размещено на Allbest.ru


Подобные документы

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

    курсовая работа [2,6 M], добавлен 16.11.2013

  • Суммирование, вычитание двоичных чисел в ПК. Табличный процессор Excel: типы данных. Правила ввода чисел. СУБД Access: запрос с параметром (принцип работы, этапы создания). Связи между таблицами. Проектирование структуры данных. Работа с базой данных.

    контрольная работа [52,8 K], добавлен 02.01.2011

  • Краткая история табличных процессоров. Интерфейс Microsoft Excel-2010. Документ Excel 2010. Типы данных в ячейках Excel. Диапазоны (массивы, блоки) в Excel. Текстовые и числовые данные. Формулы и ссылки на ячейки. Форматы представления числовых данных.

    курс лекций [244,0 K], добавлен 21.10.2011

  • Табличный процессор Excel – самый популярный на сегодняшний день табличный редактор. Он позволяет легко оперировать с цифрами, обладает удобным интерфейсом, программное средство для проектирования электронных таблиц. Функции табличных процессоров.

    реферат [16,9 K], добавлен 14.12.2008

  • Принцип работы и особенности интерфейса табличного процессора Microsoft Office Excel. Описание правил адресации ячеек, освоение приемов их выделения и заполнения данными. Обобщение приемов ввода и редактирования данных в ячейках. Элементы окна Excel.

    лабораторная работа [2,7 M], добавлен 15.11.2010

  • Формирование списков с целью быстрого автозаполнения строк и столбцов. Удаление и вставка строк и столбцов. Вычисление по формулам и построение диаграмм. Поиск данных с использованием авто фильтра. Этапы создания базы данных Access, определение связей.

    контрольная работа [5,3 M], добавлен 29.07.2012

  • Задачи реляционной модели данных. Работа с БД посредством SQL запросов. Требования к программе. Система просмотра отчета. Способы вывода информации: на бумажный носитель и в табличный процессор Microsoft Excel. Средства защиты и хранения данных.

    курсовая работа [245,7 K], добавлен 22.06.2009

  • Описание состава реляционной базы данных как системы связанной информации, сохраняемой в двумерных таблицах. Основные функции CMS и изучение структуры сервера MySQL. Разработка системы выборок данных по товарам для интернет-магазина, таблицы покупателей.

    курсовая работа [2,0 M], добавлен 21.04.2015

  • Разработка информационной системы для хранения данных для предметной области "Самолеты аэропорта". Формат хранения исходных данных, их загрузка в табличный процессор. Тестирование программного комплекса. Возможности пакета MS Excel по обработке данных.

    курсовая работа [1,2 M], добавлен 23.04.2014

  • Назначение табличных процессоров. Форматирование шрифта, проверка орфографии, вставка объектов в редакторе Excel. Понятие функции, применение Мастера функций. Абсолютные и относительные адреса ячеек. Обработка данных средствами электронных таблиц.

    реферат [51,2 K], добавлен 22.01.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.