Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
097715 / ОО проектирование приложений с использованием UML (ПЗ).doc
Скачиваний:
57
Добавлен:
12.06.2015
Размер:
19.01 Mб
Скачать

Приложение Основной модуль приложения

unit Main;

interface

uses

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

Dialogs, BoldHandle, BoldPersistenceHandle, BoldPersistenceHandleFile,

BoldPersistenceHandleFileXML, BoldAbstractModel, BoldModel, BoldHandles,

BoldRootedHandles, BoldAbstractListHandle, BoldCursorHandle,

BoldListHandle, BoldSubscription, BoldSystemHandle, BoldUMLModelLink,

BoldUMLRose98Link, data, ComCtrls, ToolWin, XPMan, Menus, StdCtrls,

ImgList, BoldEdit, Buttons, ExtCtrls, jpeg, Grids, BoldGrid, Mask,

BoldComboBox, BoldQueue, BoldListBox, BoldMemo, BusinessClasses,

BoldNavigatorDefs, BoldNavigator, NewBase, BoldTreeView, BoldSortingGrid,

Spin, BoldStringControlPack, BoldElements, BoldControlPack,

BoldNumericControlPack, comobj, BoldLabel, ShellAPI;

type

TMainform = class(TForm)

MainMenu1: TMainMenu;

N1: TMenuItem;

XPManifest1: TXPManifest;

StatusBar1: TStatusBar;

ToolBar1: TToolBar;

ToolButton1: TToolButton;

ToolButton2: TToolButton;

ToolButton3: TToolButton;

N2: TMenuItem;

PageControl1: TPageControl;

TabSheet1: TTabSheet;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

N7: TMenuItem;

ToolButton4: TToolButton;

ToolButton5: TToolButton;

ToolButton6: TToolButton;

ToolButton7: TToolButton;

ToolButton8: TToolButton;

ToolButton9: TToolButton;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

ImageList1: TImageList;

N8: TMenuItem;

N9: TMenuItem;

TabSheet2: TTabSheet;

GroupBox1: TGroupBox;

Label7: TLabel;

Label8: TLabel;

Label9: TLabel;

Bevel1: TBevel;

SpeedButton1: TSpeedButton;

SpeedButton2: TSpeedButton;

GroupBox3: TGroupBox;

BoldEdit4: TBoldEdit;

Label15: TLabel;

BoldListBox2: TBoldListBox;

Label16: TLabel;

BoldGrid2: TBoldGrid;

SpeedButton3: TSpeedButton;

SpeedButton4: TSpeedButton;

SpeedButton5: TSpeedButton;

SpeedButton6: TSpeedButton;

SpeedButton7: TSpeedButton;

SpeedButton8: TSpeedButton;

SpeedButton9: TSpeedButton;

SpeedButton10: TSpeedButton;

TabSheet3: TTabSheet;

GroupBox5: TGroupBox;

BoldListBox1: TBoldListBox;

GroupBox7: TGroupBox;

BoldListBox3: TBoldListBox;

SpeedButton16: TSpeedButton;

SpeedButton17: TSpeedButton;

GroupBox8: TGroupBox;

Label26: TLabel;

BoldEdit6: TBoldEdit;

Label27: TLabel;

BoldEdit7: TBoldEdit;

BoldListBox4: TBoldListBox;

SpeedButton20: TSpeedButton;

GroupBox6: TGroupBox;

Label18: TLabel;

Edit4: TEdit;

GroupBox10: TGroupBox;

Label20: TLabel;

Label21: TLabel;

Label23: TLabel;

Label22: TLabel;

Edit5: TEdit;

Edit6: TEdit;

Edit7: TEdit;

MaskEdit1: TMaskEdit;

SpeedButton14: TSpeedButton;

SpeedButton15: TSpeedButton;

GroupBox9: TGroupBox;

Label25: TLabel;

SpeedButton18: TSpeedButton;

SpeedButton19: TSpeedButton;

Edit8: TEdit;

Label19: TLabel;

BoldEdit8: TBoldEdit;

SpeedButton21: TSpeedButton;

SpeedButton22: TSpeedButton;

SpeedButton23: TSpeedButton;

N11: TMenuItem;

GroupBox11: TGroupBox;

BoldListBox5: TBoldListBox;

BoldComboBox2: TBoldComboBox;

BoldSortingGrid1: TBoldSortingGrid;

Label28: TLabel;

Label29: TLabel;

Label30: TLabel;

BoldComboBox3: TBoldComboBox;

N12: TMenuItem;

N13: TMenuItem;

TabSheet4: TTabSheet;

BoldSortingGrid2: TBoldSortingGrid;

TabSheet5: TTabSheet;

GroupBox4: TGroupBox;

Label17: TLabel;

SpeedButton24: TSpeedButton;

SpeedButton25: TSpeedButton;

SpeedButton26: TSpeedButton;

SpeedButton27: TSpeedButton;

SpeedButton28: TSpeedButton;

Label24: TLabel;

BoldGrid3: TBoldGrid;

BoldMemo1: TBoldMemo;

BoldEdit9: TBoldEdit;

N14: TMenuItem;

TabSheet6: TTabSheet;

GroupBox12: TGroupBox;

BoldComboBox4: TBoldComboBox;

GroupBox13: TGroupBox;

Label31: TLabel;

Label32: TLabel;

Edit9: TEdit;

Edit10: TEdit;

Label33: TLabel;

SpinEdit1: TSpinEdit;

Label34: TLabel;

SpinEdit2: TSpinEdit;

GroupBox14: TGroupBox;

BoldSortingGrid3: TBoldSortingGrid;

SpeedButton29: TSpeedButton;

SpeedButton30: TSpeedButton;

SpeedButton31: TSpeedButton;

GroupBox15: TGroupBox;

BoldListBox6: TBoldListBox;

SpeedButton32: TSpeedButton;

TabSheet7: TTabSheet;

SpeedButton33: TSpeedButton;

GroupBox16: TGroupBox;

BoldSortingGrid4: TBoldSortingGrid;

GroupBox17: TGroupBox;

BoldComboBox5: TBoldComboBox;

GroupBox18: TGroupBox;

BoldListBox7: TBoldListBox;

BoldAsStringRenderer1: TBoldAsStringRenderer;

SpeedButton34: TSpeedButton;

SpeedButton35: TSpeedButton;

SpeedButton36: TSpeedButton;

ProgressBar1: TProgressBar;

GroupBox19: TGroupBox;

Edit11: TEdit;

Label35: TLabel;

SpeedButton37: TSpeedButton;

SpeedButton38: TSpeedButton;

SaveExcel: TSaveDialog;

N15: TMenuItem;

GroupBox20: TGroupBox;

Label36: TLabel;

SpeedButton39: TSpeedButton;

Edit12: TEdit;

GroupBox21: TGroupBox;

Label37: TLabel;

SpeedButton40: TSpeedButton;

Edit13: TEdit;

SpeedButton41: TSpeedButton;

SpeedButton42: TSpeedButton;

Prodazha: TPopupMenu;

N16: TMenuItem;

N17: TMenuItem;

SpeedButton43: TSpeedButton;

RenderProdazha: TBoldAsStringRenderer;

SpeedButton44: TSpeedButton;

SpeedButton45: TSpeedButton;

ProgressBar2: TProgressBar;

TabSheet8: TTabSheet;

N18: TMenuItem;

GroupBox22: TGroupBox;

BoldComboBox6: TBoldComboBox;

BoldListBox8: TBoldListBox;

Label38: TLabel;

Label39: TLabel;

GroupBox23: TGroupBox;

GroupBox24: TGroupBox;

GroupBox25: TGroupBox;

Label40: TLabel;

Label41: TLabel;

BoldLabel1: TBoldLabel;

BoldLabel2: TBoldLabel;

Label42: TLabel;

Label43: TLabel;

BoldLabel3: TBoldLabel;

BoldLabel4: TBoldLabel;

Label44: TLabel;

Label45: TLabel;

BoldLabel5: TBoldLabel;

BoldLabel6: TBoldLabel;

BoldLabel7: TBoldLabel;

Label46: TLabel;

Label47: TLabel;

BoldLabel8: TBoldLabel;

Label48: TLabel;

BoldLabel9: TBoldLabel;

GroupBox26: TGroupBox;

Label49: TLabel;

Label50: TLabel;

DateTimePicker1: TDateTimePicker;

Label51: TLabel;

DateTimePicker2: TDateTimePicker;

Label52: TLabel;

Label53: TLabel;

Label54: TLabel;

Label55: TLabel;

Label56: TLabel;

Label57: TLabel;

SpeedButton46: TSpeedButton;

SpeedButton47: TSpeedButton;

TabSheet9: TTabSheet;

GroupBox27: TGroupBox;

Label58: TLabel;

SpeedButton48: TSpeedButton;

Edit14: TEdit;

Label59: TLabel;

Label60: TLabel;

DateTimePicker3: TDateTimePicker;

DateTimePicker4: TDateTimePicker;

SpeedButton49: TSpeedButton;

TabSheet10: TTabSheet;

GroupBox28: TGroupBox;

Label61: TLabel;

SpeedButton50: TSpeedButton;

Label62: TLabel;

Label63: TLabel;

SpeedButton51: TSpeedButton;

Edit15: TEdit;

DateTimePicker5: TDateTimePicker;

DateTimePicker6: TDateTimePicker;

GroupBox29: TGroupBox;

BoldGrid4: TBoldGrid;

Label64: TLabel;

Bevel2: TBevel;

BoldLabel10: TBoldLabel;

BoldLabel11: TBoldLabel;

BoldLabel12: TBoldLabel;

BoldLabel13: TBoldLabel;

GroupBox30: TGroupBox;

BoldGrid5: TBoldGrid;

Label65: TLabel;

BoldLabel14: TBoldLabel;

BoldLabel15: TBoldLabel;

Bevel3: TBevel;

SpeedButton52: TSpeedButton;

SpeedButton53: TSpeedButton;

SpeedButton54: TSpeedButton;

SpeedButton55: TSpeedButton;

Bevel4: TBevel;

Label66: TLabel;

BoldLabel16: TBoldLabel;

BoldLabel17: TBoldLabel;

BoldLabel18: TBoldLabel;

BoldLabel19: TBoldLabel;

CheckBox1: TCheckBox;

CheckBox2: TCheckBox;

CheckBox3: TCheckBox;

N19: TMenuItem;

N20: TMenuItem;

N21: TMenuItem;

ToolButton10: TToolButton;

ToolButton11: TToolButton;

ToolButton12: TToolButton;

ToolButton13: TToolButton;

ToolButton14: TToolButton;

N22: TMenuItem;

N23: TMenuItem;

N24: TMenuItem;

ToolButton15: TToolButton;

ToolButton16: TToolButton;

BoldLabel20: TBoldLabel;

BoldLabel21: TBoldLabel;

BoldLabel22: TBoldLabel;

BoldEdit10: TBoldEdit;

BoldEdit11: TBoldEdit;

BoldEdit12: TBoldEdit;

Label4: TLabel;

BoldEdit13: TBoldEdit;

Label5: TLabel;

BoldEdit14: TBoldEdit;

Label6: TLabel;

BoldEdit15: TBoldEdit;

Label67: TLabel;

BoldMemo2: TBoldMemo;

SaveWord: TSaveDialog;

Vremya: TTimer;

N10: TMenuItem;

Timer1: TTimer;

CheckBox4: TCheckBox;

TabSheet11: TTabSheet;

GroupBox2: TGroupBox;

Label10: TLabel;

Label11: TLabel;

Label12: TLabel;

Label13: TLabel;

Label14: TLabel;

SpeedButton11: TSpeedButton;

SpeedButton12: TSpeedButton;

SpeedButton13: TSpeedButton;

BoldGrid1: TBoldGrid;

BoldComboBox1: TBoldComboBox;

BoldEdit1: TBoldEdit;

BoldEdit2: TBoldEdit;

BoldEdit3: TBoldEdit;

BoldEdit5: TBoldEdit;

N25: TMenuItem;

SpeedButton56: TSpeedButton;

Image1: TImage;

procedure N2Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure FormCanResize(Sender: TObject; var NewWidth,

NewHeight: Integer; var Resize: Boolean);

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

procedure N9Click(Sender: TObject);

procedure N10Click(Sender: TObject);

procedure SpeedButton2Click(Sender: TObject);

procedure BoldGrid1DblClick(Sender: TObject);

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

var CanSelect: Boolean);

procedure SpeedButton8Click(Sender: TObject);

procedure SpeedButton9Click(Sender: TObject);

procedure SpeedButton10Click(Sender: TObject);

procedure SpeedButton12Click(Sender: TObject);

procedure SpeedButton13Click(Sender: TObject);

procedure SpeedButton5Click(Sender: TObject);

procedure SpeedButton6Click(Sender: TObject);

procedure SpeedButton7Click(Sender: TObject);

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

var CanSelect: Boolean);

procedure SpeedButton4Click(Sender: TObject);

procedure SpeedButton3Click(Sender: TObject);

procedure Edit4KeyPress(Sender: TObject; var Key: Char);

procedure SpeedButton15Click(Sender: TObject);

procedure SpeedButton14Click(Sender: TObject);

procedure Edit5KeyPress(Sender: TObject; var Key: Char);

procedure MaskEdit1KeyPress(Sender: TObject; var Key: Char);

procedure SpeedButton17Click(Sender: TObject);

procedure Edit8KeyPress(Sender: TObject; var Key: Char);

procedure SpeedButton20Click(Sender: TObject);

procedure SpeedButton19Click(Sender: TObject);

procedure SpeedButton18Click(Sender: TObject);

procedure TabSheet3Hide(Sender: TObject);

procedure SpeedButton21Click(Sender: TObject);

procedure SpeedButton22Click(Sender: TObject);

procedure SpeedButton23Click(Sender: TObject);

procedure SpeedButton26Click(Sender: TObject);

procedure SpeedButton28Click(Sender: TObject);

procedure SpeedButton27Click(Sender: TObject);

procedure SpeedButton24Click(Sender: TObject);

procedure SpeedButton25Click(Sender: TObject);

procedure N11Click(Sender: TObject);

procedure SpeedButton29Click(Sender: TObject);

procedure Edit10KeyPress(Sender: TObject; var Key: Char);

procedure SpeedButton30Click(Sender: TObject);

procedure Edit9KeyPress(Sender: TObject; var Key: Char);

procedure SpeedButton31Click(Sender: TObject);

procedure SpeedButton32Click(Sender: TObject);

procedure N14Click(Sender: TObject);

procedure BoldAsStringRenderer1SetColor(Element: TBoldElement;

var AColor: TColor; Representation: Integer; Expression: String);

procedure BoldSortingGrid4DblClick(Sender: TObject);

procedure SpeedButton34Click(Sender: TObject);

procedure SpeedButton34MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure Clear_status;

procedure TabSheet7MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure SpeedButton36MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton35MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton35Click(Sender: TObject);

function FindTovarBase(name: string): boolean;

function FindTovarShop(name: string; Gr:string; var tov_index: integer): boolean;

procedure SpeedButton37MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton37Click(Sender: TObject);

procedure SpeedButton38MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton38Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure SpeedButton39Click(Sender: TObject);

procedure SpeedButton40Click(Sender: TObject);

procedure SpeedButton16MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton41Click(Sender: TObject);

procedure SpeedButton42Click(Sender: TObject);

procedure SpeedButton42MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton41MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure RenderProdazhaSetColor(Element: TBoldElement;

var AColor: TColor; Representation: Integer; Expression: String);

procedure SpeedButton44MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton44Click(Sender: TObject);

procedure SpeedButton45MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton45Click(Sender: TObject);

procedure SpeedButton16Click(Sender: TObject);

procedure SpeedButton46Click(Sender: TObject);

procedure SpeedButton46MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure GroupBox26MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure SpeedButton47Click(Sender: TObject);

procedure TabSheet8MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure SpeedButton49MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton48MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton48Click(Sender: TObject);

procedure SpeedButton49Click(Sender: TObject);

procedure SpeedButton50Click(Sender: TObject);

procedure SpeedButton51Click(Sender: TObject);

procedure N7Click(Sender: TObject);

procedure SpeedButton52Click(Sender: TObject);

procedure SpeedButton53Click(Sender: TObject);

procedure SpeedButton54Click(Sender: TObject);

procedure SpeedButton55Click(Sender: TObject);

procedure SpeedButton33Click(Sender: TObject);

procedure SpeedButton29MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton30MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton32MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton31MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton43MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton8MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure SpeedButton9MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure SpeedButton10MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton11MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton12MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton13MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton3MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure SpeedButton4MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure SpeedButton5MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure SpeedButton6MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure SpeedButton7MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure SpeedButton14MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton15MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton21MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton22MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton23MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton20MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton18MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure SpeedButton19MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

procedure CheckBox1Click(Sender: TObject);

procedure CheckBox1MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure CheckBox2Click(Sender: TObject);

procedure CheckBox3Click(Sender: TObject);

procedure N12Click(Sender: TObject);

procedure N15Click(Sender: TObject);

procedure N19Click(Sender: TObject);

procedure N18Click(Sender: TObject);

procedure N20Click(Sender: TObject);

procedure N21Click(Sender: TObject);

procedure ToolButton1MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure ToolButton3MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure ToolButton4MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure ToolButton5MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure ToolButton6MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure ToolButton7MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure ToolButton8MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure ToolButton9MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure ToolButton11MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure ToolButton12MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure ToolButton14MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure SpeedButton43Click(Sender: TObject);

procedure N24Click(Sender: TObject);

procedure BitBtn1Click(Sender: TObject);

procedure VremyaTimer(Sender: TObject);

procedure ToolBar1MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure Timer1Timer(Sender: TObject);

procedure ToolButton15MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure ToolButton16MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

procedure CheckBox4Click(Sender: TObject);

procedure ToolButton14Click(Sender: TObject);

procedure N6Click(Sender: TObject);

procedure N25Click(Sender: TObject);

procedure SpeedButton56Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var Mainform: TMainform;

TekOtdel: TOtdel;

TekGroup: TGroup;

TekBase: TBase;

TekBTov: TTov_base;

TekZTov, NewZTov: TZakaz;

TekMTov: TTov_mag;

ProdTov: TProdazha;

FlagZakaz: Boolean;

TekShop: TShop;

Kol: integer;

E, W: Variant;

DirApplication: string;

procedure NewTovar(name: string; price: real; Garant, Col: integer;

Zakaz: boolean; Zakazcount: integer; Hranitsya: TBase; Prinadlezhit: TGroup;

var NewTov: TTov_base);

procedure NewMagTovar(name: string; price: real; Garant, Col: integer;

Prinadlezhit: TGroup; var NewMTov: TTov_mag);

function PoiskTovarBase(name: String; nach: boolean; var index: integer): boolean;

implementation

uses BoldSystem, EditTovarBase, ZakazTov, About, Ad_change_pass, Ad_reg,

Sc_trial;

{$R *.dfm}

//*****************************************************************************

//***************************Мои процедуры и функции***************************

//*****************************************************************************

//Расчет экономических показателей

procedure rasschet(begindate, enddate: TDate);

var i,n: integer;

ksum, prib, viruch: real;

d: TDate;

begin

n:=DataShop.ListProdazha.Count;

ksum:=0;

prib:=0;

viruch:=0;

for i:=0 to n-1 do

begin

ProdTov:=DataShop.ListProdazha.ObjectList.Elements[i] as TProdazha;

d:=ProdTov.Pdate;

if (d<=trunc(enddate))and(d>=trunc(begindate)) then

begin

viruch:=viruch+ProdTov.PRprice*ProdTov.Pcount;

prib:=prib+ProdTov.Pprice*ProdTov.Pcount;

ksum:=ksum+ProdTov.Pcount;

end;

end;

prib:=viruch-prib;

Mainform.Label55.Caption:=FloatToStr(ksum);

Mainform.Label56.Caption:=FloatToStr(viruch);

Mainform.Label57.Caption:=FloatToStr(prib);

end;

//Добавлнение нового товара в базу

procedure NewTovar(name: string; price: real; Garant, Col: integer;

Zakaz: boolean; Zakazcount: integer; Hranitsya: TBase; Prinadlezhit: TGroup;

var NewTov: TTov_base);

begin

NewTov:=TTov_base.Create(nil);

NewTov.Tname:=name;

NewTov.Tprice:=price;

NewTov.Tgarant:=Garant;

NewTov.TBcount:=Col;

NewTov.ZakazCount:=Zakazcount;

NewTov.Hranitsya:=Hranitsya;

NewTov.BPrinadlezhit:=Prinadlezhit;

end;

//Добавление нового товара в магазин

procedure NewMagTovar(name: string; price: real; Garant, Col: integer;

Prinadlezhit: TGroup; var NewMTov: TTov_mag);

var flag: boolean;

s: String;

pricereal: real;

begin

flag:=true;

S:='';

while flag do

begin

s:=InputBox('Цена реализации','Укажите цену реализации (руб. за ед.) товара "'+

name+'" с закупочной ценой:'+floattostr(price),'0');

if s<>'' then

begin

try

pricereal:=StrToFloat(s);

except

ShowMessage('Неверно указана цена реализации товара!'+#13+'Повторите ввод цены!');

end;

if pricereal>price then

flag:=false

else

ShowMessage('Цена реализации товара должна быть выше закупочной!'+#13+

'Повторите ввод цены реализации');

end

else

ShowMessage('Укажите цену реализации товара (руб. за ед.)!');

end; // while

NewMTov:=TTov_mag.Create(nil);

NewMTov.Tname:=name;

NewMTov.Tprice:=price;

NewMTov.Tgarant:=Garant;

NewMTov.TMcount:=Col;

NewMTov.Prodcount:=0;

NewMTov.TMprice:=pricereal;

NewMTov.Prinadlezhit:=Prinadlezhit;

end;

//Добавление записи в журнал продаж

procedure NewProdazha(Np: integer; Pname: string; Kol: integer; Zprisce, Rprice: real; var New: TProdazha);

begin

New:=TProdazha.Create(nil);

New.Pdate:=now;

New.PZtov_name:=Pname;

New.Pcount:=Kol;

New.Pprice:=Zprisce;

New.PRprice:=Rprice;

New.Pnumber:=Np;

end;

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

function TMainform.FindTovarBase(name: string): boolean;

var ExTov: TTov_base;

fi,n: integer;

begin

result:=false;

n:=DataShop.ListBaseGroupTovar.Count-1;

for fi:=0 to n do

begin

ExTov:=DataShop.ListBaseGroupTovar.ObjectList.Elements[fi] as TTov_base;

if name=ExTov.Tname then

result:=true;

end;

end;

//Поиск товара по закупочным базам для отображения

function PoiskTovarBase(name: String; nach: boolean; var index: integer): boolean;

var ExTov: TTov_base;

fi,n, p: integer;

begin

result:=false;

if nach then

fi:=0

else

fi:=DataShop.ListBaseGroupTovar.CurrentIndex+1;

n:=DataShop.ListBaseGroupTovar.Count;

while fi<>n do

begin

ExTov:=DataShop.ListBaseGroupTovar.ObjectList.Elements[fi] as TTov_base;

p:=pos(name,ExTov.Tname);

if p<>0 then

begin

index:=fi;

fi:=n;

Result:=true;

end

else

inc(fi)

end;

end;

//Поиск товара по журналу продаж

function PoiskTovarProd(name: String; nach: boolean; var index: integer): boolean;

var ExTov: TProdazha;

fi,n, p1,p2: integer;

begin

result:=false;

if nach then

fi:=0

else

fi:=DataShop.ListProdazha.CurrentIndex+1;

n:=DataShop.ListProdazha.Count;

while fi<>n do

begin

ExTov:=DataShop.ListProdazha.ObjectList.Elements[fi] as TProdazha;

p1:=pos(name,ExTov.PZtov_name);

p2:=pos(name,inttostr(ExTov.Pnumber));

if (p1<>0)or(p2<>0) then

begin

index:=fi;

fi:=n;

Result:=true;

end

else

inc(fi)

end;

end;

//Поиск товара по журналу закупок

function PoiskTovarZakaz(name: String; nach: boolean; var index: integer): boolean;

var ExTov: TZakaz;

fi,n, p1: integer;

begin

result:=false;

if nach then

fi:=0

else

fi:=DataShop.ListZakupka.CurrentIndex+1;

n:=DataShop.ListZakupka.Count;

while fi<>n do

begin

ExTov:=DataShop.ListZakupka.ObjectList.Elements[fi] as TZakaz;

p1:=pos(name,ExTov.Zname);

if (p1<>0) then

begin

index:=fi;

fi:=n;

Result:=true;

end

else

inc(fi)

end;

end;

//Поиск товара по магазину

function PoiskTovarShop(name: String; nach: boolean; var index: integer): boolean;

var ExTov: TTov_mag;

fi,n, p: integer;

begin

result:=false;

if nach then

fi:=0

else

fi:=DataShop.ListTovar.CurrentIndex+1;

n:=DataShop.ListTovar.Count;

while fi<>n do

begin

ExTov:=DataShop.ListTovar.ObjectList.Elements[fi] as TTov_mag;

p:=pos(name,ExTov.Tname);

if p<>0 then

begin

index:=fi;

fi:=n;

Result:=true;

end

else

inc(fi)

end;

end;

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

function PoiskTovarShopGroup(name: String; nach: boolean; var index: integer): boolean;

var ExTov: TTov_mag;

fi,n, p: integer;

begin

result:=false;

if nach then

fi:=0

else

fi:=DataShop.ListOtdelsGroupTovar.CurrentIndex+1;

n:=DataShop.ListOtdelsGroupTovar.Count;

while fi<>n do

begin

ExTov:=DataShop.ListOtdelsGroupTovar.ObjectList.Elements[fi] as TTov_mag;

p:=pos(name,ExTov.Tname);

if p<>0 then

begin

index:=fi;

fi:=n;

Result:=true;

end

else

inc(fi)

end;

end;

//Поиск товара по магазину для добавления

function TMainform.FindTovarShop(name: string; Gr: String; var tov_index: integer): boolean;

var ExTov: TTov_mag;

fi: integer;

begin

result:=false;

for fi:=0 to DataShop.ListTovar.Count-1 do

begin

ExTov:=DataShop.ListTovar.ObjectList.Elements[fi] as TTov_mag;

if (name=ExTov.Tname)and(ExTov.Prinadlezhit.Gname=Gr) then

begin

result:=true;

tov_index:=fi;

exit;

end;

end;

end;

//Отмена заказа

procedure OtmenaZakaza;

var i,n: integer;

begin

n:=DataShop.ListBaseTovar.Count;

for i:=0 to n-1 do

begin

TekBTov:=DataShop.ListBaseTovar.ObjectList.Elements[i] as TTov_base;

if TekBTov.ZakazCount>0 then

begin

TekBTov.ZakazCount:=0;

Mainform.BoldSortingGrid4.Repaint;

Mainform.SpeedButton35.Enabled:=false;

end;

end;

end;

//Отмена продажи

procedure OtmenaProdazhi;

var i, n: integer;

begin

n:=DataShop.ListTovar.Count;

for i:=0 to n-1 do

begin

TekMTov:=DataShop.ListTovar.ObjectList.Elements[i] as TTov_mag;

if TekMTov.Prodcount>0 then

begin

TekMTov.Prodcount:=0;

Mainform.BoldSortingGrid1.Repaint;

Mainform.SpeedButton45.Enabled:=false;

Kol:=0;

end;

end;

end;

//Экспорт в Excel остатков товара в магазине

procedure ExportOstatki(FileName: string);

var Wbook, Sheet, MySh, Range, Border: variant;

i, j, n, m, r, col: integer;

begin

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

E.Workbooks.Add;

Wbook:=E.Workbooks.Item[E.Workbooks.Count];

Sheet:=Wbook.Sheets;

Sheet.Item[2].delete;

Sheet.Item[2].delete;

MySh:=Sheet.Item[1];

MySh.name:='Остатки товара в магазине';

Range:=MySh.Range['A1:E1'];

Range.MergeCells:=true;

Range.Font.Bold:=true;

Range.Font.Italic:=true;

Range.Font.UnderLine:=true;

Range.Font.Size:=16;

Range.Font.Color:=clRed;

Range.value:='Остатки товара в магазине';

Range:=MySh.Range['A1'];

Range.ColumnWidth:=37;

Range:=MySh.Range['B1']; Range.ColumnWidth:=10.5;

Range:=MySh.Range['C1']; Range.ColumnWidth:=8;

Range:=MySh.Range['D1']; Range.ColumnWidth:=12.15;

Range:=MySh.Range['E1']; Range.ColumnWidth:=15.86;

MySh.Range['A3'].value:='Точка актуальности остатков: '+ datetostr(now);

MySh.Range['A5'].value:='Наименование товара';

MySh.Range['B5'].value:='Количество';

MySh.Range['C5'].value:='Гарантия';

MySh.Range['D5'].value:='Цена закупки';

MySh.Range['E5'].value:='Цена реализации';

Range:=MySh.Range['A5:E5'];

Range.Font.Bold:=true;

Border:=Range.Borders;

Border.Color:=clBlack;

Border.Weight:=2;

n:=DataShop.ListGroups.Count;

r:=6;

Col:=0;

for i:=0 to n-1 do

begin

TekGroup:=DataShop.ListGroups.ObjectList.Elements[i] as TGroup;

DataShop.ListGroups.CurrentIndex:=i;

m:=DataShop.ListGroupTovar.Count;

if m<>0 then

begin

MySh.Cells[r,1]:=TekGroup.Gname;

Range:=MySh.Range['A'+inttostr(r)+':E'+inttostr(r)];

Range.Font.Italic:=true;

Range.Font.Size:=14;

Range.Interior.color:=$77FFFF{clYellow};

r:=r+1;

Range:=MySh.Range['A'+inttostr(r)+':E'+inttostr(r+m-1)];

Border:=Range.Borders;

Border.Color:=clBlack;

Border.Weight:=2;

for j:=0 to m-1 do

begin

TekMTov:=DataShop.ListGroupTovar.ObjectList.Elements[j] as TTov_mag;

MySh.Cells[r,1]:=TekMTov.Tname;

MySh.Cells[r,2]:=TekMTov.TMcount;

MySh.Cells[r,3]:=TekMTov.Tgarant;

MySh.Cells[r,4]:=TekMTov.Tprice;

MySh.Cells[r,5]:=TekMTov.TMprice;

r:=r+1;

col:=col+TekMTov.TMcount;

end;

end;

end;

MySh.Cells[r,1]:='Итого: ';

MySh.Cells[r,2]:=col;

MySh.cells[r,1].font.bold:=true;

MySh.cells[r,1].font.size:=16;

MySh.cells[r,2].font.bold:=true;

MySh.cells[r,2].font.size:=16;

Wbook.SaveAs(FileName,1);

E.visible:=true;

end;

//Экспорт в Excel остатков товара на базах

procedure ExportOstatkiBase(FileName: string);

var Wbook, Sheet, MySh, Range, Border: variant;

i, j, n, m, l, k, r, col: integer;

begin

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

E.Workbooks.Add;

Wbook:=E.Workbooks.Item[E.Workbooks.Count];

Sheet:=Wbook.Sheets;

Sheet.Item[2].delete;

Sheet.Item[2].delete;

MySh:=Sheet.Item[1];

MySh.name:='Остатки товара на базах';

Range:=MySh.Range['A1:D1'];

Range.MergeCells:=true;

Range.Font.Bold:=true;

Range.Font.Italic:=true;

Range.Font.UnderLine:=true;

Range.Font.Size:=16;

Range.Font.Color:=clRed;

Range.value:='Остатки товара на базах';

Range:=MySh.Range['A1'];

Range.ColumnWidth:=37;

Range:=MySh.Range['B1']; Range.ColumnWidth:=10.5;

Range:=MySh.Range['C1']; Range.ColumnWidth:=8;

Range:=MySh.Range['D1']; Range.ColumnWidth:=12.15;

MySh.Range['A3'].value:='Точка актуальности остатков: '+ datetostr(now);

MySh.Range['A5'].value:='Наименование товара';

MySh.Range['B5'].value:='Количество';

MySh.Range['C5'].value:='Гарантия';

MySh.Range['D5'].value:='Цена закупки';

Range:=MySh.Range['A5:D5'];

Range.Font.Bold:=true;

Border:=Range.Borders;

Border.Color:=clBlack;

Border.Weight:=2;

n:=DataShop.ListBases.Count;

r:=6;

Col:=0;

for i:=0 to n-1 do

begin

TekBase:=DataShop.ListBases.ObjectList.Elements[i] as TBase;

DataShop.ListBases.CurrentIndex:=i;

m:=DataShop.ListBaseGroup.Count;

if (m<>0) then

begin

MySh.Cells[r,1]:=' '+TekBase.Bname;

Range:=MySh.Range['A'+inttostr(r)+':D'+inttostr(r)];

Range.Font.Italic:=true;

Range.Font.Size:=14;

Range.Interior.color:=$FFFF99;

r:=r+1;

for j:=0 to m-1 do

begin

TekGroup:=DataShop.ListBaseGroup.ObjectList.Elements[j] as TGroup;

DataShop.ListBaseGroup.CurrentIndex:=j;

l:=DataShop.ListBaseGroupTovar.Count;

if l<>0 then

begin

MySh.Cells[r,1]:=TekGroup.Gname;

Range:=MySh.Range['A'+inttostr(r)+':D'+inttostr(r)];

Range.Font.Italic:=true;

Range.Font.Size:=14;

Range.Interior.color:=$77FFFF;

r:=r+1;

Range:=MySh.Range['A'+inttostr(r)+':D'+inttostr(r+l-1)];

Border:=Range.Borders;

Border.Color:=clBlack;

Border.Weight:=2;

for k:=0 to l-1 do

begin

TekBTov:=DataShop.ListBaseGroupTovar.ObjectList.Elements[k] as TTov_base;

MySh.Cells[r,1]:=TekBTov.Tname;

MySh.Cells[r,2]:=TekBTov.TBcount;

MySh.Cells[r,3]:=TekBTov.Tgarant;

MySh.Cells[r,4]:=TekBTov.Tprice;

r:=r+1;

col:=col+TekBTov.TBcount;

end; //for k

end; //if l<>0

end; //for j

end; //if m<>0

end; //for i

MySh.Cells[r,1]:='Итого: ';

MySh.Cells[r,2]:=col;

MySh.cells[r,1].font.bold:=true;

MySh.cells[r,1].font.size:=16;

MySh.cells[r,2].font.bold:=true;

MySh.cells[r,2].font.size:=16;

Wbook.SaveAs(FileName,1);

E.visible:=true;

end;

//Поиск в Word-документе текста и замена на другой текст

function FindAndInsert(FindText, ReplacementText: string): boolean;

const dwReplaceAll=2;

begin

W.Selection.Find.Text:=FindText;

W.Selection.Find.Replacement.Text:=ReplacementText;

FindAndInsert:=W.Selection.Find.Execute(Replace:=dwReplaceAll);

end;

//Создание накладной продажи

procedure NakladnayaProdazha(FileName: string; Np: integer);

var Doc, Tabl: variant;

i,n: integer;

sum: real;

begin

if FileExists(ExtractFileDir(Application.ExeName)+'\Накладная продажи.dot') then

begin

W:=CreateOleObject('Word.Application');

W.Documents.Add(ExtractFileDir(Application.ExeName)+'\Накладная продажи.dot');

Doc:=W.ActiveDocument;

TekShop:=DataShop.ListShop.ObjectList.Elements[0] as TShop;

FindAndInsert('###номер магазина&',TekShop.Shnumber);

FindAndInsert('###название магазина&',TekShop.Shname);

FindAndInsert('###адрес магазина&',TekShop.ShAddress);

FindAndInsert('###инн&',TekShop.ShINN);

FindAndInsert('###телефон&',TekShop.ShPhone);

FindAndInsert('###мыло&',TekShop.ShMail);

FindAndInsert('###номер продажи&',inttostr(Np));

DataShop.ListProdazhaOtchet.Expression:='Prodazha.allInstances->Select(pnumber='+inttostr(Np)+')';

ProdTov:=DataShop.ListProdazhaOtchet.ObjectList.Elements[0] as TProdazha;

FindAndInsert('###дата продажи&',DateToStr(ProdTov.Pdate));

FindAndInsert('###дата оплаты&',DateToStr(ProdTov.Pdate)+' 20:00');

i:=Doc.Tables.Count;

Tabl:=Doc.Tables.Item(i);

n:=DataShop.ListProdazhaOtchet.Count;

sum:=0;

for i:=0 to n-1 do

begin

ProdTov:=DataShop.ListProdazhaOtchet.ObjectList.Elements[i] as TProdazha;

Tabl.Cell(i+2,1).Range.Text:=inttostr(i+1);

Tabl.Cell(i+2,2).Range.Text:=ProdTov.PZtov_name;

Tabl.Cell(i+2,2).Range.ParagraphFormat.Alignment:=0;

Tabl.Cell(i+2,3).Range.Text:=inttostr(ProdTov.Pcount);

Tabl.Cell(i+2,4).Range.Text:=floattostr(ProdTov.PRprice);

Tabl.Cell(i+2,5).Range.Text:=floattostr(ProdTov.PRprice*ProdTov.Pcount);

sum:=sum+ProdTov.PRprice*ProdTov.Pcount;

if i<>n-1 then

Tabl.Rows.Add;

end;

FindAndInsert('###сумма&',FloatToStr(sum)+' руб.');

DataShop.ListProdazhaOtchet.Expression:='Prodazha.allInstances';

Doc.SaveAs(FileName+'.doc',1);

W.visible:=true;

end; //if

end;

//Создание накладной заказа

procedure NakladnayaZakaz(FileName: string; zak: integer);

var Doc, Tabl: variant;

i,n: integer;

sum: real;

begin

if FileExists(ExtractFileDir(Application.ExeName)+'\Накладная заявки.dot') then

begin

W:=CreateOleObject('Word.Application');

W.Documents.Add(ExtractFileDir(Application.ExeName)+'\Накладная заявки.dot');

Doc:=W.ActiveDocument;

TekShop:=DataShop.ListShop.ObjectList.Elements[0] as TShop;

FindAndInsert('###номер магазина&',TekShop.Shnumber);

FindAndInsert('###название магазина&',TekShop.Shname);

FindAndInsert('###адрес магазина&',TekShop.ShAddress);

FindAndInsert('###инн&',TekShop.ShINN);

FindAndInsert('###телефон&',TekShop.ShPhone);

FindAndInsert('###мыло&',TekShop.ShMail);

DataShop.ListZakupkaOtchet.Expression:='Zakaz.allInstances->select(znumber='+inttostr(zak)+')';

TekZTov:=DataShop.ListZakupkaOtchet.ObjectList.Elements[0] as TZakaz;

FindAndInsert('###номер заказа&',inttostr(Zak));

FindAndInsert('###дата заказа&',DateToStr(TekZTov.Zdate));

i:=Doc.Tables.Count;

Tabl:=Doc.Tables.Item(i);

n:=DataShop.ListZakupkaOtchet.Count;

sum:=0;

for i:=0 to n-1 do

begin

TekZTov:=DataShop.ListZakupkaOtchet.ObjectList.Elements[i] as TZakaz;

Tabl.Cell(i+2,1).Range.Text:=inttostr(i+1);

Tabl.Cell(i+2,2).Range.Text:=TekZTov.Zname;

Tabl.Cell(i+2,2).Range.ParagraphFormat.Alignment:=0;

Tabl.Cell(i+2,3).Range.Text:=inttostr(TekZTov.Zcount);

Tabl.Cell(i+2,4).Range.Text:=floattostr(TekZTov.Zprice);

Tabl.Cell(i+2,5).Range.Text:=floattostr(TekZTov.Zprice*TekZTov.Zcount);

sum:=sum+TekZTov.Zprice*TekZTov.Zcount;

if i<>n-1 then

Tabl.Rows.Add;

end;

FindAndInsert('###сумма&',FloatToStr(sum)+' руб.');

DataShop.ListZakupkaOtchet.Expression:='Zakaz.allInstances';

Doc.SaveAs(FileName+'.doc',1);

W.visible:=true;

end; //if

end;

//*****************************************************************************

//*****************************************************************************

//*****************************************************************************

//Закрытие формы

procedure TMainform.N2Click(Sender: TObject);

begin

Mainform.Close;

end;

//Активизация формы

procedure TMainform.FormActivate(Sender: TObject);

begin

PageControl1.Width:=Mainform.Width-8;

PageControl1.Height:=Mainform.Height-167;

PageControl1.Top:=96;

PageControl1.Left:=0;

DirApplication:=ExtractFileDir(Application.ExeName)+'\shop.xml';

Application.HelpFile:=ExtractFileDir(Application.ExeName)+'\help\help.hlp';

DataShop.BoldPersistenceHandleFileXMLShop.FileName:=DirApplication;

DataShop.BoldSystemHandleShop.Active:=true;

DateTimePicker2.Date:=now;

DateTimePicker4.Date:=now;

DateTimePicker6.Date:=now;

StatusBar1.Panels[1].Text:='Сегодня: '+DateTimeToStr(now);

StatusBar1.Panels[2].Text:='© ALEXX "Магазин бытовой техники" 2009';

end;

//Изменение размера

procedure TMainform.FormCanResize(Sender: TObject; var NewWidth,

NewHeight: Integer; var Resize: Boolean);

begin

PageControl1.Width:=Mainform.Width-8;

PageControl1.Height:=Mainform.Height-167;

end;

//При закрытии формы

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

begin

if SpeedButton45.Enabled then

OtmenaProdazhi;

if SpeedButton35.Enabled then

OtmenaZakaza;

DataShop.BoldPersistenceHandleFileXMLShop.FileName:=DirApplication;

DataShop.BoldSystemHandleShop.UpdateDatabase;

registr.Close;

main_sc.Close;

Vremya.Enabled:=false;

Application.Terminate;

end;

procedure TMainform.N9Click(Sender: TObject);

begin

TabSheet2.TabVisible:=true;

TabSheet2.PageIndex:=0;

PageControl1.ActivePage:=TabSheet2;

SpeedButton8.Enabled:=true;

SpeedButton9.Enabled:=false;

SpeedButton10.Enabled:=false;

end;

//Вызов формы смены пароля

procedure TMainform.N10Click(Sender: TObject);

begin

ChangePass.ShowModal;

end;

procedure TMainform.SpeedButton2Click(Sender: TObject);

begin

TabSheet2.TabVisible:=false;

SpeedButton10Click(nil);

SpeedButton13Click(nil);

SpeedButton7Click(nil);

SpeedButton28Click(nil);

end;

procedure TMainform.BoldGrid1DblClick(Sender: TObject);

begin

BoldEdit1.Enabled:=true;

BoldEdit2.Enabled:=true;

BoldEdit3.Enabled:=true;

BoldEdit5.Enabled:=true;

SpeedButton11.Enabled:=false;

SpeedButton12.Enabled:=true;

SpeedButton13.Enabled:=true;

BoldComboBox1.Enabled:=true;

end;

procedure TMainform.BoldGrid1SelectCell(Sender: TObject; ACol,

ARow: Integer; var CanSelect: Boolean);

begin

SpeedButton13Click(Mainform);

end;

procedure TMainform.SpeedButton8Click(Sender: TObject);

begin

BoldEdit10.Enabled:=true;

BoldEdit11.Enabled:=true;

BoldEdit12.Enabled:=true;

BoldEdit13.Enabled:=true;

BoldEdit14.Enabled:=true;

BoldEdit15.Enabled:=true;

BoldMemo2.Enabled:=true;;

SpeedButton9.Enabled:=true;

SpeedButton10.Enabled:=true;

SpeedButton8.Enabled:=false;

end;

//Возврат в исходное состояние

procedure TMainform.SpeedButton9Click(Sender: TObject);

begin

if (messagedlg('Подтвердите сохранение изменений!',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

TBoldQueueable.ApplyAll;

SpeedButton8.Enabled:=true;

SpeedButton9.Enabled:=false;

SpeedButton10.Enabled:=false;

BoldEdit10.Enabled:=false;

BoldEdit11.Enabled:=false;

BoldEdit12.Enabled:=false;

BoldEdit13.Enabled:=false;

BoldEdit14.Enabled:=false;

BoldEdit15.Enabled:=false;

BoldMemo2.Enabled:=false;;

end;

//Возврат в исходное состояние

procedure TMainform.SpeedButton10Click(Sender: TObject);

begin

SpeedButton8.Enabled:=true;

SpeedButton9.Enabled:=false;

SpeedButton10.Enabled:=false;

BoldEdit10.Enabled:=false;

BoldEdit11.Enabled:=false;

BoldEdit12.Enabled:=false;

BoldEdit13.Enabled:=false;

BoldEdit14.Enabled:=false;

BoldEdit15.Enabled:=false;

BoldMemo2.Enabled:=false;;

end;

//Возврат в исходное состояние

procedure TMainform.SpeedButton12Click(Sender: TObject);

begin

if (messagedlg('Подтвердите сохранение изменений!',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

TBoldQueueable.ApplyAll;

SpeedButton11.Enabled:=true;

SpeedButton12.Enabled:=false;

SpeedButton13.Enabled:=false;

BoldEdit1.Enabled:=false;

BoldEdit2.Enabled:=false;

BoldEdit3.Enabled:=false;

BoldEdit5.Enabled:=false;

BoldComboBox1.Enabled:=false;

end;

//Возврат в исходное состояние

procedure TMainform.SpeedButton13Click(Sender: TObject);

begin

SpeedButton11.Enabled:=true;

SpeedButton12.Enabled:=false;

SpeedButton13.Enabled:=false;

BoldEdit1.Enabled:=false;

BoldEdit2.Enabled:=false;

BoldEdit3.Enabled:=false;

BoldEdit5.Enabled:=false;

BoldComboBox1.Enabled:=false;

end;

//Возврат в исходное состояние

procedure TMainform.SpeedButton5Click(Sender: TObject);

begin

BoldEdit4.Enabled:=true;

SpeedButton6.Enabled:=true;

SpeedButton7.Enabled:=true;

SpeedButton3.Enabled:=false;

SpeedButton4.Enabled:=false;

SpeedButton5.Enabled:=false;

end;

//Возврат в исходное состояние

procedure TMainform.SpeedButton6Click(Sender: TObject);

begin

if (messagedlg('Подтвердите сохранение изменений!',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

TBoldQueueable.ApplyAll;

SpeedButton6.Enabled:=false;

SpeedButton7.Enabled:=false;

SpeedButton3.Enabled:=true;

SpeedButton4.Enabled:=true;

SpeedButton5.Enabled:=true;

BoldEdit4.Enabled:=false;

end;

//Возврат в исходное состояние

procedure TMainform.SpeedButton7Click(Sender: TObject);

begin

SpeedButton6.Enabled:=false;

SpeedButton7.Enabled:=false;

SpeedButton3.Enabled:=true;

SpeedButton4.Enabled:=true;

SpeedButton5.Enabled:=true;

BoldEdit4.Enabled:=false;

end;

procedure TMainform.BoldGrid2SelectCell(Sender: TObject; ACol,

ARow: Integer; var CanSelect: Boolean);

begin

SpeedButton7Click(Mainform);

end;

//Удаление отдела

procedure TMainform.SpeedButton4Click(Sender: TObject);

var i:integer;

begin

i:= DataShop.ListOtdels.CurrentIndex;

if i<>-1 then

begin

tekOtdel:=DataShop.ListOtdels.ObjectList.Elements[i] as TOtdel;

if (messagedlg('Подтвердите удаление отдела "'+tekOtdel.Oname+'"'+

#13+'Вместе с отделом будет удален администратор и все группы товара!',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

tekOtdel.Delete;

end;

end;

procedure TMainform.SpeedButton3Click(Sender: TObject);

begin

TabSheet3.TabVisible:=true;

TabSheet2.PageIndex:=0;

PageControl1.ActivePage:=TabSheet2;

TabSheet3.Show;

end;

procedure TMainform.Edit4KeyPress(Sender: TObject; var Key: Char);

begin

if not(key in ['A'..'я','0'..'9',#8,' ']) then

key:=#0;

if (key=#8)and (Length(Edit4.Text)<=1) then

begin

SpeedButton14.Enabled:=false;

SpeedButton15.Enabled:=false;

Edit5.Enabled:=false;

Edit6.Enabled:=false;

Edit7.Enabled:=false;

MaskEdit1.Enabled:=false;

end;

if (key in ['A'..'я','0'..'9']) then

begin

SpeedButton14.Enabled:=true;

SpeedButton15.Enabled:=true;

Edit5.Enabled:=true;

Edit6.Enabled:=true;

Edit7.Enabled:=true;

MaskEdit1.Enabled:=true;

end;

end;

procedure TMainform.SpeedButton15Click(Sender: TObject);

begin

SpeedButton14.Enabled:=false;

SpeedButton15.Enabled:=false;

Edit5.Enabled:=false;

Edit6.Enabled:=false;

Edit7.Enabled:=false;

MaskEdit1.Enabled:=false;

Edit4.Clear;

Edit5.Clear;

Edit6.Clear;

Edit7.Clear;

MaskEdit1.Clear;

end;

//Создание нового отдела

procedure TMainform.SpeedButton14Click(Sender: TObject);

var NewOtdel, ExOtdel: TOtdel;

i: integer;

dr: TDate;

ExAdmin, NewAdmin: TAdmin;

botdelexist, badminexsist, flag: Boolean;

begin

if (Edit5.Text<>'')and(Edit6.Text<>'')and(Edit7.Text<>'')and(MaskEdit1.Text<>' . . ') then

begin

botdelexist:=false;

badminexsist:=false;

flag:=False;

for i:=0 to DataShop.ListOtdels.Count-1 do

begin

ExOtdel:=DataShop.ListOtdels.ObjectList.Elements[i] as TOtdel;

if ExOtdel.Oname=Edit4.Text then

botdelexist:=true

end;

if not botdelexist then

begin

for i:=0 to DataShop.ListAdmin.Count-1 do

begin

ExAdmin:=DataShop.ListAdmin.ObjectList.Elements[i] as TAdmin;

if (ExAdmin.Afam=Edit5.Text)and(ExAdmin.Aname=Edit6.Text)and

(ExAdmin.Asname=Edit7.Text)and(ExAdmin.Adr=StrToDate(MaskEdit1.Text)) then

badminexsist:=true;

end;

if not(badminexsist) then

begin

if (messagedlg('Подтвердите добавление отдела "'+Edit4.Text+'"',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

begin

try

dr:=StrToDate(MaskEdit1.Text);

Except

MessageDlg('Неверно введена дата рождения!'+#13+'Попробуйте еще раз!',mtError,[mbOK],0);

MaskEdit1.Clear;

flag:=true;

end;

if not(flag) then

begin

NewOtdel:=TOtdel.Create(nil);

NewOtdel.Oname:=Edit4.Text;

NewAdmin:=TAdmin.Create(nil);

NewAdmin.Afam:=Edit5.Text;

NewAdmin.Aname:=Edit6.Text;

NewAdmin.Asname:=Edit7.Text;

NewAdmin.Adr:=dr;

NewAdmin.Zaveduet:=NewOtdel;

NewOtdel.Prinadlezhit:=DataShop.BoldSystemHandleShop.System.ClassByExpressionName['Shop'].BoldObjects[0] as TShop;

DataShop.ListOtdels.Last;

SpeedButton15Click(Mainform);

end;

end;

end

else

ShowMessage('Администратор с такими данными уже существует!');

end

else

ShowMessage('Отдел '+Edit4.Text+ ' уже существует!');

end;

end;

procedure TMainform.Edit5KeyPress(Sender: TObject; var Key: Char);

begin

if not(key in ['A'..'я',#8]) then

key:=#0;

end;

procedure TMainform.MaskEdit1KeyPress(Sender: TObject; var Key: Char);

begin

if not(key in ['0'..'9',#8]) then

key:=#0;

end;

procedure TMainform.SpeedButton17Click(Sender: TObject);

begin

TabSheet3.TabVisible:=false;

SpeedButton15Click(nil);

SpeedButton19Click(nil);

end;

procedure TMainform.Edit8KeyPress(Sender: TObject; var Key: Char);

begin

if not(key in ['A'..'я','0'..'9',#8,' ']) then

key:=#0;

if (key=#8)and (Length(Edit8.Text)<=1) then

begin

SpeedButton18.Enabled:=false;

SpeedButton19.Enabled:=false;

BoldComboBox3.Enabled:=false;

end;

if (key in ['A'..'я','0'..'9']) then

begin

SpeedButton18.Enabled:=true;

SpeedButton19.Enabled:=true;

BoldComboBox3.Enabled:=true;

end;

end;

//Удаление группы

procedure TMainform.SpeedButton20Click(Sender: TObject);

var i,j:integer;

begin

i:= DataShop.ListOtdelGroups.CurrentIndex;

j:= DataShop.ListOtdels.CurrentIndex;

if (i<>-1)and(j<>-1) then

begin

TekGroup:=DataShop.ListOtdelGroups.ObjectList.Elements[i] as TGroup;

TekOtdel:=DataShop.ListOtdels.ObjectList.Elements[j] as TOtdel;

if (messagedlg('Подтвердите удаление группы "'+TekGroup.Gname+'" '+'из отдела "'+tekOtdel.Oname+'"!'+

#13+'Вместе с отделом будут удалены все товары данного отдела!',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

TekGroup.Delete;

end;

end;

procedure TMainform.SpeedButton19Click(Sender: TObject);

begin

Edit8.Clear;

SpeedButton18.Enabled:=false;

SpeedButton19.Enabled:=false;

end;

//Создание новой группы

procedure TMainform.SpeedButton18Click(Sender: TObject);

var NewGroup, ExGropup: TGroup;

i: integer;

Bgroupexsist: Boolean;

begin

Bgroupexsist:=false;

TekOtdel:=DataShop.ListOtdels.ObjectList.Elements[DataShop.ListOtdels.CurrentIndex] as TOtdel;

for i:=0 to DataShop.ListGroups.Count-1 do

begin

ExGropup:=DataShop.ListGroups.ObjectList.Elements[i] as TGroup;

if Edit8.Text=ExGropup.Gname then

Bgroupexsist:=true;

end;

if not(Bgroupexsist) then

begin

if (messagedlg('Подтвердите добавление группы "'+Edit8.Text+'" в отдел '+TekOtdel.Oname,mtConfirmation,[mbYes,mbNo],0)=mrYes) then

begin

NewGroup:=TGroup.Create(nil);

NewGroup.Gname:=Edit8.Text;

NewGroup.Prinadlezhit:=TekOtdel;

NewGroup.Zakupaetsya:=DataShop.ListBases.ObjectList.Elements[DataShop.ListBases.CurrentIndex] as TBase;

Edit8.Clear;

SpeedButton18.Enabled:=false;

SpeedButton19.Enabled:=false;

end;

end

else

begin

ShowMessage('Группа с таким названием уже существует!'+#13+

'Введите другое название группы!');

Edit8.Clear;

end;

end;

procedure TMainform.TabSheet3Hide(Sender: TObject);

begin

SpeedButton15Click(Mainform);

Edit8.Clear;

end;

procedure TMainform.SpeedButton21Click(Sender: TObject);

begin

SpeedButton21.Enabled:=false;

SpeedButton22.Enabled:=true;

SpeedButton23.Enabled:=true;

SpeedButton20.Enabled:=false;

BoldEdit8.Enabled:=true;

end;

procedure TMainform.SpeedButton22Click(Sender: TObject);

begin

if (messagedlg('Подтвердите сохранение изменений!',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

TBoldQueueable.ApplyAll;

SpeedButton23Click(Mainform);

end;

procedure TMainform.SpeedButton23Click(Sender: TObject);

begin

SpeedButton23.Enabled:=false;

SpeedButton22.Enabled:=false;

SpeedButton20.Enabled:=true;

SpeedButton21.Enabled:=true;

BoldEdit8.Enabled:=false;

end;

procedure TMainform.SpeedButton26Click(Sender: TObject);

begin

BoldEdit9.Enabled:=true;

BoldMemo1.Enabled:=true;

SpeedButton24.Enabled:=false;

SpeedButton25.Enabled:=false;

SpeedButton26.Enabled:=false;

SpeedButton27.Enabled:=true;

SpeedButton28.Enabled:=true;

end;

procedure TMainform.SpeedButton28Click(Sender: TObject);

begin

BoldEdit9.Enabled:=false;

BoldMemo1.Enabled:=false;

SpeedButton24.Enabled:=true;

SpeedButton25.Enabled:=true;

SpeedButton26.Enabled:=true;

SpeedButton27.Enabled:=false;

SpeedButton28.Enabled:=false;

end;

procedure TMainform.SpeedButton27Click(Sender: TObject);

begin

if (messagedlg('Подтвердите сохранение изменений!',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

TBoldQueueable.ApplyAll;

SpeedButton28Click(Mainform);

end;

procedure TMainform.SpeedButton24Click(Sender: TObject);

begin

AddBase.Showmodal;

end;

//Удаление товарной базы

procedure TMainform.SpeedButton25Click(Sender: TObject);

var i: integer;

begin

i:=DataShop.ListBases.CurrentIndex;

if i<>-1 then

begin

TekBase:=DataShop.ListBases.ObjectList.Elements[i] as TBase;

if (messagedlg('Подтвердите удаление товарной базы "'+TekBase.Bname+'"'+

#13+'Вместе с базой будут удалены все товары, хранящиеся на ней!',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

TekBase.Delete;

end;

end;

procedure TMainform.N11Click(Sender: TObject);

begin

TabSheet1.TabVisible:=true;

PageControl1.ActivePage:=TabSheet1;

end;

//Добавление нового товара

procedure TMainform.SpeedButton29Click(Sender: TObject);

var i, j: integer;

flag: Boolean;

ExTov, NewTov: TTov_base;

Price: real;

begin

if (Edit9.Text<>'')and(Edit10.Text<>'') then

begin

i:=DataShop.ListBases.CurrentIndex;

j:=DataShop.ListBaseGroup.CurrentIndex;

TekBase:=DataShop.ListBases.ObjectList.Elements[i] as TBase;

TekGroup:=DataShop.ListBaseGroup.ObjectList.Elements[j] as TGroup;

flag:=false;

if not(FindTovarBase(Edit9.Text)) then

begin

if (messagedlg('Подтвердите добавление товара "'+Edit9.Text+'" в группу "'+TekGroup.Gname+'" '+

'базы "'+TekBase.Bname+'"',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

begin

try

Price:=StrToFloat(Edit10.Text);

Except

flag:=true;

ShowMessage('Неверно указана цена!'+#13+'Проверьте правильность ввода!');

Edit10.Clear;

end;

if not flag then

begin

NewTovar(Edit9.Text, Price, SpinEdit1.Value, SpinEdit2.Value,

false, 0, TekBase, TekGroup, NewTov);

SpeedButton30Click(nil);

end;

end;

end

else

begin

ShowMessage('Данный товар уже существует!'+#13+

'Введите другое название товара!');

Edit8.Clear;

end;

end

else

ShowMessage('Введены не все данные!');

end;

procedure TMainform.Edit10KeyPress(Sender: TObject; var Key: Char);

begin

if not(key in ['0'..'9',#8,',']) then

key:=#0;

end;

procedure TMainform.SpeedButton30Click(Sender: TObject);

begin

Edit9.Clear;

Edit10.Clear;

SpinEdit1.Value:=0;

SpinEdit2.Value:=1;

SpeedButton29.Enabled:=false;

SpeedButton30.Enabled:=false;

SpeedButton31.Enabled:=true;

SpeedButton32.Enabled:=true;

end;

procedure TMainform.Edit9KeyPress(Sender: TObject; var Key: Char);

begin

if (key=#8)and (Length(Edit9.Text)<=1) then

begin

SpeedButton29.Enabled:=false;

SpeedButton30.Enabled:=false;

SpeedButton31.Enabled:=true;

SpeedButton32.Enabled:=true;

end

else

begin

SpeedButton29.Enabled:=true;

SpeedButton30.Enabled:=true;

SpeedButton31.Enabled:=false;

SpeedButton32.Enabled:=false;

end

end;

//Удаление товара

procedure TMainform.SpeedButton31Click(Sender: TObject);

var i: integer;

begin

i:=DataShop.ListBaseGroupTovar.CurrentIndex;

if i<>-1 then

begin

TekBTov:=DataShop.ListBaseGroupTovar.ObjectList.Elements[i] as TTov_base;

if (messagedlg('Подтвердите удаление товара "'+TekBTov.Tname+'"',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

TekBTov.Delete;

end;

end;

procedure TMainform.SpeedButton32Click(Sender: TObject);

begin

EditTovBase.showmodal;

end;

procedure TMainform.N14Click(Sender: TObject);

begin

TabSheet6.TabVisible:=true;

PageControl1.ActivePage:=TabSheet6;

end;

//Пометка на заказ товара

procedure TMainform.BoldAsStringRenderer1SetColor(Element: TBoldElement;

var AColor: TColor; Representation: Integer; Expression: String);

var st: string;

begin

st:=Element.EvaluateExpressionAsString('zakazCount.asString',1);

if st<>'0' then AColor:=$77FFFF{clLime};

end;

//Заказ товара

procedure TMainform.BoldSortingGrid4DblClick(Sender: TObject);

begin

TekBTov:=DataShop.ListBaseGroupTovar.ObjectList.Elements[DataShop.ListBaseGroupTovar.CurrentIndex] as TTov_base;

if TekBTov.TBcount>0 then

if TekBTov.TBcount<>1 then

ZakazForm.ShowModal

else

begin

if (messagedlg('Заказать товар "'+TekBTov.Tname+'"'+#13+

'в количестве 1 единицы?',mtConfirmation,[mbYes,mbNo],0)=mrYes) then

begin

TekBTov.ZakazCount:=1;

SpeedButton35.Enabled:=true;

FlagZakaz:=true;

BoldSortingGrid4.Repaint;

end;

end

else

MessageDlg('Невозможно заказать товар с нулевым остатком!',mtError,[mbOK],0);

end;

//Отмена заказа

procedure TMainform.SpeedButton34Click(Sender: TObject);

begin

if MessageDlg('Отменить заказ товара?',mtInformation,[mbYes, mbNo],0)=mrYes then

OtmenaZakaza;

end;

procedure TMainform.SpeedButton34MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Отменить заказ товара';

end;

procedure Tmainform.Clear_status;

begin

StatusBar1.Panels[0].Text:='';

end;

procedure TMainform.TabSheet7MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

begin

Clear_status;

end;

procedure TMainform.SpeedButton36MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Пометить товар на заказ';

end;

procedure TMainform.SpeedButton35MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Заказать в магазин выбранный товар';

end;

//Заказ товара

procedure TMainform.SpeedButton35Click(Sender: TObject);

var i,j,n,step, t_index, zak, number,gr: integer;

NewMTovar: TTov_mag;

begin

n:=DataShop.ListBaseTovar.Count-1;

j:=0;

for i:=0 to n do

begin

TekBTov:=DataShop.ListBaseTovar.ObjectList.Elements[i] as TTov_base;

if TekBTov.ZakazCount>0 then

inc(j);

end;

step:=ProgressBar1.Max div j;

DataShop.ListZakupkaOtchet.Last;

i:=DataShop.ListZakupkaOtchet.CurrentIndex;

if i<>-1 then

begin

TekZTov:=DataShop.ListZakupkaOtchet.ObjectList.Elements[i] as TZakaz;

number:=TekZTov.Znumber;

end;

if i<>-1 then

zak:=number+1

else

zak:=1;

for i:=0 to n do

begin

TekBTov:=DataShop.ListBaseTovar.ObjectList.Elements[i] as TTov_base;

if TekBTov.ZakazCount>0 then

begin

NewZTov:=TZakaz.Create(nil);

NewZTov.Znumber:=zak;

NewZTov.Zdate:=Now;

NewZTov.Zname:=TekBTov.Tname;

NewZTov.Zprice:=TekBTov.Tprice;

NewZTov.Zcount:=TekBTov.ZakazCount;

TekGroup:=TekBTov.BPrinadlezhit;

if FindTovarShop(NewZTov.Zname,TekGroup.gname,t_index) then

begin

TekMTov:=DataShop.ListTovar.ObjectList.Elements[t_index] as TTov_mag;

TekMTov.TMcount:=TekMTov.TMcount+NewZTov.Zcount;

end

else

begin

NewMagTovar(TekBTov.Tname,TekBTov.Tprice,TekBTov.Tgarant,TekBTov.ZakazCount,TekBTov.BPrinadlezhit,NewMTovar);

end;

TekBTov.TBcount:=TekBTov.TBcount-TekBTov.ZakazCount;

TekBTov.ZakazCount:=0;

BoldSortingGrid4.Repaint;

if i<>j then

ProgressBar1.Position:=ProgressBar1.Position+step

else

ProgressBar1.Position:=ProgressBar1.Max;

end;

end;

if ProgressBar1.Position=ProgressBar1.Max then

begin

MessageDlg('Заказ товара успешно завершен!',mtInformation,[mbOK],0);

if MessageDlg('Создать накладную заказа?',mtInformation,[mbYes, mbNo],0)=mrYes then

if SaveWord.Execute then

begin

DataShop.BoldSystemHandleShop.UpdateDatabase;

DataShop.BoldSystemHandleShop.Active:=false;

DataShop.BoldPersistenceHandleFileXMLShop.FileName:=DirApplication;

DataShop.BoldSystemHandleShop.Active:=true;

if not FileExists(SaveWord.FileName) then

begin

NakladnayaZakaz(SaveWord.FileName,zak);

end

else

MessageDlg('Файл с таким именем уже существует!'+#13+'Введите другое имя файла!',mtError,[mbOK],0);

end;

end

else

MessageDlg('При заказе товара произошла ошибка!',mtError,[mbOK],0);

ProgressBar1.Position:=ProgressBar1.Min;

SpeedButton35.Enabled:=false;

FlagZakaz:=false;

end;

procedure TMainform.SpeedButton37MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Найти товар';

end;

procedure TMainform.SpeedButton37Click(Sender: TObject);

var p: integer;

begin

if Edit11.Text<>'' then

if PoiskTovarBase(Edit11.Text,False,p) then

DataShop.ListBaseGroupTovar.CurrentIndex:=p

else

if (MessageDlg('Просмотр данных завершен! Повторить поиск сначала?',mtInformation,[mbYes,mbNo],0)=mrYes) then

if PoiskTovarBase(Edit11.Text,true,p) then

DataShop.ListBaseGroupTovar.CurrentIndex:=p;

end;

procedure TMainform.SpeedButton38MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Закрыть окно';

end;

procedure TMainform.SpeedButton38Click(Sender: TObject);

begin

if SpeedButton35.Enabled then

begin

if (MessageDlg('Заказанный товар не проведен. Если закрыть окно, заказ пропадет'+#13+

'Хотите закрыть окно?',mtInformation,[mbYes,mbNo],0)=mrYes) then

begin

SpeedButton34Click(nil);

Edit11.Clear;

SpeedButton35.Enabled:=false;

SpeedButton34.Enabled:=true;

SpeedButton36.Enabled:=true;

TabSheet7.TabVisible:=False;

CheckBox3.Checked:=false;

DataShop.ListBaseGroupTovar.Expression:='bHranit';

end;

end

else

begin

Edit11.Clear;

SpeedButton35.Enabled:=false;

SpeedButton34.Enabled:=true;

SpeedButton36.Enabled:=true;

TabSheet7.TabVisible:=False;

CheckBox3.Checked:=false;

DataShop.ListBaseGroupTovar.Expression:='bHranit';

end;

end;

procedure TMainform.FormCreate(Sender: TObject);

begin

FlagZakaz:=false;

end;

procedure TMainform.SpeedButton39Click(Sender: TObject);

var p: integer;

begin

if Edit12.Text<>'' then

if PoiskTovarShop(Edit12.Text,False,p) then

DataShop.ListTovar.CurrentIndex:=p

else

if (MessageDlg('Просмотр данных завершен! Повторить поиск сначала?',mtInformation,[mbYes,mbNo],0)=mrYes) then

if PoiskTovarShop(Edit12.Text,true,p) then

DataShop.ListTovar.CurrentIndex:=p;

end;

procedure TMainform.SpeedButton40Click(Sender: TObject);

var p: integer;

begin

if Edit13.Text<>'' then

if PoiskTovarShopGroup(Edit13.Text,False,p) then

DataShop.ListOtdelsGroupTovar.CurrentIndex:=p

else

if (MessageDlg('Просмотр данных завершен! Повторить поиск сначала?',mtInformation,[mbYes,mbNo],0)=mrYes) then

if PoiskTovarShopGroup(Edit13.Text,true,p) then

DataShop.ListOtdelsGroupTovar.CurrentIndex:=p;

end;

procedure TMainform.SpeedButton16MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Закрыть окно';

end;

procedure TMainform.SpeedButton41Click(Sender: TObject);

var s: string;

flag: boolean;

begin

flag:=true;

S:='';

TekMTov:=DataShop.ListOtdelsGroupTovar.ObjectList.Elements[DataShop.ListOtdelsGroupTovar.CurrentIndex] as TTov_mag;

if MessageDlg('Продать товар "'+TekMTov.Tname+'"',mtInformation,[mbYes, mbNo],0)=mrYes then

while flag do

begin

s:=InputBox('Продажа товара','Укажите количество продаваемого товара "'+

TekMTov.Tname+'" с ценой реализации:'+floattostr(TekMTov.TMprice)+

#13+'Количество товара в магазине: '+inttostr(TekMTov.TMcount)+' (ед.)','0');

if s<>'' then

begin

try

Kol:=StrToInt(s);

except

ShowMessage('Неверно указано количество продаваемого товара!'+#13+'Повторите ввод количества товара!');

end;

if ((kol>0)and(kol<=TekMTov.TMcount))or(kol=0) then

flag:=false

else

ShowMessage('Количество товара должно быть больше нуля, но не больше общего количества!'+#13+

'Повторите ввод цены реализации');

end

else

ShowMessage('Укажите количество продаваемого товара (ед.)!');

end; // while

if kol<>0 then

begin

TekMTov.Prodcount:=TekMTov.Prodcount+kol;

BoldSortingGrid1.Repaint;

SpeedButton45.Enabled:=true;

end;

end;

procedure TMainform.SpeedButton42Click(Sender: TObject);

var flag: boolean;

s: String;

pricereal: real;

begin

flag:=true;

S:='';

TekMTov:=DataShop.ListOtdelsGroupTovar.ObjectList.Elements[DataShop.ListOtdelsGroupTovar.CurrentIndex] as TTov_mag;

if MessageDlg('Редактировать цену реализации товара "'+TekMTov.Tname+'"',mtInformation,[mbYes, mbNo],0)=mrYes then

begin

while flag do

begin

s:=InputBox('Редактирование цены реализации','Укажите цену реализации (руб. за ед.) товара "'+

TekMTov.Tname+'" с закупочной ценой:'+floattostr(TekMTov.Tprice),floattostr(TekMTov.Tprice));

if s<>'' then

begin

try

pricereal:=StrToFloat(s);

except

ShowMessage('Неверно указана цена реализации товара!'+#13+'Повторите ввод цены!');

end;

if (pricereal>=TekMTov.Tprice)or(pricereal=0) then

flag:=false

else

ShowMessage('Цена реализации товара должна быть выше закупочной!'+#13+

'Повторите ввод цены реализации');

end

else

ShowMessage('Укажите цену реализации товара (руб. за ед.)!');

end; // while

if pricereal<>0 then

TekMTov.TMprice:=pricereal;

end;

end;

procedure TMainform.SpeedButton42MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton42.Hint;

end;

procedure TMainform.SpeedButton41MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton41.Hint;

end;

procedure TMainform.RenderProdazhaSetColor(Element: TBoldElement;

var AColor: TColor; Representation: Integer; Expression: String);

var st: string;

begin

st:=Element.EvaluateExpressionAsString('prodcount.asString',1);

if st<>'0' then AColor:=$77FFFF{clLime};

end;

procedure TMainform.SpeedButton44MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton44.Hint;

end;

procedure TMainform.SpeedButton44Click(Sender: TObject);

begin

if MessageDlg('Отменить продажу товара?',mtInformation,[mbYes, mbNo],0)=mrYes then

OtmenaProdazhi;

end;

procedure TMainform.SpeedButton45MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton45.Hint;

end;

//Провод продажи

procedure TMainform.SpeedButton45Click(Sender: TObject);

var i, j, n, step, prod, number: integer;

begin

if MessageDlg('Провести продажу помеченного товара?',mtInformation,[mbYes, mbNo],0)=mrYes then

begin

n:=DataShop.ListTovar.Count-1;

j:=0;

for i:=0 to n do

begin

TekMTov:=DataShop.ListTovar.ObjectList.Elements[i] as TTov_mag;

if TekMTov.Prodcount>0 then

inc(j);

end;

step:=ProgressBar2.Max div j;

DataShop.ListProdazhaOtchet.Last;

i:=DataShop.ListProdazhaOtchet.CurrentIndex;

if i<>-1 then

begin

ProdTov:=DataShop.ListProdazhaOtchet.ObjectList.Elements[i] as TProdazha;

number:=ProdTov.Pnumber;

end;

if i<>-1 then

prod:=number+1

else

prod:=1;

for i:=0 to n do

begin

TekMTov:=DataShop.ListTovar.ObjectList.Elements[i] as TTov_mag;

if TekMTov.Prodcount>0 then

begin

NewProdazha(prod, TekMTov.Tname, TekMTov.Prodcount, TekMTov.Tprice, TekMTov.TMprice, ProdTov);

TekMTov.TMcount:=TekMTov.TMcount-kol;

TekMTov.Prodcount:=0;

BoldSortingGrid1.Repaint;

if i<>j then

ProgressBar2.Position:=ProgressBar2.Position+step

else

ProgressBar2.Position:=ProgressBar2.Max;

end;

end;

if MessageDlg('Создать накладную продажи?',mtInformation,[mbYes, mbNo],0)=mrYes then

if SaveWord.Execute then

begin

DataShop.BoldSystemHandleShop.UpdateDatabase;

DataShop.BoldSystemHandleShop.Active:=false;

DataShop.BoldPersistenceHandleFileXMLShop.FileName:=DirApplication;

DataShop.BoldSystemHandleShop.Active:=true;

if not FileExists(SaveWord.FileName) then

begin

NakladnayaProdazha(SaveWord.FileName,prod);

end

else

MessageDlg('Файл с таким именем уже существует!'+#13+'Введите другое имя файла!',mtError,[mbOK],0);

end;

if ProgressBar2.Position=ProgressBar2.Max then

MessageDlg('Продажа товара прошла успешно!',mtInformation,[mbOK],0);

ProgressBar2.Position:=ProgressBar2.Min;

SpeedButton45.Enabled:=false;

Kol:=0;

end;

end;

procedure TMainform.SpeedButton16Click(Sender: TObject);

begin

if SpeedButton45.Enabled then

begin

if (MessageDlg('Проданный товар не проведен. Если закрыть окно, продажа пропадет'+#13+

'Хотите закрыть окно?',mtInformation,[mbYes,mbNo],0)=mrYes) then

begin

OtmenaProdazhi;

SpeedButton45.Enabled:=false;

TabSheet1.TabVisible:=False;

CheckBox2.Checked:=false;

DataShop.ListOtdelsGroupTovar.Expression:='soderzhit->select(tMcount<>0)';

end;

end

else

TabSheet1.TabVisible:=False;

CheckBox2.Checked:=false;

DataShop.ListOtdelsGroupTovar.Expression:='soderzhit->select(tMcount<>0)';

end;

procedure TMainform.SpeedButton46Click(Sender: TObject);

begin

if DateTimePicker1.Date<=DateTimePicker2.Date then

rasschet(DateTimePicker1.Date, DateTimePicker2.Date)

else

begin

MessageDlg('Неверно указан диапазон дат!'+#13+'Попробуйте еще раз!',mtError,[mbOK],0);

Label55.Caption:='0';

Label56.Caption:='0';

Label57.Caption:='0';

end;

end;

procedure TMainform.SpeedButton46MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton46.Hint;

end;

procedure TMainform.GroupBox26MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='';

end;

procedure TMainform.SpeedButton47Click(Sender: TObject);

begin

TabSheet8.TabVisible:=false;

Label55.Caption:='0';

Label56.Caption:='0';

Label57.Caption:='0';

end;

procedure TMainform.TabSheet8MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='';

end;

procedure TMainform.SpeedButton49MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton49.Hint;

end;

procedure TMainform.SpeedButton48MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton48.Hint;

end;

procedure TMainform.SpeedButton48Click(Sender: TObject);

var p: integer;

begin

if Edit14.Text<>'' then

if PoiskTovarProd(Edit14.Text,False,p) then

DataShop.ListProdazha.CurrentIndex:=p

else

if (MessageDlg('Просмотр данных завершен! Повторить поиск сначала?',mtInformation,[mbYes,mbNo],0)=mrYes) then

if PoiskTovarProd(Edit14.Text,true,p) then

DataShop.ListProdazha.CurrentIndex:=p;

end;

//Фильтрация по дате

procedure TMainform.SpeedButton49Click(Sender: TObject);

var bdate,edate: TDate;

BYear, BMonth, BDay, EYear, EMonth, EDay: Word;

Bs, Es, BMs, EMs, BDs, EDs: string;

begin

bdate:=trunc(DateTimePicker3.Date);

edate:=trunc(DateTimePicker4.Date);

DecodeDate(bdate,BYear, BMonth, BDay);

DecodeDate(edate,EYear, EMonth, EDay);

if BMonth in [1..9] then

BMs:='0'+inttostr(BMonth)

else

BMs:=inttostr(BMonth);

if EMonth in [1..9] then

EMs:='0'+inttostr(EMonth)

else

EMs:=inttostr(EMonth);

if BDay in [1..9] then

BDs:='0'+inttostr(BDay)

else

BDs:=inttostr(BDay);

if EDay in [1..9] then

EDs:='0'+inttostr(EDay)

else

EDs:=inttostr(EDay);

Bs:='#'+inttostr(BYear)+'-'+BMs+'-'+BDs;

Es:='#'+inttostr(EYear)+'-'+EMs+'-'+EDs;

if bdate<=edate then

DataShop.ListProdazha.Expression:='Prodazha.allInstances->select((pdate>='+Bs+') and (pdate<='+Es+'))';

end;

procedure TMainform.SpeedButton50Click(Sender: TObject);

var p: integer;

begin

if Edit15.Text<>'' then

if PoiskTovarZakaz(Edit15.Text,False,p) then

DataShop.ListZakupka.CurrentIndex:=p

else

if (MessageDlg('Просмотр данных завершен! Повторить поиск сначала?',mtInformation,[mbYes,mbNo],0)=mrYes) then

if PoiskTovarZakaz(Edit15.Text,true,p) then

DataShop.ListZakupka.CurrentIndex:=p;

end;

procedure TMainform.SpeedButton51Click(Sender: TObject);

var bdate,edate: TDate;

BYear, BMonth, BDay, EYear, EMonth, EDay: Word;

Bs, Es, BMs, EMs, BDs, EDs: string;

begin

bdate:=trunc(DateTimePicker5.Date);

edate:=trunc(DateTimePicker6.Date);

DecodeDate(bdate,BYear, BMonth, BDay);

DecodeDate(edate,EYear, EMonth, EDay);

if BMonth in [1..9] then

BMs:='0'+inttostr(BMonth)

else

BMs:=inttostr(BMonth);

if EMonth in [1..9] then

EMs:='0'+inttostr(EMonth)

else

EMs:=inttostr(EMonth);

if BDay in [1..9] then

BDs:='0'+inttostr(BDay)

else

BDs:=inttostr(BDay);

if EDay in [1..9] then

EDs:='0'+inttostr(EDay)

else

EDs:=inttostr(EDay);

Bs:='#'+inttostr(BYear)+'-'+BMs+'-'+BDs;

Es:='#'+inttostr(EYear)+'-'+EMs+'-'+EDs;

if bdate<=edate then

DataShop.ListZakupka.Expression:='Zakaz.allInstances->select((zdate>='+Bs+') and (zdate<='+Es+'))';

end;

procedure TMainform.N7Click(Sender: TObject);

begin

my.ShowModal;

end;

procedure TMainform.SpeedButton52Click(Sender: TObject);

begin

Edit14.Clear;

TabSheet9.TabVisible:=false;

end;

procedure TMainform.SpeedButton53Click(Sender: TObject);

begin

Edit15.Clear;

TabSheet10.TabVisible:=false;

end;

procedure TMainform.SpeedButton54Click(Sender: TObject);

begin

Edit12.Clear;

CheckBox1.Checked:=false;

DataShop.ListTovar.Expression:='Tov_mag.allInstances->select(tMcount<>0)';

TabSheet4.TabVisible:=false;

end;

procedure TMainform.SpeedButton55Click(Sender: TObject);

begin

SpeedButton28Click(nil);

TabSheet5.TabVisible:=false;

end;

procedure TMainform.SpeedButton33Click(Sender: TObject);

begin

SpeedButton30Click(nil);

TabSheet6.TabVisible:=false;

end;

procedure TMainform.SpeedButton29MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton29.Hint;

end;

procedure TMainform.SpeedButton30MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton30.Hint;

end;

procedure TMainform.SpeedButton32MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton32.Hint;

end;

procedure TMainform.SpeedButton31MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton31.Hint;

end;

procedure TMainform.SpeedButton43MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton43.Hint;

end;

procedure TMainform.SpeedButton8MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton8.Hint;

end;

procedure TMainform.SpeedButton9MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton9.Hint;

end;

procedure TMainform.SpeedButton10MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton10.Hint;

end;

procedure TMainform.SpeedButton11MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton11.Hint;

end;

procedure TMainform.SpeedButton12MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton12.Hint;

end;

procedure TMainform.SpeedButton13MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton13.Hint;

end;

procedure TMainform.SpeedButton3MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton3.Hint;

end;

procedure TMainform.SpeedButton4MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton4.Hint;

end;

procedure TMainform.SpeedButton5MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton5.Hint;

end;

procedure TMainform.SpeedButton6MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton6.Hint;

end;

procedure TMainform.SpeedButton7MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton7.Hint;

end;

procedure TMainform.SpeedButton14MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton14.Hint;

end;

procedure TMainform.SpeedButton15MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton15.Hint;

end;

procedure TMainform.SpeedButton21MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton21.Hint;

end;

procedure TMainform.SpeedButton22MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton22.Hint;

end;

procedure TMainform.SpeedButton23MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton23.Hint;

end;

procedure TMainform.SpeedButton20MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton20.Hint;

end;

procedure TMainform.SpeedButton18MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton18.Hint;

end;

procedure TMainform.SpeedButton19MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=SpeedButton19.Hint;

end;

procedure TMainform.CheckBox1Click(Sender: TObject);

begin

if CheckBox1.Checked then

DataShop.ListTovar.Expression:='Tov_mag.allInstances'

else

DataShop.ListTovar.Expression:='Tov_mag.allInstances->select(tMcount<>0)';

end;

procedure TMainform.CheckBox1MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

begin

StatusBar1.Panels[0].Text:=CheckBox1.Hint;

end;

procedure TMainform.CheckBox2Click(Sender: TObject);

begin

if CheckBox2.Checked then

DataShop.ListOtdelsGroupTovar.Expression:='soderzhit'

else

DataShop.ListOtdelsGroupTovar.Expression:='soderzhit->select(tMcount<>0)';

end;

procedure TMainform.CheckBox3Click(Sender: TObject);

begin

if CheckBox3.Checked then

DataShop.ListBaseGroupTovar.Expression:='bHranit'

else

DataShop.ListBaseGroupTovar.Expression:='bHranit->select(tBcount<>0)';

end;

procedure TMainform.N12Click(Sender: TObject);

begin

TabSheet4.TabVisible:=true;

PageControl1.ActivePage:=TabSheet4;

end;

procedure TMainform.N15Click(Sender: TObject);

begin

TabSheet5.TabVisible:=true;

PageControl1.ActivePage:=TabSheet5;

end;

procedure TMainform.N19Click(Sender: TObject);

begin

TabSheet7.TabVisible:=true;

PageControl1.ActivePage:=TabSheet7;

end;

procedure TMainform.N18Click(Sender: TObject);

begin

TabSheet8.TabVisible:=true;

PageControl1.ActivePage:=TabSheet8;

end;

procedure TMainform.N20Click(Sender: TObject);

begin

TabSheet9.TabVisible:=true;

PageControl1.ActivePage:=TabSheet9;

end;

procedure TMainform.N21Click(Sender: TObject);

begin

TabSheet10.TabVisible:=true;

PageControl1.ActivePage:=TabSheet10;

end;

procedure TMainform.ToolButton1MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Просмотр основных сведений о магазине';

end;

procedure TMainform.FormMouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

StatusBar1.Panels[0].Text:='';

end;

procedure TMainform.ToolButton3MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Просмотр статистических данных по магазину';

end;

procedure TMainform.ToolButton4MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Добавление в магазин нового отдела или группы в одел';

end;

procedure TMainform.ToolButton5MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Добавить новую закупочную базу';

end;

procedure TMainform.ToolButton6MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Выполнение различных оперций с товаром (продажа, редактирование...)';

end;

procedure TMainform.ToolButton7MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Посмотреть все остатки товара магазина';

end;

procedure TMainform.ToolButton8MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Добавление товара в закупочные базы';

end;

procedure TMainform.ToolButton9MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Заказ товара в магазин';

end;

procedure TMainform.ToolButton11MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Просмотр всех продаж магазина';

end;

procedure TMainform.ToolButton12MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Просмотр всех закупок магазина';

end;

procedure TMainform.ToolButton14MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Руководство пользователя';

end;

procedure TMainform.SpeedButton43Click(Sender: TObject);

begin

if SaveExcel.Execute then

begin

DataShop.BoldSystemHandleShop.UpdateDatabase;

DataShop.BoldSystemHandleShop.Active:=false;

DataShop.BoldPersistenceHandleFileXMLShop.FileName:=DirApplication;

DataShop.BoldSystemHandleShop.Active:=true;

if not(FileExists(SaveExcel.FileName)) then

ExportOstatki(SaveExcel.FileName)

else

MessageDlg('Файл с таким именем уже существует!'+#13+'Введите другое имя файла!',mtError,[mbOK],0);

end;

end;

procedure TMainform.N24Click(Sender: TObject);

begin

if SaveExcel.Execute then

begin

DataShop.BoldSystemHandleShop.UpdateDatabase;

DataShop.BoldSystemHandleShop.Active:=false;

DataShop.BoldPersistenceHandleFileXMLShop.FileName:=DirApplication;

DataShop.BoldSystemHandleShop.Active:=true;

if not(FileExists(SaveExcel.FileName)) then

ExportOstatkiBase(SaveExcel.FileName)

else

MessageDlg('Файл с таким именем уже существует!'+#13+'Введите другое имя файла!',mtError,[mbOK],0);

end;

end;

procedure TMainform.BitBtn1Click(Sender: TObject);

begin

NakladnayaProdazha('primer.doc',9);

end;

procedure TMainform.VremyaTimer(Sender: TObject);

begin

StatusBar1.Panels[1].Text:='Сегодня: '+DateTimeToStr(now);

end;

procedure TMainform.ToolBar1MouseMove(Sender: TObject; Shift: TShiftState;

X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='';

end;

procedure TMainform.Timer1Timer(Sender: TObject);

begin

if Mainform.AlphaBlendValue>250 then

begin

Timer1.Enabled:=false;

MainForm.AlphaBlend:=false;

end

else

Mainform.AlphaBlendValue:=Mainform.AlphaBlendValue+5

end;

procedure TMainform.ToolButton15MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Экспорт остатков товара в магазине в Excel';

end;

procedure TMainform.ToolButton16MouseMove(Sender: TObject;

Shift: TShiftState; X, Y: Integer);

begin

StatusBar1.Panels[0].Text:='Экспорт остатков товара на базах в Excel';

end;

procedure TMainform.CheckBox4Click(Sender: TObject);

begin

if CheckBox4.Checked then

DataShop.ListBaseGroupTovar.Expression:='bHranit'

else

DataShop.ListBaseGroupTovar.Expression:='bHranit->select(tBcount<>0)';

end;

procedure TMainform.ToolButton14Click(Sender: TObject);

begin

Application.HelpCommand(HelpContext,1);

end;

procedure TMainform.N6Click(Sender: TObject);

begin

Application.HelpCommand(HelpContext,1);

end;

procedure TMainform.N25Click(Sender: TObject);

begin

TabSheet11.TabVisible:=True;

PageControl1.ActivePage:=TabSheet11;

end;

procedure TMainform.SpeedButton56Click(Sender: TObject);

begin

SpeedButton13Click(nil);

TabSheet11.TabVisible:=false;

end;

end.