47148 (Информационная система менеджера по работе с клиентами), страница 2
Описание файла
Документ из архива "Информационная система менеджера по работе с клиентами", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "47148"
Текст 2 страницы из документа "47148"
На этапе анализа необходимо провести подробное исследование: будущих функциональных возможностей разрабатываемой системы; информации, необходимой для их выполнения. Поэтому особое внимание было уделено полноте информации и поиску противоречивой, дублирующей или неиспользуемой информации. После того как была проведена нормализация таблицы "Заказ" и "Перечень", они были объединены в одну – "Заказ"
Каждая сущность имеет большое количество атрибутов, но, проанализировав все требования к системе и проведя детализацию хранилищ данных, будущую модель можно представить в виде связанных между собой отношениями сущностей:
-
Услуги:
-
Номер_п/п;
-
Наименование;
-
К-во;
-
Закупочная_ Цена;
-
Цена_продажи;
-
№_накладной.
-
-
Продавцы:
-
Номер_п/п;
-
ФИО;
-
Адрес;
-
Телефон;
-
Пароль.
-
Клиенты:
-
Номер_п/п;
-
ФИО;
-
Адрес;
-
Телефон.
-
Заказ:
-
Номер_п/п;
-
№_продавца;
-
№_клиента;
-
№_накладной;
-
№_услуги;
-
Количество;
-
Сумма.
-
Данные накладной:
-
Сдатчик;
-
Получатель;
-
Основание;
-
Выдать;
-
Дата;
-
№_накладной.
В результате полученная модель данных графически представлена в виде инфологической модели, представленной в виде рисунка 8: (Приложение 5).
На основе разработанной инфологической модели строится датологическая модель данных. Наиболее приемлемой для дальнейшей разработки является реляционная модель данных представленная в виде рисунка 9: (Приложение 6).
-
-
Описание и обоснование выбора состава технических и программных средств
Существующее техническое оснащение: персональный компьютер класса Pentium IV, принтер марки Canon 100. Программное обеспечение – совокупность программ для реализации целей и задач информационной системы, а также нормального функционирования комплекса технических средств. В состав программного обеспечения входят общесистемные и специальные программные продукты. К общесистемному программному обеспечению относятся комплексы программ, ориентированных на пользователей и предназначенных для типовых задач обработки информации. Информационное обеспечение, реально существующее на рабочем – операционная система Windows ХР и Microsoft Office. В связи с этим тип файлов базы данных был выбран .mdb (MS Access).
Сама информационная система реализована в среде разработки приложений Delphi. В основе идеологии Delphi лежит технология визуального проектирования и методология объектно-ориентированного программирования. Для представления программ в Delphi используется разработанный Borland язык Object Pascal, в основе которого лежит Turbo Pascal.
В основе Delphi лежит концепция быстрого создания приложений (RAD -Rapid Application Development). Основной составляющей среды быстрого создания приложений является технология, получившая название Two Ways Tools. Это значит, что при размещении или изменении компонента в какой-либо форме, соответствующая программа автоматически дополняется и модифицируется. И наоборот, все изменения, которые вносятся в программу при разработке приложения, автоматически отражаются на функциональных свойствах компонентов формы.
Среда разработки приложений Delphi предоставляет программисту широкие возможности создания интерфейса пользователя и большой выбор компонентов, входящих в стандартный набор, с помощью которых можно создавать приложения достаточно высокого уровня сложности. Среда программирования обладает всеми возможностями современных систем управления базами данных и имеет встроенную поддержку языка структурированных запросов SQL.
-
Описание алгоритма программы
Схемы загрузки форм представлены в виде рисунка 10. (Приложение 7).
Алгоритм работы программы представлен в виде блок-схемы, демонстрирующей кнопки вызова форм.
После запуска файла Ritual.exe на экране выводится форма Проверка прав (блок 2), которая через элемент MaskEdit предлагает ввести пароль. На форме находятся несколько вкладок:
-
"Продать" (блок 5) на этой вкладке выполняются все действия связанные с оформлением заказа. Также на этой вкладке можно добавить нового клиента фирмы и сохранить данные накладной. На вкладке находится кнопка "Печать накладной" (блок 6), при помощи которой можно попасть на форму "Накладная" (блок 7);
-
"Приход материалов" (блок 8) позволяет фиксировать приход материалов на склад;
-
"Пароль" (блок 9) осуществляет редактировать пароль доступа к программе;
Так же на форме главная находятся 2 кнопки:
-
"Справка" (блок 10) активирует форму "Справка" (блок 11) на которой можно просмотреть справку по работе с программой. Возврат на форму "Главная" осуществляется путем нажатия кнопки "На главную" (блок 12);
-
"Выход" (блок 13) осуществляет закрытие программы.
Блок – схема программы представлена в Приложении 8.
-
Описание функциональных точек
В проекте используется 5 форм, 13 невизуальных компонентов и процедуры обработки событий, которые в совокупности предназначены для автоматизации обслуживания клиентов фирмы, оказывающей ритуальные услуги. Все невизуальные компоненты находятся на форме "DataModule1". Форма "DataModule1" представлена в виде рисунка 12 (приложение 9).
Каждый из этих компонентов выполняет свою определённую функцию. Например, компоненты с названиями: Klient_Table1, Uslugi_Table2, Zakaz_Table1, ProdavetsTable1, Nakladn_Table1, ADOTable1 используются для подключения таблиц из базы данных.
Компоненты: Klient, Uslugi, Zakaz, Prodavets, Nakladn, DataSource1– используются для вывода информации из базы данных в таблицы.
Основные процедуры обработки событий:
Файл Glavnaya.pas.
-
procedure TGlavnaya_.Button1Click - процедура добавления нового клиента фирмы;
procedure TGlavnaya_.Button1Click(Sender: TObject);
begin
DBEdit1.ReadOnly:=false;// активация поля ввода
DBEdit2.ReadOnly:=false;// активация поля ввода
DBEdit3.ReadOnly:=false; // активация поля ввода
Button3.Enabled:=true; //активация кнопки
Button4.Enabled:=true;// активация кнопки
Button1.Enabled:=false;// деактивация кнопки
Button2.Enabled:=false;// деактивация кнопки
Button6.Enabled:=false; // деактивация кнопки
Button7.Enabled:=false; // деактивация кнопки
DBEdit1.SetFocus; // Установка курсора
DataModule1.Klient_Table1.Insert; //Добавление записи
end;
-
procedure TGlavnaya_.Button3Click – процедура сохранения данных;
procedure TGlavnaya_.Button3Click(Sender: TObject);
begin
if (DBEdit1.Text='') or (DBEdit2.Text='') or (DBEdit3.Text='')
then
begin
ShowMessage('Заполните все поля'); // вывод сообщения
DBEdit1.SetFocus;// установка курсора
end
else
begin
Button3.Enabled:=false; // деактивация кнопки
Button4.Enabled:=false; // деактивация кнопки
Button1.Enabled:=true; // активация кнопки
Button2.Enabled:=true; // активация кнопки
Button6.Enabled:=true; // активация кнопки
Button7.Enabled:=true; // активация кнопки
DataModule1.Klient_Table1.Post; // Сохранение записи
DBEdit1.ReadOnly:=true; // деактивация поля ввода
DBEdit2.ReadOnly:=true; // деактивация поля ввода
DBEdit3.ReadOnly:=true; // деактивация поля ввода
end;
end;
-
procedure TGlavnaya_.Button4Click - процедура нажатия кнопки "Отмена";
procedure TGlavnaya_.Button4Click(Sender: TObject);
begin
Button3.Enabled:=false; // деактивация кнопки
Button4.Enabled:=false; // деактивация кнопки
Button1.Enabled:=true; // активация кнопки
Button2.Enabled:=true; // активация кнопки
Button6.Enabled:=true; // активация кнопки
Button7.Enabled:=true; // активация кнопки
DataModule1.Klient_Table1.Cancel; // отмена
DBEdit1.ReadOnly:=true;// деактивация поля ввода
DBEdit2.ReadOnly:=true; // деактивация поля ввода
DBEdit3.ReadOnly:=true; // деактивация поля ввода
end;
-
procedure TGlavnaya_.Button7Click – процедура перехода к предыдущей записи в таблице
procedure TGlavnaya_.Button7Click(Sender: TObject);
begin
DataModule1.Klient_Table1.Prior;// переход к предыдущей записи
end;
-
procedure TGlavnaya_.Button9Click – процедура создания отчета
procedure TGlavnaya_.Button9Click(Sender: TObject);
begin
Otch_Nakladnaya_.QRLabel9.Caption:='Товарный чек';// присвоение полю значения
Otch_Nakladnaya_.QRLabel26.Caption:=DBEdit1.Text; // присвоение полю значения
Otch_Nakladnaya_.QRLabel27.Caption:=DBEdit1.Text;// присвоение полю значения
Otch_Nakladnaya_.QuickRep1.Preview;// просмотр отчета
end;
-
procedure TGlavnaya_.Button21Click – Процедура сохранения поступившего товара
procedure TGlavnaya_.Button21Click(Sender: TObject);
begin
if (Edit1.Text='') or (Edit1.Text='0')
then
ShowMessage('Введите колличество принятого товара')
Else
begin
DBText1.Caption:=IntToStr((strtoint(Edit1.Text))+(strtoint(DBText1.Caption)));
DataModule1.Uslugi_Table2.FieldByName('К-во').AsString:=DBText1.Caption;;
Edit1.Text:='0';
DataModule1.Uslugi_Table2.Post; // сохранение данных
Button13.Enabled:=true; // активация кнопки
Button14.Enabled:=true; // активация кнопки
Button10.Enabled:=true; // активация кнопки
Button15.Enabled:=true; // активация кнопки
Button21.Visible:=false; // скрытие кнопки
Button21.Enabled:=false; // деактивация кнопки
Button11.Visible:=true; // отображение кнопки
Button11.Enabled:=false; // деактивация кнопки
Button12.Enabled:=false; // деактивация кнопки
Edit1.ReadOnly:=true; // деактивация поля ввода
end;
end;
-
procedure TGlavnaya_.Button11Click – Процедура расчета цены продажи товара
procedure TGlavnaya_.Button11Click(Sender: TObject);
begin
if (DBEdit7.Text='') or (Edit1.Text='') or (DBEdit11.Text='')
or (Edit2.Text='')
then
ShowMessage('Заполните все поля') // Вывод сообщения
Else
begin
DBText1.Caption:=Edit1.Text; // перенос значения
DataModule1.Uslugi_Table2.FieldByName('К-во').AsString:=DBText1.Caption;;
Edit1.Text:='0';
Edit3.Text:=IntToStr(((strtoint(DBEdit11.Text))* (strtoint(Edit2.Text))) div (strtoint('100')) );
DBEdit9.Text:=IntToStr((strtoint(Edit3.Text))+(strtoint(DBEdit11.Text)));
DataModule1.Uslugi_Table2.Post;
Button13.Enabled:=true; //активация кнопки
Button14.Enabled:=true; //активация кнопки
Button10.Enabled:=true; //активация кнопки
Button15.Enabled:=true; //активация кнопки
Button21.Visible:=true; // отображение кнопки
Button21.Enabled:=false; //деактивация кнопки
Button11.Visible:=false; // скрытие кнопки
Button11.Enabled:=false; //деактивация кнопки
Button12.Enabled:=false; //деактивация кнопки
DBEdit7.Enabled:=false; //деактивация поля ввода
Edit1.ReadOnly:=true; //деактивация поля ввода
DBEdit11.ReadOnly:=true; //деактивация поля ввода
Edit2.ReadOnly:=true; //деактивация поля ввода
end;
end;
-
procedure TGlavnaya_.Button8Click – процедура выбора услуг из списка
procedure TGlavnaya_.Button8Click(Sender: TObject);
begin
Edit4.Text:=InputBox('Ввод данных','Введите количество товара','1'); // проверка колличества товара
if StrToInt(Edit4.Text)>DataModule1.Uslugi_Table2.FieldByName('К-во').AsInteger then
begin
ShowMessage('Товара не хватает, введите меньшее число!'); // вывод сообщения
Button8.Click; // нажатие кнопки
end
else
begin