Диплом: Автоматизация учета кредитных операций ломбарда ООО "Золотой век"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
119
fmOPU.Caption := 'Отчет о прибылях и убытках (форма №2) за ' + Quarter
+ ' квартал ' + Year + ' г.';
fmOPU.ShowModal;
end
else
if Application.MessageBox('ОПиУ за данный период еще не создан. Создать
ОПиУ?',
'Вопрос', MB_ICONQUESTION+MB_YESNO) = IDYES then
begin
//Добавление ОПиУ, если его за выбранный квартал еще нет:
DM.dstOPU.Close;
DM.qrNewOPU.Parameters.ParamByName('pYear').Value := Year;
DM.qrNewOPU.Parameters.ParamByName('pQuarter').Value := Quarter;
DM.qrNewOPU.ExecSQL;
DM.dstOPU.Open;
fmOPU.Caption := 'Отчет о прибылях и убытках (форма №2) за ' +
Quarter + ' квартал ' + Year + ' г.';
fmOPU.ShowModal;
end;
end;
//Удаление ОПиУ за выбранный период:
procedure TfmMain.acDelOPUExecute(Sender: TObject);
begin
if Application.MessageBox('Удалить ОПиУ за выбранный период?', 'Вопрос',
MB_ICONQUESTION+MB_YESNO) = IDYES then
begin
DM.qrDelOPU.Parameters.ParamByName('pYear').Value :=
DM.dstPeriodList.FieldByName('Год').AsString;
DM.qrDelOPU.Parameters.ParamByName('pQuarter').Value :=
DM.dstPeriodList.FieldByName('Квартал').AsString;
DM.qrDelOPU.ExecSQL;
Application.MessageBox('ОПиУ за выбранный период удален.',
'Информация',
MB_ICONINFORMATION+MB_OK);
DM.dstPeriodList.Requery;
end;
end;
procedure TfmMain.acStructBalExecute(Sender: TObject);
begin
fmBalanceStructure.Show;
end;
procedure TfmMain.acStructOPUExecute(Sender: TObject);
begin
fmOPUStructure.Show;
end;
//Формирование таблиц "Коэффициенты ликвидности и платежеспособности"
procedure TfmMain.acTables1Execute(Sender: TObject);
begin
if (sgPeriods.Cells[1,1] = '') or (sgPeriods.Cells[1,2] = '') or
(sgPeriods.Cells[1,3] = '') then
Application.MessageBox('Не выбран один или несколько периодов!',
'Предупреждение', MB_OK+MB_ICONEXCLAMATION)
else
Rep_Tables1(StrToInt(sgPeriods.Cells[1,1]),
StrToInt(sgPeriods.Cells[2,1]),
StrToInt(sgPeriods.Cells[1,2]),
StrToInt(sgPeriods.Cells[2,2]),
120
StrToInt(sgPeriods.Cells[1,3]),
StrToInt(sgPeriods.Cells[2,3]));
end;
//Формирование таблиц "Показатели финансовой устойчивости":
procedure TfmMain.acTables2Execute(Sender: TObject);
begin
if (sgPeriods.Cells[1,1] = '') or (sgPeriods.Cells[1,2] = '') or
(sgPeriods.Cells[1,3] = '') then
Application.MessageBox('Не выбран один или несколько периодов!',
'Предупреждение', MB_OK+MB_ICONEXCLAMATION)
else
Rep_Tables2(StrToInt(sgPeriods.Cells[1,1]),
StrToInt(sgPeriods.Cells[2,1]),
StrToInt(sgPeriods.Cells[1,2]),
StrToInt(sgPeriods.Cells[2,2]),
StrToInt(sgPeriods.Cells[1,3]),
StrToInt(sgPeriods.Cells[2,3]));
end;
//Формирование таблиц "Показатели рентабельности и деловой активности":
procedure TfmMain.acTables3Execute(Sender: TObject);
begin
if (sgPeriods.Cells[1,1] = '') or (sgPeriods.Cells[1,2] = '') or
(sgPeriods.Cells[1,3] = '') then
Application.MessageBox('Не выбран один или несколько периодов!',
'Предупреждение', MB_OK+MB_ICONEXCLAMATION)
else
Rep_Tables3(StrToInt(sgPeriods.Cells[1,1]),
StrToInt(sgPeriods.Cells[2,1]),
StrToInt(sgPeriods.Cells[1,2]),
StrToInt(sgPeriods.Cells[2,2]),
StrToInt(sgPeriods.Cells[1,3]),
StrToInt(sgPeriods.Cells[2,3]));
end;
//Формирование таблицы "Сводный сравнительный аналитический баланс
предприятия":
procedure TfmMain.acTables4Execute(Sender: TObject);
begin
if (sgPeriods.Cells[1,1] = '') or (sgPeriods.Cells[1,2] = '') or
(sgPeriods.Cells[1,3] = '') then
Application.MessageBox('Не выбран один или несколько периодов!',
'Предупреждение', MB_OK+MB_ICONEXCLAMATION)
else
Rep_Tables4(StrToInt(sgPeriods.Cells[1,1]),
StrToInt(sgPeriods.Cells[2,1]),
StrToInt(sgPeriods.Cells[1,2]),
StrToInt(sgPeriods.Cells[2,2]),
StrToInt(sgPeriods.Cells[1,3]),
StrToInt(sgPeriods.Cells[2,3]));
end;
//Формирование таблицы "Анализ прибыли (убытка) предприятия":
procedure TfmMain.acTables5Execute(Sender: TObject);
begin
if (sgPeriods.Cells[1,1] = '') or (sgPeriods.Cells[1,2] = '') or
(sgPeriods.Cells[1,3] = '') then
Application.MessageBox('Не выбран один или несколько периодов!',
'Предупреждение', MB_OK+MB_ICONEXCLAMATION)
else
Rep_Tables5(StrToInt(sgPeriods.Cells[1,1]),
StrToInt(sgPeriods.Cells[2,1]),
121
StrToInt(sgPeriods.Cells[1,2]),
StrToInt(sgPeriods.Cells[2,2]),
StrToInt(sgPeriods.Cells[1,3]),
StrToInt(sgPeriods.Cells[2,3]));
end;
end.
unit uOPU;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms,
Dialogs, StdCtrls, Buttons, DBCtrls, ExtCtrls, Grids, DBGrids;
type
TfmOPU = class(TForm)
DBGrid1: TDBGrid;
Panel1: TPanel;
DBNavigator1: TDBNavigator;
BitBtn1: TBitBtn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmOPU: TfmOPU;
implementation
uses uDM;
{$R *.dfm}
procedure TfmOPU.FormClose(Sender: TObject; var Action: TCloseAction);
begin
DM.dstOPU.Close;
end;
procedure TfmOPU.FormShow(Sender: TObject);
begin
DM.dstOPU.Sort := 'КодСтроки';
end;
end.
unit uOPUStructure;
interface
uses
122
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms,
Dialogs, StdCtrls, Buttons, DBCtrls, ExtCtrls, Grids, DBGrids;
type
TfmOPUStructure = class(TForm)
DBGrid1: TDBGrid;
Panel1: TPanel;
DBNavigator1: TDBNavigator;
BitBtn1: TBitBtn;
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmOPUStructure: TfmOPUStructure;
implementation
uses uDM;
{$R *.dfm}
procedure TfmOPUStructure.FormShow(Sender: TObject);
begin
DM.dstOPUStr.Open;
DM.dstOPUStr.Sort := 'Код';
end;
end.
unit uRep;
//Модуль для формирования отчетов
interface
uses
Windows, SysUtils, Classes, ComObj, DB, Controls, Forms, ADODB, Math,
DBGrids;
procedure Rep_Tables1(Year1, Quarter1, Year2, Quarter2, Year3, Quarter3:
Integer);
procedure Rep_Tables2(Year1, Quarter1, Year2, Quarter2, Year3, Quarter3:
Integer);
procedure Rep_Tables3(Year1, Quarter1, Year2, Quarter2, Year3, Quarter3:
Integer);
procedure Rep_Tables4(Year1, Quarter1, Year2, Quarter2, Year3, Quarter3:
Integer);
procedure Rep_Tables5(Year1, Quarter1, Year2, Quarter2, Year3, Quarter3:
Integer);
implementation
uses
uDM, DateUtils, Dialogs;
//Формирование таблиц "Коэффициенты ликвидности и платежеспособности":
procedure Rep_Tables1(Year1, Quarter1, Year2, Quarter2, Year3, Quarter3:
Integer);
123
var
Excel: Variant;
WorkbookName: string;
begin
//Шаблон хранится в папке Шаблоны:
WorkbookName := GetCurrentDir + '\Шаблоны\' + '1 Коэффициенты ликвидности
и платежеспособности.xlt';
Excel := CreateOleObject('Excel.Application');
Screen.Cursor := crHourGlass;
try
try
Excel.Workbooks.Open(WorkbookName);
Excel.Worksheets[1].Select;
//Заголовок таблицы абс. показателей:
Excel.Cells[1,1] := string(Excel.Cells[1,1]) +
IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) + ' г., ' +
IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) + ' г., ' +
IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) + ' г. ';
//Шапка таблицы абс. показателей:
Excel.Cells[3,2] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г.';
Excel.Cells[3,3] := IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г.';
Excel.Cells[3,4] := IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
Excel.Cells[3,6] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г.';
Excel.Cells[3,7] := IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г.';
Excel.Cells[3,8] := IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
Excel.Cells[4,9] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г.';
Excel.Cells[4,10] := IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г.';
Excel.Cells[4,11] := IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
Excel.Cells[4,12] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г.';
Excel.Cells[4,13] := IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г.';
Excel.Cells[4,14] := IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
//наиболее ликвидные активы1):
Excel.Cells[5,2] := GetBalValue(Year1, Quarter1, 250, 2) +
GetBalValue(Year1, Quarter1, 260, 2);
Excel.Cells[5,3] := GetBalValue(Year2, Quarter2, 250, 2) +
GetBalValue(Year2, Quarter2, 260, 2);
Excel.Cells[5,4] := GetBalValue(Year3, Quarter3, 250, 2) +
GetBalValue(Year3, Quarter3, 260, 2);
//быстрореализуемые активы2):
Excel.Cells[6,2] := GetBalValue(Year1, Quarter1, 240, 2) +
GetBalValue(Year1, Quarter1, 270, 2);
Excel.Cells[6,3] := GetBalValue(Year2, Quarter2, 240, 2) +
GetBalValue(Year2, Quarter2, 270, 2);
Excel.Cells[6,4] := GetBalValue(Year3, Quarter3, 240, 2) +
GetBalValue(Year3, Quarter3, 270, 2);
//медленно реализуемые активы (наименее ликвидные активы)(А3):
Excel.Cells[7,2] := GetBalValue(Year1, Quarter1, 210, 2) -
GetBalValue(Year1, Quarter1, 216, 2) +
124
GetBalValue(Year1, Quarter1, 220, 2) +
GetBalValue(Year1, Quarter1, 140, 2);
Excel.Cells[7,3] := GetBalValue(Year2, Quarter2, 210, 2) -
GetBalValue(Year2, Quarter2, 216, 2) +
GetBalValue(Year2, Quarter2, 220, 2) +
GetBalValue(Year2, Quarter2, 140, 2);
Excel.Cells[7,4] := GetBalValue(Year3, Quarter3, 210, 2) -
GetBalValue(Year3, Quarter3, 216, 2) +
GetBalValue(Year3, Quarter3, 220, 2) +
GetBalValue(Year3, Quarter3, 140, 2);
//труднореализуемые активы (А4):
Excel.Cells[8,2] := GetBalValue(Year1, Quarter1, 110, 2) +
GetBalValue(Year1, Quarter1, 120, 2) +
GetBalValue(Year1, Quarter1, 130, 2) +
GetBalValue(Year1, Quarter1, 216, 2) +
GetBalValue(Year1, Quarter1, 230, 2);
Excel.Cells[8,3] := GetBalValue(Year2, Quarter2, 110, 2) +
GetBalValue(Year2, Quarter2, 120, 2) +
GetBalValue(Year2, Quarter2, 130, 2) +
GetBalValue(Year2, Quarter2, 216, 2) +
GetBalValue(Year2, Quarter2, 230, 2);
Excel.Cells[8,4] := GetBalValue(Year3, Quarter3, 110, 2) +
GetBalValue(Year3, Quarter3, 120, 2) +
GetBalValue(Year3, Quarter3, 130, 2) +
GetBalValue(Year3, Quarter3, 216, 2) +
GetBalValue(Year3, Quarter3, 230, 2);
//наиболее краткосрочные обязательства (П1):
Excel.Cells[5,6] := GetBalValue(Year1, Quarter1, 620, 2) +
GetBalValue(Year1, Quarter1, 660, 2);
Excel.Cells[5,7] := GetBalValue(Year2, Quarter2, 620, 2) +
GetBalValue(Year2, Quarter2, 660, 2);
Excel.Cells[5,8] := GetBalValue(Year3, Quarter3, 620, 2) +
GetBalValue(Year3, Quarter3, 660, 2);
//краткосрочные пассивы2):
Excel.Cells[6,6] := GetBalValue(Year1, Quarter1, 610, 2);
Excel.Cells[6,7] := GetBalValue(Year2, Quarter2, 610, 2);
Excel.Cells[6,8] := GetBalValue(Year3, Quarter3, 610, 2);
//долгосрочные пассивы3):
Excel.Cells[7,6] := GetBalValue(Year1, Quarter1, 510, 2) +
GetBalValue(Year1, Quarter1, 520, 2);
Excel.Cells[7,7] := GetBalValue(Year2, Quarter2, 510, 2) +
GetBalValue(Year2, Quarter2, 520, 2);
Excel.Cells[7,8] := GetBalValue(Year3, Quarter3, 510, 2) +
GetBalValue(Year3, Quarter3, 520, 2);
//постоянные пассивы4):
Excel.Cells[8,6] := GetBalValue(Year1, Quarter1, 490, 2) +
GetBalValue(Year1, Quarter1, 630, 2) +
GetBalValue(Year1, Quarter1, 640, 2) +
GetBalValue(Year1, Quarter1, 650, 2);
Excel.Cells[8,7] := GetBalValue(Year2, Quarter2, 490, 2) +
GetBalValue(Year2, Quarter2, 630, 2) +
GetBalValue(Year2, Quarter2, 640, 2) +
GetBalValue(Year2, Quarter2, 650, 2);
Excel.Cells[8,8] := GetBalValue(Year3, Quarter3, 490, 2) +
GetBalValue(Year3, Quarter3, 630, 2) +
GetBalValue(Year3, Quarter3, 640, 2) +
GetBalValue(Year3, Quarter3, 650, 2);
Excel.Visible := True;
Excel.Worksheets[2].Select;
//Заголовок таблицы отн. показателей:
125
Excel.Cells[1,1] := string(Excel.Cells[1,1]) +
IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) + ' г., ' +
IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) + ' г., ' +
IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) + ' г. ';
//Шапка таблицы отн. показателей:
Excel.Cells[3,3] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г.';
Excel.Cells[3,4] := IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г.';
Excel.Cells[3,5] := IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
Excel.Cells[4,6] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г. от ' +
IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г.';
Excel.Cells[4,7] := IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г. от ' +
IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
Excel.Cells[4,8] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г. от ' +
IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
except
Excel.Quit;
end;
finally
Screen.Cursor := crDefault;
end;
end;
//Формирование таблиц "Показатели финансовой устойчивости":
procedure Rep_Tables2(Year1, Quarter1, Year2, Quarter2, Year3, Quarter3:
Integer);
var
Excel: Variant;
WorkbookName: string;
begin
//Шаблон хранится в папке Шаблоны:
WorkbookName := GetCurrentDir + '\Шаблоны\' + '2 Показатели финансовой
устойчивости.xlt';
Excel := CreateOleObject('Excel.Application');
Screen.Cursor := crHourGlass;
try
try
Excel.Workbooks.Open(WorkbookName);
//Вывод данных на первую закладку шаблона (абс. показатели):
Excel.Worksheets[1].Select;
//Заголовок таблицы абс. показателей:
Excel.Cells[1,1] := string(Excel.Cells[1,1]) +
IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) + ' г., ' +
IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) + ' г., ' +
IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) + ' г. ';
//Шапка таблицы абс. показателей:
Excel.Cells[3,2] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г.';
Excel.Cells[3,3] := IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г.';
Excel.Cells[3,4] := IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
Excel.Cells[4,5] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г. от ' +
126
IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г.';
Excel.Cells[4,6] := IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г. от ' +
IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
Excel.Cells[4,7] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г. от ' +
IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
//Источники собственных средств:
Excel.Cells[5,2] := GetBalValue(Year1, Quarter1, 490, 2) +
GetBalValue(Year1, Quarter1, 640, 2) +
GetBalValue(Year1, Quarter1, 650, 2);
Excel.Cells[5,3] := GetBalValue(Year2, Quarter2, 490, 2) +
GetBalValue(Year2, Quarter2, 640, 2) +
GetBalValue(Year2, Quarter2, 650, 2);
Excel.Cells[5,4] := GetBalValue(Year3, Quarter3, 490, 2) +
GetBalValue(Year3, Quarter3, 640, 2) +
GetBalValue(Year3, Quarter3, 650, 2);
//Основные средства и вложения:
Excel.Cells[6,2] := GetBalValue(Year1, Quarter1, 190, 2);
Excel.Cells[6,3] := GetBalValue(Year2, Quarter2, 190, 2);
Excel.Cells[6,4] := GetBalValue(Year3, Quarter3, 190, 2);
//Долгосрочные кредиты и заемные средства:
Excel.Cells[8,2] := GetBalValue(Year1, Quarter1, 590, 2);
Excel.Cells[8,3] := GetBalValue(Year2, Quarter2, 590, 2);
Excel.Cells[8,4] := GetBalValue(Year3, Quarter3, 590, 2);
//Краткосрочные кредиты и займы:
Excel.Cells[10,2] := GetBalValue(Year1, Quarter1, 610, 2);
Excel.Cells[10,3] := GetBalValue(Year2, Quarter2, 610, 2);
Excel.Cells[10,4] := GetBalValue(Year3, Quarter3, 610, 2);
//Краткосрочные кредиты и займы:
Excel.Cells[12,2] := GetBalValue(Year1, Quarter1, 210, 2) +
GetBalValue(Year1, Quarter1, 220, 2);
Excel.Cells[12,3] := GetBalValue(Year2, Quarter2, 210, 2) +
GetBalValue(Year2, Quarter2, 220, 2);
Excel.Cells[12,4] := GetBalValue(Year3, Quarter3, 210, 2) +
GetBalValue(Year3, Quarter3, 220, 2);
//Вывод данных на вторую закладку шаблона (относ. показатели):
Excel.Worksheets[2].Select;
//Заголовок таблицы отн. показателей:
Excel.Cells[1,1] := string(Excel.Cells[1,1]) +
IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) + ' г., ' +
IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) + ' г., ' +
IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) + ' г. ';
//Шапка таблицы отн. показателей:
Excel.Cells[3,3] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г.';
Excel.Cells[3,4] := IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г.';
Excel.Cells[3,5] := IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
Excel.Cells[4,6] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г. от ' +
IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г.';
Excel.Cells[4,7] := IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) +
' г. от ' +
IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
127
Excel.Cells[4,8] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г. от ' +
IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) +
' г.';
//Коэффициент обеспеченности собственными оборотными средствами (Ко):
Excel.Cells[5,3] := (GetBalValue(Year1, Quarter1, 490, 2) +
GetBalValue(Year1, Quarter1, 640, 2) +
GetBalValue(Year1, Quarter1, 650, 2) -
GetBalValue(Year1, Quarter1, 190, 2)) /
GetBalValue(Year1, Quarter1, 290, 2);
Excel.Cells[5,4] := (GetBalValue(Year2, Quarter2, 490, 2) +
GetBalValue(Year2, Quarter2, 640, 2) +
GetBalValue(Year2, Quarter2, 650, 2) -
GetBalValue(Year2, Quarter2, 190, 2)) /
GetBalValue(Year2, Quarter2, 290, 2);
Excel.Cells[5,5] := (GetBalValue(Year3, Quarter3, 490, 2) +
GetBalValue(Year3, Quarter3, 640, 2) +
GetBalValue(Year3, Quarter3, 650, 2) -
GetBalValue(Year3, Quarter3, 190, 2)) /
GetBalValue(Year3, Quarter3, 290, 2);
//Коэффициент реальной стоимости имущества (Крси):
Excel.Cells[10,3] := (GetBalValue(Year1, Quarter1, 120, 2) +
GetBalValue(Year1, Quarter1, 211, 2) +
GetBalValue(Year1, Quarter1, 213, 2)) /
GetBalValue(Year1, Quarter1, 300, 2);
Excel.Cells[10,4] := (GetBalValue(Year2, Quarter2, 120, 2) +
GetBalValue(Year2, Quarter2, 211, 2) +
GetBalValue(Year2, Quarter2, 213, 2)) /
GetBalValue(Year2, Quarter2, 300, 2);
if GetBalValue(Year3, Quarter3, 300, 2) <> 0 then
Excel.Cells[10,5] := (GetBalValue(Year3, Quarter3, 120, 2) +
GetBalValue(Year3, Quarter3, 211, 2) +
GetBalValue(Year3, Quarter3, 213, 2)) /
GetBalValue(Year3, Quarter3, 300, 2)
else
Excel.Cells[10,5] := '-';
//Коэффициент имущества производственного назначения (Кп.им):
Excel.Cells[11,3] := (GetBalValue(Year1, Quarter1, 210, 2) +
GetBalValue(Year1, Quarter1, 220, 2) +
GetBalValue(Year1, Quarter1, 190, 2)) /
GetBalValue(Year1, Quarter1, 300, 2);
Excel.Cells[11,4] := (GetBalValue(Year2, Quarter2, 210, 2) +
GetBalValue(Year2, Quarter2, 220, 2) +
GetBalValue(Year2, Quarter2, 190, 2)) /
GetBalValue(Year2, Quarter2, 300, 2);
if GetBalValue(Year3, Quarter3, 300, 2) <> 0 then
Excel.Cells[11,5] := (GetBalValue(Year3, Quarter3, 210, 2) +
GetBalValue(Year3, Quarter3, 220, 2) +
GetBalValue(Year3, Quarter3, 190, 2)) /
GetBalValue(Year3, Quarter3, 300, 2)
else
Excel.Cells[11,5] := '-';
//Коэффициент имущества производственного назначения (Кп.им):
Excel.Cells[12,3] := (GetBalValue(Year1, Quarter1, 490, 2) +
GetBalValue(Year1, Quarter1, 640, 2) +
GetBalValue(Year1, Quarter1, 650, 2)) /
GetBalValue(Year1, Quarter1, 300, 2);
Excel.Cells[12,4] := (GetBalValue(Year2, Quarter2, 490, 2) +
GetBalValue(Year2, Quarter2, 640, 2) +
GetBalValue(Year2, Quarter2, 650, 2)) /
GetBalValue(Year2, Quarter2, 300, 2);
if GetBalValue(Year3, Quarter3, 300, 2) <> 0 then
128
Excel.Cells[12,5] := (GetBalValue(Year3, Quarter3, 490, 2) +
GetBalValue(Year3, Quarter3, 640, 2) +
GetBalValue(Year3, Quarter3, 650, 2)) /
GetBalValue(Year3, Quarter3, 300, 2)
else
Excel.Cells[12,5] := '-';
//Коэффициент соотношения мобильных и иммобилизованных средств
(Км/и):
Excel.Cells[14,3] := GetBalValue(Year1, Quarter1, 290, 2) /
GetBalValue(Year1, Quarter1, 190, 2);
Excel.Cells[14,4] := GetBalValue(Year2, Quarter2, 290, 2) /
GetBalValue(Year2, Quarter2, 190, 2);
Excel.Cells[14,5] := GetBalValue(Year3, Quarter3, 290, 2) /
GetBalValue(Year3, Quarter3, 190, 2);
//Коэффициент прогноза банкротства (Кпб):
Excel.Cells[15,3] := (GetBalValue(Year1, Quarter1, 290, 2) -
GetBalValue(Year1, Quarter1, 610, 2)) /
GetBalValue(Year1, Quarter1, 300, 2);
Excel.Cells[15,4] := (GetBalValue(Year2, Quarter2, 290, 2) -
GetBalValue(Year2, Quarter2, 190, 2)) /
GetBalValue(Year2, Quarter2, 300, 2);
if GetBalValue(Year3, Quarter3, 300, 2) <> 0 then
Excel.Cells[15,5] := (GetBalValue(Year3, Quarter3, 290, 2) -
GetBalValue(Year3, Quarter3, 190, 2)) /
GetBalValue(Year3, Quarter3, 300, 2)
else
Excel.Cells[12,5] := '-';
Excel.Visible := True;
except
Excel.Quit;
end;
finally
Screen.Cursor := crDefault;
end;
end;
//Формирование таблиц "Показатели рентабельности и деловой активности":
procedure Rep_Tables3(Year1, Quarter1, Year2, Quarter2, Year3, Quarter3:
Integer);
var
Excel: Variant;
WorkbookName: string;
begin
//Шаблон хранится в папке Шаблоны:
WorkbookName := GetCurrentDir + '\Шаблоны\' + '3 Показатели
рентабельности и деловой активности.xlt';
Excel := CreateOleObject('Excel.Application');
Screen.Cursor := crHourGlass;
try
try
Excel.Workbooks.Open(WorkbookName);
//Вывод данных на первую закладку шаблона (показатели
рентабельности):
Excel.Worksheets[1].Select;
//Заголовок таблицы абс. показателей:
Excel.Cells[1,1] := string(Excel.Cells[1,1]) +
IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) + ' г., ' +
IntToStr(Quarter2) + ' кв. ' + IntToStr(Year2) + ' г., ' +
IntToStr(Quarter3) + ' кв. ' + IntToStr(Year3) + ' г. ';
//Шапка таблицы абс. показателей:
Excel.Cells[3,2] := IntToStr(Quarter1) + ' кв. ' + IntToStr(Year1) +
' г.';

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)