Цель работы: Создание базы данных: «Автоматизированное рабочее место сервисного центра»
СУБД или язык программирования, используемые для реализации курсовой работы: SQL server InterBase 7, Delphi 7
Основные аспекты курсовой работы:
Основная задача курсовой работы создание программного продукта позволяющего вести учет приемки-выдачи заказов в сервисном центре.
Состав курсовой работы должен содержать следующие составные части:
1. Полностью завершённый проект базы данных «Автоматизированное рабочее место сервисного центра», реализованный на базе СУБД InterBase 7, и алгоритмического языка Delphi 7, содержащий следующие модули:
- Ввод нового заказа
- Работа с существующими заказами
- Сортировка
- Отчет о проделанной работе сервисного центра
Заказчик также требует учесть чтобы был ввод данных сервисного центра, возможность сортировать по состоянию заказа.
Обзор рынка аналогичных программ. Имеется целая серия ПО позволяющих вести работу в сервисном центре. Но не многие из этой армии Software имеют гибкую настройку сортировки заказов. К тому же, программы подобного уровня стоят не малые деньги. Также во многих аналогах нет возможности быстро оценить степень срочности заказа благодаря цветовому выделению. Нет также в своем большинстве таких программ вывода информации на бумажный носитель.
В нашей работе мы устраним эти недостатки. А именно добавим в проект возможность гибкой сортировки заказов, цветовое выделение строк, вывод отчетов на бумажный носитель. Программа получила свое название: Dialog3.
Сбор исходных данных. Разберем сам процесс автоматизации рабочего места сервисного центра.
В сервисный центр поступает (Дата приемки, Дата выдачи) устройство (Устройство, Производитель, Модель, Серийный номер), вносятся сведенья о сделавшем заявку, это может быть как физическое лицо, так и юридическое. В случае, если сделало заявку юридическое лицо вносятся сведенья о названии организации и фамилия, имя, отчество через кого была сделана заявка организацией (Правовая форма, Адрес, Телефон, Фамилия, Имя, Отчество) и кто из сотрудников выполнил заявку (Выполнил, Фамилия, Имя, Отчество).
После выполнения заявки вносятся дополнительные сведенья о проделанной работе: какая работа была проделана, в случае если выполняемые услуги в сервисном центре систематизированы вводиться артикул, количество видов работ, цена работы, общая сумма за выполненную работу, дополнительное описание работы если есть необходимость, в случае если пришлось заменить какое-то комплектующие вносятся сведенья об снятом устройстве и сведенья об установленном устройстве (Работа, Артикул, Количество, Цена, Сумма, Описание, Выполнено, Снято, Установлено).
Автоматизация деятельности сервисного центра
... «Металлопрокат». Предмет исследования – автоматизация деятельности сервисного центра ООО «Металлопрокат». Целью данной работы является разработка автоматизированной системы для сервисного центра ООО «Металлопрокат» В соответствии с целью была определена необходимость постановки и решения следующих задач: ...
Интерфейс проекта
После запуска программы мы видим главное окно программы. Можно посмотреть, что необходимо делать. Цветов выделено:
Что позволяет быстро сориентироваться сотруднику сервисного центра – какую работу надо проделать в п6ервую очередь.
Если мы выберем меню Файл, то нам будет предложено выйти из программы.
При выборе в пункте меню поля Запись, нам будет предложено:
Выберем Добавить: мы видим форму заявки на обслуживание. Номер заявка на ремонт и дата приема заявки подставляется автоматически. Далее необходимо выбрать какой вид ремонта производиться: платный или гарантийный.
После чего выбираем устройство, если в устройствах выбрано устройство, которое может содержать другие комплектующие (например системный блок может содержать процессор, материнскую плату, жесткий диск видео и звуковую карту и т.д.), то нажимаем кнопочку возле поля Устройство.
Далее мы выбираем производителя, модель и серийный номер устройства. После чего нам необходимо заполнить название организации делающей заявку или же имя, фамилию, отчество заявителя. Ввести адрес и телефон заказчика. В случае, если заказ делала организация, необходимо ввести фамилию, имя, отчество через кого производился заказ.
После того, как мы ввели основные сведенья нам необходимо нажать далее кнопку Далее, без заполненной формы кнопка ОК для принятия заказа не активируется.
После того, как мы заполнили форму Неисправность и перечень работ, мы нажимаем Ок. Заказ принят.
При нажатии клавиши Enter или же Запись -> Изменить появляется следующая форма:
В этой форме мы можем изменить, как первоначальные сведенья, так и сведенья необходимые нам в течении всей работы над заказом. Во-первых это свойство Состояние.
После того, как работа выполнена заполняется форма Выполненная работа:
Здесь мы устанавливаем какая работа проводилась над заказом и стоимость проводимой работы.
В случае, если во время ремонта производилась замена деталей или комплектующих, то указывается это в формах Снято и Установлено соответственно.
Здесь указываются сведенья об устройстве, серийный номер устройства, артикул, количество и цена устройства. Устройств может быть неограниченное количество.
Если на форме мы нажмем кнопку печать, то появится следующая форма:
Если мы выберем кнопку Квиток, то появиться форма для вывода на печать заявки на ремонт.
Данный квиток выдается заказчику. Данную форму предоставил заказчик программы, она содержит все необходимые заказчику сведенья: дату заказа, кто принял заказ, название и телефон организации по которому можно узнать, как продвигается выполнение работы, номер заказа, какая работа выполняется и какое оборудование предоставил заказчик сервисному центру.
Если же мы выберем Отчет, то появиться отчет о проделанной работе над заказом. В отчете предоставлены полные сведенья о проделанной работе: номер заказа, дата приемки и дата выдачи заказа, кто принимал и кто выдавал заказ, какая работа была проведена, какие устройства были заменены, общая стоимость проведенных работ. Благодаря тому, что сведенья о конечной сумме проделанной работы достаточно полные это позволяет заказчику увидеть «за что» он отдает деньги.
Разработка программы для автоматизации работы магазина спортивной одежды
... для каждого из сотрудников будет создано свое приложение. Список функций для каждого приложения, автоматизация ... XP, Windows 7. Для разработки системы желательно использовать ... информацию о различных аспектах работы магазина. Система также ... оформление договора; оформление заказа клиента; продажа товара; ... Для процесса занесения данных также требуется декомпозиция. На рисунке 5 отображено, какие данные необходимо ...
Для данного отчета приведен пример: в сервисный центр поступила заявка на лечение вирусов. Для лечения вирусов был установлен антивирусный пакет стоимостью 500 рублей. В процессе работы встала производственная необходимость извлечь из системного блока CD – Rom, тут же указывается его цена и модель. В результате этой манипуляции в графе Итого Выполненная работа из общей цены была отнята цена привода.
После того, заказ выполнен необходимо нажать кнопку Заказ выполнен, после чего со строки спадает выделение цветом.
Если в меню Запись выбрать Удалить, то строчка будет выделена черным цветом.
Последний пункт в меню Запись это Сортировка.
Сортировка имеет три вкладки Сортировка, Дополнительно и Расширенный поиск. В Сортировке вводиться критерий выборки и пункт по которому производиться сортировка. В случае, если необходим расширенный поиск, то необходимо выбрать свойство Использовать расширенный поиск.
При выборе условий используются логические операции И и Или. Если необходимо, то для сортировки необходимо использовать вкладку Дополнительно
В Сортировка -> Дополнительно, можно выбрать свойства: Показывать удаленные записи, Находиться сколько дней в ремонте, Показать все невыполненные заказы, находящиеся более 7 дней.
Далее в меню идет Отчет. В отчете мы можем увидеть работу сервисного центра: какие заказы выполнены, кто заказчик, доход за указанный промежуток времени, дату выполнения заказа, какой вид ремонта (гарантийный или платный ремонт).
Программа оснащена достаточно полной справочной системой. В справке полностью отражены о системойолнения формы:сновные свойства программного продукта.
По пожеланиям заказчика в программе реализовано ведение истории работы с программой. Благодаря этому свойству Руководитель может в любое время посмотреть когда и восколько была заявка или же был произведен ремонт. В целом благодаря истории можно просмотреть активность работы отдела.
Так же, конечный пользователь базы данных может настроить программу соответствуя своим пожеланиям.
По умолчанию при установке программы в первый раз все свойства включены.
Пользователь программы может по своему усмотрению изменить цвета выделения в программе. Единственное, что необходимо учесть в данном случае это то, что если после того, как изменить настройки и выйти из программы, то другому пользователю запустившему программу после произведенных изменений будет работать с уже произведенными настройками. То есть, может произойти прецедент, что сотрудники будут постоянно менять настройки программы, поэтому рекомендуется оставлять настройки по умолчанию.
Изменения цвета в программе реализовано очень удобным образом. По желанию, могут быть использованы, как заранее предложенные цвета, так и цвета на выбор пользователя используя графическую палитру.
В программу так же включено сведенья о разработчике: Имя, номер телефона и адрес электронной почты. Это позволяет в случае необходимости доработки или форс-мажорных обстоятельств легко связаться с разработчиком.
Автоматизация управления предприятием
... непрерывный учет, что и будет выполнять разрабатываемое программное обеспечение. 1. Аудит знаний предприятия управление база программный С тех пор как экономисты начали использовать понятие «интеллектуальный капитал», ... операции. 1.2 Ключевые предпосылки Не имеет смысла начинать работу по созданию системы управления знаниями предприятия, пока в той или иной форме не определено, что же на ...
Технологии. Процедура закраски ячеек:
- procedure TForm1.DBCoolGrid1DrawColumnCell(Sender: TObject;
- const Rect: TRect;
- DataCol: Integer;
- Column: TColumn;
- State: TGridDrawState);
var
ss,s:string;
- dat,dat1:TDateTime;
- d1,d,m1,m,y1,y:word;
begin
if DataModule2.IBQuery1_2.RecordCount>0 then
begin
s:=column.Field.Text;
- if Column.Index=0 then
begin
if s=’N’ then
s:=’В ремонте’;
if s=’B’ then
s:=’Отправлено по гарантии’;
if s=’C’ then
s:=’Ждем запчасти’;
if s=’D’ then
s:=’Ждем заказчика’;
if s=’Y’ then
s:=’Выполнено’;
if s=’X’ then
s:=’Удалено’;
- end;
- if Column.Index=3 then
begin
ss:= (Sender as TDBGrid).DataSource.DataSet.FieldByName(‘T113’).AsString;
- if ss<>’Y’ then s:=’Не готово’;
- end;
- if Column.Index=5 then
begin
if s=’1′ then s:=’Платный’else
if s=’2′ then s:=’Гарантийный’;
- end;
- if Column.Index=4 then
begin
DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl04 ‘);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T401=’+s+’ ‘);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
s:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T402’).AsString);
- end;
- if Column.Index=6 then
begin
DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl07 ‘);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T701=’+s+’ ‘);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
s:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T702’).AsString);
- end;
- if Column.Index=7 then
begin
DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl07 ‘);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T701=’+s+’ ‘);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
s:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T707’).AsString);
- end;
- if Column.Index=8 then
begin
DataModule2.IBQueryAll.Close;
with DataModule2 do
Технологии анализа данных (Text Mining, Data Mining)
... УДК 004.912 2. А.А. Барсегян, М.С. Куприянов, В.В. Степаненко, И.И. Холод: Технологии анализа данных. Data Mining, Visual Mining, Text Mining, OLAP: БХВ-Петербург, 2007 3. <http://megaputer.ru/data_mining.php> 4. <http://www.compress.ru/article.aspx?id=10290&iid=424> 5. <http://www.iteam.ru/publications/it/section_92/article_1448/> ...
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl08 ‘);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T801=’+s+’ ‘);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
s:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T802’).AsString);
- end;
- if Column.Index=9 then
begin
DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl08 ‘);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T801=’+s+’ ‘);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
s:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T802’).AsString);
- end;
- if (Sender as TDBGrid).DataSource.DataSet.FieldByName(‘T113′).AsString=’Y’ then
begin
DBCoolGrid1.Canvas.Font.Color:=clGray;
- DBCoolGrid1.Canvas.Brush.Color:=clWhite;
end
else
begin
DBCoolGrid1.Canvas.Font.Color:=clBlack;
- DBCoolGrid1.Canvas.Brush.Color:=clWhite;
- end;
- if (Sender as TDBGrid).DataSource.DataSet.FieldByName(‘T113′).AsString<>’Y’ then
begin
dat:=(Sender as TDBGrid).DataSource.DataSet.FieldByName(‘T103’).AsDateTime;
- dat1:=Date;
- DecodeDate(Dat,y,m,d);
- DecodeDate(Dat1,y1,m1,d1);
- if dat1-dat >=7 then
begin
if (Sender as TDBGrid).DataSource.DataSet.FieldByName(‘T113′).AsString=’N’ then
begin
DBCoolGrid1.Canvas.Font.Color:=clWhite;
- DBCoolGrid1.Canvas.Brush.Color:=form12.Panel1.Color;
- end;
- if (Sender as TDBGrid).DataSource.DataSet.FieldByName(‘T113′).AsString=’D’ then
begin
DBCoolGrid1.Canvas.Font.Color:=clWhite;
- DBCoolGrid1.Canvas.Brush.Color:=form12.Panel2.Color;
- end;
- if (Sender as TDBGrid).DataSource.DataSet.FieldByName(‘T113′).AsString=’C’ then
begin
DBCoolGrid1.Canvas.Font.Color:=clWhite;
- DBCoolGrid1.Canvas.Brush.Color:=form12.Panel3.Color;
- end;
- if (Sender as TDBGrid).DataSource.DataSet.FieldByName(‘T113′).AsString=’B’ then
begin
DBCoolGrid1.Canvas.Font.Color:=clWhite;
- DBCoolGrid1.Canvas.Brush.Color:=form12.Panel4.Color;
- end;
- end;
- end;
- if (Sender as TDBGrid).DataSource.DataSet.FieldByName(‘T113′).AsString=’X’ then
begin
DBCoolGrid1.Canvas.Font.Color:=clGray;
- DBCoolGrid1.Canvas.Brush.Color:=form12.Panel5.Color;
- end;
{if gdFocused in State then
Разработка информационно-аналитической системы контакт-центра
... покупок (связь, развлечения, служба быта). Целью данной дипломной работы является разработка информационно-аналитической системы контакт центра "СИМПРЕЗА". Для достижения данной цели необходимо решить следующие ... выявляет потребности клиентов, их категорию и направленность. 2. Планирует работу с клиентами, разрабатывает методики общения с ними. 3. Организует предварительные переговоры с клиентами, ...
NoId:=DataModule2.IBQuery1_2T101.AsInteger;
- if NoId =(Sender as TDBGrid).DataSource.DataSet.FieldByName(‘T101’).AsInteger then
begin
DBCoolGrid1.Canvas.Font.Style:=[fsBold];
- DBCoolGrid1.Canvas.Font.Color:=clWhite;
- DBCoolGrid1.Canvas.Brush.Color:=$00FF8000;
- end;
}
if gdFocused in State then
begin
DBCoolGrid1.Canvas.Font.Style:=[fsBold];
- DBCoolGrid1.Canvas.Font.Color:=clWhite;
- DBCoolGrid1.Canvas.Brush.Color:=$00FF8000;
- end;
- DBCoolGrid1.Canvas.FillRect(Rect);
- DBCoolGrid1.Canvas.TextRect(Rect, Rect.Left+1, Rect.Top + 2, s);
- end;
- end;
Процедура занесения данных в базу:
- procedure TForm3.SpeedButton1Click(Sender: TObject);
var
i,NT2,NT1,NT4,NT5,NT6,NT7,NT8,NT9,NT10,NT11,NT12:integer;
- s,snam,sot,ss:string;
- DtD:TDateTime;
- DD,MM,YY:word;
begin
dxPickEdit1.Text:=TestStr(dxPickEdit1.Text);
- dxPickEdit2.Text:=TestStr(dxPickEdit2.Text);
- dxPickEdit3.Text:=TestStr(dxPickEdit3.Text);
- dxPickEdit4.Text:=TestStr(dxPickEdit4.Text);
- dxPickEdit5.Text:=TestStr(dxPickEdit5.Text);
- dxPickEdit6.Text:=TestStr(dxPickEdit6.Text);
- dxPickEdit7.Text:=TestStr(dxPickEdit7.Text);
- dxPickEdit8.Text:=TestStr(dxPickEdit8.Text);
- dxPickEdit9.Text:=TestStr(dxPickEdit9.Text);
- dxPickEdit10.Text:=TestStr(dxPickEdit10.Text);
- dxPickEdit11.Text:=TestStr(dxPickEdit11.Text);
- form1.Memo1.Lines.Append(‘+——{**___**}——+’);
- form1.Memo1.Lines.Append(‘Add:’+dxPickEdit1.Text);
- form1.Memo1.Lines.Append(‘Add:’+dxPickEdit2.Text);
- form1.Memo1.Lines.Append(‘Add:’+dxPickEdit3.Text);
- form1.Memo1.Lines.Append(‘Add:’+dxPickEdit4.Text);
- form1.Memo1.Lines.Append(‘Add:’+dxPickEdit5.Text);
- form1.Memo1.Lines.Append(‘Add:’+dxPickEdit6.Text);
- form1.Memo1.Lines.Append(‘Add:’+dxPickEdit7.Text);
- form1.Memo1.Lines.Append(‘Add:’+dxPickEdit8.Text);
- form1.Memo1.Lines.Append(‘Add:’+dxPickEdit9.Text);
- form1.Memo1.Lines.Append(‘Add:’+dxPickEdit10.Text);
- form1.Memo1.Lines.Append(‘Add:’+dxPickEdit11.Text);
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl04 ‘);
- s:=Trim(dxPickEdit1.Text);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T402=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
nt4:=DataModule2.IBQueryAll.fieldbyname(‘T401’).AsInteger
Информационные технологии в образовании (2)
... создания подобных электронных приложений. Дипломный проект состоит из трех частей: 1. Первая часть - аналитическая, в ней содержится: Аспекты внедрения новых информационных технологий, как в повседневную ... каждого пользователя как в российское, так и в мировое информационное пространство. работе учащихся на домашнем компьютере. назначение. Огромный объем памяти носителя информации позволяет ...
else
begin
DataModule2.IBTable4.Insert;
- DataModule2.IBTable4T401.AsInteger:=0;
- s100:=dxPickEdit1.Text;
- if s100=» then s100:=’none’;
- DataModule2.IBTable4T402.AsString:=s100;
- DataModule2.IBTable4.Post;
- DataModule2.IBQueryAll.Close;
- DataModule2.IBQueryAll.Open;
- nt4:=DataModule2.IBQueryAll.fieldbyname(‘T401’).AsInteger
end;
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl05 ‘);
- s:=Trim(dxPickEdit2.Text);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T502=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
nt5:=DataModule2.IBQueryAll.fieldbyname(‘T501’).AsInteger
else
begin
DataModule2.IBTable5.Insert;
- DataModule2.IBTable5T501.AsInteger:=0;
- s100:=dxPickEdit2.Text;
- if s100=» then s100:=’none’;
- DataModule2.IBTable5T502.AsString:=s100;
- DataModule2.IBTable5.Post;
- DataModule2.IBQueryAll.Close;
- DataModule2.IBQueryAll.Open;
- nt5:=DataModule2.IBQueryAll.fieldbyname(‘T501’).AsInteger
end;
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl06 ‘);
- s:=Trim(dxPickEdit3.Text);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T602=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
nt6:=DataModule2.IBQueryAll.fieldbyname(‘T601’).AsInteger
else
begin
DataModule2.IBTable6.Insert;
- DataModule2.IBTable6T601.AsInteger:=0;
- s100:=dxPickEdit3.Text;
- if s100=» then s100:=’none’;
- DataModule2.IBTable6T602.AsString:=s100;
- DataModule2.IBTable6.Post;
- DataModule2.IBQueryAll.Close;
- DataModule2.IBQueryAll.Open;
- nt6:=DataModule2.IBQueryAll.fieldbyname(‘T601’).AsInteger
end;
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl08 ‘);
- s:=Trim(dxPickEdit11.Text);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T802=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
nt8:=DataModule2.IBQueryAll.fieldbyname(‘T801’).AsInteger
else
begin
DataModule2.IBTable8.Insert;
- DataModule2.IBTable8T801.AsInteger:=0;
- s50:=dxPickEdit11.Text;
- if s50=» then s50:=’none’;
- DataModule2.IBTable8T802.AsString:=s50;
- DataModule2.IBTable8.Post;
- DataModule2.IBQueryAll.Close;
- DataModule2.IBQueryAll.Open;
- nt8:=DataModule2.IBQueryAll.fieldbyname(‘T801’).AsInteger
end;
Автоматизация рабочего места диспетчера по транспорту
... получения необходимой информации. Актуальность данной работы заключается в необходимости комплексной автоматизации рабочих мест диспетчеров. Целью дипломной работы является разработка и внедрение модуля ... 1С: Управление Автотранспортом». «1С: Управление Автотранспортом» обеспечивает комплексную поддержку бизнес-процессов в транспортных организациях и подразделениях, позволяет получать и использовать ...
- DataModule2.IBQueryAll.Close;
- if dxPickEdit5.Text=» then
begin
snam:=trim(dxPickEdit9.Text);
- sot:=trim(dxPickEdit10.Text);
- ss:=Trim(dxPickEdit8.Text);
- if snam<>» then
ss:=ss+’ ‘+snam[1]+’.’;
- if sot<>» then
ss:=ss+’ ‘+sot[1]+’.’;
- dxPickEdit5.Text:=ss;
- end;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl07 ‘);
- s:=Trim(dxPickEdit5.Text);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where (T702=»’+s+»’) and’);
- s:=Trim(dxPickEdit6.Text);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘ (T706=»’+s+»’) and’);
- s:=Trim(dxPickEdit7.Text);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘ (T707=»’+s+»’) and’);
- s:=Trim(dxPickEdit8.Text);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘ (T703=»’+s+»’) and’);
- s:=Trim(dxPickEdit9.Text);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘ (T704=»’+s+»’) and’);
- s:=Trim(dxPickEdit10.Text);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘ (T705=»’+s+»’)’);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
nt7:=DataModule2.IBQueryAll.fieldbyname(‘T701’).AsInteger
else
begin
DataModule2.IBTable7.Insert;
- DataModule2.IBTable7T701.AsInteger:=0;
- s100:=dxPickEdit5.Text;
- if s100=» then s100:=’none’;
- DataModule2.IBTable7T702.AsString:=s100;
- s30:=dxPickEdit8.Text;
- if s30=» then s30:=’none’;
- DataModule2.IBTable7T703.AsString:=s30;
- s30:=dxPickEdit9.Text;
- if s30=» then s30:=’none’;
- DataModule2.IBTable7T704.AsString:=s30;
- s30:=dxPickEdit10.Text;
- if s30=» then s30:=’none’;
- DataModule2.IBTable7T705.AsString:=s30;
- s100:=dxPickEdit6.Text;
- if s100=» then s100:=’none’;
- DataModule2.IBTable7T706.AsString:=s100;
- s30:=dxPickEdit7.Text;
- if s30=» then s30:=’none’;
- DataModule2.IBTable7T707.AsString:=s30;
- DataModule2.IBTable7.Post;
- DataModule2.IBQueryAll.Close;
- DataModule2.IBQueryAll.Open;
- nt7:=DataModule2.IBQueryAll.fieldbyname(‘T701’).AsInteger
end;
Автоматизированная обучающая система «Программирование»
... часть 1.1 Описание предметной области В данной курсовой работе требуется автоматизировать процесс обучения студентов по дисциплине «Программирование». Для описания предметной области воспользуемся ... показывает, что данные проблемы могут быть решены с использованием автоматизированных обучающих систем. Автоматизированные обучающие системы представляют собой комплексы научно-методической, учебной ...
- {Showmessage(‘T4=’+inttostr(nt4)+’ T5=’+inttostr(nt5)+’ T6=’+inttostr(nt6)+’ T7=’+inttostr(nt7)+’ ‘+’ T8=’+inttostr(nt8)+’ ‘);}
begin
DataModule2.IBTable1.Insert;
- DataModule2.IBTable1T101.AsInteger:=0;
- DataModule2.IBTable1T102.AsInteger:=round(dxSpinEdit1.Value);
- DataModule2.IBTable1T103.AsDateTime:=StrToDate(dxDateEdit1.Text);
- dtd:=StrToDate(dxDateEdit1.Text);
- DecodeDate(DtD,YY,MM,DD);
- DtD:=DateSer(YY,MM,DD-1);
- DataModule2.IBTable1T104.AsDateTime:=DtD;
- DataModule2.IBTable1T105.AsInteger:=NT4;
- DataModule2.IBTable1T106.AsInteger:=NT5;
- DataModule2.IBTable1T107.AsInteger:=NT6;
- s20:=dxPickEdit4.Text;
- if s20=» then s20:=’none’;
- DataModule2.IBTable1T108.AsString:=s20;
- if dxCheckEdit1.Checked then
DataModule2.IBTable1T109.AsString:=’1′
else
DataModule2.IBTable1T109.AsString:=’2′;
- DataModule2.IBTable1T110.AsInteger:=NT7;
- DataModule2.IBTable1T111.AsInteger:=NT8;
- DataModule2.IBTable1T112.AsInteger:=NT8;
- DataModule2.IBTable1T113.AsString:=’N’;
- DataModule2.IBTable1.Post;
- DataModule2.IBQueryAll.Close;
- DataModule2.IBQueryAll.Open;
- DataModule2.IBTable1.Refresh;
- DataModule2.IBTable1.Last;
- nt1:=DataModule2.IBTable1T101.AsInteger;
for i:=1 to 5 do
if trim(form4.StringGrid1.Cells[1,i])<>» then
begin
DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl09 ‘);
- s:=trim(form4.StringGrid1.Cells[1,i]);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T902=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
nt2:=DataModule2.IBQueryAll.fieldbyname(‘T901’).AsInteger
else
begin
DataModule2.IBTable9.Insert;
- DataModule2.IBTable9T901.AsInteger:=0;
- s200:=trim(form4.StringGrid1.Cells[1,i]);
- if s200=» then s200:=’none’;
- DataModule2.IBTable9T902.AsString:=s200;
- DataModule2.IBTable9.Post;
- DataModule2.IBQueryAll.Close;
- DataModule2.IBQueryAll.Open;
- nt2:=DataModule2.IBQueryAll.fieldbyname(‘T901’).AsInteger
end;
- DataModule2.IBTable2.Insert;
- DataModule2.IBTable2T201.AsInteger:=0;
- DataModule2.IBTable2T202.AsInteger:=nt1;
- DataModule2.IBTable2T203.AsInteger:=nt2;
- DataModule2.IBTable2.Post;
- end;
- end;
- for i:=1 to Form14.CoolStringGrid1.RowCount-1 do
if trim(form14.CoolStringGrid1.Cells[1,i])<>» then
begin
DataModule2.IBTable14.Insert;
- DataModule2.IBTable14T1401.AsInteger:=0;
- DataModule2.IBTable14T1402.AsInteger:=nt1;
- s100:=Form14.CoolStringGrid1.Cells[0,i];
- if s100=» then s100:=’none’;
- DataModule2.IBTable14T1403.AsString:=s100;
- s100:=Form14.CoolStringGrid1.Cells[1,i];
- if s100=» then s100:=’none’;
- DataModule2.IBTable14T1404.AsString:=s100;
- DataModule2.IBTable14.Post;
- end;
- DataModule2.IBTable1.Refresh;
- DataModule2.IBTable2.Refresh;
- DataModule2.IBTable4.Refresh;
- DataModule2.IBTable5.Refresh;
- DataModule2.IBTable6.Refresh;
- DataModule2.IBTable7.Refresh;
- DataModule2.IBTable8.Refresh;
- DataModule2.IBTable9.Refresh;
- Form1.RefreshDB;
- close;
- end;
Процедура закрытия БД (эмуляция перезагрузки компьютера):
- Procedure TForm1.RefreshDB;
begin
DataModule2.IBDatabase1.Close;
- DataModule2.IBDatabase1.Open;
- DataModule2.IBTable1.Open;
- DataModule2.IBTable2.Open;
- DataModule2.IBTable3.Open;
- DataModule2.IBTable4.Open;
- DataModule2.IBTable5.Open;
- DataModule2.IBTable6.Open;
- DataModule2.IBTable7.Open;
- DataModule2.IBTable8.Open;
- DataModule2.IBTable9.Open;
- DataModule2.IBTable10.Open;
- DataModule2.IBTable11.Open;
- DataModule2.IBTable12.Open;
- DataModule2.IBTable14.Open;
- DataModule2.IBQuery1.Open;
- DataModule2.IBQuery1_1.Open;
- DataModule2.IBQuery1_2.Open;
- DataModule2.IBQuery10.Open;
- DataModule2.IBQuery11.Open;
- DataModule2.IBQuery12.Open;
- DataModule2.IBQuery14.Open;
- DataModule2.IBQuery14_1.Open;
- DataModule2.IBQuery2.Open;
- DataModule2.IBQuery2_1.Open;
- DataModule2.IBQuery3.Open;
- DataModule2.IBQuery3_1.Open;
- DataModule2.IBQuery4.Open;
- DataModule2.IBQuery5.Open;
- DataModule2.IBQuery6.Open;
- DataModule2.IBQuery7.Open;
- DataModule2.IBQuery8.Open;
- DataModule2.IBQuery9.Open;
- DataModule2.IBQueryAll.Open;
- DataModule2.IBQueryAll2.Open;
- end;
- function DateSer(y, m, d: Integer): TDateTime;
const
mj: array[1..12] of Integer = (31, 28, 31, 30, 31, 30, 31,
31, 30, 31, 30, 31);
var
add: Integer;
begin
while (true) do
begin
y := y + (m — 1) div 12;
- m := (m — 1) mod 12 + 1;
- if m <= 0 then
begin
Inc(m, 12);
- Dec(y);
- end;
if ((y mod 4 = 0) and
((y mod 100 <> 0) or (y mod 400 = 0)))
and (m = 2) then
add := 1 //дополнительный день в феврале
else
add := 0;
- if (d >
- 0) and (d <= (mj[m] + add)) then
break;
- if d > 0 then
begin
Dec(d, mj[m] + add);
- Inc(m);
end
else
begin
Inc(d, mj[m] + add);
- Dec(m);
- end;
- end;
- Result := EncodeDate(y, m, d);
- end;
Заполнение полей:
- procedure TForm3.FormShow(Sender: TObject);
var
s:string;
begin
dxPickEdit1.Items.Clear;
- DataModule2.IBQuery4.First;
repeat
s:=Trim(DataModule2.IBQuery4T402.AsString);
- if s<>» then
if dxPickEdit1.Items.IndexOf(s)=-1 then
dxPickEdit1.Items.Add(s);
- DataModule2.IBQuery4.Next;
- until DataModule2.IBQuery4.Eof;
- dxPickEdit1.Sorted:=true;
- dxPickEdit2.Items.Clear;
- DataModule2.IBQuery5.First;
repeat
s:=Trim(DataModule2.IBQuery5T502.AsString);
- if s<>» then
if dxPickEdit2.Items.IndexOf(s)=-1 then
dxPickEdit2.Items.Add(s);
- DataModule2.IBQuery5.Next;
- until DataModule2.IBQuery5.Eof;
- dxPickEdit2.Sorted:=true;
- dxPickEdit3.Items.Clear;
- DataModule2.IBQuery6.First;
repeat
s:=Trim(DataModule2.IBQuery6T602.AsString);
- if s<>» then
if dxPickEdit3.Items.IndexOf(s)=-1 then
dxPickEdit3.Items.Add(s);
- DataModule2.IBQuery6.Next;
- until DataModule2.IBQuery6.Eof;
- dxPickEdit3.Sorted:=true;
- dxPickEdit11.Items.Clear;
- DataModule2.IBQuery8.First;
repeat
s:=Trim(DataModule2.IBQuery8T802.AsString);
- if s<>» then
if dxPickEdit11.Items.IndexOf(s)=-1 then
dxPickEdit11.Items.Add(s);
- DataModule2.IBQuery8.Next;
- until DataModule2.IBQuery8.Eof;
- dxPickEdit11.Sorted:=true;
- dxPickEdit5.Items.Clear;
- dxPickEdit6.Items.Clear;
- dxPickEdit7.Items.Clear;
- dxPickEdit8.Items.Clear;
- dxPickEdit9.Items.Clear;
- dxPickEdit10.Items.Clear;
- DataModule2.IBQuery7.First;
repeat
s:=Trim(DataModule2.IBQuery7T702.AsString);
- if s<>» then
if dxPickEdit5.Items.IndexOf(s)=-1 then
dxPickEdit5.Items.Add(s);
- s:=Trim(DataModule2.IBQuery7T706.AsString);
- if s<>» then
if dxPickEdit6.Items.IndexOf(s)=-1 then
dxPickEdit6.Items.Add(s);
- s:=Trim(DataModule2.IBQuery7T707.AsString);
- if s<>» then
if dxPickEdit7.Items.IndexOf(s)=-1 then
dxPickEdit7.Items.Add(s);
- s:=Trim(DataModule2.IBQuery7T703.AsString);
- if s<>» then
if dxPickEdit8.Items.IndexOf(s)=-1 then
dxPickEdit8.Items.Add(s);
- s:=Trim(DataModule2.IBQuery7T704.AsString);
- if s<>» then
if dxPickEdit9.Items.IndexOf(s)=-1 then
dxPickEdit9.Items.Add(s);
- s:=Trim(DataModule2.IBQuery7T705.AsString);
- if s<>» then
if dxPickEdit10.Items.IndexOf(s)=-1 then
dxPickEdit10.Items.Add(s);
- DataModule2.IBQuery7.Next;
- until DataModule2.IBQuery7.Eof;
- dxPickEdit5.Sorted:=true;
- dxPickEdit6.Sorted:=true;
- dxPickEdit7.Sorted:=true;
- dxPickEdit8.Sorted:=true;
- dxPickEdit9.Sorted:=true;
- dxPickEdit10.Sorted:=true;
- end;
Процедура открытия и редактирования:
- procedure TForm1.N7Click(Sender: TObject);
var
id,id2,i,no:integer;
- s:string;
begin
BM := DataModule2.IBQuery1_2.GetBookmark;
- id:=DataModule2.IBQuery1_2T101.AsInteger;
- id2:=DataModule2.IBQuery1_2T102.AsInteger;
- Form5.NT1:=id;
- Form5.id2:=id2;
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl01 ‘);
- IBQueryAll.SQL.Add(‘where T101=’+inttostr(id)+’ ‘);
- end;
- DataModule2.IBQueryAll.Open;
- Form5.NT2:=DataModule2.IBQueryAll.fieldbyname(‘T102’).AsInteger;
- Form5.dxDateEdit1.Date:=DataModule2.IBQueryAll.fieldbyname(‘T103’).AsDateTime;
- Form5.dxDateEdit2.Date:=DataModule2.IBQueryAll.fieldbyname(‘T104’).AsDateTime;
- Form5.NT5:=DataModule2.IBQueryAll.fieldbyname(‘T105’).AsInteger;
- Form5.NT6:=DataModule2.IBQueryAll.fieldbyname(‘T106’).AsInteger;
- Form5.NT7:=DataModule2.IBQueryAll.fieldbyname(‘T107’).AsInteger;
- Form5.dxPickEdit4.Text:=trim(DataModule2.IBQueryAll.fieldbyname(‘T108’).AsString);
- Form5.NT9:=DataModule2.IBQueryAll.fieldbyname(‘T109’).AsString;
- Form5.NT10:=DataModule2.IBQueryAll.fieldbyname(‘T110’).AsInteger;
- Form5.NT11:=DataModule2.IBQueryAll.fieldbyname(‘T111’).AsInteger;
- Form5.NT12:=DataModule2.IBQueryAll.fieldbyname(‘T112’).AsInteger;
- Form5.NT13:=DataModule2.IBQueryAll.fieldbyname(‘T113’).AsString;
- Form5.Caption:=’Редактирование заявки на обслуживание № ‘+inttostr(form5.NT2);
- if Form5.NT13<>’Y’ then Form5.dxDateEdit2.Visible:=false;
- form5.SpeedButton6.Enabled:=true;
- if Form5.NT13=’Y’then form5.SpeedButton6.Enabled:=false;
- Form5.dxCheckEdit1.Checked:=false;
- Form5.dxCheckEdit2.Checked:=false;
- If form5.NT9=’1′ then
Form5.dxCheckEdit1.Checked:=true;
- If form5.NT9=’2′ then
Form5.dxCheckEdit2.Checked:=true;
- if form5.NT13=’N’ then
form5.dxPickEdit13.ItemIndex:=0;
- if form5.NT13=’B’ then
form5.dxPickEdit13.ItemIndex:=1;
- if form5.NT13=’C’ then
form5.dxPickEdit13.ItemIndex:=2;
- if form5.NT13=’D’ then
form5.dxPickEdit13.ItemIndex:=3;
- if form5.NT13=’Y’ then
form5.dxPickEdit13.ItemIndex:=4;
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl04 ‘);
- s:=inttostr(form5.NT5);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T401=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- Form5.dxPickEdit1.Text:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T402’).AsString);
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl05 ‘);
- s:=inttostr(form5.NT6);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T501=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- Form5.dxPickEdit2.Text:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T502’).AsString);
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl06 ‘);
- s:=inttostr(form5.NT7);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T601=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- Form5.dxPickEdit3.Text:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T602’).AsString);
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl07 ‘);
- s:=inttostr(form5.NT10);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T701=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- form5.dxSpinEdit1.Value:=form5.id2;
- Form5.dxPickEdit5.Text:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T702’).AsString);
- Form5.dxPickEdit6.Text:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T706’).AsString);
- Form5.dxPickEdit7.Text:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T707’).AsString);
- Form5.dxPickEdit8.Text:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T703’).AsString);
- Form5.dxPickEdit9.Text:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T704’).AsString);
- Form5.dxPickEdit10.Text:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T705’).AsString);
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl08 ‘);
- s:=inttostr(form5.NT11);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T801=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- Form5.dxPickEdit11.Text:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T802’).AsString);
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl08 ‘);
- s:=inttostr(form5.NT12);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T801=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- Form5.dxPickEdit12.Text:=Trim(DataModule2.IBQueryAll.fieldbyname(‘T802’).AsString);
- DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl02 ‘);
- s:=inttostr(form5.NT1);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T202=»’+s+»»);
- end;
- DataModule2.IBQueryAll.Open;
- DataModule2.IBQueryAll.First;
- i:=0;
- Form5.CoolStringGrid1.Clear;
- if DataModule2.IBQueryAll.RecordCount>0 then
repeat
no:=DataModule2.IBQueryAll.fieldbyname(‘T203’).AsInteger;
- DataModule2.IBQueryAll2.Close;
with DataModule2 do
begin
IBQueryAll2.SQL.Clear;
- IBQueryAll2.SQL.Add(‘select * from tabl09 ‘);
- s:=inttostr(No);
- if s=» then s:=’none’;
- IBQueryAll2.SQL.Add(‘where T901=»’+s+»»);
- end;
- DataModule2.IBQueryAll2.Open;
- Inc(i);
- Form5.CoolStringGrid1.Cells[0,i]:=trim(DataModule2.IBQueryAll2.fieldbyname(‘T902’).AsString);
- DataModule2.IBQueryAll.Next;
- until DataModule2.IBQueryAll.Eof;
Процедура автоматического заполнения формы:
- procedure TForm3.dxPickEdit5KeyPress(Sender: TObject;
- var Key: Char);
var
s:string;
begin
s:=dxPickEdit5.Text;
{if key=#13 then}
begin
DataModule2.IBQueryAll.Close;
with DataModule2 do
begin
IBQueryAll.SQL.Clear;
- IBQueryAll.SQL.Add(‘select * from tabl07 ‘);
- if s=» then s:=’none’;
- IBQueryAll.SQL.Add(‘where T702=»’+s+»»);
- IBQueryAll.SQL.Add(‘order by T701 desc ‘);
- end;
- DataModule2.IBQueryAll.Open;
- if DataModule2.IBQueryAll.RecordCount>0 then
begin
dxPickEdit6.Text := Trim(DataModule2.IBQueryAll.fieldbyname(‘T706’).AsString);
- dxPickEdit7.Text := Trim(DataModule2.IBQueryAll.fieldbyname(‘T707’).AsString);
- dxPickEdit8.Text := Trim(DataModule2.IBQueryAll.fieldbyname(‘T703’).AsString);
- dxPickEdit9.Text := Trim(DataModule2.IBQueryAll.fieldbyname(‘T704’).AsString);
- dxPickEdit10.Text := Trim(DataModule2.IBQueryAll.fieldbyname(‘T705’).AsString);
- end;
- Руководство.
Программа имеет интуитивно понятный интерфейс. Не всегда есть необходимость ввести полный набор данных, поэтому необязательно вводить всю информацию, достаточно ввести только основное.
Так как программа имеет очень узко специализированную область применения (это требуется заказчику), и нет необходимости создавать дополнительную справочную систему. Достаточно будет обучения заказчика. В план обучения входит:
- Обучение установки программы
- Восстановление поврежденных данных и предотвращение. (эти два пункта есть в помощи поставляемой с InterBase)
- Обучение заполнению данных (для дальнейшей работы, есть справочник который в полном объеме представляет информацию по программе, а благодаря интуитивно понятному интерфейсу, вероятность ошибиться равна нулю).
Помощь по работе с программой:
1. Создание новой записи
Находясь в рабочей области нажмите <<Ins>> или Запись —> Новая.
В появившемся окне желательно заполнить графы: устройство, Организация/физ. лицо, Специалист сервисного центра. И О Б Я З А Т Е Л Ь Н О указать вид ремонта. Затем нажать далее и указать неполадки.
Если заполняя графу <<Организация/Физ.лицо>> дважды нажать <<Enter>>, то остальные графы заполнятся сами, используя предыдущие данные.
2. Открытие записи
Находясь в рабочей области нажмите <<Enter>> или Запись —> Открыть. В появившемся окне можно указать выполненные операции и распечатать. Дату выдачи есть смысл ставить только при установлении
состояния в положение <<Выполнено>>
3. Сортировка записи
Находясь в рабочей области нажмите <<F3>> или Запись —> Сортировка. В появившемся окне нужно указать критерий выборки и текст выборки. Если не требуется выборка, то в критерии выборки нужно указать — none- В этой версии не требуется вводить весь текст. Достаточно ввесть только часть. например: дана фамилия «Иванов» можно ввести «Ив». добавлять знак «%» не требуется. Если нужно искать по типу ремонта то при платном нужно указать «1», а при гарантийном «2»
4. Настройки
Находясь в рабочей области нажмите Настройка —> Настройка.В появившемся окне есть два пункта Цвет и Log. Для изменения цвета нужно кликнуть по цветному квадратику
Порядок ввода в эксплуатацию.
Установка Программы.
На диске находится Borland Interbase v7.0.1. следует запустить Setup.exe и проследовав инструкции установить сервер. Для регистрации следует запустить KeyGen.exe.
Далее следует перезагрузить компьютер и посмотреть должен появиться процесс ibguardian теперь нужно запустить программу IBConsole. В ней создать новый сервер Local Server. Теперь зайти в папку Dialog2 и запустить setup.exe.
Теперь установка завершена.
Оценка проекта.
Заказчик:
Все поставленные цели выполнены
1. Полностью завершённый проект базы данных «Автоматизированное рабочее место сервисного центра», реализованный на базе СУБД InterBase 7, и алгоритмического языка Delphi 7, содержащий следующие модули:
- Ввод нового заказа
- Работа с существующими заказами
- Сортировка
- Отчет о проделанной работе сервисного центра
В целом программа является функциональной и завершенной, удовлетворяющая поставленной задачи.
Литература 1. Справочная служба поставляемая с комплексом Borland InterBase 7.0
2. Справочная служба поставляемая с комплексом Borland Delphi 7.0
3. Шкарина Л. Язык SQL: учебный курс. – СПб.: Питер, 2001. – 592 с.:ил.
4. Дарахвелидзе П. Delphi 4. СПб.: БХВ –Санкт-Питербург,1999. –816 с.:ил.
5. Дарахвелидзе П. Программирование в Delphi 7. СПб.: БХВ –Петербург,2003. –784 с.:ил.