Диплом: Автоматизация документооборота отдела по работе с клиентами для ООО "РАСТР"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
138
{$I uchastok.lrs}
end.
Utils.pas
Unit utils;
Interface
Uses Windows, SysUtils;
function ExecAndWait(const FileName: string; const WinState: Word):
boolean;
Implementation
function ExecAndWait(const FileName: string; const WinState: Word):
boolean;
var
StartInfo: TStartupInfo;
ProcInfo: TProcessInformation;
CmdLine: AnsiString;
begin
CmdLine:=FileName;
FillChar(StartInfo, SizeOf(StartInfo), #0);
with StartInfo do
begin
cb := SizeOf(StartInfo);
dwFlags := STARTF_USESHOWWINDOW;
wShowWindow := WinState;
end;
ExecAndWait := CreateProcess(nil, PChar(CmdLine), nil, nil, false,
CREATE_NEW_CONSOLE or
NORMAL_PRIORITY_CLASS, nil,
PChar(ExtractFileDir(ParamStr(0))),
StartInfo, ProcInfo);
{ +цшфрхь чртхЁ°хэш яЁшыюцхэш }
if ExecAndWait then
begin
139
WaitForSingleObject(ProcInfo.hProcess, INFINITE);
{ Free the Handles }
CloseHandle(ProcInfo.hProcess);
CloseHandle(ProcInfo.hThread);
end;
end;
end.
Zayavka.pas
unit zayavka;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
ComCtrls, ExtCtrls, StdCtrls, DBGrids, DbCtrls, db;
type
{ TfrmZayavka }
TfrmZayavka = class(TForm)
btnCancel: TButton;
btnPrint: TButton;
dsZayavka: TDatasource;
DBGrid1: TDBGrid;
DBMemo1: TDBMemo;
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
StatusBar1: TStatusBar;
procedure btnPrintClick(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word; Shift:
TShiftState);
procedure FormShow(Sender: TObject);
private
140
{ private declarations }
public
{ public declarations }
end;
var
frmZayavka: TfrmZayavka;
implementation
Uses Windows,dm;
{ TfrmZayavka }
procedure TfrmZayavka.FormShow(Sender: TObject);
Var
i: integer;
begin
DBGrid1.SetFocus;
end;
procedure TfrmZayavka.btnPrintClick(Sender: TObject);
Var
st: TStringList;
i: integer;
begin
st:=TStringList.Create;
st.Add('<html>');
st.Add('<head>');
st.Add(' <title>Договор</title>');
st.Add(' <meta http-equiv="Content-Type" content="text/html"; charset="utf-
8" />');
st.Add(' <link href="/style.css" rel="stylesheet" type="text/css" />');
st.Add('</head>');
st.Add('<body>');
st.Add('<h2 align=center>Заявка №
'+dm1.qZayavka.FieldByName('zayavka_code').AsString+'</h2>');
141
st.Add('<center>От '+dm1.qZayavka.FieldByName('date_priema').AsString+'
г.');
st.Add('<p>Клиент: '+dm1.qZayavka.FieldByName('client').AsString);
st.Add('<u>Описание:</u>');
For i:=0 To dbmemo1.Lines.Count-1 Do
st.Add(dbmemo1.Lines[i]);
st.Add('<p><p>Заявку принял __________________________
'+dm1.qZayavka.FieldByName('zayavka_prinyal').AsString);
st.SaveToFile('report\zayavka.html');
ShellExecute(0, 'open', 'report\zayavka.html', NIL, NIL, SW_SHOW);
st.Free;
end;
procedure TfrmZayavka.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
If key=112 Then
ShellExecute(0, 'open', 'help\zayav.html', NIL,NIL, SW_SHOW);
end;
initialization
{$I zayavka.lrs}
end.

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)