- •Приложения. Приложение 1.
- •Interface
- •Implementation
- •I : Byte;
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Implementation
- •Interface
- •Приложение 2 Руководство пользователя Руководство пользователя программы "Эксперт"
- •Потенциальные клиенты
- •Постоянные клиенты
- •Пункты меню главной формы.
Interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Mask, DBCtrls, Grids, DBGrids, ExtCtrls, Menus, Buttons;
type
TfmPwork = class(TForm)
Label1: TLabel;
DBGrid1: TDBGrid;
Label2: TLabel;
DBGrid2: TDBGrid;
Label4: TLabel;
btnDotrudn: TButton;
Label6: TLabel;
DBEdit4: TDBEdit;
Label7: TLabel;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBNavigator1: TDBNavigator;
Edit1: TEdit;
MainMenu1: TMainMenu;
N1: TMenuItem;
mnPutDates: TMenuItem;
btnClose: TBitBtn;
btnToClient: TBitBtn;
N3: TMenuItem;
mnClose: TMenuItem;
N5: TMenuItem;
mnDel: TMenuItem;
procedure btnCloseClick(Sender: TObject);
procedure btnDotrudnClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
procedure DBGrid1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure mnPutDatesClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure mnCloseClick(Sender: TObject);
procedure mnDelClick(Sender: TObject);
procedure btnToClientClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure WorkersDraw;
end;
var
fmPwork: TfmPwork;
Implementation
uses Modal1, SotrudnU, CModul;
{$R *.DFM}
//Процедура вывода в поля вывода ответсвенных сотрудников
procedure TfmPwork.WorkersDraw;
var i:integer;
begin
Edit1.Text:=' ';
Modal.taWLink2.Open;
Modal.taWLink2.First;
for i:=1 to Modal.taWLink2.RecordCount do begin
if Edit1.Text[Pos(Modal.taWLink2.FieldByName('WorkerName').AsString, Edit1.Text)]='' then
Edit1.Text:=Edit1.Text+Modal.taWLink2.FieldByName('WorkerName').AsString+' ';
Modal.taWLink2.Next;
end;
end;
procedure TfmPwork.btnCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfmPwork.btnDotrudnClick(Sender: TObject);
begin
fmWorkers.ShowModal;
end;
procedure TfmPwork.FormShow(Sender: TObject);
begin
WorkersDraw;
fmPWork.Caption:='О работах с '+Modal.taPclient.FieldByName('CompanyName').AsString;
end;
procedure TfmPwork.DBGrid1CellClick(Column: TColumn);
begin
WorkersDraw;
end;
procedure TfmPwork.DBGrid1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
FormShow(Sender);
end;
//Процедура автоматической простановки дат
procedure TfmPwork.mnPutDatesClick(Sender: TObject);
var LastDate:TDate;
i:integer;
begin
for i:=Modal.taRabota.RecNo to Modal.taRabota.RecordCount-1 do begin
LastDate:= Modal.taRabota.FieldByName('DatePlan').Value;
Modal.taRabota.Next;
//Смотрим указано ли к-во дней до этой работы
Modal.taRaboti2.Open;
Modal.taRaboti2.FindKey([Modal.taRabota.FieldByName('Rabota_ID').Value]);
if Modal.taRaboti2.FieldByName('DayNumber').Value<>0
then begin
Modal.taRabota.Edit;
Modal.taRabota.FieldByName('DatePlan').Value:=LastDate+Modal.taRaboti2.FieldByName('DayNumber').Value;
Modal.taRabota.Post;
end
else break;
end;
end;
procedure TfmPwork.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Modal.taRaboti2.Close;
end;
procedure TfmPwork.mnCloseClick(Sender: TObject);
begin
Close;
end;
//Каскадное удаление данных о работах из таблиц
procedure TfmPwork.mnDelClick(Sender: TObject);
begin
if Application.MessageBox('Вы действительно хотите удалить информацию о предварительной заявке?',
'Подтвердите удаление базы',MB_YESNO + MB_ICONQUESTION) = IDYES
then begin
//Удаление всех работ, назначееных исполнителям
Modal.taWLink2.First;
while not Modal.taWLink2.Eof do Modal.taWLink2.Delete;
if Modal.taWLink.Active=true then Modal.taWLink.Refresh;
if Modal.taRemSotrudn.Active=true then Modal.taRemSotrudn.Refresh;
//Удаление всех работ по предварит. заявке
Modal.taRabota.First;
while not Modal.taRabota.Eof do Modal.taRabota.Delete;
if Modal.taRemem.Active=true then Modal.taRemem.Refresh;
if Modal.taAddRabota.Active=true then Modal.taAddRabota.Refresh;
//Удаляем предв. заявку
Modal.taPDogovor.Delete;
if Modal.taPDogovor.RecordCount=0 then Edit1.Clear
else WorkersDraw;
end;
end;
//Процедура перевода потенциального клиента в разряд постоянных
procedure TfmPwork.btnToClientClick(Sender: TObject);
begin
Modul.taClient.Insert;
Modul.taClient.FieldByName('CompanyName').Value:=Modal.taPClient.FieldByName('CompanyName').Value;
Modul.taClient.FieldByName('NameSearch').Value:=Modal.taPClient.FieldByName('NameSearch').Value;
Modul.taClient.FieldByName('Adres').Value:=Modal.taPClient.FieldByName('Adres').Value;
Modul.taClient.FieldByName('Director').Value:=Modal.taPClient.FieldByName('Director').Value;
Modul.taClient.FieldByName('EMail').Value:=Modal.taPClient.FieldByName('EMail').Value;
Modul.taClient.FieldByName('Thone').Value:=Modal.taPClient.FieldByName('Thone').Value;
Modul.taClient.FieldByName('Fax').Value:=Modal.taPClient.FieldByName('Fax').Value;
Modul.taClient.FieldByName('Type').Value:=Modal.taPClient.FieldByName('Type').Value;
Modul.taClient.FieldByName('Comments').Value:=Modal.taPClient.FieldByName('Comments').Value;
Modul.taClient.FieldByName('CManage').Value:=Modal.taPClient.FieldByName('CManage').Value;
Modul.taClient.FieldByName('Manage').Value:=Modal.taPClient.FieldByName('Manage').Value;
Modul.taClient.FieldByName('CDoljnost').Value:=Modal.taPClient.FieldByName('CDoljnost').Value;
Modul.taClient.FieldByName('Doljnost').Value:=Modal.taPClient.FieldByName('Doljnost').Value;
Modul.taClient.FieldByName('COtrasl').Value:=Modal.taPClient.FieldByName('COtrasl').Value;
Modul.taClient.FieldByName('Otrasl').Value:=Modal.taPClient.FieldByName('Otrasl').Value;
Modul.taClient.Post;
end;
end.
//Модуль “Поиск заявки”
unit sechz;
