Всё для Учёбы — студенческий файлообменник
1 монета
doc

Студенческий документ № 005329 из ИУБиП

НОУ ВПО Институт Управления Бизнеса и Права

Курсовая работа

на тему: Автоматизация товарооборота и услуг косметической компании "Avon"

по дисциплине "Базы данных"

Выполнил студент:

Харин О.B.

Проверил:

Кравченко О.Ю.

2014

Оглавление

Оглавление2

Введение3

Глава 1. Анализ деятельности предприятия "Avon"5

Общая информация о предприятии5

1.2 Автоматизация деятельности компании "Avon"6

1.3 Выбор среды программирования7

1.4 Структура базы данных8

Глава 2. Разработка базы данных для компании "Avon".11

2.1. Постановка задачи11

2.2. Создание интерфейсной части12

2.3. Создание функциональной части13

2.3.1. Осуществление доступа к базе данных13

2.3.2. Реализация фильтрации и поиска15

2.3.3. Создание отчетов17

Заключение18

Список используемой литературы19

Приложение 120

Приложение 226

Введение

На сегодняшний день, существует огромное количество косметических компаний. Услугами таких компаний, мы пользуемся ежедневно (покупая косметику и пользуясь косметическими средствами). Основное структурное подразделение косметических компаний, которое требует автоматизации - учет товара.

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

Объект курсовой работы: косметическая компания"Avon".

Предметом работы является каталогизация товара и работа с клиентами косметической компании (приём заказов, учёт продажи товара).

Цель работы: создать базу данных в среде Delphi для автоматизации работы "Avon" с клиентами и товаром.

Задачи работы:

1. Проанализировать основную деятельность организации

2. Изучить организационную структуру предприятия;

3. Выделить информацию, необходимую для автоматизации;

4. Создание базы данных, состоящей из нескольких таблиц;

5. Разработка интерфейсной части;

6. Создание функциональной части;

7. Оформление выводов по проделанной работе.

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

Существуют альтернативные программы учета товара "1С: Торговля и склад" и конфигурация "1С: Производство + Услуги + Бухгалтерия".

Новизна работы заключается в том, что программный продукт учета товара и услуг "Avon" представляет собой индивидуальный проект, полностью.

Эффективность

Глава 1. Анализ деятельности предприятия "Avon"

Общая информация о предприятии

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

Расположенный близ Дублина - столицы Ирландии - Глобальный Технический Центр Avon занимается разработками в области косметического производства. В технологии, которые создаются на базе ГТЦ, его сотрудники вкладывают все свои знания о современных научных разработках, тенденциях рынка и нуждах потребителя. За последние 24 года сотрудники Центра накопили огромный опыт по выпуску средств для лица и тела, солнцезащитной косметики, ароматов и косметики для мужчин.

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

Однако данная компания имеет ряд недостатков, которые необходимо исправить.

1. Отсутствие базы данных для каждого консультанта

2. Работа с клиентами и поставщиками не автоматизирована и требует доработки в соответствии с современными стандартами.

Но это лишь те проблемы, которые решатся после автоматизации работы предприятия.

1.2 Автоматизация деятельности компании "Avon"

Данные, необходимые для автоматизации, сгруппированы в следующие таблицы: система скидок, характеристика товара, ассортимент, заказы, клиент.

Автоматизируемая область компании "Avon" представлена на следующей схеме.

Схема 1. Автоматизация товарооборота и услуг компании Avon

Возможности программы учета товаров косметической компании включает:

* Автоматизированный учет реализованного товара;

* Учет товаров на складе;

* Учет заказов от заказчиков;

* Получение отчетной и аналитической информации о движении товаров;

1.3 Выбор среды программирования

Для разработки программного продукта была выбрана система программирования Borland Delphi и язык SQL.

Разработка интерфейса в Delphi является простой задачей для программиста.

Cреда Delphi включает полный набор визуальных инструментов для скоростной разработки приложений (RAD - rapid application development), поддерживающей разработку пользовательского интерфейса и подключение к корпоративным базам данных.

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

Визуальный построитель интерфейсов (Visual User-interface builder) дает возможность быстро создавать клиент-серверные приложения визуально, просто выбирая компоненты из соответствующей палитры.

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

Язык SQL широко используется в программах. Он помогает создать базу данных, состоящую из большого числа таблиц, имеющих сложные взаимосвязи. Наиболее существенным свойством SQL является возможность доступа к реляционным БД.

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

1.4 Структура базы данных

База данных состоит из взаимосвязанных таблиц, каждая из которых содержит информацию об объектах одного типа.

Имеющиеся данные:

Наименование поля на англ. языке Наименование поля на рус. языке Тип данных Описание Kod_tovar Код товара Integer Поле содержит код товара. Ключевое поле. Name_tovar Наименование товара String Поле содержит наименование товара. Type_production Наименование вида продукции String Поле содержит наименование вида продукции. seria Наименование категории String Поле содержит наименование категории товара. Индексное поле. Price Цена товара Money Поле содержит цену товара в рублях. Amount Количество товара Integer Поле содержит количество товара в штуках. Amount_custom Количество заказанного товара Integer Поле содержит количество заказанного товара. Date_custom Дата заказа Date Поле содержит дату заказа. Code_client Код клиента Integer Поле содержит код клиента. Ключевое поле. Name_client Наименование клиента String Поле содержит фамилию клиента. Address_client Адрес клиента String Поле содержит адрес клиента. Discount Скидка Integer Поле содержит скиду на данный товар Phone_client Телефон клиента Integer Поле содержит телефон клиента.

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

Нормализация базы данных - это процесс уменьшения избыточности информации в базе данных. Метод нормальных форм является итерационным и заключается в последовательном переводе по определенным правилам отношений из первой нормальной формы в нормальные формы более высокого порядка.

Первая нормальная форма (1NF) требует, чтобы каждое поле таблицы БД:

* Было неделимым;

* Не содержало повторяющихся групп;

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

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

Ассортимент Код товара Наименование Тип продукции Цена Количество имеющегося товара

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

Первая таблица:

Ассортимент Код товара Наименование Тип продукции Цена Количество имеющегося товара

Вторая таблица

Заказы код товара дата заказа код заказчика количество

Третья таблица:

Клиент Код заказчика Фамилия Адрес Телефон

Четвертая таблица:

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

Пятая таблица:

Характеристика товара Код товара Серия наименование

Структура базы данных косметической компании, будет иметь вид:

Глава 2. Разработка базы данных для компании "Avon".

2.1. Постановка задачи

Для разработки базы данных для "Avon" необходимо выполнить следующие технические задачи:

* создать БД;

* автоматизировать учет клиентов;

* выполнить анализ учета заказов.

В результате выполненной работы предполагается достигнуть следующих эффектов:

* уменьшение времени необходимого для учета поставок и заказов;

* автоматизация контроля поставок и заказов;

* возможность длительного хранения информации о поставках на предприятие большого срока давности, для возможности более полного расчета эффективности деятельности фирмы;

* постоянная известность о датах осуществленных поставок заказов.

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

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

2.2. Создание интерфейсной части

На основной форме (рис.2.1.1.), использовался компонент Image из категории Additional. Для того чтобы выбрать рисунок, необходимо в свойствах этого компонента найти свойство Picture, после чего выбираем фоновый рисунок. Данный компонент используется три раза. Так же на форме присутствует компонент Label из категории Standard, в свойстве Caption задаем необходимый для нас текст. Чтобы перейти на остальные формы, и было удобнее работать, используем компонент MainMenu из категории Standard, щелкая по этому компоненту, пишем необходимые для закладки в меню. Для того чтобы изменить название самой формы, в свойстве Form находим Caption и задаем текст.

Чтобы форма выглядела интереснее, поменяем иконку формы. Для этого используем свойство Icon для Form, выбираем необходимую для формы иконку и вставляем ее.

Рис. 2.2.1. Главная форма

Пункт меню "Справка" содержит в себе вкладку "О программе" (рис.2.2.2), где приводится название, имя разработчика, время создание программного продукта. Для этого используется компонент AboutBox.

Рис. 2.2.2. Форма "О программе"

На форме (рис. 2.2.3.), где осуществляется поиск товара, использовались такие компоненты, как DataSource1 (Data Access), Table1 (BDE), DBGrid1 (Data Controls), DBRadioGroup1(Data Controls), Image1 (Additional), Edit1 (Standard).

Рис. 2.2.3. Форма "Клиент-заказ"

На форме (рис 2.2.4.) где осуществляется фильтрация компонентов, использовались следующие компоненты: Image1: TImage; DataSource1: TDataSource; DBGrid1: TDBGrid; DBNavigator1: TDBNavigator; Table1: TTable; DataSource2: TDataSource; DBGrid2: TDBGrid; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Query1: TQuery; RadioGroup1: TRadioGroup;

Рис. 2.2.4. Форма "Подать заказ"

На другой форме (рис.2.2.5.), где осуществляется запрос, использовали компоненты: DBNavigator1 (Data Controls), Label1 (Standard), Edit1 (Standard), DBEdit1(Data Controls), Table2 (BDE), Query1(BDE), Query2 (BDE), DataSource1 (Data Access), DataSource2 (Data Access), DataSource4 (Data Access), Button1 (Standart). И для того, чтобы создать фон, используем компонент Image из категории Additional. На этой же форме осуществляется вывод отчета.

Рис. 2.2.5. Форма "Клиент-заказ"

Вид отчета имеет следующий вид:

2.3. Создание функциональной части

2.3.1. Осуществление доступа к базе данных

Изначально, необходимо создать таблицы в Database Desktop. Для этого в пуске выбираем Borland Delphi 7 и находим этот компонент. После этого выбираем File -> New -> Table -> Paradox7, вводим название полей таблицы и выбираем их тип. Так же необходимо выбрать ключевое поле таблицы, для этого ставим " * " в поле Key.Созданные таблицы мы сохраняем в отдельной папке на диске С (C:\orf). Связи между объектами осуществляются вручную.

Чтобы созданные нами таблицы можно было вывести на форме, необходимо вставить такие компоненты как: DataSource1 (Data Access), Table1 или Query1 (BDE), DBGrid1 (Data Controls). В свойстве Table1 (Query1) выбираем DatabaseName и прописываем путь, где находятся наши таблицы C:\orf, а в свойстве TableName выбираем название нужной нам таблицы. После этого, у компонента DataSource1 находим свойство DataSet и выбираем Table(Query). У компонента DBGrid1, в свойстве DataSource, выбираем DataSource1. Для того, чтобы во время работы программы можно было добавлять поля в таблицу, на форму ставим компонент DBNavigator1 (Data Controls). Связываем данный компонент с таблицей, для этого в свойстве DataSource, выбираем DataSource1.

Отображение расчета итогов связано со свойством SQL компонента Query. Для расчета итога формируем динамический запрос:

procedure TForm5.Button1Click(Sender: TObject);

begin Query1.SQL.Clear;

Query1.SQL.Add('SELECT A.Kod_Tovar, A.Name_Tovar, A.Price, Z.Amount_Custom');

Query1.SQL.Add('From assortiment as A, zakaz as Z');

Query1.SQL.Add('WHERE (A.Kod_Tovar=Z.Kod_Tovar) and Z.Code_Client='+ Table2.Fields[0].AsString + ' and Z.Date_Custom="'+ Edit1.Text + '"');

Query1.Open;

Query2.SQL.Clear;

Query2.SQL.Add('SELECT SUM(A.Price*Z.Amount_Custom)');

Query2.SQL.Add('FROM assortiment as A, zakaz as Z');

Query2.SQL.Add('WHERE (A.Kod_Tovar=Z.Kod_Tovar) and Z.Code_Client='+ Table2.Fields[0].AsString);

Query2.Open; end;

2.3.2. Реализация фильтрации и поиска

Для сокращения времени нахождения нужного товара, на форме "Ассортимент" используем поиск. Поиск товара, осуществляем через Locate и Lookup. Для этого, создаем DBRadioGroup1, щелкая по нему два раза, прописываем следующий код:

procedure TForm2.DBRadioGroup1Click(Sender: TObject);

var Res:Variant;

s : string; begin

with Table1 do

begin

case DBRadioGroup1.ItemIndex of

0: begin if not Table1.Locate('Kod_Tovar',Edit1.Text,[loCaseInsensitive, loPartialKey])then

ShowMessage('Запись не найдена');

end;

1: begin Res := Table1.Lookup('Kod_Tovar',Edit1.Text,'Kod_Tovar; Name_Tovar');

if VarIsNull(Res) then

ShowMessage('не найдено')

else

begin s := string (Res [0]) + ' ' + string (Res [1]);

ShowMessage(s);

end; end; end;

end;

end; Для того чтобы осуществить фильтрацию, на форме "Подать заказ" создаем RadioGroup1 (Standard), щелкаем по компоненту два раза и прописываем следующий код:

procedure TForm7.RadioGroup1Click(Sender: TObject);

begin {Для начала, очищаем табличку}

Query1.SQL.Clear;

{Выбираем все поля из таблицы assortiment.db}

Query1.SQL.Add('Select * FROM assortiment.db');

Case RadioGroup1.ItemIndex of

{Если будет нажата 1 строчка, тогда просто выводим все поля из таблицы assortiment.db}

0: begin

Query1.Close;

Query1.SQL.Clear;

Query1.SQL.Add('Select * FROM assortiment.db');

end;

{Если будет нажата вторая строчка, то фильтруем данные таблички, по полю Type_Product, фильтрация производиться по тексту, который введен в Edit1}

1: Query1.SQL.Add('Where Type_Product = "' + Edit1.Text +'"');

{Если же будет нажата третья строка, то мы производим фильтрацию по диапазону, диапазон будет вводиться в Edit2 и Edit3}

2: Query1.SQL.Add('Where Price between '+ Edit2.Text +' and ' + Edit3.Text +'');

end; {Теперь открываем таблицу}

Query1.Open;

end; end.

2.3.3. Создание отчетов

Чтобы предоставить отчет главному бухгалтеру фирмы Mr.Doors необходимо перенести данные в более адаптированную среду. На наш взгляд, универсальной средой для подсчета данных является Rave Designer. Разместим на нужной нам форме компонент RvProject и RvDataSetCjnnection категории Rave, и в обработчике события ProjectFile запишем путь: C:\Ychet\1\Project1.rav

На кнопку "Выполнить отчет" в обработчике события OnClick записали следующий код:

procedure TForm5.Button2Click(Sender: TObject);

begin

RvProject1.ExecuteReport('report2');

end;

Заключение

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

Была разработана и автоматизирована работа дистрибьюторов компании "Avon".

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

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

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

Список используемой литературы

1. Бобровский С. И. Delphi 7. Учебный курс. - СПб.: Питер, 2006.

2. Фаронов В. В. Delphi 5. Руководство программиста. - М.: "Нолидж", 2001.

3. Гофман В. Э., Хомоненко А. Д. Delphi 6. - СПб.: БХВ-Петербург, 2001.

4. Цветков В.Д. Системно-структурное моделирование и автоматизация проектирования - М.: "Нолидж", 2001г.

5. Шкрыль А. А. Delphi. Народные советы. - СПб.: БХВ-Петербург, 2007.

6. Шпак Ю. А. Разработка приложений в Delphi 2005/2006. - К.: "МК-Пресс", 2006.

Приложение 1

Листинг программы "Учет"

unit Unit1; interface

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

Dialogs, ExtCtrls, Menus, Unit2, Unit3,Unit4,Unit5,Unit6,Unit7,Unit8, Unit9, Unit10, jpeg, StdCtrls;

type

TForm1 = class(TForm)

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N7: TMenuItem;

N8: TMenuItem;

Image1: TImage;

Label1: TLabel;

N9: TMenuItem;

Image2: TImage;

Image3: TImage;

N10: TMenuItem;

N11: TMenuItem;

N6: TMenuItem;

N12: TMenuItem;

procedure N2Click(Sender: TObject);

procedure N3Click(Sender: TObject);

procedure N4Click(Sender: TObject);

procedure N10Click(Sender: TObject);

procedure N11Click(Sender: TObject);

procedure N6Click(Sender: TObject);

procedure N12Click(Sender: TObject);

procedure N8Click(Sender: TObject);

private { Private declarations }

public

{ Public declarations }

end; var Form1: TForm1;

implementation {$R *.dfm}

// открытие формы "Ассортимент"

procedure TForm1.N2Click(Sender: TObject);

begin form2.Show;

end; // открытие формы "Характеристика товара"

procedure TForm1.N3Click(Sender: TObject);

begin form3.Show;

end; // открытие формы "Система скидок"

procedure TForm1.N4Click(Sender: TObject);

begin

form4.show; end;

// открытие формы "Клиент-заказ"

procedure TForm1.N10Click(Sender: TObject);

begin

form5.Show; end;

// открытие формы "Список клиентов"

procedure TForm1.N11Click(Sender: TObject);

begin

form6.Show; end;

// открытие формы "Подать заказ"

procedure TForm1.N6Click(Sender: TObject);

begin

form7.Show; end;

// открытие формы "Количество товара"

procedure TForm1.N12Click(Sender: TObject);

begin

form8.Show; end;

// Закрываем основную форму

procedure TForm1.N14Click(Sender: TObject);

begin

form1.Close; end;

// Открываем форму "О программе"

procedure TForm1.N9Click(Sender: TObject);

begin

AboutBox.Show; end;

//Открытие формы "О товаре"

procedure TForm1.N15Click(Sender: TObject);

begin

form10.Show; end;

end. // Процедура для поиска товара

procedure TForm2.DBRadioGroup1Click(Sender: TObject);

var Res:Variant;

s : string; begin

{Связываемся с табличкой 1}

with Table1 do

begin

case DBRadioGroup1.ItemIndex of

{Если нажали ItemIndex=0, то происходит поиск через Locate}

0: begin if not Table1.Locate('Kod_Tovar',Edit1.Text,[loCaseInsensitive, loPartialKey])then

ShowMessage('Запись не найдена');

end; {Если нажали ItemIndex=1, то происходит поиск через Lookup}

1: begin Res:=Table1.Lookup('Kod_Tovar',Edit1.Text,'Kod_Tovar; Name_Tovar');

if VarIsNull(Res) then

ShowMessage('не найдено')

else begin

s := string (Res [0]) + ' ' + string (Res [1]);

ShowMessage(s);

end;

end; end; end;

end; procedure TForm2.FormCreate(Sender: TObject);

begin Table1.Open;

end;

end. // Расчет процентов

procedure TForm4.Table1CalcFields(DataSet: TDataSet);

begin Table1Itog.AsFloat := (table1.fields[1].AsFloat* (100-Table1.fields[2].AsFloat))/100;

end;

// Подача запроса по дате товара

procedure TForm5.Button1Click(Sender: TObject);

begin {производим вывод товара по дате заказа и коду клиента}

Query1.SQL.Clear;

Query1.SQL.Add('SELECT A.Kod_Tovar, A.Name_Tovar, A.Price, Z.Amount_Custom');

Query1.SQL.Add('From assortiment as A, zakaz as Z');

Query1.SQL.Add('WHERE (A.Kod_Tovar=Z.Kod_Tovar) and Z.Code_Client='+ Table2.Fields[0].AsString + ' and Z.Date_Custom="'+ Edit1.Text + '"');

Query1.Open;

{Подсчитываем общую сумму}

Query2.SQL.Clear;

Query2.SQL.Add('SELECT SUM(A.Price*Z.Amount_Custom)');

Query2.SQL.Add('FROM assortiment as A, zakaz as Z');

Query2.SQL.Add('WHERE (A.Kod_Tovar=Z.Kod_Tovar) and Z.Code_Client='+ Table2.Fields[0].AsString);

Query2.Open; end;

//Производим вывод отчета

procedure TForm5.Button2Click(Sender: TObject);

begin RvProject1.ExecuteReport('report2');

end; // Производим выгрузку данных в Exele

procedure TForm5.Button3Click(Sender: TObject);

Var ExcelApp, Workbook, Range, Cell1, Cell2, ArrayData: Variant;

BeginCol, BeginRow, j: integer;

RowCount, ColCount: Integer;

SFile: String;

begin

BeginCol := 1;

BeginRow := 2;

RowCount := Form5.Query1.RecordCount;

ColCount := Form5.Query1.FieldDefs.Count;

ExcelApp := CreateOleObject('Excel.Application');

ExcelApp.Application.EnableEvents := False;

Workbook := ExcelApp.WorkBooks.Add(SFile);

For j := 1 to Form5.Query1.Fields.Count do

Begin ExcelApp.Workbooks[1].WorkSheets[1].Cells[1,j].Value := Form5.Query1.Fields[j-1].FieldName;

End; ArrayData := VarArrayCreate([1, RowCount, 1, ColCount], varVariant);

Form5.Query1.DisableControls;

Form5.Query1.First;

While Not Form5.Query1.Eof Do

Begin For j := 1 to Form5.Query1.FieldDefs.Count do

Begin ArrayData[Form5.Query1.RecNo, J] := Form5.Query1.FieldbyName(Form5.Query1.FieldDefs.Items[j - 1].DisplayName).Value;

End;

Form5.Query1.Next;

End; Form5.Query1.EnableControls;

Cell1 := WorkBook.WorkSheets[1].Cells[BeginRow, BeginCol];

Cell2 := WorkBook.WorkSheets[1].Cells[BeginRow + RowCount - 1, BeginCol + ColCount - 1];

Range := WorkBook.WorkSheets[1].Range[Cell1, Cell2];

Range.Value := ArrayData;

ExcelApp.Visible := True;

end;

//Фильтрация данных

procedure TForm7.RadioGroup1Click(Sender: TObject);

begin Query1.Close;

Query1.SQL.Clear;

Query1.SQL.Add('Select * FROM assortiment.db');

Case RadioGroup1.ItemIndex of

{ Выводим все имеющиеся данные}

0: begin

Query1.Close;

Query1.SQL.Clear;

Query1.SQL.Add('Select * FROM assortiment.db');

end;

{Делаем фильтрацию по типу продукции}

1: Query1.SQL.Add('Where Type_Product = "' + Edit1.Text +'"');

{Делаем фильтрацию по диапазону, по цене}

2: Query1.SQL.Add('Where Price between '+Edit2.Text +' and ' + Edit3.Text +'');

end; Query1.Open;

end; //Вычисление оставшегося товара

procedure TForm8.Button1Click(Sender: TObject);

begin

Query2.Close; Query2.SQL.Clear;

Query2.SQL.Add('UPDATE assortiment.db');

Query2.SQL.Add('SET Amount = "'+ Query1.Fields[3].AsString +'"') ;

Query2.SQL.Add('Where Kod_Tovar = "' + Query1.Fields[0].AsString +'"');

Query2.Open; end;

Приложение 2

Основные процедуры, функции и операторы, используемые при разработке программы "Avon"

1. DBEdit.DataField - поле базы данных, для отображения которого используется компонент.

2. Query.SQL - записанный на языке SQL-запрос к базе данных.

3. Query.SQL.Add - добавление SQL-запроса.

4. Query.Active - вывод содержимого SQL-запроса.

5. Table1.Locate(Table1.Locate('Familiya',Edit1.Text,[LoCaseInsensitive,LoPartialKey]) - поиск записи, удовлетворяющей критерию поиска.

6. Table1.Lookup('Kod_Tovar',Edit1.Text,'Kod_Tovar; Name_Tovar') - поиск записей и вывод данных в отдельном окне

7. Table1.Filter - задает фильтр для данных.

8. Table1.Filtered - свойство, определяющее, будут ли профильтрованы данные

9. Table1.IndexName - определяет поле, по которому будут отсортированы данные таблицы

10. RVProject.ExecuteReport('Report') - выполнение отчета.

11. Query1.SQL.Add('WHERE (A.Kod_Tovar=Z.Kod_Tovar) and Z.Code_Client='+ Table2.Fields[0].AsString + ' and Z.Date_Custom="'+ Edit1.Text + '"') - выбирает только тот товар, который соответствует веденной дате.

Показать полностью… https://vk.com/doc12780581_347853101
115 Кб, 8 декабря 2014 в 17:47 - Россия, Ростов-на-Дону, ИУБиП, 2014 г., doc
Рекомендуемые документы в приложении