Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

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

Читайте также:
  1. Interface
  2. Interface
  3. Interface
  4. Interface
  5. Interface

Uses

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

Dialogs, TeEngine, Series, StdCtrls, ExtCtrls, TeeProcs, Chart;

Type

TForm14 = class (TForm)

Private

Public

end;

Var

Form14: TForm14;

Implementation

end.

 

2.2.11 UNIT TABL_7

unit Tabl_7;

Interface

Uses

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

Dialogs, ExtCtrls, Grids, StdCtrls, ActnList, ToolWin, ActnMan,

ActnCtrls, ActnMenus, XPStyleActnCtrls;

Type

TForm15 = class (TForm)

ActionManager1: TActionManager;

ActionMainMenuBar1: TActionMainMenuBar;

Action1: TAction;

Action2: TAction;

Action3: TAction;

lbCaption: TLabel;

StringGrid1: TStringGrid;

procedure FormShow(Sender: TObject);

procedure StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;

Rect: TRect; State: TGridDrawState);

procedure Action1Execute(Sender: TObject);

procedure Action2Execute(Sender: TObject);

procedure Action3Execute(Sender: TObject);

procedure Shapka;

procedure Zapolnenie;

Private

Public

end;

Var

Form15: TForm15;

Implementation

uses Enterprise, PrnGridUnit, Programm, ShellAPI;

{**** Появление формы ****}

procedure TForm15.FormShow(Sender: TObject);

Begin

Shapka;

Zapolnenie;

end;

{**** Шапка таблиц ****}

procedure TForm15.Shapka;

Begin

// Ширина столбцов

StringGrid1.ColWidths[0]:= 400;

StringGrid1.ColWidths[1]:= 120;

StringGrid1.ColWidths[2]:= 120;

StringGrid1.ColWidths[3]:= 120;

StringGrid1.ColWidths[4]:= 120;

StringGrid1.ColWidths[5]:= 120;

// Шапка таблицы

StringGrid1.Cells[0, 0]:= ' Показатели';

StringGrid1.Cells[1, 0]:= ' 1 год (берутся данные на начало аналогичного предыдущего периода)';

StringGrid1.Cells[2, 0]:= ' 2 год (берутся данные на начало отчётного периода)';

StringGrid1.Cells[3, 0]:= ' Изменения (+/-)';

StringGrid1.Cells[4, 0]:= ' 3 год (берутся данные на конец отчётного периода)';

StringGrid1.Cells[5, 0]:= ' Изменения (+/-)';

 

StringGrid1.Cells[0, 1]:= ' Совокупные активы (пассивы) (СА)';

StringGrid1.Cells[0, 2]:= ' Скорректированные внеобортные активы (СВА)';

StringGrid1.Cells[0, 3]:= ' Оборотные активы (ОА)';

StringGrid1.Cells[0, 4]:= ' Ликвидные активы (ЛА)';

StringGrid1.Cells[0, 5]:= ' Наиболее ликвидные оборотные активы (НЛОА)';

StringGrid1.Cells[0, 6]:= ' Краткосрочная дебиторская задолженность (КДЗ)';

StringGrid1.Cells[0, 7]:= ' Собственные средства (СС)';

StringGrid1.Cells[0, 8]:= ' Обязательства предприятия (ОД)';

StringGrid1.Cells[0, 9]:= ' Текущие обязательства (ТКО)';

StringGrid1.Cells[0, 10]:= ' Валовая выручка (Впр)';

StringGrid1.Cells[0, 11]:= ' Среднемесячная выручка (Вср)';

StringGrid1.Cells[0, 12]:= ' Чистая прибыль (убыток) (ЧПр)';

StringGrid1.Cells[0, 13]:= ' Сумма всех доходов предприятия (Д)';

StringGrid1.Cells[0, 14]:= ' Потенциальные оборотные активы к возврату (ПОАВ)';

StringGrid1.Cells[0, 15]:= ' Выручка нетто (ВН)';

end;

{**** Заполнение таблиц *****}

procedure TForm15.Zapolnenie;

Var

i, j, m, f: Byte;

Begin

// 1 год

i:= 3; // элемент

m:= 1; // столбец

f:= 1; StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SVA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[OA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[LA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[NLOA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[KDZ, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SS, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[OD, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[TKO, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[Vpr, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[Vsr, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[CHPr, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[D, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[POAV, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[VN, i]);

// 2 год

i:= 2; // элемент

m:= 2; // столбец

f:= 1; StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SVA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[OA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[LA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[NLOA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[KDZ, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SS, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[OD, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[TKO, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[Vpr, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[Vsr, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[CHPr, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[D, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[POAV, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[VN, i]);

// 3 год

i:= 1; // элемент

m:= 4; // столбец

f:= 1; StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SVA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[OA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[LA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[NLOA, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[KDZ, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SS, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[OD, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[TKO, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[Vpr, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[Vsr, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[CHPr, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[D, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[POAV, i]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[VN, i]);

// Изменения # 1

i:= 3; // элемент

j:= 2; // элемент

m:= 3; // столбец

f:= 1; StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SA, i] - b[SA, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SVA, i] - b[SVA, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[OA, i] - b[OA, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[LA, i] - b[LA, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[NLOA, i] - b[NLOA, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[KDZ, i] - b[KDZ, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SS, i] - b[SS, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[OD, i] - b[OD, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[TKO, i] - b[TKO, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[Vpr, i] - b[Vpr, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[Vsr, i] - b[Vsr, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[CHPr, i] - b[CHPr, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[D, i] - b[D, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[POAV, i] - b[POAV, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[VN, i] - b[VN, j]);

// Изменения # 2

i:= 1; // элемент

j:= 2; // элемент

m:= 5; // столбец

f:= 1; StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SA, i] - b[SA, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SVA, i] - b[SVA, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[OA, i] - b[OA, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[LA, i] - b[LA, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[NLOA, i] - b[NLOA, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[KDZ, i] - b[KDZ, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[SS, i] - b[SS, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[OD, i] - b[OD, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[TKO, i] - b[TKO, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[Vpr, i] - b[Vpr, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[Vsr, i] - b[Vsr, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[CHPr, i] - b[CHPr, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[D, i] - b[D, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[POAV, i] - b[POAV, j]);

inc(f); StringGrid1.Cells[m, f]:= FormatFloat('0.00', b[VN, i] - b[VN, j]);

end;

{**** Форматирование таблицы ****}

procedure TForm15.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;

Rect: TRect; State: TGridDrawState);

Var

s: String;

Flag: Cardinal;

H: Integer;

i, j, m: Byte;

Begin

{_________________Выделение цветом ячеек (для изменений #1 и #2)_______________}

for m:= 1 to 2 do // для того, чтобы заполнить два раза (т.е. два столбика)

Begin

for j:= 1 to 15 do // от 1 до 15 строчки

Begin

if m = 1 then i:= 3 // заполняем 3ий столбик

else i:= 5; // заполняем 5ый столбик

if (ACol = i) and (ARow = j) and (StrToFloat(StringGrid1.Cells[i, j]) >= 0) then

Begin

StringGrid1.Canvas.Brush.Color:= rgb(154, 255, 154); // салатовый

StringGrid1.Canvas.FillRect(Rect);

StringGrid1.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, StringGrid1.Cells[ACol, ARow]);

end;

if (ACol = i) and (ARow = j) and (StrToFloat(StringGrid1.Cells[i, j]) < 0) then

Begin

StringGrid1.Canvas.Brush.Color:= rgb(250, 128, 114); // розовый

StringGrid1.Canvas.FillRect(Rect);

StringGrid1.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, StringGrid1.Cells[ACol, ARow]);

end;

end;

end;

{________________________________________Выравнивание ячеек____________________}

StringGrid1.Canvas.FillRect(Rect);

s:= StringGrid1.Cells[ACol, ARow];

Flag:= DT_LEFT;

Flag:= Flag or DT_WORDBREAK;

Inc(Rect.Left, 0);

Dec(Rect.Right, 0);

H:= DrawText(StringGrid1.Canvas.Handle, PChar(s), Length(s), Rect, Flag);

if H > StringGrid1.RowHeights[ARow] then

StringGrid1.RowHeights[ARow]:= H; // Увеличиваем

end;

{**** Панель - Печать ****}

procedure TForm15.Action1Execute(Sender: TObject);

Begin

PrintGrid(StringGrid1, lbCaption);

end;

{**** Панель - Помощь ****}

procedure TForm15.Action2Execute(Sender: TObject);

Begin

ShellExecute(handle, 'open', 'helpfile.pdf', nil, nil, SW_SHOWNORMAL);

end;

{**** Панель - О программе ****}

procedure TForm15.Action3Execute(Sender: TObject);

Begin

Form22.Show;

end;

end.

 

2.2.12 UNIT TABL_8

unit Tabl_8;


Дата добавления: 2015-10-13; просмотров: 73 | Нарушение авторских прав


Читайте в этой же книге: Implementation 1 страница | Implementation 2 страница | Implementation 3 страница | Implementation 4 страница | Else begin |
<== предыдущая страница | следующая страница ==>
Interface| Interface

mybiblioteka.su - 2015-2024 год. (0.02 сек.)