Файл: «Проектирование реализации операций бизнес-процесса «Предоставление рекламных услуг»».pdf
Добавлен: 16.06.2023
Просмотров: 465
Скачиваний: 2
СОДЕРЖАНИЕ
1.1 Выбор комплекса задач автоматизации
1.2 Характеристика документооборота, возникающего при решении задачи
1.3 Характеристика существующих бизнес –процессов
1.4 Обоснование проектных решений по информационному обеспечению
1.5 Обоснование проектных решений по программному обеспечению
2.1 Информационная модель и её описание
2.2 Характеристика нормативно-справочной, входной и оперативной информации
2.3 Характеристика результатной информации
2.4 Общие положения (дерево функций и сценарий диалога)
2.5 Характеристика базы данных
2.6 Структурная схема пакета (дерево вызова программных модулей)
2.7 Описание программных модулей
2.8 Контрольный пример реализации проекта и его описание
void __fastcall TFormMainAIS::N10Click(TObject *Sender)
{
Application->CreateForm(__classid(TFormProdazha), &FormProdazha);
FormProdazha->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TFormMainAIS::N12Click(TObject *Sender)
{
Application->CreateForm(__classid(TFormVnalichii), &FormVnalichii);
FormVnalichii->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TFormMainAIS::N13Click(TObject *Sender)
{
Application->CreateForm(__classid(TFormProdano), &FormProdano);
FormProdano->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TFormMainAIS::N14Click(TObject *Sender)
{
Application->CreateForm(__classid(TFormOtchetManager), &FormOtchetManager);
FormOtchetManager->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TFormMainAIS::N11Click(TObject *Sender)
{
Application->CreateForm(__classid(TFormDiagrammaOklad), &FormDiagrammaOklad);
FormDiagrammaOklad->ShowModal();
}
//---------------------------------------------------------------------------
//Вызовсправки
void __fastcall TFormMainAIS::N15Click(TObject *Sender)
{
Application->CreateForm(__classid(TFormSpravka), &FormSpravka);
FormSpravka->ShowModal();
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "MainComputer.h"
#include "DM.h"
#include "MainAIS.h"
#include "string.h"
#include "stdio.h"
#include <algorithm>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormVxod *FormVxod;
int TekManager;
//---------------------------------------------------------------------------
__fastcall TFormVxod::TFormVxod(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFormVxod::FormShow(TObject *Sender)
{
ComboBoxManager->Clear();
ADODataSetManager->Close();
ADODataSetManager->Open();
ADODataSetManager->First();
while(!ADODataSetManager->Eof)
{ComboBoxManager->Items->Add(ADODataSetManagerFIO->Value);
ADODataSetManager->Next();
}
}
//---------------------------------------------------------------------------
void __fastcall TFormVxod::BitBtnExitClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TFormVxod::ButtonVxodClick(TObject *Sender)
{
ADODataSetManager->Close();
ADODataSetManager->CommandText= "select * from TablManager where FIO="+QuotedStr(ComboBoxManager->Text);
ADODataSetManager->Open();
if(ADODataSetManagerPassword->Value==EditPassword->Text)
{TekManager= ADODataSetManagerCod->Value;
Application->CreateForm(__classid(TFormMainAIS), &FormMainAIS);
FormMainAIS->ShowModal();
Close();
}
else ShowMessage("Неверныйпароль!");
}
//---------------------------------------------------------------------------
void __fastcall TFormVxod::EditPasswordKeyPress(TObject *Sender, char &Key)
{
if(Key==13)
ButtonVxodClick(Sender);
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Manager.h"
#include "DM.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormManager *FormManager;
//---------------------------------------------------------------------------
__fastcall TFormManager::TFormManager(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFormManager::FormShow(TObject *Sender)
{
ADODataSetManager->Close();
ADODataSetManager->Open();
ADODataSetDolgnost->Close();
ADODataSetDolgnost->Open();
}
//---------------------------------------------------------------------------
//Выполняется при нажатии кнопки Добавить
void __fastcall TFormManager::ButtonAddClick(TObject *Sender)
{
if(ADODataSetManager->State==dsBrowse)
{ADODataSetManager->Insert();
Panel1->Visible=false;
Panel2->Visible=true;
GroupBox1->Visible=true;
DateTimePicker1->Date= Date();
DBEditFIO->SetFocus();
}
}
//---------------------------------------------------------------------------
//Выполняется при нажатии кнопки Удалить
void __fastcall TFormManager::ButtonDeleteClick(TObject *Sender)
{
if(ADODataSetManager->RecordCount==0) //естьлиданныевБД
{ButtonChange->Enabled=false;//сделатькнопкуИзменитьнедоступной
ButtonDelete->Enabled=false;//сделать кнопку Удалить недоступной
ShowMessage("Данные отсутствуют в БД!"); //вывести сообщение в виде окошка
return;//выходизформы
}
if(ADODataSetManager->State==dsBrowse)
if(Application->MessageBoxA("Подтвердитеудалениезаписи !","Внимание",MB_ICONWARNING+MB_YESNO)==IDYES)
ADODataSetManager->Delete();//удалить запись из таблицы БД
}
//---------------------------------------------------------------------------
//Выполняется при нажатии кнопки Изменить
void __fastcall TFormManager::ButtonChangeClick(TObject *Sender)
{
if(ADODataSetManager->RecordCount==0) //есть ли данные в БД - кол-во записей в таблице БД
{ShowMessage("Данные отсутствуют в БД!");//вывести сообщение в виде окошка
return;//выходизформы
}
if(ADODataSetManager->State==dsBrowse)
ADODataSetManager->Edit();//перевести таблицу БД в режим редактирования
Panel1->Visible=false;//сделать панель невидимой
Panel2->Visible=true;//сделать панель видимой
GroupBox1->Visible=true;//сделать панель видимой
DateTimePicker1->Date= ADODataSetManagerDataRozhd->Value;
DBEditFIO->SetFocus(); //установить фокус в поле для ввода
}
//---------------------------------------------------------------------------
//Выполняется при нажатии кнопки Выход
void __fastcall TFormManager::ButtonExitClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
//------Выполняется при нажатии кнопки Запомнить
void __fastcall TFormManager::ButtonPostClick(TObject *Sender)
{
//------проверка всех введенных данных
if(DBEditFIO->Text=="" )//проверка введенных данных
{ShowMessage("Введите Ф.И.О. !");//вывод диалогового окна с сообщением
return;//выход из процедуры
}
if(DBEditPasport->Text=="" )//проверка введенных данных
{ShowMessage("Введите паспорт !");//вывод диалогового окна с сообщением
return;//выход из процедуры
}
if(DBEditOklad->Text=="" )//проверка введенных данных
{ShowMessage("Введите оклад !");//вывод диалогового окна с сообщением
return;//выход из процедуры
}
if(DBEditPassword->Text=="" )//проверка введенных данных
{ShowMessage("Введите пароль !");//вывод диалогового окна с сообщением
return;//выход из процедуры
}
if(ADODataSetManagerCodDolgnost->Value==0 )//проверка введенных данных
{ShowMessage("Введите должность !");//вывод диалогового окна с сообщением
return;//выходизпроцедуры
}
//-----------
ADODataSetManagerDataRozhd->Value= DateTimePicker1->Date;
ADODataSetManager->Post();//запомнить все изменения в таблице БД
Panel1->Visible=true;//сделать панель видимой
Panel2->Visible=false;//сделать панель невидимой
GroupBox1->Visible=false;//сделать панель невидимой
ButtonChange->Enabled=true;//сделать кнопку Изменить доступной
ButtonDelete->Enabled=true;//сделать кнопку Удалить доступной
}
//---------------------------------------------------------------------------
//Выполняется при нажатии кнопки Отменить
void __fastcall TFormManager::ButtonOtmenClick(TObject *Sender)
{
ADODataSetManager->Cancel();//отменить все изменения - данные в таблице БД не сохраняются
Panel1->Visible=true;//сделать панель видимой
Panel2->Visible=false;//сделать панель невидимой
GroupBox1->Visible=false;//сделать панель невидимой
}
//---------------------------------------------------------------------------
void __fastcall TFormManager::N1Click(TObject *Sender)
{
ButtonExitClick(Sender);
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "OtchetManager.h"
#include "DM.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormOtchetManager *FormOtchetManager;
//---------------------------------------------------------------------------
__fastcall TFormOtchetManager::TFormOtchetManager(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFormOtchetManager::FormShow(TObject *Sender)
{ char *s;
ADODataSetComputerTehnika->Close();
ADODataSetComputerTehnika->Open();
ADODataSetHistory->Close();
ADODataSetHistory->Open();
ADODataSetDolgnost->Close();
ADODataSetDolgnost->Open();
ADODataSetManager->Close();
ADODataSetManager->CommandText= "select TablManager.FIO as 'ФИОменеджера',TablDolgnost.name as 'Должность',TablHistory.cena as 'Цена',TablComputerTehnika.name as 'Названиетовара' from TablManager,TablHistory,TablDolgnost,TablComputerTehnika where (TablManager.Cod=TablHistory.CodManager)and(TablDolgnost.Cod=TablManager.CodDolgnost)and(TablHistory.CodComputerTehnika=TablComputerTehnika.Cod)";
ADODataSetManager->Open();
DBGridManager->Columns->Items[0]->Width=290;
DBGridManager->Columns->Items[1]->Width=160;
DBGridManager->Columns->Items[2]->Width=60;
DBGridManager->Columns->Items[3]->Width=410;
}
//---------------------------------------------------------------------------
void __fastcall TFormOtchetManager::N1Click(TObject *Sender)
{
ButtonExitClick(Sender);
}
//---------------------------------------------------------------------------
void __fastcall TFormOtchetManager::ButtonExitClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Prodano.h"
#include "DM.h"
#include "UnitReport2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormProdano *FormProdano;
//---------------------------------------------------------------------------
__fastcall TFormProdano::TFormProdano(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFormProdano::ButtonExitClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TFormProdano::DBGridComputerTehnikaCellClick(
TColumn *Column)
{
if(ADODataSetComputerTehnikaPicture->Value=="")
DBImageFoto->Visible=false;
else DBImageFoto->Visible=true;
if(ADODataSetComputerTehnika->RecordCount==0)
{DBImageFoto->Visible=false;
DBMemoOpisanie->Visible=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TFormProdano::FormShow(TObject *Sender)
{ TColumn *Column;
ADODataSetComputerTehnika->Close();
ADODataSetComputerTehnika->Open();
ADODataSetVidTehniki->Close();
ADODataSetVidTehniki->Open();
DBGridComputerTehnikaCellClick(Column);
}
//---------------------------------------------------------------------------
//ВыполняетсяпринажатиикнопкиПечать
void __fastcall TFormProdano::ButtonPrintClick(TObject *Sender)
{
Application->CreateForm(__classid(TFormReport2), &FormReport2);
FormReport2->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TFormProdano::N1Click(TObject *Sender)
{
ButtonPrintClick(Sender);
}
//---------------------------------------------------------------------------
void __fastcall TFormProdano::N2Click(TObject *Sender)
{
ButtonExitClick(Sender);
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Prodazha.h"
#include "DM.h"
#include "MainComputer.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormProdazha *FormProdazha;
//---------------------------------------------------------------------------
__fastcall TFormProdazha::TFormProdazha(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
//Выполняется при отображении формы
void __fastcall TFormProdazha::FormShow(TObject *Sender)
{ TColumn *Column;
DateTimePickerDataProdazhi->Date= Date();
ADODataSetComputerTehnika->Close();
ADODataSetComputerTehnika->Open();
ADODataSetHistory->Close();
ADODataSetHistory->Open();
DBGridComputerTehnikaCellClick(Column);
}
//---------------------------------------------------------------------------
void __fastcall TFormProdazha::DBGridComputerTehnikaCellClick(
TColumn *Column)
{
if(ADODataSetComputerTehnikaPicture->Value=="")
DBImageFoto->Visible=false;
else DBImageFoto->Visible=true;
if(ADODataSetComputerTehnika->RecordCount==0)
{DBImageFoto->Visible=false;
GroupBoxOpisanie->Visible= false;
}
else
GroupBoxOpisanie->Visible=true;
}
//---------------------------------------------------------------------------
void __fastcall TFormProdazha::ButtonProdatClick(TObject *Sender)
{TColumn *Column;
if(Application->MessageBoxA("Подтвердитепродажутовара !","Внимание",MB_ICONWARNING+MB_YESNO)==IDYES)
{if(ADODataSetComputerTehnika->RecordCount==0)
{ShowMessage("Товаротсутствуетвпродаже!");
return;
}
ADODataSetComputerTehnika->Edit();
ADODataSetComputerTehnikaProdan->Value=1;
ADODataSetComputerTehnika->Post();
ADODataSetComputerTehnika->Refresh();
ADODataSetHistory->Insert();
ADODataSetHistoryCodComputerTehnika->Value= ADODataSetComputerTehnikaCod->Value;
ADODataSetHistoryCodManager->Value= TekManager;
ADODataSetHistoryDataProdazhi->Value= DateTimePickerDataProdazhi->Date;
ADODataSetHistoryCena->Value= ADODataSetComputerTehnikaCena->Value;
ADODataSetHistory->Post();
ADODataSetComputerTehnika->Close();
ADODataSetComputerTehnika->Open();
DBGridComputerTehnikaCellClick(Column);
}
}
//---------------------------------------------------------------------------
void __fastcall TFormProdazha::ButtonExitClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TFormProdazha::N1Click(TObject *Sender)
{
ButtonProdatClick(Sender);
}
//---------------------------------------------------------------------------
void __fastcall TFormProdazha::N2Click(TObject *Sender)
{
ButtonExitClick(Sender);
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
//---------------------------------------------------------------------------
USEFORM("MainComputer.cpp", FormVxod);
USEFORM("DM.cpp", DM1); /* TDataModule: File Type */
USEFORM("Dolgnost.cpp", FormDolgnost);
USEFORM("MainAIS.cpp", FormMainAIS);
USEFORM("VidTehniki.cpp", FormVidTehniki);
USEFORM("Manager.cpp", FormManager);
USEFORM("ComputerTehnika.cpp", FormComputerTehnika);
USEFORM("Prodazha.cpp", FormProdazha);
USEFORM("Vnalichii.cpp", FormVnalichii);
USEFORM("UnitReport.cpp", FormReport);
USEFORM("Prodano.cpp", FormProdano);
USEFORM("UnitReport2.cpp", FormReport2);
USEFORM("OtchetManager.cpp", FormOtchetManager);
USEFORM("DiagrammaOklad.cpp", FormDiagrammaOklad);
USEFORM("Spravka.cpp", FormSpravka);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Application->CreateForm(__classid(TFormVxod), &FormVxod);
Application->CreateForm(__classid(TDM1), &DM1);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
return 0;
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Spravka.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormSpravka *FormSpravka;
//---------------------------------------------------------------------------
__fastcall TFormSpravka::TFormSpravka(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFormSpravka::ButtonExitClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "UnitReport.h"
#include "DM.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormReport *FormReport;
bool Pr;
//---------------------------------------------------------------------------