Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Анализ работы фирмы.
Анализ работы фирмы включает две возможности: расчет динамики доходов фирмы и анализ продаж. Вкладка для расчета динамики доходов имеет следующий вид: Для построения графика динамики нужно задать год, данные о котором требуется проанализировать. В таблице можно будет увидеть данные по которым будет построен график. Сам график доходов представляет собой линейную диаграмму, по осям которой отложены прибыль и месяцы. //процедура главной формы procedure TForm2.btOKanalisClick(Sender: TObject); begin with Chart1.Series[0] do begin clear; DataModule1.ProfitDinamic(edYear.text); DataModule1.qProfitDinamic.First; while not (DataModule1.qProfitDinamic.Eof) do begin AddY(StrToFloat(DataModule1.qProfitDinamic.FieldValues['profit'], DataModule1.qProfitDinamic.FieldValues['mesyac']); DataModule1.qProfitDinamic.Next; end; end; end;
//процедура модуля данных procedure TDataModule1.ProfitDinamic (yearAnalysis: string); begin qProfitDinamic.Active: =False; qProfitDinamic.ParamByName ('YearAnalysis').AsInteger: = StrToInt(yearAnalysis); DataModule1.qProfitDinamic.Active: =True; end;
Код SQL-запроса: select extract(month from DATEOFSAIL) mesyac, sum (Profit) profit from PROFIT where extract (year from dateofsail)=: yearAnalysis group by extract(month from DATEOFSAIL)
Для построения графика динамики нужно задать год, данные о котором требуется проанализировать. В таблице можно будет увидеть данные по которым будет построен график. Сам график доходов представляет собой линейную диаграмму, по осям которой отложены прибыль и месяцы. //процедура главной формы procedure TForm2.btOKanalisClick(Sender: TObject); begin with Chart1.Series[0] do begin clear; DataModule1.ProfitDinamic(edYear.text); DataModule1.qProfitDinamic.First; while not (DataModule1.qProfitDinamic.Eof) do begin AddY(StrToFloat(DataModule1.qProfitDinamic.FieldValues['profit'], DataModule1.qProfitDinamic.FieldValues['mesyac']); DataModule1.qProfitDinamic.Next; end; end; end;
//процедура модуля данных procedure TDataModule1.ProfitDinamic (yearAnalysis: string); begin qProfitDinamic.Active: =False; qProfitDinamic.ParamByName ('YearAnalysis').AsInteger: = StrToInt(yearAnalysis); DataModule1.qProfitDinamic.Active: =True; end;
Код SQL-запроса: select extract(month from DATEOFSAIL) mesyac, sum (Profit) profit from PROFIT where extract (year from dateofsail)=: yearAnalysis group by extract(month from DATEOFSAIL) Пункт меню «Анализ продаж» позволяет оценить размер накопленной каждым клиентом стоимости. Выполнение этой функции доступно в двух вариантах: вывод данных в таблицу и формирование отчета. Общий вид вкладки для этого пункта меню представлен ниже.
В текстовом поле нужно задать год, за который будут выведены продажи. При нажатии на кнопку ОК полученные данные будут сформированы в таблицу, при нажатии на кнопку Напечатать отчет данные будут выведены в виде отчета. //процедура главной формы для кнопки ОК procedure TForm2.btOKReportClick(Sender: TObject); begin DataModule1.SailAnalysis(edYearReport.Text); end; //процедура главной формы для кнопки Напечатать отчет procedure TForm2.btPrintReportClick(Sender: TObject); begin DataModule1.SailAnalysis(edYearReport.Text); Form1.QRLabel3.Caption: = edYearReport.Text; Form1.QuickRep1.Preview; end; //процедура модуля данных procedure TDataModule1.SailAnalysis (YearCode: string); begin qSailAnalysis.Active: = False; qSailAnalysis.ParamByName('YearCode').AsInteger: = StrToInt(YearCode); DataModule1.qSailAnalysis.Active: = True; end; Код SQL-запроса: select FIO, sum(QUANTITY)quantity, sum(COST)cost from PASS join client on pass.CLIENTCODE=client.CLIENTCODE join profit on pass.CODEOFPASS=profit.CODEOFPASS where extract(year from DATEOFSAIL) =: YearCode group by fio
Запрос позволяет выбрать данные для построения отчета: ФИО клиента, количество купленных этим клиентом путевок и их общая стоимость. Анализ данных производится за год. Анализируемый год: YearCode запрос получает из приложения. Вид отчета в режиме конструктора: Результат выполнения: Пример построения отчета:
|