Автор работы: Пользователь скрыл имя, 31 Мая 2012 в 15:45, дипломная работа
Цель дипломной работы – создание АРМ «Клиент- менеджер. Наружная реклама».
Для достижения поставленной цели были сформулированы и решены следующие задачи:
1. проведен информационный анализ существующих методик работы с клиентами и заказами;
2. разработан полнофункциональный интерфейс обеспечивающий:
а) ввод данных посредством клавиатуры;
б) предоставление данных пользователю;
в) формирование и вывод на принтер отчетов в виде договоров и бланков заказа;
г) построение графика зависимости заказ/дата;
3. создана окончательная версия программного средства «АРМ Клиент-менеджер. Наружная реклама»;
4. осуществлен ввода средства в эксплуатацию;
Объектом исследования является работа клиент- менеджеров с клиентами и заказами.
Предметом исследования является автоматизация работы клиент- менеджеров с клиентами и заказами.
В работе были использованы следующие методы работы:
- метод экспертных оценок;
- сбор данных о предметной области;
- информационное моделирование предметной области;
- метод объектно-ориентированного программирования (на базе C++ Builder);
Гипотеза исследования.
Разработка автоматизированного рабочего места клиент- менеджера позволит вести жесткий учет заказов и освободит рабочее время, уходящее на заполнение договоров, бланков заказа и построение графиков зависимости заказ/дата.
Новизна работы.
Разработка АРМ велась с учетом возможности подключения новых программных модулей, таких как «Видео реклама», «Полиграфия», «Аудио реклама» и многих других. Новые модули позволят использовать данное АРМ в других фирмах, занимающихся производством наружной рекламы, а также в фирмах, вид деятельности которых связан с производством других видов рекламы. В ходе проведенных работ, опрашивая конкурирующие фирмы, выяснилось, что ни одна из 12 опрошенных фирм не обладает подобным программным средством.
Практическая ценность.
Исходя из результатов опроса, а также личных просьб опрошенных необходимость в подобном АРМ в регионе высока.
На защиту выносятся:
1. Результаты анализа предметной области;
2. Структура реляционных баз данных системы;
3. Пользовательский интерфейс;
4. Результаты внедрения.
Апробация работы.
Материалы дипломной работы докладывались и обсуждались с руководителями и клиент-менеджерами фирмы «Мастерская Рекламы».
Реализация результатов работы.
Разработанное АРМ прошло тестирование и находится в эксплуатации с апреля 2002 года.
Структура и объем работы.
Дипломная работа состоит из введения, трех разделов, заключения, списка использованных источников, включающего 32 наименования, и 5 приложений. Общий объём работы – 147 страниц, основной текст занимает 68 страниц, приложения – 79 страниц.
В первом разделе проводится исследование предметной области, обоснование выбора программных средств для создания системы.
Второй раздел раскрывает вопросы внутренней организации программы и взаимодействия ее с пользователем.
В третьем разделе представлены методы и алгоритмы с помощью которых было реализовано АРМ «Клиент-менеджер. Наружная реклама».
В заключении сформулированы основные выводы и результаты, полученные в дипломной работе.
В приложениях представлены:
печатные формы;
описание структуры данных;
структура аппаратно – программного обеспечения фирмы «Мастерская Рекламы»;
материалы внедрения результатов дипломной работы;
документированный листинг глобального модуля АРМ;
иллюстративный материал.
ВВЕДЕНИЕ 6
1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ 12
1.2. Описание предметной области 13
1.2.1. Бланк заказа и договор 13
1.3. Информационно-логическая модель системы 17
1.3.1. Подсистема «Бланк заказа» 17
1.3.2. Подсистема «Договор» 17
1.3.3. Система работы фирмы с заказом 18
1.4. План автоматизации работы клиент – менеджеров с заказами и клиентами 21
1.5. Статистический анализ деятельности фирмы 23
Выводы 28
2. АРХИТЕКТУРА АРМ «КЛИЕНТ-МЕНЕДЖЕР. НАРУЖНАЯ РЕКЛАМА» 30
2.1. Информационно-логическая модель и структура базы данных 30
2.2. Потоки данных 34
Выводы 38
3. ПРАКТИЧЕСКАЯ РЕАЛИЗАЦИЯ АРМ «КЛИЕНТ-МЕНЕДЖЕР. НАРУЖНАЯ РЕКЛАМА» 39
3.1. Выбор среды программирования 39
3.2. Модель ЖЦ ПС 45
3.3. Характеристика операционной системы и ее версии, с обоснование выбора и указание источников описывающих ОС 47
3.4. Разработка интерфейса ПС 47
3.5. Проектирование базы данных «Клиент-менеджер. Наружная реклама» 53
3.5.1. Физическая реализация инфологической модели системы 53
3.6. Подключаемые внешние модули 57
3.7. Тестирование и отладка 59
3.7.1. Методы тестирования 59
3.7.2. Результаты тестирования и отладки 62
Выводы. 63
ЗАКЛЮЧЕНИЕ 64
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 66
ГЛОССАРИЙ 69
ПРИЛОЖЕНИЯ 72
П.1. Техническое задание 72
П.2. Инструкция пользователя. 78
П.3. Описание демонстрационного ролика 78
П.4. Документированный листинг программного средства «АРМ «Клиент-менеджер. Наружная реклама» 79
П.5. Материалы внедрения дипломной работы 146
#include <vcl.h>
#pragma hdrstop
#include "Master02.h"
//----------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TDataBase *DataBase;
//----------------------------
__fastcall TDataBase::TDataBase(
: TDataModule(Owner)
{
}
//----------------------------
Master03.cpp
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Master03.h"
#include "Master02.h"
//----------------------------
#pragma package(smart_init)
#pragma link "RXCtrls"
#pragma resource "*.dfm"
TFZakazchik *FZakazchik;
//----------------------------
__fastcall TFZakazchik::TFZakazchik(
: TForm(Owner)
{
}
//----------------------------
void __fastcall TFZakazchik::FormClose(TObject *Sender, TCloseAction &Action)
{
DataBase->TZakazchik->Refresh(
}
//----------------------------
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Master04.h"
#include "Master02.h"
#include "Master07.h"
#include "Master08.h"
//----------------------------
#pragma package(smart_init)
#pragma link "RXCtrls"
#pragma resource "*.dfm"
TFIzdelie *FIzdelie;
//----------------------------
__fastcall TFIzdelie::TFIzdelie(
: TForm(Owner)
{
}
//----------------------------
void __fastcall TFIzdelie::DBNavigator1Click(
TNavigateBtn Button)
{
if((Button==nbFirst)||(Button=
DataBase->TRIzdCol->Filter="
DataBase->TRIzdMat->Filter="
}
}
//----------------------------
void __fastcall TFIzdelie::FormShow(TObject *Sender)
{
DataBase->TRIzdCol->Filter="
DataBase->TRIzdMat->Filter="
}
//----------------------------
void __fastcall TFIzdelie::
{
FAddColor->ShowModal();
if(colorname!=""){
DataBase->TRIzdCol->Insert();
DataBase->TRIzdCol->
DataBase->TRIzdCol->
DataBase->TRIzdCol->Post();
}
}
//----------------------------
void __fastcall TFIzdelie::
{
FAddMaterial->ShowModal();
if(materialname!=""){
DataBase->TRIzdMat->Insert();
DataBase->TRIzdMat->
DataBase->TRIzdMat->
DataBase->TRIzdMat->Post();
}
}
//----------------------------
void __fastcall TFIzdelie::
{
DataBase->TRIzdCol->Delete();
}
//----------------------------
void __fastcall TFIzdelie::
{
DataBase->TRIzdMat->Delete();
}
//----------------------------
Master05.cpp
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Master05.h"
#include "Master02.h"
//----------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFNIzdelie *FNIzdelie;
//----------------------------
__fastcall TFNIzdelie::TFNIzdelie(
: TForm(Owner)
{
}
//----------------------------
Master06.cpp
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Master06.h"
#include "Master02.h"
//----------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFNOplata *FNOplata;
//----------------------------
__fastcall TFNOplata::TFNOplata(
: TForm(Owner)
{
}
//----------------------------
Master07.cpp
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Master07.h"
#include "Master02.h"
#include "Master04.h"
#include "Master09.h"
//----------------------------
#pragma package(smart_init)
#pragma link "RXCtrls"
#pragma resource "*.dfm"
TFAddColor *FAddColor;
//----------------------------
__fastcall TFAddColor::TFAddColor(
: TForm(Owner)
{
}
//----------------------------
void __fastcall TFAddColor::
{
FIzdelie->colorname=DBGrid1->
FAddColor->Close();
}
//----------------------------
void __fastcall TFAddColor::
{
FIzdelie->colorname="";
FAddColor->Close();
}
//----------------------------
void __fastcall TFAddColor::
{
FNColor->ShowModal();
}
//----------------------------
Master08.cpp
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Master08.h"
#include "Master02.h"
#include "Master04.h"
#include "Master10.h"
//----------------------------
#pragma package(smart_init)
#pragma link "RXCtrls"
#pragma resource "*.dfm"
TFAddMaterial *FAddMaterial;
//----------------------------
__fastcall TFAddMaterial::TFAddMaterial(
: TForm(Owner)
{
}
//----------------------------
void __fastcall TFAddMaterial::
{
FIzdelie->materialname=
FAddMaterial->Close();
}
//----------------------------
void __fastcall TFAddMaterial::
{
FIzdelie->materialname="";
FAddMaterial->Close();
}
//----------------------------
void __fastcall TFAddMaterial::
{
FNMaterial->ShowModal();
}
//----------------------------
Master09.cpp
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Master09.h"
#include "Master02.h"
//----------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFNColor *FNColor;
//----------------------------
__fastcall TFNColor::TFNColor(TComponent* Owner)
: TForm(Owner)
{
}
//----------------------------
Master10.cpp
//----------------------------
#include <vcl.h>
#pragma hdrstop
#include "Master10.h"
#include "Master02.h"
//----------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFNMaterial *FNMaterial;
//----------------------------
__fastcall TFNMaterial::TFNMaterial(
: TForm(Owner)
{
}
//----------------------------
Master01.h
//----------------------------
#ifndef Master01H
#define Master01H
//----------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Menus.hpp>
#include <Db.hpp>
#include <DBCtrls.hpp>
#include <DBGrids.hpp>
#include <DBTables.hpp>
#include <ExtCtrls.hpp>
#include <Grids.hpp>
#include <Mask.hpp>
#include "RXCtrls.h"
#include <DBCGrids.hpp>
#include "RxLookup.h"
//----------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
TMainMenu *MainMenu1;
TMenuItem *MenuTable;
TMenuItem *MT1;
TMenuItem *MT2;
TMenuItem *TM3;
TDBNavigator *DBNavigator1;
TDBEdit *DBEdit1;
TLabel *Label1;
TLabel *Label2;
TDBEdit *DBEdit2;
TQuery *Query1;
TDataSource *DataSource1;
TLabel *Label3;
TDBEdit *DBEdit3;
TGroupBox *GroupBox1;
TDBLookupComboBox *DBLookupComboBox1;
TLabel *Label4;
TRxSpeedButton *RxSpeedButton1;
TLabel *Label5;
TDBText *DBText1;
TDBText *DBText3;
TLabel *Label7;
TLabel *Label8;
TDBText *DBText4;
TDataSource *DataSource2;
TQuery *Query2;
TGroupBox *GroupBox2;
TDBGrid *DBGrid1;
TMenuItem *TM4;
TMenuItem *TM5;
TMenuItem *TM6;
void __fastcall FormShow(TObject *Sender);
void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
void __fastcall MT1Click(TObject *Sender);
void __fastcall MT2Click(TObject *Sender);
void __fastcall TM3Click(TObject *Sender);
void __fastcall DBLookupComboBox1Click(TObject *Sender);
void __fastcall TM4Click(TObject *Sender);
void __fastcall DBNavigator1Click(TObject *Sender,
TNavigateBtn Button);
void __fastcall TM5Click(TObject *Sender);
void __fastcall TM6Click(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TForm1(TComponent* Owner);
bool first_start;
int rownumber;
};
//----------------------------
extern PACKAGE TForm1 *Form1;
//----------------------------
#endif
Master 02.h
//----------------------------
#ifndef Master02H
#define Master02H
//----------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Db.hpp>
#include <DBTables.hpp>
//----------------------------
class TDataBase : public TDataModule
{
__published: // IDE-managed Components
TDataSource *DZakaz;
TTable *TZakaz;
TDataSource *DZakazchik;
TDataSource *DIzdelie;
TTable *TIzdelie;
TTable *TNIzdelie;
TDataSource *DNIzdelie;
TDataSource *DNOplata;
TTable *TNOplata;
TTable *TZakazchik;
TDataSource *DNColor;
TTable *TNColor;
TDataSource *DNMaterial;
TTable *TNMaterial;
TDataSource *DRIzdCol;
TTable *TRIzdCol;
TDataSource *DRIzdMat;
TTable *TRIzdMat;
private: // User declarations
public: // User declarations
__fastcall TDataBase(TComponent* Owner);
};
//----------------------------
extern PACKAGE TDataBase *DataBase;
//----------------------------
#endif
Master03.h
//----------------------------
#ifndef Master03H
#define Master03H
//----------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include "RXCtrls.h"
#include <DBCtrls.hpp>
#include <Mask.hpp>
#include <ExtCtrls.hpp>
//----------------------------
class TFZakazchik : public TForm
{
__published: // IDE-managed Components
TLabel *Label1;
TDBEdit *DBEdit1;
TLabel *Label2;
TLabel *Label3;
TDBEdit *DBEdit2;
TDBEdit *DBEdit3;
TLabel *Label4;
TDBEdit *DBEdit4;
TDBNavigator *DBNavigator1;
void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
private: // User declarations
public: // User declarations
__fastcall TFZakazchik(TComponent* Owner);
};
//----------------------------
extern PACKAGE TFZakazchik *FZakazchik;
//----------------------------
#endif
Master04.h
//----------------------------
#ifndef Master04H
#define Master04H
//----------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <DBCtrls.hpp>
#include <ExtCtrls.hpp>
#include <Mask.hpp>
#include <Db.hpp>
#include <DBGrids.hpp>
#include <DBTables.hpp>
#include <Grids.hpp>
#include "RXCtrls.h"
//----------------------------
class TFIzdelie : public TForm
{
__published: // IDE-managed Components
TDBLookupComboBox *DBLookupComboBox1;
TLabel *Label1;
TDBEdit *DBEdit1;
TLabel *Label2;
TDBEdit *DBEdit2;
TLabel *Label3;
TDBEdit *DBEdit3;
TLabel *Label4;
TDBEdit *DBEdit4;
TLabel *Label5;
TDBEdit *DBEdit5;
TLabel *Label6;
TLabel *Label7;
TDBEdit *DBEdit6;
TDBNavigator *DBNavigator1;
TDBGrid *DBGrid1;
TDBEdit *DBEdit7;
TDBGrid *DBGrid2;
TLabel *Label8;
TLabel *Label9;
TDBLookupComboBox *DBLookupComboBox2;
TLabel *Label10;
TRxSpeedButton *RxSpeedButton1;
TRxSpeedButton *RxSpeedButton2;
TRxSpeedButton *RxSpeedButton3;
TRxSpeedButton *RxSpeedButton4;
void __fastcall DBNavigator1Click(TObject *Sender,
TNavigateBtn Button);
void __fastcall FormShow(TObject *Sender);
void __fastcall RxSpeedButton1Click(TObject *Sender);
void __fastcall RxSpeedButton2Click(TObject *Sender);
void __fastcall RxSpeedButton3Click(TObject *Sender);
void __fastcall RxSpeedButton4Click(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TFIzdelie(TComponent* Owner);
AnsiString colorname;
AnsiString materialname;
};
//----------------------------
extern PACKAGE TFIzdelie *FIzdelie;
//----------------------------
#endif
Master05.h
//----------------------------
#ifndef Master05H
#define Master05H
//----------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <DBCtrls.hpp>
#include <ExtCtrls.hpp>
#include <Mask.hpp>
//----------------------------
class TFNIzdelie : public TForm
{
__published: // IDE-managed Components
TDBEdit *DBEdit1;
TDBNavigator *DBNavigator1;
TLabel *Label1;
private: // User declarations
public: // User declarations
__fastcall TFNIzdelie(TComponent* Owner);
};
//----------------------------
extern PACKAGE TFNIzdelie *FNIzdelie;
//----------------------------
#endif
Master06.h
//----------------------------
#ifndef Master06H
#define Master06H
//----------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <DBCtrls.hpp>
#include <ExtCtrls.hpp>
#include <Mask.hpp>
//----------------------------
class TFNOplata : public TForm
{
__published: // IDE-managed Components
TDBNavigator *DBNavigator1;
TDBEdit *DBEdit1;
TLabel *Label1;
private: // User declarations
public: // User declarations
__fastcall TFNOplata(TComponent* Owner);
};
//----------------------------
extern PACKAGE TFNOplata *FNOplata;
//----------------------------
#endif
Master07.h
//----------------------------
#ifndef Master07H
#define Master07H
//----------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include "RXCtrls.h"
#include <DBCtrls.hpp>
#include <DBGrids.hpp>
#include <Grids.hpp>
//----------------------------
class TFAddColor : public TForm
{
__published: // IDE-managed Components
TRxSpeedButton *RxSpeedButton1;
TRxSpeedButton *RxSpeedButton2;
TRxSpeedButton *RxSpeedButton3;
TDBGrid *DBGrid1;
void __fastcall RxSpeedButton1Click(TObject *Sender);
void __fastcall RxSpeedButton2Click(TObject *Sender);
void __fastcall RxSpeedButton3Click(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TFAddColor(TComponent* Owner);
};
//----------------------------
extern PACKAGE TFAddColor *FAddColor;
Информация о работе Создание АРМ "Клиент-менеджер.Наружная реклама"