Разработка автоматизированной информационной системы на примере "МегионСофтОйл"
Разработка автоматизированной информационной системы для учета и контроля выполнения ремонтных работ, и предоставления услуг по разработке программного обеспечения компании "МегионСофтОйл", разработка алгоритмов приложений программной системы и модулей.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 29.06.2012 |
Размер файла | 5,3 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
begin
Panel3.Visible:=False;
Panel4.Visible:=True;
UDataM.DataM.ADOTzakaz.Insert;
DBLookupComboBox7.Visible:=True;
DBComboBox2.ReadOnly:=True;
DBMemo2.Visible:=False;
Memo2.Visible:=True;
Memo2.Clear;
Edit5.Visible:=True;
Edit5.Clear;
DBEdit13.Visible:=False;
DBEdit11.Visible:=False;
Edit4.Visible:=True;
Edit4.Clear;
DBEdit12.Visible:=False;
SBAddPO.Enabled:=False;
SBSavePO.Enabled:=True;
SBdeletPO.Enabled:=False;
end;
//===Отменить заказ на проведение ТО===
procedure TFMain.SBcancelClick(Sender: TObject);
begin
UDataM.DataM.ADOTzakaz.Cancel;
UDataM.DataM.ADOTremont.Cancel;
DateTimePicker1.Enabled:=False;
DateTimePicker2.Enabled:=False;
DBComboBox1.ReadOnly:=False;
DBMemo1.Visible:=True;
Memo1.Visible:=False;
DBLookupComboBox3.Visible:=False;
DBLookupComboBox2.Visible:=False;
DBLookupComboBox4.Visible:=False;
Edit1.Visible:=False;
DBEDate1.Visible:=True;
DBEdit7.Visible:=True;
DBEdit2.Visible:=True;
DBEdit1.Visible:=True;
DBEdit5.Visible:=True;
DBEdit6.Visible:=True;
SBAdd.Enabled:=True;
SBSave.Enabled:=False;
SBdelet.Enabled:=True;
end;
//===Отменить заказ на разработку ПО===
procedure TFMain.SBcancelPOClick(Sender: TObject);
begin
UDataM.DataM.ADOTzakaz.Cancel;
UDataM.DataM.ADOTprog.Cancel;
DBLookupComboBox7.Visible:=False;
DBComboBox2.ReadOnly:=False;
DBMemo2.Visible:=True;
Memo2.Visible:=False;
Edit5.Visible:=False;
DBEdit13.Visible:=True;
DBEdit11.Visible:=True;
Edit4.Visible:=False;
DBEdit12.Visible:=True;
SBAddPO.Enabled:=True;
SBSavePO.Enabled:=False;
SBdeletPO.Enabled:=True;
end;
//===Удалить заказ на проведение ТО===
procedure TFMain.SBdeletClick(Sender: TObject);
begin
IF MessageBox(Handle,' УДАЛЕНИЕ ЗАПИСИ!!!'+#10+#10+
'Вы действительно хотите удалить запись?'+#10+#10+
'После нажатия на кнопку ДА, данные будут удалены.'+#10+
'Для отмены удаления нажмите на кнопку НЕТ.', 'ВНИМАНИЕ!!!',
MB_YesNo+MB_ICONWARNING+MB_TaskModal) = mrYes Then
UDataM.DataM.ADOTzakaz.Delete;
end;
//===Удалить заказ на разработку ПО===
procedure TFMain.SBdeletPOClick(Sender: TObject);
begin
IF MessageBox(Handle,' УДАЛЕНИЕ ЗАПИСИ!!!'+#10+#10+
'Вы действительно хотите удалить запись?'+#10+#10+
'После нажатия на кнопку ДА, данные будут удалены.'+#10+
'Для отмены удаления нажмите на кнопку НЕТ.', 'ВНИМАНИЕ!!!',
MB_YesNo+MB_ICONWARNING+MB_TaskModal) = mrYes Then
UDataM.DataM.ADOTzakaz.Delete;
end;
//===Сохранить заказ на проведение ТО===
procedure TFMain.SBSaveClick(Sender: TObject);
var
M: String;
i: integer;
begin
if DBLookupComboBox3.Text='' then
begin
Showmessage('Выберите клиента!');
Exit;
end;
if DBLookupComboBox2.Text='' then
begin
Showmessage('Выберите технику!');
Exit;
end;
if DBLookupComboBox4.Text='' then
begin
Showmessage('Выберите марку техники!');
Exit;
end;
if Edit1.Text='' then
begin
Showmessage('Введите серийный номер техники!');
Exit;
end; UDataM.DataM.ADOTzakazКодКлиента.Value:=UDataM.DataM.ADOTklientКодКлиента.Value;
UDataM.DataM.ADOTzakazДатаЗаказа.Value:=Date();
UDataM.DataM.ADOTzakazВидЗаказа.Value:='Проведение ТО';
UDataM.DataM.ADOTzakaz.Post;
UDataM.DataM.ADOTzakaz.Refresh;
UDataM.DataM.ADOTremont.Insert; UDataM.DataM.ADOTremontНомерЗаказа.Value:=UDataM.DataM.ADOTzakazНомерЗаказа.Value; UDataM.DataM.ADOTremontКодТехники.Value:=UDataM.DataM.ADOTtexКодТехники.Value; UDataM.DataM.ADOTremontКодМарки.Value:=UDataM.DataM.ADOTmarkiКодМарки.Value;
UDataM.DataM.ADOTremontСтатус.Value:='на выполнении'; UDataM.DataM.ADOTremont.FieldValues['ДатаРемонта']:=DateToStr(DateTimePicker1.Date); UDataM.DataM.ADOTremont.FieldValues['ДатаЗавершения']:=DateToStr(DateTimePicker2.Date);
UDataM.DataM.ADOTremontСерийныйНомер.Value:=Edit1.Text;
For i:=0 to Memo1.Lines.Count-1 do
M:=M+Memo1.Lines.Strings[i];
UDataM.DataM.ADOTremontОписание.Value:=M;
UDataM.DataM.ADOTremont.Post;
UDataM.DataM.ADOTremont.Refresh;
DateTimePicker1.Enabled:=False;
DateTimePicker2.Enabled:=False;
DBComboBox1.ReadOnly:=False;
DBMemo1.Visible:=True;
Memo1.Visible:=False;
DBLookupComboBox3.Visible:=False;
DBLookupComboBox2.Visible:=False;
DBLookupComboBox4.Visible:=False;
Edit1.Visible:=False;
DBEDate1.Visible:=True;
DBEdit7.Visible:=True;
DBEdit2.Visible:=True;
DBEdit1.Visible:=True;
DBEdit5.Visible:=True;
DBEdit6.Visible:=True;
SBAdd.Enabled:=True;
SBSave.Enabled:=False;
SBdelet.Enabled:=True;
end;
//===Сохранить заказ на разработку ПО===
procedure TFMain.SBSavePOClick(Sender: TObject);
var
M: String;
i: integer;
begin
if DBLookupComboBox7.Text='' then
begin
Showmessage('Выберите клиента!');
Exit;
end;
if Edit5.Text='' then
begin
Showmessage('Введите имя программного обеспечения!');
Exit;
end;
if Edit4.Text='' then
begin
Showmessage('Введите цену программного обеспечения!');
Exit;
end; UDataM.DataM.ADOTzakazКодКлиента.Value:=UDataM.DataM.ADOTklientКодКлиента.Value;
UDataM.DataM.ADOTzakazДатаЗаказа.Value:=Date();
UDataM.DataM.ADOTzakazВидЗаказа.Value:='Разработка ПО';
UDataM.DataM.ADOTzakaz.Post;
UDataM.DataM.ADOTzakaz.Refresh;
UDataM.DataM.ADOTprog.Insert; UDataM.DataM.ADOTprogНомерЗаказа.Value:=UDataM.DataM.ADOTzakazНомерЗаказа.Value;
UDataM.DataM.ADOTprogИмяПО.Value:=Edit5.Text;
UDataM.DataM.ADOTprogЦена.Value:=StrToFloat(Edit4.Text);
UDataM.DataM.ADOTprogСтатус.Value:='на выполнении';
For i:=0 to Memo2.Lines.Count-1 do
M:=M+Memo2.Lines.Strings[i];
UDataM.DataM.ADOTprogОписание.Value:=M;
UDataM.DataM.ADOTprog.Post;
UDataM.DataM.ADOTprog.Refresh;
UDataM.DataM.ADOTgraf.Insert; UDataM.DataM.ADOTgrafНомерЗаказа.Value:=UDataM.DataM.ADOTzakazНомерЗаказа.Value;
UDataM.DataM.ADOTgrafЭтап.Value:=1;
UDataM.DataM.ADOTgrafНаименование.Value:='Проектирование';
UDataM.DataM.ADOTgrafСтатусЭтапа.Value:='в разработке';
UDataM.DataM.ADOTgraf.Post;
UDataM.DataM.ADOTgraf.Refresh;
UDataM.DataM.ADOTgraf.Insert; UDataM.DataM.ADOTgrafНомерЗаказа.Value:=UDataM.DataM.ADOTzakazНомерЗаказа.Value;
UDataM.DataM.ADOTgrafЭтап.Value:=2;
UDataM.DataM.ADOTgrafНаименование.Value:='Разработка';
UDataM.DataM.ADOTgrafСтатусЭтапа.Value:='в разработке';
UDataM.DataM.ADOTgraf.Post;
UDataM.DataM.ADOTgraf.Refresh;
UDataM.DataM.ADOTgraf.Insert; UDataM.DataM.ADOTgrafНомерЗаказа.Value:=UDataM.DataM.ADOTzakazНомерЗаказа.Value;
UDataM.DataM.ADOTgrafЭтап.Value:=3;
UDataM.DataM.ADOTgrafНаименование.Value:='Тестирование';
UDataM.DataM.ADOTgrafСтатусЭтапа.Value:='в разработке';
UDataM.DataM.ADOTgraf.Post;
UDataM.DataM.ADOTgraf.Refresh;
UDataM.DataM.ADOTgraf.Insert; UDataM.DataM.ADOTgrafНомерЗаказа.Value:=UDataM.DataM.ADOTzakazНомерЗаказа.Value;
UDataM.DataM.ADOTgrafЭтап.Value:=4;
UDataM.DataM.ADOTgrafНаименование.Value:='Внедрение';
UDataM.DataM.ADOTgrafСтатусЭтапа.Value:='в разработке';
UDataM.DataM.ADOTgraf.Post;
UDataM.DataM.ADOTgraf.Refresh;
DBLookupComboBox7.Visible:=False;
DBComboBox2.ReadOnly:=False;
DBMemo2.Visible:=True;
Memo2.Visible:=False;
Edit5.Visible:=False;
DBEdit13.Visible:=True;
DBEdit11.Visible:=True;
Edit4.Visible:=False;
DBEdit12.Visible:=True;
SBAddPO.Enabled:=True;
SBSavePO.Enabled:=False;
SBdeletPO.Enabled:=True;
end;
end.
Модуль формы справочника «Клиенты компании» (Uklient)
unit Uklient;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, Menus, Grids, DBGrids, StdCtrls, Buttons, DBCtrls;
var
Fklient: TFklient;
implementation
uses UMain, UDataM;
{$R *.dfm}
//===Переход по записям===
procedure TFklient.DBGrid1ColumnMoved(Sender: TObject; FromIndex,
ToIndex: Integer);
begin
N1.Enabled:=True;
N3.Enabled:=True;
N4.Enabled:=False;
N5.Enabled:=True;
end;
//===Добавить===
procedure TFklient.N1Click(Sender: TObject);
begin
UDataM.DataM.ADOTklient.Insert;
end;
//===Отменить===
procedure TFklient.N2Click(Sender: TObject);
begin
UDataM.DataM.ADOTklient.Cancel;
end;
//===Изменить===
procedure TFklient.N3Click(Sender: TObject);
begin
UDataM.DataM.ADOTklient.Edit;
end;
//===Сохранить===
procedure TFklient.N4Click(Sender: TObject);
begin
UDataM.DataM.ADOTklient.Post;
end;
//===Удалить===
procedure TFklient.N5Click(Sender: TObject);
begin
IF MessageBox(Handle,' УДАЛЕНИЕ ЗАПИСИ!!!'+#10+#10+
'Вы действительно хотите удалить запись?'+#10+#10+
'После нажатия на кнопку ДА, данные будут удалены.'+#10+
'Для отмены удаления нажмите на кнопку НЕТ.', 'ВНИМАНИЕ!!!',
MB_YesNo+MB_ICONWARNING+MB_TaskModal) = mrYes Then
UDataM.DataM.ADOTklient.Delete;
end;
end.
Модуль формы справочника «Услуги компании» (Uuslugi)
unit Uuslugi;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, Grids, DBGrids, Menus, DBCtrls, StdCtrls;
var
Fuslugi: TFuslugi;
implementation
uses UMain, UDataM;
{$R *.dfm}
//===Переход по записям===
procedure TFuslugi.DBGrid1ColumnMoved(Sender: TObject; FromIndex,
ToIndex: Integer);
begin
N1.Enabled:=True;
N3.Enabled:=True;
N4.Enabled:=False;
N5.Enabled:=True;
end;
//===Добавить===
procedure TFuslugi.N1Click(Sender: TObject);
begin
UDataM.DataM.ADOTuslugi.Insert;
end;
//===Отменить===
procedure TFuslugi.N2Click(Sender: TObject);
begin
UDataM.DataM.ADOTuslugi.Cancel;
end;
//===Изменить===
procedure TFuslugi.N3Click(Sender: TObject);
begin
UDataM.DataM.ADOTuslugi.Edit;
end;
//===Сохранить===
procedure TFuslugi.N4Click(Sender: TObject);
begin
UDataM.DataM.ADOTuslugi.Post;
end;
//===Удалить===
procedure TFuslugi.N5Click(Sender: TObject);
begin
IF MessageBox(Handle,' УДАЛЕНИЕ ЗАПИСИ!!!'+#10+#10+
'Вы действительно хотите удалить запись?'+#10+#10+
'После нажатия на кнопку ДА, данные будут удалены.'+#10+
'Для отмены удаления нажмите на кнопку НЕТ.', 'ВНИМАНИЕ!!!',
MB_YesNo+MB_ICONWARNING+MB_TaskModal) = mrYes Then
UDataM.DataM.ADOTuslugi.Delete;
end;
end.
Модуль формы справочника «Оргтехника» (Utex)
unit Utex;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, Mask, DBCtrls, ExtCtrls, StdCtrls, DBCGrids, Menus;
var
Ftex: TFtex;
implementation
uses UMain, UDataM;
{$R *.dfm}
//===Переход по записям===
procedure TFtex.FormClick(Sender: TObject);
begin
N1.Enabled:=True;
N3.Enabled:=True;
N4.Enabled:=False;
N5.Enabled:=True;
end;
//===Добавить===
procedure TFtex.N1Click(Sender: TObject);
begin
UDataM.DataM.ADOTtex.Insert;
end;
//===Отменить===
procedure TFtex.N2Click(Sender: TObject);
begin
UDataM.DataM.ADOTtex.Cancel;
end;
//===Изменить===
procedure TFtex.N3Click(Sender: TObject);
begin
UDataM.DataM.ADOTtex.Edit;
end;
//===Сохранить===
procedure TFtex.N4Click(Sender: TObject);
begin
UDataM.DataM.ADOTtex.Post;
end;
//===Удалить===
procedure TFtex.N5Click(Sender: TObject);
begin
IF MessageBox(Handle,' УДАЛЕНИЕ ЗАПИСИ!!!'+#10+#10+
'Вы действительно хотите удалить запись?'+#10+#10+
'После нажатия на кнопку ДА, данные будут удалены.'+#10+
'Для отмены удаления нажмите на кнопку НЕТ.', 'ВНИМАНИЕ!!!',
MB_YesNo+MB_ICONWARNING+MB_TaskModal) = mrYes Then
UDataM.DataM.ADOTtex.Delete;
end;
end.
Модуль формы справочника «Марки оргтехники» (Umarka)
unit Umarka;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, DBCtrls, StdCtrls, Mask, ExtCtrls, DBCGrids, Menus;
var
Fmarka: TFmarka;
implementation
uses UMain, UDataM;
{$R *.dfm}
//===Переход по записям===
procedure TFmarka.DBCtrlGrid1Click(Sender: TObject);
begin
N1.Enabled:=True;
N3.Enabled:=True;
N4.Enabled:=False;
N5.Enabled:=True;
end;
//===Добавить===
procedure TFmarka.N1Click(Sender: TObject);
begin
UDataM.DataM.ADOTmarki.Insert;
end;
//===Отменить===
procedure TFmarka.N2Click(Sender: TObject);
begin
UDataM.DataM.ADOTmarki.Cancel;
end;
//===Изменить===
procedure TFmarka.N3Click(Sender: TObject);
begin
UDataM.DataM.ADOTmarki.Edit;
end;
//===Сохранить===
procedure TFmarka.N4Click(Sender: TObject);
begin
UDataM.DataM.ADOTmarki.Post;
end;
//===Удалить===
procedure TFmarka.N5Click(Sender: TObject);
begin
IF MessageBox(Handle,' УДАЛЕНИЕ ЗАПИСИ!!!'+#10+#10+
'Вы действительно хотите удалить запись?'+#10+#10+
'После нажатия на кнопку ДА, данные будут удалены.'+#10+
'Для отмены удаления нажмите на кнопку НЕТ.', 'ВНИМАНИЕ!!!',
MB_YesNo+MB_ICONWARNING+MB_TaskModal) = mrYes Then
UDataM.DataM.ADOTmarki.Delete;
end;
end.
Модуль формы (UReport)
unit UReport;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, DBCtrls, StdCtrls, Buttons, ComCtrls;
var
FReport: TFReport;
implementation
uses UMain, UDataM;
{$R *.dfm}
//===Отчеты ТО и ПО
procedure TFReport.SBreportClick(Sender: TObject);
var
Name, NameS: OleVariant;
Sum, SumVZ, SumNVZ: single;
n: integer;
S: string;
begin
IF FReport.Caption='Отчет ТО' Then
begin
Name:=ExtractFilePath(Application.ExeName)+'\documents\Отчет ТО.doc';
NameS:=ExtractFilePath(Application.ExeName)+'\temp\Отчет ТО'+S+'.doc';
UDataM.DataM.WordApp.Connect;
Try
Application.Minimize;
UDataM.DataM.WordApp.Documents.Open(Name,
EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam);
UDataM.DataM.WordDoc.ConnectTo(UDataM.DataM.WordApp.ActiveDocument);
UDataM.DataM.WordDoc.SaveAs(NameS);
S:=DateToStr(DateTimePicker1.Date);
UDataM.DataM.WordDoc.Tables.Item(1).Cell(2,2).Range.InsertBefore(S);
S:=DateToStr(DateTimePicker2.Date);
UDataM.DataM.WordDoc.Tables.Item(1).Cell(3,2).Range.InsertBefore(S);
UDataM.DataM.ADOQReportTO.Close;
UDataM.DataM.ADOQReportTO.Parameters.ParamValues['D1']:=DateTimePicker1.Date; UDataM.DataM.ADOQReportTO.Parameters.ParamValues['D2']:=DateTimePicker2.Date;
UDataM.DataM.ADOQReportTO.Open;
n:=1; SumVZ:=0; SumNVZ:=0;
With UDataM.DataM.ADOQReportTO do
begin
First;
while not EOF do
begin
S:=IntToStr(n); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,1).Range.InsertBefore(S);
S:=IntToStr(UDataM.DataM.ADOQReportTOЗАКАЗЫНомерЗаказа.Value); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,2).Range.InsertBefore(S);
S:=DateToStr(UDataM.DataM.ADOQReportTOДатаЗаказа.Value); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,3).Range.InsertBefore(S);
S:=UDataM.DataM.ADOQReportTOКлиент.Value; UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,4).Range.InsertBefore(S);
S:=DateToStr(UDataM.DataM.ADOQReportTOДатаРемонта.Value); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,5).Range.InsertBefore(S);
S:=DateToStr(UDataM.DataM.ADOQReportTOДатаЗавершения.Value); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,6).Range.InsertBefore(S);
S:=UDataM.DataM.ADOQReportTOСтатус.Value; UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,7).Range.InsertBefore(S);
UDataM.DataM.ADOQSumRabR.Close; UDataM.DataM.ADOQSumRabR.Parameters.ParamValues['N']:=UDataM.DataM.ADOQReportTOЗАКАЗЫНомерЗаказа.Value;
UDataM.DataM.ADOQSumRabR.Open;
UDataM.DataM.ADOQSumRasR.Close; UDataM.DataM.ADOQSumRasR.Parameters.ParamValues['N']:=UDataM.DataM.ADOQReportTOЗАКАЗЫНомерЗаказа.Value;
UDataM.DataM.ADOQSumRasR.Open; S:=Format('%m',[UDataM.DataM.ADOQSumRabRРаботы.Value+UDataM.DataM.ADOQSumRasRУзлы.Value]); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,8).Range.InsertBefore(S);
S:=IntToStr(UDataM.DataM.ADOQReportTOСкидка.Value); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,9).Range.InsertBefore(S); Sum:=UDataM.DataM.ADOQSumRabRРаботы.Value+UDataM.DataM.ADOQSumRasRУзлы.Value;
Sum:=Sum-(Sum*UDataM.DataM.ADOQReportTOСкидка.Value/100);
S:=Format('%m',[Sum]); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,10).Range.InsertBefore(S) UDataM.DataM.WordDoc.Tables.Item(2).Rows.Add(EmptyParam);
if UDataM.DataM.ADOQReportTOСтатус.Value='завершен' then
SumVZ:=SumVZ+Sum;
if UDataM.DataM.ADOQReportTOСтатус.Value='на выполнении' then
SumNVZ:=SumNVZ+Sum;
inc(n);
Next;
end;
end;
UDataM.DataM.WordDoc.Tables.Item(2).Rows.Item(n+1).Delete;
S:=Format('%m',[SumVZ]); UDataM.DataM.WordDoc.Tables.Item(3).Cell(1,2).Range.InsertBefore(S);
S:=Format('%m',[SumNVZ]); UDataM.DataM.WordDoc.Tables.Item(3).Cell(2,2).Range.InsertBefore(S);
S:=Format('%m',[SumVZ+SumNVZ]); UDataM.DataM.WordDoc.Tables.Item(3).Cell(3,2).Range.InsertBefore(S);
Except
begin
ShowMessage('Шаблон документа "Отчет ТО" не найден!');
UDataM.DataM.WordApp.Disconnect;
Application.Restore;
exit;
end;
end;
UDataM.DataM.WordApp.Disconnect;
Application.Restore;
end;
IF FReport.Caption='Отчет ПО' Then
begin
Name:=ExtractFilePath(Application.ExeName)+'\documents\Отчет ПО.doc';
NameS:=ExtractFilePath(Application.ExeName)+'\temp\Отчет ПО'+S+'.doc';
UDataM.DataM.WordApp.Connect;
Try
Application.Minimize;
UDataM.DataM.WordApp.Documents.Open(Name,
EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam); UDataM.DataM.WordDoc.ConnectTo(UDataM.DataM.WordApp.ActiveDocument);
UDataM.DataM.WordDoc.SaveAs(NameS);
S:=DateToStr(DateTimePicker1.Date); UDataM.DataM.WordDoc.Tables.Item(1).Cell(2,2).Range.InsertBefore(S);
S:=DateToStr(DateTimePicker2.Date); UDataM.DataM.WordDoc.Tables.Item(1).Cell(3,2).Range.InsertBefore(S);
UDataM.DataM.ADOQReportPO.Close; UDataM.DataM.ADOQReportPO.Parameters.ParamValues['D1']:=DateTimePicker1.Date; UDataM.DataM.ADOQReportPO.Parameters.ParamValues['D2']:=DateTimePicker2.Date;
UDataM.DataM.ADOQReportPO.Open;
n:=1; SumVZ:=0; SumNVZ:=0;
With UDataM.DataM.ADOQReportPO do
begin
First;
while not EOF do
begin
S:=IntToStr(n); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,1).Range.InsertBefore(S);
S:=IntToStr(UDataM.DataM.ADOQReportPOЗАКАЗЫНомерЗаказа.Value); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,2).Range.InsertBefore(S);
S:=DateToStr(UDataM.DataM.ADOQReportPOДатаЗаказа.Value); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,3).Range.InsertBefore(S);
S:=UDataM.DataM.ADOQReportPOКлиент.Value; UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,4).Range.InsertBefore(S);
S:=UDataM.DataM.ADOQReportPOИмяПО.Value; UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,5).Range.InsertBefore(S);
S:=UDataM.DataM.ADOQReportPOСтатус.Value; UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,6).Range.InsertBefore(S);
S:=Format('%m',[UDataM.DataM.ADOQReportPOЦена.Value]); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,7).Range.InsertBefore(S);
S:=IntToStr(UDataM.DataM.ADOQReportPOСкидка.Value); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,8).Range.InsertBefore(S);
Sum:=UDataM.DataM.ADOQReportPOЦена.Value;
Sum:=Sum-(Sum*UDataM.DataM.ADOQReportPOСкидка.Value/100);
S:=Format('%m',[Sum]); UDataM.DataM.WordDoc.Tables.Item(2).Cell(n+1,9).Range.InsertBefore(S);
UDataM.DataM.WordDoc.Tables.Item(2).Rows.Add(EmptyParam);
if UDataM.DataM.ADOQReportPOСтатус.Value='выполнено' then
SumVZ:=SumVZ+Sum;
if UDataM.DataM.ADOQReportPOСтатус.Value='в разработке' then
SumNVZ:=SumNVZ+Sum;
inc(n);
Next;
end;
end;
UDataM.DataM.WordDoc.Tables.Item(2).Rows.Item(n+1).Delete;
S:=Format('%m',[SumVZ]); UDataM.DataM.WordDoc.Tables.Item(3).Cell(1,2).Range.InsertBefore(S);
S:=Format('%m',[SumNVZ]); DataM.DataM.WordDoc.Tables.Item(3).Cell(2,2).Range.InsertBefore(S);
S:=Format('%m',[SumVZ+SumNVZ]);
DataM.DataM.WordDoc.Tables.Item(3).Cell(3,2).Range.InsertBefore(S);
Except
begin
ShowMessage('Шаблон документа "Отчет ПО" не найден!');
UDataM.DataM.WordApp.Disconnect;
Application.Restore;
exit;
end;
end;
UDataM.DataM.WordApp.Disconnect;
Application.Restore;
end;
end.
Размещено на Allbest.ru
Подобные документы
Создание информационной системы для фирмы "Удача", которая является посредником при перепродаже недвижимости. Обоснование состава вычислительной техники и программного обеспечения для функционирования данной автоматизированной информационной системы.
курсовая работа [1,8 M], добавлен 17.02.2014Разработка требований к программному обеспечению. Проектирование пользовательского интерфейса. Представление информационной системы в архитектуре "клиент-серверная". Проектирование программных модулей. Создание структуры пооперационного перечня работ.
курсовая работа [3,1 M], добавлен 09.08.2011Принципы проектирования базы данных. Разработка автоматизированной информационной системы для учета материалов хранящихся на складах, их движения по складам, контроля прихода, расхода и остатков материалов, а так же для выявления потребности в их закупке.
отчет по практике [4,9 M], добавлен 03.02.2013Выбор методологии проектирования и разработка информационной системы "Расчёт зарплаты" для предприятия ОАО РТП "Авторемонтник". Архитектурное проектирование базы данных информационной системы и разработка её интерфейса. Тестирование программного модуля.
дипломная работа [2,3 M], добавлен 25.05.2014Техническое задание на разработку автоматизированной системы и складского учета управления универсальной торговой базы. Проектирование информационной системы и выбор среды для создания программного продукта. Создание интерфейса и руководство пользователя.
дипломная работа [2,1 M], добавлен 11.07.2015Создание автоматизированной системы учета заказов и их выполнения в строительной фирме по ремонту квартир. Общие требования к информационной системе. Проектирование структуры базы данных. Построение ER-диаграммы. Реализация информационной системы.
курсовая работа [750,2 K], добавлен 24.03.2014Разработка и внедрение автоматизированной информационной системы (АИС) работы с клиентами туристической фирмы (приема и обработки заявок). Технико-экономическая оценка туристического агентства, алгоритм и схема интерфейса программного обеспечения его АИС.
дипломная работа [4,0 M], добавлен 21.07.2011Цель создания информационной системы. Автоматизированная информационная система "Строительное предприятие". Использование вычислительной техники и программного обеспечения для создания автоматизированной информационной системы управления на предприятии.
курсовая работа [2,5 M], добавлен 04.01.2011Разработка и внедрение комплексной автоматизированной системы поддержки процессов компании. Повышение эффективности работы подразделений компании и обеспечение ведения учета в единой информационной системе. Ведение единой бухгалтерии, расчет клиентов.
курсовая работа [657,1 K], добавлен 18.05.2015Анализ информационных потоков. Разработка структуры таблиц базы данных. Выбор CASE-средства для проектирования информационной системы и среды программирования. Разработка программных модулей (программного обеспечения). Подготовка справочных баз данных.
дипломная работа [6,8 M], добавлен 19.11.2013