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

ПРИЛОЖЕНИЕ К. Листинг программного кода 1 страница

Организационно-правовые и программно-аппаратные средства обеспечения информационной безопасности и защиты информации | Информационное обеспечение задачи | Используемые классификаторы и системы кодирования | Характеристика нормативно-справочной, входной и оперативной информации | Характеристика результатной информации | Программное обеспечение задачи | Описание программных модулей и структурная схема пакета | Алгоритмы обработки данных | Контрольный пример реализации проекта и его описание | ЗАКЛЮЧЕНИЕ |


Читайте также:
  1. 1 страница
  2. 1 страница
  3. 1 страница
  4. 1 страница
  5. 1 страница
  6. 1 страница
  7. 1 страница

МОДУЛЬ ГЛАВНОЙ ФОРМЫ (Uvelir)

unit Uvelir;

 

implementation

 

uses DM, UnitKlient, UnitModel, UnitIzdel, UnitSkupkaMetall,

UnitKVITANCE, UnitKamni, Unit2DragKamni, UnitRezervMetall,

UnitLIGATURA, UnitPRIPOI, UnitOSTATKI, UnitMetall, UnitCHEK;

 

{$R *.dfm}

 

 

//Просмотр каталога клиентов

procedure TForm1.SpButKlientClick(Sender: TObject);

begin

FormKlient.Show;

UnitKlient.FormKlient.SpButAddModelZAKAZ.Visible:=True;

UnitKlient.FormKlient.SpButAddKlientZakaz.Visible:=False;

end;

 

//Просмотр каталога моделей

procedure TForm1.SpButModelClick(Sender: TObject);

begin

FormModel.Show;

end;

 

procedure TForm1.SpeedButton1Click(Sender: TObject);

begin

FormSkupkaMet.Show;

end;

 

procedure TForm1.SpeedButton2Click(Sender: TObject);

begin

FormKamni.Show;

end;

 

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

procedure TForm1.FormActivate(Sender: TObject);

var

i: Integer;

begin

If start=0 then

Begin

start:=1;

dn:=DayOfWeek(Date);

For i:=0 to 6 do

begin

If dn=2 Then

begin

EditDateS.Text:=DateToStr(Date-i);

break;

end;

If dn=1 Then

begin

EditDateS.Text:=DateToStr(Date-6);

break;

end;

If dn>2 Then

dn:=dn-1;

end;

EditDatePo.Text:=DateToStr(Date);

IF DBEditModel.Text<>'' Then

begin

DM.DataModuleUvelir.ADOQueryKAMNIizdel.Close; DM.DataModuleUvelir.ADOQueryKAMNIizdel.Parameters.ParamByName('ART').Value:=DBEditModel.Text;

DM.DataModuleUvelir.ADOQueryKAMNIizdel.Open;

end;

DM.DataModuleUvelir.ADOQueryZAKAZI.Close; DM.DataModuleUvelir.ADOQueryZAKAZI.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZAKAZI.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZAKAZI.Open;

DM.DataModuleUvelir.ADOQueryZakazIzd.Close; DM.DataModuleUvelir.ADOQueryZakazIzd.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZakazIzd.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZakazIzd.Open;

End;

 

end;

 

 

procedure TForm1.SpeedButton5Click(Sender: TObject);

begin

DM.DataModuleUvelir.ADOQueryKam.Close;

DM.DataModuleUvelir.ADOQueryKam.Parameters.ParamByName('KAM').Value:=''; DM.DataModuleUvelir.ADOQueryKam.Parameters.ParamByName('FORMA').Value:='';

DM.DataModuleUvelir.ADOQueryKam.Parameters.ParamByName('CVET').Value:='';

DM.DataModuleUvelir.ADOQueryKam.Parameters.ParamByName('RAZ').Value:='';

DM.DataModuleUvelir.ADOQueryKam.Open;

FormDragKamni.Show;

end;

 

//Добавляем клиента к новому заказу

procedure TForm1.SpButNewZakazClick(Sender: TObject);

begin

DBNavigatorZakaz.BtnClick(nbInsert);

DBEditDateZ.Text:=DateToStr(Date);

FormKlient.Show;

UnitKlient.FormKlient.SpButAddKlientZakaz.Visible:=True;

UnitKlient.FormKlient.SpButAddModelZakaz.Visible:=False;

ShowMessage('Выберите клиента и нажмите кнопку "ЗАКАЗ-ДОБАВИТЬ"!');

end;

 

//Добавляем модель к новому заказу

procedure TForm1.SpButAddModelZAKAZClick(Sender: TObject);

begin

DBNavigatorZakazIzd.BtnClick(nbInsert);

DBEditZakzzIzd.Text:=DBEditZakaz.Text;

FormModel.Show;

UnitModel.FormModel.SpButAddModelZakaz.Visible:=True;

ShowMessage('Выберите модель и нажмите кнопку "ЗАКАЗ-ДОБАВИТЬ"!');

end;

 

//Отображение изделий текущего заказа

procedure TForm1.DBEditZakazChange(Sender: TObject);

begin

DM.DataModuleUvelir.ADOQueryZakazIzdAdd.Close; DM.DataModuleUvelir.ADOQueryZakazIzdAdd.Parameters.ParamByName('KOD').Value:=DBEditZakaz.Text;

DM.DataModuleUvelir.ADOQueryZakazIzdAdd.Open;

If DBEditZakaz.Text<>'' Then

begin

DM.DataModuleUvelir.ADOQuerySUMzakaz.Close; DM.DataModuleUvelir.ADOQuerySUMzakaz.Parameters.ParamByName('Z').Value:=DBEditZakaz.Text;

DM.DataModuleUvelir.ADOQuerySUMzakaz.Open;

end;

end;

 

//Отображение камней текущей модели

procedure TForm1.DBEditModelChange(Sender: TObject);

var

k: single;

begin

DM.DataModuleUvelir.ADOQueryZAKAZIzdModel.Close; DM.DataModuleUvelir.ADOQueryZAKAZIzdModel.Parameters.ParamByName('ART').Value:=DBEditModel.Text;

DM.DataModuleUvelir.ADOQueryZAKAZIzdModel.Open;

If DBEditModel.Text<>'' Then

begin

DM.DataModuleUvelir.ADOQueryUGAR.Close; DM.DataModuleUvelir.ADOQueryUGAR.Parameters.ParamByName('ART').Value:=DBEditModel.Text;

DM.DataModuleUvelir.ADOQueryUGAR.Open;

DM.DataModuleUvelir.ADOQueryMETALL.Close; DM.DataModuleUvelir.ADOQueryMETALL.Parameters.ParamByName('M').Value:=DBEditMet.Text; DM.DataModuleUvelir.ADOQueryMETALL.Parameters.ParamByName('P').Value:=DBEditProba.Text;

DM.DataModuleUvelir.ADOQueryMETALL.Open;

end;

DM.DataModuleUvelir.ADOQueryZakazKamni.Close;

DM.DataModuleUvelir.ADOQueryZakazKamni.Parameters.ParamByName('ART').Value:=DBEditModel.Text;

DM.DataModuleUvelir.ADOQueryZakazKamni.Open;

DBGridZakazKamni.Columns[9].Color:=clWindow;

DBGridZakazKamni.Columns[9].Visible:=False;

IF DBEditModel.Text<>'' Then

begin

DM.DataModuleUvelir.ADOQueryKAMNIizdel.Close; DM.DataModuleUvelir.ADOQueryKAMNIizdel.Parameters.ParamByName('ART').Value:=DBEditModel.Text;

DM.DataModuleUvelir.ADOQueryKAMNIizdel.Open;

end;

IF (DBTextCenaKam.Caption<>'') and (DBEditKol.Text<>'') Then LabelITOGOkam.Caption:=FloatToStr(StrToInt(DBEditKol.Text)*StrToFloat(DBTextCenaKam.Caption));

IF DBTextCenaKam.Caption='' Then

LabelITOGOkam.Caption:='0';

 

end;

 

//Отображение имени, адреса и телефонов текущего клиента

procedure TForm1.DBEditKodKlientaChange(Sender: TObject);

begin

DM.DataModuleUvelir.ADOQueryTelKlient.Close;

DM.DataModuleUvelir.ADOQueryTelKlient.Parameters.ParamByName('TEL').Value:=DBEditKodKlienta.Text;

DM.DataModuleUvelir.ADOQueryTelKlient.Open;

DM.DataModuleUvelir.ADOQueryFIOKlient.Close; DM.DataModuleUvelir.ADOQueryFIOKlient.Parameters.ParamByName('KOD').Value:=DBEditKodKlienta.Text;

DM.DataModuleUvelir.ADOQueryFIOKlient.Open;

end;

 

//Резервирование металла

procedure TForm1.SpButRezMetClick(Sender: TObject);

var

kl: integer;

begin

If DBEditVip.Text<>'' Then

begin

ShowMessage('Заказ уже выполнен!!!!');

exit;

end;

If DBEditCena.Text='' Then

begin

ShowMessage('Введите цену за грамм работы!');

exit;

end;

If SpButAddModelZAKAZ.Visible=False Then

begin

SpButAddModelZAKAZ.Visible:=True;

//DBNavigatorZakazIzd.BtnClick(nbPost);

end;

try

kl:=StrToInt(DBEditKol.Text);

except

on EConvertError do

begin

ShowMessage('Введите колличество изделий!');

DBEditKol.SetFocus;

exit;

end;

end;

FormRezervMet.Show;

end;

 

 

//Резервирование камней

procedure TForm1.DBGridZakazKamniEditButtonClick(Sender: TObject);

var

kl,kn,rez:integer;

begin

DM.DataModuleUvelir.ADOQueryKam.Close; DM.DataModuleUvelir.ADOQueryKam.Parameters.ParamByName('KAM').Value:=DBGridZakazKamni.DataSource.DataSet.FieldValues['Камень']; DM.DataModuleUvelir.ADOQueryKam.Parameters.ParamByName('FORMA').Value:=DBGridZakazKamni.DataSource.DataSet.FieldValues['Форма']; DM.DataModuleUvelir.ADOQueryKam.Parameters.ParamByName('CVET').Value:=DBGridZakazKamni.DataSource.DataSet.FieldValues['Цвет']; DM.DataModuleUvelir.ADOQueryKam.Parameters.ParamByName('RAZ').Value:=DBGridZakazKamni.DataSource.DataSet.FieldValues['Размер'];

DM.DataModuleUvelir.ADOQueryKam.Open;

DBNavigator1.BtnClick(nbEdit);

FormDragKamni.Show; DBGridZakazKamni.DataSource.DataSet.FieldValues['РЕЗЕРВ']:=Unit2DragKamni.FormDragKamni.EditOSTREZ.Text;

FormDragKamni.Close;

try rez:=StrToInt(DBGridZakazKamni.DataSource.DataSet.FieldValues['РЕЗЕРВ']);

except

on EConvertError do

begin

ShowMessage('В поле остатков ничего не введено!');

exit;

end;

end;

try

kl:=StrToInt(DBEditKol.Text);

except

on EConvertError do

begin

ShowMessage('Введите колличество изделий!');

DBEditKol.SetFocus;

exit;

end;

end;

DBGridZakazKamni.Columns[9].Width:=95;

DBGridZakazKamni.Columns[9].Visible:=True;

DBGridZakazKamni.DataSource.DataSet.FieldValues['НЕОБХОДИМО']:= IntToStr(StrToInt(DBEditKol.Text)*StrToInt(DBGridZakazKamni.DataSource.DataSet.FieldValues['Количество'])); kn:=StrToInt(DBGridZakazKamni.DataSource.DataSet.FieldValues['НЕОБХОДИМО']);

If (rez-kn)<0 then

begin

DBGridZakazKamni.Columns[9].Color:=$00ADAFFA;

ShowMessage('Для создания заказа необходимо '+DBGridZakazKamni.DataSource.DataSet.FieldValues['НЕОБХОДИМО']+

' камня '+DBGridZakazKamni.DataSource.DataSet.FieldValues['Камень']+

' Так как на остатках '+DBGridZakazKamni.DataSource.DataSet.FieldValues['РЕЗЕРВ']+' камней, то продолжение создания заказа НЕВОЗМОЖНО!!!');

DBNavigatorZakazIzd.BtnClick(nbCancel);

SpButRezMet.Visible:=False;

SpButAddModelZAKAZ.Visible:=True;

Form1.SpButNewZakaz.Visible:=True;

DBGridZakazKamni.Columns[8].Visible:=True;

end;

end;

 

//Калькулятор ЛИГАТУРА

procedure TForm1.SpButLigaturaClick(Sender: TObject);

begin

FormLIGATURA.Show;

end;

 

//Калькулятор ПРИПОЙ

procedure TForm1.SpButPRIPOIClick(Sender: TObject);

begin

FormPRIPOI.Show;

end;

 

//Выполнить заказ

procedure TForm1.SpButVIPClick(Sender: TObject);

begin

IF DBGridZakaz.DataSource.DataSet.FieldValues['Анулировать']=True Then

begin

ShowMessage('Заказ анулирован!');

exit;

end;

IF DBEditVip.Text<>'' Then

begin

ShowMessage('Заказ уже выполнен!');

exit;

end;

DBNavigatorZakaz.BtnClick(nbEdit);

DBEditVip.Text:=DateToStr(Date);

DBGridZakaz.DataSource.DataSet.FieldValues['Выполнен']:=1;

DBNavigatorZakaz.BtnClick(nbPost);

end;

 

//Выдать заказ

procedure TForm1.SpButVIDClick(Sender: TObject);

begin

IF DBGridZakaz.DataSource.DataSet.FieldValues['Анулировать']=True Then

begin

ShowMessage('Заказ анулирован!');

exit;

end;

IF DBEditVip.Text='' Then

begin

ShowMessage('Заказ еще не выполнен!');

exit;

end;

If DBEditVid.Text<>'' Then

begin

ShowMessage('Заказ уже выдан!');

exit;

end;

DBNavigatorZakaz.BtnClick(nbEdit);

DBGridZakaz.DataSource.DataSet.FieldValues['Выдан']:=1;

DBEditVid.Text:=DateToStr(Date);

DBNavigatorZakaz.BtnClick(nbPost);

end;

 

procedure TForm1.SpButRaschetClick(Sender: TObject);

var k: single;

begin

if DBEditCena.Text='' Then

begin

ShowMessage('Для рассчета цены изделия введите цену за грамм работы!');

DBEditCena.SetFocus;

exit;

end;

IF DBEditModel.Text<>'' Then

BEGIN

DM.DataModuleUvelir.ADOQueryVesMetMASTER.Close; DM.DataModuleUvelir.ADOQueryVesMetMASTER.Parameters.ParamByName('N').Value:=DBEditZakzzIzd.Text; DM.DataModuleUvelir.ADOQueryVesMetMASTER.Parameters.ParamByName('ART').Value:=DBEditModel.Text; DM.DataModuleUvelir.ADOQueryVesMetMASTER.Parameters.ParamByName('R').Value:=DBEditRazmer.Text;

DM.DataModuleUvelir.ADOQueryVesMetMASTER.Open;

If DBEditVesmaster.Text='' Then

EditVesMaster.Text:='0'

Else

begin

k:=StrToFloat(DBEditVesmaster.Text);

EditVesMaster.Text:=Format('%f',[k]);

end;

DM.DataModuleUvelir.ADOQueryItogoVesMetKLIENT.Close; DM.DataModuleUvelir.ADOQueryItogoVesMetKLIENT.Parameters.ParamByName('N').Value:=DBEditZakzzIzd.Text; DM.DataModuleUvelir.ADOQueryItogoVesMetKLIENT.Parameters.ParamByName('ART').Value:=DBEditModel.Text; DM.DataModuleUvelir.ADOQueryItogoVesMetKLIENT.Parameters.ParamByName('R').Value:=DBEditRazmer.Text;

DM.DataModuleUvelir.ADOQueryItogoVesMetKLIENT.Open;

If DBEditVesKlient.Text='' Then

EditVesKlientUgar.Text:='0'

Else

begin

k:=StrToFloat(DBEditVesKlient.Text)-StrToFloat(DBEditVesKlient.Text)*StrToInt(DBEditUGAR.Text)/100;

EditVesKlientUgar.Text:=Format('%f',[k]);

end; k:=(StrToFloat(EditVesKlientUgar.Text)+StrToFloat(EditVesMaster.Text))*StrToFloat(DBEditCena.Text);

EditCenaRab.Text:=Format('%f',[k]);

k:=StrToFloat(EditVesMaster.Text)*StrToFloat(DBEditCenaMET.Text);

EditCeneDobMET.Text:= Format('%f',[k]);

DBNavigatorZakazIzd.BtnClick(nbEdit); k:=StrToFloat(EditCenaRab.Text)+StrToFloat(EditCeneDobMET.Text)+StrToFloat(LabelITOGOkam.Caption);

DBTextCenaIZD.Caption:=Format('%f',[k]);

DBEditCenaIZD.Text:=DBTextCenaIZD.Caption;

DBNavigatorZakazIzd.BtnClick(nbPost);

 

END;

 

end;

 

//Каталог металлов

procedure TForm1.SpButMETALLClick(Sender: TObject);

begin

FormMetall.Show;

end;

 

//Напечатать чек

procedure TForm1.SpButCHEKClick(Sender: TObject);

begin

DM.DataModuleUvelir.ADOQueryZakazIzdAdd.Close;

DM.DataModuleUvelir.ADOQueryZakazIzdAdd.Parameters.ParamByName('KOD').Value:=DBEditZakaz.Text;

DM.DataModuleUvelir.ADOQueryZakazIzdAdd.Open;

DM.DataModuleUvelir.ADOQueryFIOKlient.Close;

DM.DataModuleUvelir.ADOQueryFIOKlient.Parameters.ParamByName('KOD').Value:=DBEditKodKlienta.Text;

DM.DataModuleUvelir.ADOQueryFIOKlient.Open;

DM.DataModuleUvelir.ADOQuerySUMzakaz.Close;

DM.DataModuleUvelir.ADOQuerySUMzakaz.Parameters.ParamByName('Z').Value:=DBEditZakaz.Text;

DM.DataModuleUvelir.ADOQuerySUMzakaz.Open;

UnitCHEK.FormCHEK.QuickRepCHEK.Preview;

end;

 

//Анулировать заказ

procedure TForm1.SpButAnulClick(Sender: TObject);

begin

if DBEditVid.Text<>'' Then

begin

ShowMessage('Заказ уже выдан!');

exit;

end;

DBNavigatorZakaz.BtnClick(nbEdit);

DBGridZakaz.DataSource.DataSet.FieldValues['Анулировать']:=1;

DBNavigatorZakaz.BtnClick(nbPost);

end;

 

//Вставить период С

procedure TForm1.BitBtnSClick(Sender: TObject);

begin

EditDateS.Text:=DateToStr(MonCal.Date);

DM.DataModuleUvelir.ADOQueryZAKAZI.Close; DM.DataModuleUvelir.ADOQueryZAKAZI.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZAKAZI.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZAKAZI.Open;

DM.DataModuleUvelir.ADOQueryZakazIzd.Close; DM.DataModuleUvelir.ADOQueryZakazIzd.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZakazIzd.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZakazIzd.Open;

end;

 

//Вставить период ПО

procedure TForm1.BitBtnPoClick(Sender: TObject);

begin

EditDatePo.Text:=DateToStr(MonCal.Date);

DM.DataModuleUvelir.ADOQueryZAKAZI.Close; DM.DataModuleUvelir.ADOQueryZAKAZI.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZAKAZI.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZAKAZI.Open;

DM.DataModuleUvelir.ADOQueryZakazIzd.Close; DM.DataModuleUvelir.ADOQueryZakazIzd.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZakazIzd.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZakazIzd.Open;

end;

 

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

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

begin

start:=0;

end;

 

//Фильтр по заказам

procedure TForm1.RadioGroup1Click(Sender: TObject);

begin

If RadioGroup1.ItemIndex=0 Then

begin

DM.DataModuleUvelir.ADOQueryZAKAZI.Close; DM.DataModuleUvelir.ADOQueryZAKAZI.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZAKAZI.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZAKAZI.Open;

DM.DataModuleUvelir.ADOQueryZakazIzd.Close; DM.DataModuleUvelir.ADOQueryZakazIzd.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZakazIzd.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZakazIzd.Open;

DBGridZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZAKAZI; DBGridIzdelieZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZakazIzd;

end;

If RadioGroup1.ItemIndex=1 Then

begin

DM.DataModuleUvelir.ADOQueryZO.Close; DM.DataModuleUvelir.ADOQueryZO.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZO.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZO.Open; DM.DataModuleUvelir.ADOQueryZIO.Close; DM.DataModuleUvelir.ADOQueryZIO.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZIO.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZIO.Open;

DBGridZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZO;

DBGridIzdelieZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZIO;

end;

If RadioGroup1.ItemIndex=2 Then

begin

DM.DataModuleUvelir.ADOQueryZVIP.Close; DM.DataModuleUvelir.ADOQueryZVIP.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZVIP.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZVIP.Open;

DM.DataModuleUvelir.ADOQueryZIVIP.Close; DM.DataModuleUvelir.ADOQueryZIVIP.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZIVIP.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZIVIP.Open;

DBGridZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZVIP; DBGridIzdelieZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZIVIP;

end;

If RadioGroup1.ItemIndex=3 Then

begin

DM.DataModuleUvelir.ADOQueryZVIPNVID.Close; DM.DataModuleUvelir.ADOQueryZVIPNVID.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZVIPNVID.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZVIPNVID.Open;

DM.DataModuleUvelir.ADOQueryZIVIPNVID.Close; DM.DataModuleUvelir.ADOQueryZIVIPNVID.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZIVIPNVID.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZIVIPNVID.Open;

DBGridZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZVIPNVID; DBGridIzdelieZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZIVIPNVID;

end;

If RadioGroup1.ItemIndex=4 Then

begin

DM.DataModuleUvelir.ADOQueryZVIPVID.Close; DM.DataModuleUvelir.ADOQueryZVIPVID.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZVIPVID.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZVIPVID.Open;

DM.DataModuleUvelir.ADOQueryZIVIPVID.Close; DM.DataModuleUvelir.ADOQueryZIVIPVID.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZIVIPVID.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZIVIPVID.Open;

DBGridZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZVIPVID; DBGridIzdelieZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZIVIPVID;

end;

If RadioGroup1.ItemIndex=5 Then

begin

DM.DataModuleUvelir.ADOQueryZA.Close; DM.DataModuleUvelir.ADOQueryZA.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZA.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZA.Open;

DM.DataModuleUvelir.ADOQueryZIA.Close; DM.DataModuleUvelir.ADOQueryZIA.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZIA.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZIA.Open;

DBGridZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZA;

DBGridIzdelieZakaz.DataSource.DataSet:=DM.DataModuleUvelir.ADOQueryZIA;

end;

end;

 

 

//Отчет о прибыли

procedure TForm1.SpButOtchetClick(Sender: TObject);

var

FileName, FileNameSave, a, b: OleVariant;

T, TT: integer;

S: string;

SUM, SUM1: single;

begin

T:=1;

SUM1:=0;

DM.DataModuleUvelir.ADOQueryZVIP.Close; DM.DataModuleUvelir.ADOQueryZVIP.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZVIP.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZVIP.Open;

DM.DataModuleUvelir.ADOQueryZVIPVID.Close; DM.DataModuleUvelir.ADOQueryZVIPVID.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZVIPVID.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZVIPVID.Open;

DM.DataModuleUvelir.ADOQueryZVIPNVID.Close; DM.DataModuleUvelir.ADOQueryZVIPNVID.Parameters.ParamByName('D1').Value:=EditDateS.Text; DM.DataModuleUvelir.ADOQueryZVIPNVID.Parameters.ParamByName('D2').Value:=EditDatePo.Text;

DM.DataModuleUvelir.ADOQueryZVIPNVID.Open;

FileName:='C:\Ювелирная мастерская\ОТЧЕТЫ\ОТЧЕТ О ПРИБЫЛИ.doc';

FileNameSave:='C:\Ювелирная мастерская\ОТЧЕТЫ\ОТЧЕТ О ПРИБЫЛИ_от '+

DateToStr(Date)+'.doc';

DM.DataModuleUvelir.WordApplication1.Connect;

If DM.DataModuleUvelir.ADOQueryZVIP.FieldValues['НомерЗаказа']=Null Then

begin

ShowMessage('За данный период не было выполненно ни одного заказа');

exit;

end

Else

begin

Try

DM.DataModuleUvelir.WordApplication1.Documents.Open(FileName,

EmptyParam,EmptyParam,EmptyParam,

EmptyParam,EmptyParam,EmptyParam,

EmptyParam,EmptyParam,EmptyParam,

EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam); DM.DataModuleUvelir.WordDocument1.ConnectTo(DM.DataModuleUvelir.WordApplication1.ActiveDocument);

DM.DataModuleUvelir.WordDocument1.SaveAs(FileNameSave);

a:=41; DM.DataModuleUvelir.WordDocument1.Range(a).InsertBefore(EditDateS.Text);

a:=65;

DM.DataModuleUvelir.WordDocument1.Range(a).InsertBefore(' '+EditDatePo.Text);

//Вывод всех выполненных заказов

With DM.DataModuleUvelir.ADOQueryZVIP do

begin

First;

while not EOF do

begin

S:=IntToStr(T); DM.DataModuleUvelir.WordDocument1.Tables.Item(1).Cell(T+1,1).Range.InsertBefore(S);

S:=DM.DataModuleUvelir.ADOQueryZVIP.FieldValues['НомерЗаказа']; DM.DataModuleUvelir.WordDocument1.Tables.Item(1).Cell(T+1,2).Range.InsertBefore(S);

S:=DM.DataModuleUvelir.ADOQueryZVIP.FieldValues['ФИОклиента']; DM.DataModuleUvelir.WordDocument1.Tables.Item(1).Cell(T+1,3).Range.InsertBefore(S);

DM.DataModuleUvelir.ADOQuerySUMZOT.Close; DM.DataModuleUvelir.ADOQuerySUMZOT.Parameters.ParamByName('Z').Value:=DM.DataModuleUvelir.ADOQueryZVIP.FieldValues['НомерЗаказа'];

DM.DataModuleUvelir.ADOQuerySUMZOT.Open;

S:=DBEdit1.Text;

if DBEdit1.Text<>'' Then

begin

SUM:=StrToFloat(DBEdit1.Text);

SUM1:=SUM1+SUM;

end; DM.DataModuleUvelir.WordDocument1.Tables.Item(1).Cell(T+1,4).Range.InsertBefore(S);

DM.DataModuleUvelir.WordDocument1.Tables.Item(1).Rows.Add(EmptyParam);

inc(T);

Next;

end;

end;

DM.DataModuleUvelir.WordDocument1.Tables.Item(1).Cell(T+1,3).Select;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Color:=clRed;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Italic:=1;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Size:=14; DM.DataModuleUvelir.WordDocument1.Tables.Item(1).Cell(T+1,3).Range.InsertBefore('ИТОГО НА СУММУ:');

DM.DataModuleUvelir.WordDocument1.Tables.Item(1).Cell(T+1,4).Select;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Color:=clRed;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Italic:=1;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Size:=14;

S:=FloatToStr(SUM1); DM.DataModuleUvelir.WordDocument1.Tables.Item(1).Cell(T+1,4).Range.InsertBefore(S);

T:=1;

SUM1:=0;

 

 

//Вывод всех выданных заказов

With DM.DataModuleUvelir.ADOQueryZVIPVID do

begin

First;

while not EOF do

begin

S:=IntToStr(T); DM.DataModuleUvelir.WordDocument1.Tables.Item(2).Cell(T+1,1).Range.InsertBefore(S);

S:=DM.DataModuleUvelir.ADOQueryZVIPVID.FieldValues['НомерЗаказа']; DM.DataModuleUvelir.WordDocument1.Tables.Item(2).Cell(T+1,2).Range.InsertBefore(S);

S:=DM.DataModuleUvelir.ADOQueryZVIPVID.FieldValues['ФИОклиента']; DM.DataModuleUvelir.WordDocument1.Tables.Item(2).Cell(T+1,3).Range.InsertBefore(S);

DM.DataModuleUvelir.ADOQuerySUMZOT.Close; DM.DataModuleUvelir.ADOQuerySUMZOT.Parameters.ParamByName('Z').Value:=DM.DataModuleUvelir.ADOQueryZVIPVID.FieldValues['НомерЗаказа'];

DM.DataModuleUvelir.ADOQuerySUMZOT.Open;

S:=DBEdit1.Text;

if DBEdit1.Text<>'' Then

begin

SUM:=StrToFloat(DBEdit1.Text);

SUM1:=SUM1+SUM;

end; DM.DataModuleUvelir.WordDocument1.Tables.Item(2).Cell(T+1,4).Range.InsertBefore(S);

DM.DataModuleUvelir.WordDocument1.Tables.Item(2).Rows.Add(EmptyParam);

inc(T);

Next;

end;

end;

DM.DataModuleUvelir.WordDocument1.Tables.Item(2).Cell(T+1,3).Select;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Color:=clRed;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Italic:=1;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Size:=14; DM.DataModuleUvelir.WordDocument1.Tables.Item(2).Cell(T+1,3).Range.InsertBefore('ИТОГО НА СУММУ:');

DM.DataModuleUvelir.WordDocument1.Tables.Item(2).Cell(T+1,4).Select;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Color:=clRed;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Italic:=1;

DM.DataModuleUvelir.WordApplication1.Selection.Font.Size:=14;

S:=FloatToStr(SUM1); DM.DataModuleUvelir.WordDocument1.Tables.Item(2).Cell(T+1,4).Range.InsertBefore(S);

T:=1;

SUM1:=0;

 

//Вывод всех невыданных заказов

With DM.DataModuleUvelir.ADOQueryZVIPNVID do

begin

First;

while not EOF do

begin

S:=IntToStr(T); DM.DataModuleUvelir.WordDocument1.Tables.Item(3).Cell(T+1,1).Range.InsertBefore(S);

S:=DM.DataModuleUvelir.ADOQueryZVIPNVID.FieldValues['НомерЗаказа']; DM.DataModuleUvelir.WordDocument1.Tables.Item(3).Cell(T+1,2).Range.InsertBefore(S);

S:=DM.DataModuleUvelir.ADOQueryZVIPNVID.FieldValues['ФИОклиента']; DM.DataModuleUvelir.WordDocument1.Tables.Item(3).Cell(T+1,3).Range.InsertBefore(S);

DM.DataModuleUvelir.ADOQuerySUMZOT.Close; DM.DataModuleUvelir.ADOQuerySUMZOT.Parameters.ParamByName('Z').Value:=DM.DataModuleUvelir.ADOQueryZVIPNVID.FieldValues['НомерЗаказа'];

DM.DataModuleUvelir.ADOQuerySUMZOT.Open;

S:=DBEdit1.Text;

if DBEdit1.Text<>'' Then

begin

SUM:=StrToFloat(DBEdit1.Text);

SUM1:=SUM1+SUM;

end; DM.DataModuleUvelir.WordDocument1.Tables.Item(3).Cell(T+1,4).Range.InsertBefore(S);

DM.DataModuleUvelir.WordDocument1.Tables.Item(3).Rows.Add(EmptyParam);

inc(T);

Next;

end;

end;

DM.DataModuleUvelir.WordDocument1.Tables.Item(3).Cell(T+1,3).Select;


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


<== предыдущая страница | следующая страница ==>
ПРИЛОЖЕНИЕ Г| ПРИЛОЖЕНИЕ К. Листинг программного кода 2 страница

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