Вход

Разработка программного обеспечения «Информационная система «Ювелирная мастерская»

Рекомендуемая категория для самостоятельной подготовки:
Курсовая работа*
Код 97214
Дата создания 2016
Страниц 90
Источников 17
Мы сможем обработать ваш заказ (!) 19 апреля в 12:00 [мск]
Файлы будут доступны для скачивания только после обработки заказа.
2 770руб.
КУПИТЬ

Содержание

Введение 2
1. Теоретический раздел 3
1.1. Основы разработки ПО исследуемой задачи 3
1.2 Обоснование проектных решений 7
1.2.1 По техническому обеспечению (ТО) 7
1.2.2 По информационному обеспечению (ИО) 7
1.2.3 По программному обеспечению (ПО) 10
1.2.4 По технологическому обеспечению 12
2. Раздел проектирования 13
2.1. Постановка задачи 13
2.2. Проектирование информационно-логической модели БД 14
2.2.1. Проектирование диаграммы прецедентов 14
2.2.2 Проектирование диаграммы деятельности 18
2.2.3 Проектирование диаграммы классов 19
2.2.4 Создание физической модели БД 21
2.3. Проектирование интерфейса пользователя 24
3. Экспериментальный раздел 29
3.1. Тестирование программы 29
3.2. Экономическое обоснование ПО 31
3.2.1 Расчет основной заработной платы разработчиков программного продукта 31
3.2.2 Расчёт дополнительной заработной платы 32
3.2.3 Расчёт расходов на содержание и эксплуатацию 32
3.2.4 Расчёт цеховой себестоимости системы 33
3.2.5 Расчёт коммерческих расходов 33
3.2.6 Расчёт полной себестоимости 33
3.2.6 Расчет оптовой цены автоматизированной системы 34
3.2.7 Оценка эффективности инвестиций 34
Заключение 39
Список литературы 40
Список сокращений 42
Приложение А. Инструкция пользователя 43
Приложение Б. Текст программы (листинг) 51

Фрагмент работы для ознакомления

dfm}
procedure TUpdClient.Button2Click(Sender: TObject);
begin
if ((length(Edit1.Text)=0) or (length(Edit2.Text)=0) or (length(Edit3.Text)=0) or (length(Edit5.Text)=0))
then
Showmessage('Не все поля заполнены')
else
begin
Client.ADOQuery2.SQL[0]:= 'UPDATE Клиент SET Фамилия='''+Edit1.Text+''',Имя='''+Edit2.Text+''',Отчество='''+Edit3.Text+''',Пол='''+ComboBox1.Text+''',Адрес='''+Edit6.Text+''',Телефон='''+Edit5.Text+''',[Дата рождения]='''+DateToStr(DateTimePicker1.Date)+'''';
Client.ADOQuery2.SQL[1]:= 'WHERE Клиент_Номер='+IntToStr(Client.ADOQuery1.FieldValues['Клиент_Номер']);
Client.ADOQuery2.ExecSQL;
Client.ADOQuery1.Active:=False;
Client.ADOQuery1.Active:=True;
Close;
end;
end;
procedure TUpdClient.Button1Click(Sender: TObject);
begin
if ((length(Edit1.Text)=0) or (length(Edit2.Text)=0) or (length(Edit3.Text)=0) or (length(Edit5.Text)=0))
then
Showmessage('Не все поля заполнены!')
else
begin
Client.ADOQuery2.SQL[0]:= 'INSERT INTO Клиент (Фамилия, Имя, Отчество, Телефон, Адрес, Пол, [Дата рождения])';
Client.ADOQuery2.SQL[1]:= 'VALUES ( '''+Edit1.Text+''','''+Edit2.Text+''','''+Edit3.Text+''', '''+Edit5.Text+''','''+Edit6.Text+''','''+ComboBox1.Text+''','''+DateToStr(DateTimePicker1.Date)+''');';
Client.ADOQuery2.SQL.Text;
Client.ADOQuery2.ExecSQL;
Client.ADOQuery1.Active:=False;
Client.ADOQuery1.Active:=True;
UpdClient.Close;
end;
end;
procedure TUpdClient.Button3Click(Sender: TObject);
begin
Close;
end;
end.
unit MyServicing;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Word97, OleServer, StdCtrls, Word2000, ExtCtrls, ComObj, DdeMan, Clipbrd,
WordXP, ExcelXP, Grids, Excel2000, Variants, DB, ADODB, DBGrids, DBCtrls,
ComCtrls;
type
TServicing = class(TForm)
DBGrid1: TDBGrid;
Button3: TButton;
Button4: TButton;
Button5: TButton;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
ADOQuery2: TADOQuery;
AutoIncField1: TAutoIncField;
WideStringField1: TWideStringField;
WideStringField2: TWideStringField;
WideStringField3: TWideStringField;
WideStringField4: TWideStringField;
WideStringField5: TWideStringField;
WideStringField6: TWideStringField;
Button1: TButton;
ADOQuery1_: TAutoIncField;
ADOQuery1_2: TIntegerField;
ADOQuery1_3: TIntegerField;
ADOQuery1DSDesigner2: TWideStringField;
ADOQuery1_4: TIntegerField;
ADOQuery1DSDesigner3: TWideStringField;
ADOQuery1DSDesigner4: TBCDField;
ADOQuery1DSDesigner5: TDateTimeField;
Label2: TLabel;
Bevel2: TBevel;
Edit1: TEdit;
Button8: TButton;
ComboBox2: TComboBox;
DBNavigator1: TDBNavigator;
ADOQuery1DSDesigner: TWideStringField;
ADOQuery1DSDesigner6: TWideStringField;
Label1: TLabel;
Label3: TLabel;
Bevel1: TBevel;
CheckBox1: TCheckBox;
DateTimePicker2: TDateTimePicker;
DateTimePicker1: TDateTimePicker;
Button7: TButton;
procedure Button1Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure Edit1Change(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Servicing: TServicing;
implementation
uses MyUpdServicing;
{$R *.dfm}
procedure TServicing.Button1Click(Sender: TObject);
begin
Close;
end;
procedure TServicing.Button5Click(Sender: TObject);
begin
if not(ADOQuery1.Eof) and ( MessageDlg('Вы уверены, что хотите удалить запись',
mtConfirmation,[mbYes,mbNo],0)=mrYes)
then
{если да, то}
begin
ADOQuery2.SQL[0]:='DELETE FROM Обслуживание';
ADOQuery2.SQL[1]:='WHERE Обслуживание_Номер='+IntToStr(ADOQuery1.FieldValues['Обслуживание_Номер']);
ADOQuery2.ExecSQL;
ADOQuery1.Active:=False;
ADOQuery1.Active:=True;
end;
end;
procedure TServicing.Button4Click(Sender: TObject);
begin
if not ADOQuery1.Eof then
begin
UpdServicing.Edit1.Text:=ADOQuery1.FieldValues['Изделие'];
UpdServicing.Edit1.Hint:=ADOQuery1.FieldValues['Изделие_Номер'];
UpdServicing.Edit3.Text:=ADOQuery1.FieldValues['Персонал'];
UpdServicing.Edit3.Hint:=ADOQuery1.FieldValues['Персонал_Номер'];
UpdServicing.Edit4.Text:=ADOQuery1.FieldValues['Услуга'];
UpdServicing.Edit4.Hint:=ADOQuery1.FieldValues['Услуга_Номер'];
UpdServicing.DateTimePicker1.Date:=ADOQuery1.FieldValues['Дата'];
UpdServicing.Button2.Visible:=True;
UpdServicing.Caption:='Редактирование';
UpdServicing.Show;
end;
end;
procedure TServicing.Button3Click(Sender: TObject);
begin
UpdServicing.Edit1.Clear;
UpdServicing.Edit3.Clear;
UpdServicing.Edit4.Clear;
UpdServicing.DateTimePicker1.Date:=Date();
UpdServicing.Button2.Visible:=False;
UpdServicing.Caption:='Добавление';
UpdServicing.Show;
end;
procedure TServicing.Button7Click(Sender: TObject);
var
i,j: integer;
Excel: Variant;
WorkbookName: string;
begin
Excel:=CreateOleObject('Excel.Application'); // для остальных
try
Excel.SheetsInNewWorkbook:=1;
Excel.WorkBooks.Add;
WorkbookName := GetCurrentDir + '\Обслуживание.xls';
Excel.ActiveWorkbook.SaveAs(WorkbookName); //Открытие книги
Excel.WorkSheets[1].Select;
for i:=0 to ADOQuery1.FieldList.Count-1 do //вывод шапки таблицы
begin
if ADOQuery1.FieldList.Fields[i].Visible=true then
begin
Excel.Cells[1,i+1]:=ADOQuery1.FieldList.Fields[i].DisplayName;
Excel.WorkSheets[1].Columns.Item[i+1].ColumnWidth:=ADOQuery1.FieldList.Fields[i].DisplayWidth;
ADOQuery1.First;
j:=2;
while not ADOQuery1.Eof do //вывод данных таблицы
begin
Excel.Cells[j,i+1]:=ADOQuery1.FieldValues[ADOQuery1.FieldList.Fields[i].FieldName];
ADOQuery1.Next;
j:=j+1;
end;
end;
end;
ADOQuery1.First;
Excel.Range['A1:F'+IntToStr(j-1)].Select; //выбираем область
Excel.Selection.Borders.LineStyle:=1; //делаем границы таблицы
Excel.ActiveWorkbook.Save; //сохранить документ Excel
Excel.WindowState := -4137; //развернуть на весь экран
Excel.Visible := True; //вывести на экран
except
Excel.Quit;
end;
end;
procedure TServicing.Button8Click(Sender: TObject);
begin
Edit1.Clear;
ADOQuery1.Filtered:=False;
end;
procedure TServicing.Edit1Change(Sender: TObject);
begin
if Length(Edit1.Text)<>0 then
begin
ADOQuery1.Filter:='['+ComboBox2.Text+'] LIKE '+'''*'+Edit1.Text+'*''';
ADOQuery1.Filtered:=True;
end
else
ADOQuery1.Filtered:=False;
end;
procedure TServicing.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked=True then
begin
Button8.Click;
DateTimePicker1.Enabled:=True;
DateTimePicker2.Enabled:=True;
ADOQuery1.Filter:='[Дата]<='''+DateToStr(DateTimePicker2.Date)+''' and [Дата]>='''+DateToStr(DateTimePicker1.Date)+'''';
ADOQuery1.Filtered:=True;
end
else
begin
DateTimePicker1.Enabled:=False;
DateTimePicker2.Enabled:=False;
ADOQuery1.Filtered:=False;
end;
end;
procedure TServicing.FormShow(Sender: TObject);
begin
//настраиваем календари от текущей даты
DateTimePicker1.Date:=Date()-10;
DateTimePicker2.Date:=Date()+10;
end;
end.
unit MyPerson;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Word97, OleServer, StdCtrls, Word2000, ExtCtrls, ComObj, DdeMan, Clipbrd,
WordXP, ExcelXP, Grids, Excel2000, Variants, DB, ADODB, DBGrids, DBCtrls;
type
TPerson = class(TForm)
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
Button1: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button2: TButton;
ADOQuery1: TADOQuery;
ADOQuery1DSDesigner: TWideStringField;
ADOQuery1DSDesigner2: TWideStringField;
ADOQuery1DSDesigner3: TWideStringField;
DataSource1: TDataSource;
ADOQuery2: TADOQuery;
AutoIncField1: TAutoIncField;
WideStringField1: TWideStringField;
WideStringField2: TWideStringField;
WideStringField3: TWideStringField;
WideStringField4: TWideStringField;
WideStringField5: TWideStringField;
WideStringField6: TWideStringField;
Label2: TLabel;
Bevel2: TBevel;
Edit1: TEdit;
Button8: TButton;
ComboBox2: TComboBox;
Button9: TButton;
ADOQuery1DSDesigner4: TDateTimeField;
ADOQuery1DSDesigner5: TWideStringField;
ADOQuery1DSDesigner6: TWideStringField;
ADOQuery1_: TAutoIncField;
procedure FormShow(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
procedure Button9Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Person: TPerson;
implementation
uses MyUpdPerson, MyServicing;
{$R *.dfm}
procedure TPerson.FormShow(Sender: TObject);
begin
Button2.Tag:=0;
end;
procedure TPerson.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Button2.Visible:=False;
Button3.Visible:=True;
Button4.Visible:=True;
Button5.Visible:=True;
end;
procedure TPerson.Button1Click(Sender: TObject);
begin
Close;
end;
procedure TPerson.Button2Click(Sender: TObject);
begin
if not ADOQuery1.Eof then
begin
Button2.Tag:=1;//свершилось нажатие на кнопку Button2
Close();
end;
end;
procedure TPerson.Button5Click(Sender: TObject);
begin
if not(ADOQuery1.Eof) and ( MessageDlg('Вы уверены, что хотите удалить запись',
mtConfirmation,[mbYes,mbNo],0)=mrYes)
then
{если да, то}
begin
ADOQuery2.SQL[0]:='DELETE FROM Персонал';
ADOQuery2.SQL[1]:='WHERE Персонал_Номер='+IntToStr(ADOQuery1.FieldValues['Персонал_Номер']);
ADOQuery2.ExecSQL;
ADOQuery1.Active:=False;
ADOQuery1.Active:=True;
end;
end;
procedure TPerson.Button4Click(Sender: TObject);
begin
if not ADOQuery1.Eof then
begin
UpdPerson.Edit1.Text:=ADOQuery1.FieldValues['Фамилия'];
UpdPerson.Edit2.Text:=ADOQuery1.FieldValues['Имя'];
UpdPerson.Edit3.Text:=ADOQuery1.FieldValues['Отчество'];
UpdPerson.Edit4.Text:=ADOQuery1.FieldValues['Должность'];
UpdPerson.Edit5.Text:=ADOQuery1.FieldValues['Телефон'];
UpdPerson.DateTimePicker1.Date:=ADOQuery1.FieldValues['Дата рождения'];
UpdPerson.Button2.Visible:=True;
UpdPerson.Caption:='Редактирование';
UpdPerson.Show;
end;
end;
procedure TPerson.Button3Click(Sender: TObject);
begin
UpdPerson.Edit1.Clear;
UpdPerson.Edit2.Clear;
UpdPerson.Edit3.Clear;
UpdPerson.Edit4.Clear;
UpdPerson.Edit5.Clear;
UpdPerson.Button2.Visible:=False;
UpdPerson.Caption:='Добавление';
UpdPerson.Show;
end;
procedure TPerson.ComboBox2Change(Sender: TObject);
begin
if Length(Edit1.Text)<>0 then
begin
ADOQuery1.Filter:='['+ComboBox2.Text+'] LIKE '+'''*'+Edit1.Text+'*''';
ADOQuery1.Filtered:=True;
end
else
ADOQuery1.Filtered:=False;
end;
procedure TPerson.Button9Click(Sender: TObject);
var
i,j: integer;
Excel: Variant;
WorkbookName: string;
begin
Excel:=CreateOleObject('Excel.Application'); // для остальных
try
Excel.SheetsInNewWorkbook:=1;
Excel.WorkBooks.Add;
WorkbookName := GetCurrentDir + '\Персонал.xls';
Excel.ActiveWorkbook.SaveAs(WorkbookName); //Открытие книги
Excel.WorkSheets[1].Select;
for i:=0 to ADOQuery1.FieldList.Count-2 do //вывод шапки таблицы
begin
Excel.Cells[1,i+1]:=ADOQuery1.FieldList.Fields[i].DisplayName;
Excel.WorkSheets[1].Columns.Item[i+1].ColumnWidth:=ADOQuery1.FieldList.Fields[i].DisplayWidth;
ADOQuery1.First;
j:=2;
while not ADOQuery1.Eof do //вывод данных таблицы
begin
Excel.Cells[j,i+1]:=ADOQuery1.FieldValues[ADOQuery1.FieldList.Fields[i].FieldName];
ADOQuery1.Next;
j:=j+1;
end;
end;
ADOQuery1.First;
Excel.Range['A1:F'+IntToStr(j-1)].Select; //выбираем область
Excel.Selection.Borders.LineStyle:=1; //делаем границы таблицы
Excel.ActiveWorkbook.Save; //сохранить документ Excel
Excel.WindowState := -4137; //развернуть на весь экран
Excel.Visible := True; //вывести на экран
except
Excel.Quit;
end;
end;
procedure TPerson.Button8Click(Sender: TObject);
begin
Edit1.Clear;
ADOQuery1.Filtered:=False;
end;
end.
unit MyMerch;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Word97, OleServer, StdCtrls, Word2000, ExtCtrls, ComObj, DdeMan, Clipbrd,
WordXP, ExcelXP, Grids, Excel2000, Variants, DB, ADODB, DBGrids, DBCtrls;
type
TMerch = class(TForm)
DBGrid1: TDBGrid;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
ADOQuery2: TADOQuery;
Label2: TLabel;
Bevel2: TBevel;
Edit1: TEdit;
ComboBox2: TComboBox;
Button6: TButton;
Button9: TButton;
ADOQuery1_: TAutoIncField;
ADOQuery1_2: TIntegerField;
ADOQuery1DSDesigner: TWideStringField;
ADOQuery1DSDesigner3: TWideStringField;
ADOQuery1DSDesigner2: TWideStringField;
DBNavigator1: TDBNavigator;
Button7: TButton;
procedure Button3Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Edit1Change(Sender: TObject);
procedure Button9Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Merch: TMerch;
implementation
uses MyMain, MyUpdMerch, MyServicing;
{$R *.dfm}
procedure TMerch.Button3Click(Sender: TObject);
begin
UpdMerch.Edit1.Clear;
UpdMerch.Edit2.Clear;
UpdMerch.Edit3.Clear;
UpdMerch.Button1.Visible:=True;
UpdMerch.Button2.Visible:=False;
UpdMerch.Caption:='Добавление';
UpdMerch.Show();
end;
procedure TMerch.Button5Click(Sender: TObject);
begin
if (MessageDlg('Вы уверены, что хотите удалить запись',
mtConfirmation,[mbYes,mbNo],0)=mrYes) and not(ADOQuery1.Eof)
then
{если да, то}
begin
ADOQuery2.SQL[0]:='DELETE FROM Изделие';
ADOQuery2.SQL[1]:='WHERE Изделие_Номер='+IntToStr(ADOQuery1.FieldValues['Изделие_Номер']);
ADOQuery2.ExecSQL;
ADOQuery1.Active:=False;
ADOQuery1.Active:=True;
end;
end;
procedure TMerch.Button4Click(Sender: TObject);
begin
if not(ADOQuery1.Eof) then
begin
UpdMerch.Edit1.Text:=ADOQuery1.FieldValues['Изделие'];
UpdMerch.Edit2.Text:=ADOQuery1.FieldValues['Клиент'];
UpdMerch.Edit2.Hint:=ADOQuery1.FieldValues['Клиент_Номер'];
UpdMerch.Edit3.Text:=ADOQuery1.FieldValues['Описание'];
UpdMerch.Button1.Visible:=False;
UpdMerch.Button2.Visible:=True;
UpdMerch.Caption:='Редактирование';
UpdMerch.Show;
end;
end;
procedure TMerch.Button2Click(Sender: TObject);
begin
Button2.Tag:=1;//свершилось наатие на кнопку Button2
Close();
end;
procedure TMerch.Button1Click(Sender: TObject);
begin
Close();
end;
procedure TMerch.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Button2.Visible:=False;
Button3.Visible:=True;
Button4.Visible:=True;
Button5.Visible:=True;
end;
procedure TMerch.FormShow(Sender: TObject);
begin
Button2.Tag:=0;
end;
procedure TMerch.Button6Click(Sender: TObject);
begin
Edit1.Clear;
ADOQuery1.Filtered:=False;
end;
procedure TMerch.Edit1Change(Sender: TObject);
var
Text: String;
begin
case ComboBox2.ItemIndex of
0: Text := 'Клиент';
1: Text := 'Изделие';
2: Text := 'Описание';
end;
if (Length(Edit1.Text)<>0) then
begin
ADOQuery1.Filter:=Text+' LIKE '+'''*'+Edit1.Text+'*''';
ADOQuery1.Filtered:=True;
end
else
ADOQuery1.Filtered:=False;
end;
procedure TMerch.Button9Click(Sender: TObject);
var
i,j: integer;
Excel: Variant;
WorkbookName: string;
begin
Excel:=CreateOleObject('Excel.Application'); // для остальных
try
Excel.SheetsInNewWorkbook:=1;
Excel.WorkBooks.Add;
WorkbookName := GetCurrentDir + '\Изделия.xls';
Excel.ActiveWorkbook.SaveAs(WorkbookName); //Открытие книги
Excel.WorkSheets[1].Select;
for i:=0 to ADOQuery1.FieldList.Count-3 do //вывод шапки таблицы
begin
Excel.Cells[1,i+1]:=ADOQuery1.FieldList.Fields[i].DisplayName;
Excel.WorkSheets[1].Columns.Item[i+1].ColumnWidth:=ADOQuery1.FieldList.Fields[i].DisplayWidth;
ADOQuery1.First;
j:=2;
while not ADOQuery1.Eof do //вывод данных таблицы
begin
Excel.Cells[j,i+1]:=ADOQuery1.FieldValues[ADOQuery1.FieldList.Fields[i].FieldName];
ADOQuery1.Next;
j:=j+1;
end;
end;
ADOQuery1.First;
Excel.Range['A1:C'+IntToStr(j-1)].Select; //выбираем область
Excel.Selection.Borders.LineStyle:=1; //делаем границы таблицы

Excel.ActiveWorkbook.Save; //сохранить документ Excel
Excel.WindowState := -4137; //развернуть на весь экран
Excel.Visible := True; //вывести на экран
except
Excel.Quit;
end;
end;
procedure TMerch.Button7Click(Sender: TObject);
begin
Servicing.ComboBox2.ItemIndex:=3;
Servicing.Edit1.Text:= String(ADOQuery1.FieldValues['Клиент']);
Servicing.Show;
end;
end.
unit MyMain;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, StdCtrls, jpeg, ExtCtrls, DB, ADODB;
type
TMain = class(TForm)
Image1: TImage;
MainMenu1: TMainMenu;
N1: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
ADOConnection1: TADOConnection;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
procedure N13Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N5Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Main: TMain;
implementation
uses MyClient, MyMerch, MyPerson, MyServicing, Service;
{$R *.dfm}
procedure TMain.N13Click(Sender: TObject);
begin
Client.ADOQuery1.Active:=False;
Client.ADOQuery1.Active:=True;
Client.Show;
end;
procedure TMain.N2Click(Sender: TObject);
begin
Merch.ADOQuery1.Active:=False;
Merch.ADOQuery1.Active:=True;
Merch.Show;
end;
procedure TMain.N15Click(Sender: TObject);
begin
Close;
end;
procedure TMain.N5Click(Sender: TObject);
begin
Services.ADOQuery1.Active:=False;
Services.ADOQuery1.Active:=True;
Services.Show;
end;
procedure TMain.N4Click(Sender: TObject);
begin
Person.ADOQuery1.Active:=False;
Person.ADOQuery1.Active:=True;
Person.Show;
end;
procedure TMain.N6Click(Sender: TObject);
begin
Servicing.ADOQuery1.Active:=False;
Servicing.ADOQuery1.Active:=True;
Servicing.Show;
end;
end.
unit MyClient;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Word97, OleServer, StdCtrls, Word2000, ExtCtrls, ComObj, DdeMan, Clipbrd,
WordXP, ExcelXP, Grids, Excel2000, Variants, DB, ADODB, DBGrids, DBCtrls;
type
TClient = class(TForm)
Label2: TLabel;
Bevel2: TBevel;
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
Button1: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button2: TButton;
Edit1: TEdit;
Button8: TButton;
ComboBox2: TComboBox;
Button9: TButton;
ADOQuery1: TADOQuery;
ADOQuery1DSDesigner: TWideStringField;
ADOQuery1DSDesigner2: TWideStringField;
ADOQuery1DSDesigner3: TWideStringField;
ADOQuery1DSDesigner4: TDateTimeField;
ADOQuery1DSDesigner6: TWideStringField;
DataSource1: TDataSource;
ADOQuery2: TADOQuery;
AutoIncField1: TAutoIncField;
WideStringField1: TWideStringField;
WideStringField2: TWideStringField;
WideStringField3: TWideStringField;
WideStringField4: TWideStringField;
WideStringField5: TWideStringField;
WideStringField6: TWideStringField;
ADOQuery1_: TAutoIncField;
ADOQuery1DSDesigner7: TWideStringField;
ADOQuery1DSDesigner8: TWideStringField;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button9Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Client: TClient;
implementation
uses MyUpdClient, MyServicing;
{$R *.dfm}
procedure TClient.Button1Click(Sender: TObject);
begin
Close;
end;
procedure TClient.Button2Click(Sender: TObject);
begin
if not ADOQuery1.Eof then
begin
Button2.Tag:=1;//свершилось нажатие на кнопку Button2
Close();
end;
end;
procedure TClient.Button8Click(Sender: TObject);
begin
Edit1.Clear;
ADOQuery1.Filtered:=False;
end;
procedure TClient.ComboBox2Change(Sender: TObject);
begin
if Length(Edit1.Text)<>0 then
begin
ADOQuery1.Filter:='['+ComboBox2.Text+'] LIKE '+'''*'+Edit1.Text+'*''';
ADOQuery1.Filtered:=True;
end
else
ADOQuery1.Filtered:=False;
end;
procedure TClient.FormShow(Sender: TObject);
begin
Button2.Tag:=0;
end;
procedure TClient.Button9Click(Sender: TObject);
var
i,j: integer;
Excel: Variant;
WorkbookName: string;
begin
Excel:=CreateOleObject('Excel.Application'); // для остальных
try
Excel.SheetsInNewWorkbook:=1;
Excel.WorkBooks.Add;
WorkbookName := GetCurrentDir + '\Клиенты.xls';
Excel.ActiveWorkbook.SaveAs(WorkbookName); //Открытие книги
Excel.WorkSheets[1].Select;
for i:=0 to ADOQuery1.FieldList.Count-2 do //вывод шапки таблицы
begin
Excel.Cells[1,i+1]:=ADOQuery1.FieldList.Fields[i].DisplayName;
Excel.WorkSheets[1].Columns.Item[i+1].ColumnWidth:=ADOQuery1.FieldList.Fields[i].DisplayWidth;
ADOQuery1.First;
j:=2;
while not ADOQuery1.Eof do //вывод данных таблицы
begin
Excel.Cells[j,i+1]:=ADOQuery1.FieldValues[ADOQuery1.FieldList.Fields[i].FieldName];
ADOQuery1.Next;
j:=j+1;
end;
end;
ADOQuery1.First;
Excel.Range['A1:G'+IntToStr(j-1)].Select; //выбираем область
Excel.Selection.Borders.LineStyle:=1; //делаем границы таблицы
Excel.ActiveWorkbook.Save; //сохранить документ Excel
Excel.WindowState := -4137; //развернуть на весь экран
Excel.Visible := True; //вывести на экран
except
Excel.Quit;
end;
end;
procedure TClient.Button3Click(Sender: TObject);
begin
UpdClient.Edit1.Clear;
UpdClient.Edit2.Clear;
UpdClient.Edit3.Clear;
UpdClient.DateTimePicker1.Date:=Date()-30*365;
UpdClient.Edit5.Clear;
UpdClient.Edit6.Clear;
UpdClient.ComboBox1.ItemIndex:=0;
UpdClient.Button1.Visible:=True;
UpdClient.Button2.Visible:=False;
UpdClient.Caption:='Добавление';
UpdClient.Show;
end;
procedure TClient.Button4Click(Sender: TObject);
begin
if not ADOQuery1.Eof then
begin
UpdClient.Edit1.Text:=ADOQuery1.FieldValues['Фамилия'];
UpdClient.Edit2.Text:=ADOQuery1.FieldValues['Имя'];
UpdClient.Edit3.Text:=ADOQuery1.FieldValues['Отчество'];
UpdClient.Edit5.Text:=ADOQuery1.FieldValues['Телефон'];
UpdClient.Edit6.Text:=ADOQuery1.FieldValues['Адрес'];
UpdClient.ComboBox1.Text:=ADOQuery1.FieldValues['Пол'];
UpdClient.DateTimePicker1.Date:=ADOQuery1.FieldValues['Дата рождения'];
UpdClient.Button1.Visible:=False;
UpdClient.Button2.Visible:=True;
UpdClient.Caption:='Редактирование';
UpdClient.Show;
end;
end;
procedure TClient.Button5Click(Sender: TObject);
begin
if not(ADOQuery1.Eof) and ( MessageDlg('Вы уверены, что хотите удалить запись',
mtConfirmation,[mbYes,mbNo],0)=mrYes)
then
{если да, то}
begin
ADOQuery2.SQL[0]:='DELETE FROM Клиент';
ADOQuery2.SQL[1]:='WHERE Клиент_Номер='+IntToStr(ADOQuery1.FieldValues['Клиент_Номер']);
ADOQuery2.ExecSQL;
ADOQuery1.Active:=False;
ADOQuery1.Active:=True;
end;
end;
procedure TClient.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Button2.Visible:=False;
Button3.Visible:=True;
Button4.Visible:=True;
Button5.Visible:=True;
end;
end.
А.М. Вендров «Программирование ПО экономических информационных систем» М; Финансы и статистика 2002г.
Рудаков А.В. Технология разработки программных продуктов: учеб. пособие.- М.: Академия, 2006
Хорев П.Б. Технология объектно-ориентированного программирования: учеб. пособие.- М.: Академия,2004
Кузин А.В. . Базы данных.: Учеб. пособие.- М.: Академия, 2006
Архангельский А.Я. Программирование в среде Delphi 7. – М.: БИНОМ, 2003
3

Список литературы [ всего 17]

Список литературы
1. Мартин Фаулер – Архитектура корпоративных программных приложений – М.: Вильямс, 2006. – 544с.
2. Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. – Приемы объектно-ориентированного проектирования. Паттерны проектирования. – СПб: Питер, 2001. – 368 с.
3. Г.Н. Калянов «Case – технологии: консалтинг в автоматизации бизнес-процессов» М; Горячая линия – Телеком 2002г.
4. А.М. Вендров «Программирование ПО экономических информационных систем» М; Финансы и статистика 2002г.
5. Калянов Г.Н. CASE. Структурный системный анализ (автоматизация и применение). М., "Лори", 1996
6. Архангельский А.Я. Программирование в среде Delphi 7. – М.: БИНОМ, 2003
7. Кузин А.В. . Базы данных.: Учеб. пособие.- М.: Академия, 2006
8. Организация производства на предприятии (фирме): Учеб. пособие / Под ред. О.В.Волкова.- М.: ИНФРА_М,2004
9. Рудаков А.В. Технология разработки программных продуктов: учеб. пособие.- М.: Академия, 2006
10. Хорев П.Б. Технология объектно-ориентированного программирования: учеб. пособие.- М.: Академия,2004
11. Фуфаев Э.В. Базы данных.: Учеб. пособие.- М.: Академия, 2006
12. Львов, В. Создание систем поддержки принятия решений на основе хранилищ данных / В. Львов // Системы управления базами данных. – 1997. – № 3.
13. Ойхман, Е.Г. Реинжиниринг бизнеса: реинжиниринг организаций и информационные технологии / Е.Г. Ойхман, Э.В. Попов. – М. : Финансы и статистика, 1997.
14. Полковников, А.В. Корпоративная система управления проектами / А.В. Полковников // Электронный офис. – 1997. – № 10.
15. Смирнова, Г.Н. Проектирование экономических информационных систем : учеб. пособие / Г.Н. Смирнова, А.А. Сорокин, Ю.Ф. Тельнов. – М. : Финансы и статистика, 2001. – 512 с.
16. Тельнов, Ю.Ф. Интеллектуальные информационные системы в экономике : учебное пособие / Ю.Ф. Тельнов. – М.: СИНТЕГ, 1999. – (Информатизация России на пороге XXI века)
17. Хотяшов, Э.Н. Проектирование машинной обработки экономической информации / Э.Н. Хотяшов. – М. : Финансы и статистика, 1987. – 246 с.
Очень похожие работы
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.00383
© Рефератбанк, 2002 - 2024