or(DBEdit2.Text='') or (DBEdit3.Text='') or(DBEdit1.Text='')
or(DBEdit10.Text='') or(DBEdit1.Text='')
then ShowMessage('Заполните все поля')// вывод сообщения
else
begin
DBEdit1.Enabled:=False; //Деактивация поля ввода информации
DBEdit2.Enabled:=False;//Деактивация поля ввода информации
DBEdit3.Enabled:=False;//Деактивация поля ввода информации
DBEdit4.Enabled:=False;//Деактивация поля ввода информации
DBEdit5.Enabled:=False;//Деактивация поля ввода информации
DBEdit6.Enabled:=False;//Деактивация поля ввода информации
DBEdit10.Enabled:=False;//Деактивация поля ввода информации
DBEdit11.Enabled:=False;//Деактивация поля ввода информации
DateTimePicker1.Enabled:=false;//Деактивация календаря
DateTimePicker2.Enabled:=false;//Деактивация календаря
SpeedButton1.Enabled:=True; //Активация кнопки
SpeedButton2.Enabled:=True; //Активация кнопки
SpeedButton3.Enabled:=False;//Деактивация кнопки
SpeedButton4.Enabled:=False; //Деактивация кнопки
SpeedButton9.Enabled:=True; //Активация кнопки
DBEdit30.Text:=ComboBox1.Text; //Перенос значения
ComboBox1.Enabled:=False; //Деактивация поля ввода информации
Pereregistratsiya.Enabled:=True; //Активация кнопки
DM.Lits_kart.Post;//Сохранение данных в таблицу
dm.Mashiny.FieldByName('№_лиценз_карт').AsInteger:=dm.Lits_kart.FieldByName('№_лиценз_карт').AsInteger;
DM.Mashiny.Post;//Сохранение данных в таблицу
end;
end;
procedure TAdmin_Mashin.VyhodClick – процедура выхода из программы:
procedure TAdmin_Mashin.VyhodClick(Sender: TObject);
begin
if MessageDlg('Вы действительно хотите выйти из программы?', // вывод сообщения
mtConfirmation, [mbYes, mbNo], 0) = mrYes then
Application.Terminate; //закрытие программы
end;
procedure TAdmin_Mashin.FormMouseMove – процедура изменения стиля надписи:
procedure TAdmin_Mashin.FormMouseMove(Sender: TObject; Shift: TShiftState;
X, Y: Integer);
begin
Pereregistratsiya.Font.Color:=$00AD9612; //Изменение цвета надписи
SpeedButton2.Font.Size:=10; //Изменение размера шрифта надписи
SpeedButton2.Font.Style:=[fsBold,fsItalic]; //Изменение стиля надписи
SpeedButton1.Font.Size:=10; //Изменение размера шрифта надписи
SpeedButton1.Font.Style:=[fsBold,fsItalic]; //Изменение стиля надписи
SpeedButton9.Font.Size:=10;//Изменение размера шрифта надписи
SpeedButton9.Font.Style:=[fsBold,fsItalic]; //Изменение стиля надписи
SpeedButton3.Font.Size:=10;//Изменение размера шрифта надписи
SpeedButton3.Font.Style:=[fsBold,fsItalic]; //Изменение стиля надписи
SpeedButton4.Font.Size:=10;//Изменение размера шрифта надписи
SpeedButton4.Font.Style:=[fsBold,fsItalic];//Изменение стиля надписи
end;
Файл Transportnyi_f.pas
procedure TTransportnyi.SpeedButton7Click – процедура заполнения лицензионной карточки
procedure TTransportnyi.SpeedButton7Click(Sender: TObject);
begin
Otchet_po_lits_kart.QRLabel9.Caption:= DBEdit6.Text; // Перенос значения
Otchet_po_lits_kart.QRLabel19.Caption:= DBEdit5.Text;// Перенос значения
Otchet_po_lits_kart.QRLabel2.Caption:= DBEdit12.Text;// Перенос значения
Otchet_po_lits_kart.QRLabel10.Caption:= DBEdit4.Text;// Перенос значения
Otchet_po_lits_kart.QRLabel11.Caption:= DBEdit2.Text;// Перенос значения
Otchet_po_lits_kart.QRLabel12.Caption:= DBEdit1.Text;// Перенос значения
Otchet_po_lits_kart.QRLabel14.Caption:= Administrirovanie.Edit1.Text;//
Перенос значения
Otchet_po_lits_kart.QuickRep1.Preview; //Просмотр отчета
end;
procedure TTransportnyi.SpeedButton15Click – процедура проверки свободного места в машине:
procedure TTransportnyi.SpeedButton15Click(Sender: TObject);
begin
if n=4 then ShowMessage('В машине больше нет свободного места') //вывод сообщения
else begin
DBEdit20.SetFocus; //установка курсора
DM.Mater_sredst.Insert;//Заполнение табдицы материальные средства
DBEdit23.Text:=DBEdit25.Text;//перенос значения
n:=n+1; // Увеличение счетчика
SpeedButton13.Enabled:=True;//Активация кнопки
SpeedButton15.Enabled:=False;//Деактивация кнопки
ComboBox4.Enabled:=true; //Активация поля ввода
ComboBox4.Text:=''; // Очистка поля ввода
end;
end;
procedure TTransportnyi.SpeedButton13Click – процедура создания накладной
procedure TTransportnyi.SpeedButton13Click(Sender: TObject);
begin
if
(DBEdit20.Text='') or(DBEdit21.Text='')or(DBEdit22.Text='')
or(DBEdit23.Text='')
then ShowMessage('Заполните все поля')// вывод сообщения
else
begin
DM.Mater_sredst.Post; // Сохранение материальных средств
case n of
1:begin Otchet_nakladnaya.QRLabel33.Caption:='1';
Otchet_nakladnaya.QRLabel34.Caption:=DBEdit20.Text;// Перенос значения
Otchet_nakladnaya.QRLabel35.Caption:=DBEdit22.Text;// Перенос значения
Otchet_nakladnaya.QRLabel36.Caption:=DBEdit21.Text;end;// Перенос значения
2:begin Otchet_nakladnaya.QRLabel37.Caption:=inttostr(n);
Otchet_nakladnaya.QRLabel40.Caption:=DBEdit20.Text;// Перенос значения
Otchet_nakladnaya.QRLabel43.Caption:=DBEdit22.Text;// Перенос значения
Otchet_nakladnaya.QRLabel46.Caption:=DBEdit21.Text;end;// Перенос значения
3:begin Otchet_nakladnaya.QRLabel38.Caption:=inttostr(n);
Otchet_nakladnaya.QRLabel41.Caption:=DBEdit20.Text;// Перенос значения
Otchet_nakladnaya.QRLabel44.Caption:=DBEdit22.Text;// Перенос значения
Otchet_nakladnaya.QRLabel47.Caption:=DBEdit21.Text;end;// Перенос значения
4:begin Otchet_nakladnaya.QRLabel39.Caption:=inttostr(n);
Otchet_nakladnaya.QRLabel42.Caption:=DBEdit20.Text;// Перенос значения
Otchet_nakladnaya.QRLabel45.Caption:=DBEdit22.Text;// Перенос значения
Otchet_nakladnaya.QRLabel48.Caption:=DBEdit21.Text; end;// Перенос значения
end;
ShowMessage('Данные о товаре сохранены'); //вывод сообщения
SpeedButton13.Enabled:=False;//Деактивация кнопки
SpeedButton15.Enabled:=True; //Активация кнопки
ComboBox4.Enabled:=False;
Edit5.SetFocus;
end;
end;
procedure TTransportnyi.SpeedButton11Click – процедура сохранения информации о накладной и о поездке:
procedure TTransportnyi.SpeedButton11Click(Sender: TObject);
begin
if
(DBEdit15.Text='') or(DBEdit14.Text='')or(DBEdit13.Text='')
or(DBEdit16.Text='') or (DBEdit17.Text='') or(DBEdit18.Text='')
or(DBEdit19.Text='') or(DBEdit24.Text='')or(DBEdit20.Text='')
or(DBEdit21.Text='') or (DBEdit22.Text='') or(DBEdit23.Text='')
or(DBEdit27.Text='') or(DBEdit28.Text='')
then ShowMessage('Заполните все поля')// вывод сообщения
else
begin
SpeedButton14.Enabled:=True; //Активация кнопки
DM.Poezdki.FieldByName('№_накладной').AsString:=DBEdit23.Text; // Сохранение информации в базу
DM.Poezdki.FieldByName('Ид_№_машины').AsString:=DBEdit29.Text; // Сохранение информации в базу
DM.Poezdki.FieldByName('Ид_№_водителя').AsString:=DBEdit26.Text; // Сохранение информации в базу
DM.Poezdki.FieldByName('Ид_№_клиента').AsString:=DM.ADOQuery1.FieldByName('Ид_№_клиента').AsString;// Сохранение информации в базу
DM.Poezdki.Post; // Сохранение данных в таблице поездки
DM.Mashiny.Edit; //Изменение статуса выбранной машины
DM.Mashiny.FieldByName('Статус').AsString:=DBEdit31.Text; // Изменение статуса машины
DM.Mashiny.Post; // Сохранение данных в таблице машины
DM.Voditeli.Edit; //Изменение статуса выбранного водителя
DM.Voditeli.FieldByName('Статус').AsString:=DBEdit31.Text; // Изменение статуса водителя
DM.Voditeli.Post; // Сохранение данных в таблице водители
Otchet_nakladnaya.QRLabel9.Caption:=DBEdit17.Text; // Перенос значения
Otchet_nakladnaya.QRLabel49.Caption:=IntToStr(n); // Перенос значения
Otchet_nakladnaya.QuickRep1.Preview;// просмотр формы отчета
DM.Mashiny.Filtered:=False; //Деактивация фильтра
DM.Mashiny.Filter:='Статус=True'; //Задание фильтра
DM.Mashiny.Filtered:=True; //Активация фильтра
DM.Voditeli.Filtered:=False; //Деактивация фильтра
DM.Voditeli.Filter:='Статус=True' ;//Задание фильтра;
DM.Voditeli.Filtered:=True;//Деактивация фильтра
if (DBEdit28.Text='') and (DBEdit29.Text='') then
ShowMessage('В данный момент нет свободных машин'); //Вывод сообщения
if (DBEdit26.Text='') and (DBEdit27.Text='') then
ShowMessage('В данный момент нет свободных водителей'); //Вывод сообщения
s:=0;//Обнуление счетчика
DBEdit15.Clear; //Очистка поля ввода информации
DBEdit14.Clear; //Очистка поля ввода информации
DBEdit13.Clear;//Очистка поля ввода информации
DBEdit31.Text:='false'; // Занесение текста в поле ввода информации
DM.Dann_nakladn.Insert;// Заполнение таблицы Данные накладной
DM.Mater_sredst.Insert; // Заполнение таблицы материальные средства
DM.Poezdki.Insert; // Заполнение таблицы материальные средства
DBEdit24.Text:=DateToStr(date); //Вывод даты
DBEdit19.Text:=DBEdit27.Text; //Перенесение значения
Label50.Caption:=DBEdit35.Text;//Перенос значения
n:=1; //Установка четчика
Edit1.Enabled:=true;//Активация поля ввода
SpeedButton23.Enabled:=true;// Активация кнопки
DBEdit16.ReadOnly:=False; // разрешение редактирования поля ввода
DBEdit17.ReadOnly:=False; //разрешение редактирования поля ввода
DBEdit18.ReadOnly:=False;//разрешение редактирования поля ввода
DBEdit19.ReadOnly:=False; //разрешение редактирования поля ввода
Edit1.Clear;// Очистка поля ввода
ComboBox4.Enabled:=true; //Активация поля ввода
ComboBox4.Text:='';// Очистка поля ввода
SpeedButton15.Enabled:=false; //Деактивация кнопки
end;
end;
procedure TTransportnyi.Edit1Change – процедура поиска по базе данных:
procedure TTransportnyi.Edit1Change(Sender: TObject);
begin
Edit4.Text:=Edit2.Text+Edit1.Text+Edit3.Text; // поиск по базе данных
ListBox1.Items.Strings[2]:=Edit4.Text;//Изменения значения
Memo1.Lines:=ListBox1.Items;//Занесение информации
DM.ADOQuery1.Close;//Закрытие таблицы ADOQTovar
DM.ADOQuery1.SQL.Clear;//Очистка SQL таблицы ADOQTovar
DM.ADOQuery1.SQL.Assign(Memo1.Lines);//Занесение информации в SQL таблицы ADOQTovar
DM.ADOQuery1.Open;//Открытие таблицы ADOQTovar
if Edit1.Text='' then
begin
DBEdit15.Clear; // Очистка поля ввода информации
DBEdit14.Clear; // Очистка поля ввода информации
DBEdit13.Clear; // Очистка поля ввода информации
end;
end;
procedure TTransportnyi.TabSheet3Show – процедура фильтрации машин по статусу:
procedure TTransportnyi.TabSheet3Show(Sender: TObject);
begin
DM.Mashiny.Filtered:=False; //Деактивация фильтра
DM.Mashiny.Filter:='Статус=True'; //Задание фильтра
DM.Mashiny.Filtered:=True; //Активация фильтра
DM.Voditeli.Filtered:=False; //Деактивация фильтра
DM.Voditeli.Filter:='Статус=True' ;//Задание фильтра;
DM.Voditeli.Filtered:=True;//Деактивация фильтра
if (DBEdit28.Text='') and (DBEdit29.Text='') then
ShowMessage('В данный момент нет свободных машин'); //Вывод сообщения
if (DBEdit26.Text='') and (DBEdit27.Text='') then
ShowMessage('В данный момент нет свободных водителей'); //Вывод сообщения
end;
procedure TZastavka.PolzovatelChange – процедура установки соответствия между паролем и логином:
procedure TZastavka.PolzovatelChange(Sender: TObject);
var i:byte;
begin
DM.Parol.First; // Переход к первой записи в таблице
For i:=0 to DM.Parol.RecordCount-1 do
begin
if Polzovatel.Text=DM.Parol.FieldByName('Логин').AsString then //Проверка логина
Parol_pro.Text:=DM.Parol.FieldByName('Пароль').AsString; //Проверка пароля
DM.Parol.Next; //ПЕРЕХОД К СЛЕДУЮЩЕЙ ЗАПИСИ В ТАБЛИЦЕ
end;
Parol.SetFocus;//Установка курсора
end;
procedure TZastavka.DaleeClick – процедура проверки правильности пароля:
procedure TZastavka.DaleeClick(Sender: TObject);
begin
if Parol.Text='' then ShowMessage('Введите пароль') // Вывод сообщения
else
begin
if Parol.Text<>Parol_pro.Text then begin ShowMessage('Пароль не верен');
Parol.Clear end //Очистка поля ввода
else
begin
if Polzovatel.Text='Транспортный отдел' then
begin
Transportnyi.show;//Показ формы
Zastavka.Hide;//Скрытие формы
end
else
if Polzovatel.Text='Администратор' then
begin
Administrirovanie.Show;//Показ формы
Zastavka.Hide;//Скрытие формы
end;
end;
end;
Parol.Clear; //Очистка поля ввода информации
end;
Рисунок 14. Не визуальные компоненты
2. Руководство оператора