Файл: Проектирование реализации операций бизнес-процесса «Складской учет» (Характеристика существующих бизнес –процессов).pdf
Добавлен: 12.03.2024
Просмотров: 36
Скачиваний: 0
СОДЕРЖАНИЕ
1.1. Выбор комплекса задач автоматизации
1.2. Характеристика документооборота, возникающего при решении задачи
1.3. Характеристика существующих бизнес –процессов
1.4. Обоснование проектных решений по информационному обеспечению
1.5. Обоснование проектных решений по программному обеспечению
2.1. Информационная модель и её описание
2.2. Характеристика нормативно-справочной, входной и оперативной информации
2.3. Характеристика результатной информации
2.4. Общие положения (дерево функций и сценарий диалога)
2.5. Характеристика базы данных
2.6. Структурная схема пакета (дерево вызова программных модулей)
TWideStringField *ADODataSetComputerTehnikaName;
TBCDField *ADODataSetComputerTehnikaCena;
TBooleanField *ADODataSetComputerTehnikaProdan;
TDateTimeField *ADODataSetComputerTehnikaDataPostup;
TMemoField *ADODataSetComputerTehnikaOpisanie;
TBlobField *ADODataSetComputerTehnikaPicture;
TIntegerField *ADODataSetComputerTehnikaCodVidTehniki;
TButton *ButtonProdat;
TGroupBox *GroupBoxOpisanie;
TDBMemo *DBMemoOpisanie;
TDBImage *DBImageFoto;
TButton *ButtonExit;
TADODataSet *ADODataSetHistory;
TDataSource *DataSourceHistory;
TAutoIncField *ADODataSetHistoryCod;
TIntegerField *ADODataSetHistoryCodComputerTehnika;
TIntegerField *ADODataSetHistoryCodManager;
TDateTimeField *ADODataSetHistoryDataProdazhi;
TBCDField *ADODataSetHistoryCena;
TPopupMenu *PopupMenu1;
TMenuItem *N1;
TMenuItem *N2;
void __fastcall FormShow(TObject *Sender);
void __fastcall DBGridComputerTehnikaCellClick(TColumn *Column);
void __fastcall ButtonProdatClick(TObject *Sender);
void __fastcall ButtonExitClick(TObject *Sender);
void __fastcall N1Click(TObject *Sender);
void __fastcall N2Click(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TFormProdazha(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TFormProdazha *FormProdazha;
//---------------------------------------------------------------------------
#endif
//---------------------------------------------------------------------------
#ifndef SpravkaH
#define SpravkaH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
//---------------------------------------------------------------------------
class TFormSpravka : public TForm
{
__published: // IDE-managed Components
TMemo *MemoSpravka;
TMemo *Memo1;
TButton *ButtonExit;
void __fastcall ButtonExitClick(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TFormSpravka(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TFormSpravka *FormSpravka;
//---------------------------------------------------------------------------
#endif
//---------------------------------------------------------------------------
#ifndef UnitReportH
#define UnitReportH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <DB.hpp>
#include <DBTables.hpp>
#include <ExtCtrls.hpp>
#include <QRCtrls.hpp>
#include <QuickRpt.hpp>
#include <ADODB.hpp>
//---------------------------------------------------------------------------
class TFormReport : public TForm
{
__published: // IDE-managed Components
TQuickRep *QuickRep1;
TQRBand *QRBand1;
TQRLabel *QRLabel1;
TQRBand *QRBand2;
TQRBand *QRBand3;
TQRLabel *QRLabel2;
TQRLabel *QRLabel3;
TQRLabel *QRLabel4;
TDataSource *DataSourceComputerTehnika;
TQRLabel *QRLabel5;
TQRBand *QRBand4;
TQRDBText *QRDBText1;
TQRDBText *QRDBText2;
TQRDBText *QRDBText3;
TQRDBText *QRDBText4;
TADODataSet *ADODataSetComputerTehnika;
TAutoIncField *ADODataSetComputerTehnikaCod;
TWideStringField *ADODataSetComputerTehnikaName;
TBCDField *ADODataSetComputerTehnikaCena;
TBooleanField *ADODataSetComputerTehnikaProdan;
TDateTimeField *ADODataSetComputerTehnikaDataPostup;
TMemoField *ADODataSetComputerTehnikaOpisanie;
TBlobField *ADODataSetComputerTehnikaPicture;
TIntegerField *ADODataSetComputerTehnikaCodVidTehniki;
TADODataSet *ADODataSetVidTehniki;
TDataSource *DataSourceVidTehniki;
TAutoIncField *ADODataSetVidTehnikiCod;
TWideStringField *ADODataSetVidTehnikiName;
TStringField *ADODataSetComputerTehnikaNameVidTehniki;
void __fastcall QuickRep1AfterPreview(TObject *Sender);
void __fastcall FormActivate(TObject *Sender);
void __fastcall FormShow(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TFormReport(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TFormReport *FormReport;
//---------------------------------------------------------------------------
#endif
//---------------------------------------------------------------------------
#ifndef UnitReport2H
#define UnitReport2H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <DB.hpp>
#include <DBTables.hpp>
#include <ExtCtrls.hpp>
#include <QRCtrls.hpp>
#include <QuickRpt.hpp>
#include <ADODB.hpp>
//---------------------------------------------------------------------------
class TFormReport2 : public TForm
{
__published: // IDE-managed Components
TQuickRep *QuickRep1;
TQRBand *QRBand1;
TQRLabel *QRLabel1;
TQRBand *QRBand2;
TQRBand *QRBand3;
TQRLabel *QRLabel2;
TQRLabel *QRLabel3;
TQRLabel *QRLabel4;
TDataSource *DataSourceComputerTehnika;
TQRLabel *QRLabel5;
TQRBand *QRBand4;
TQRDBText *QRDBText1;
TQRDBText *QRDBText2;
TQRDBText *QRDBText3;
TQRDBText *QRDBText4;
TADODataSet *ADODataSetComputerTehnika;
TAutoIncField *ADODataSetComputerTehnikaCod;
TWideStringField *ADODataSetComputerTehnikaName;
TBCDField *ADODataSetComputerTehnikaCena;
TBooleanField *ADODataSetComputerTehnikaProdan;
TDateTimeField *ADODataSetComputerTehnikaDataPostup;
TMemoField *ADODataSetComputerTehnikaOpisanie;
TBlobField *ADODataSetComputerTehnikaPicture;
TIntegerField *ADODataSetComputerTehnikaCodVidTehniki;
TADODataSet *ADODataSetVidTehniki;
TDataSource *DataSourceVidTehniki;
TAutoIncField *ADODataSetVidTehnikiCod;
TWideStringField *ADODataSetVidTehnikiName;
TStringField *ADODataSetComputerTehnikaNameVidTehniki;
TDataSource *DataSourceHistory;
TADODataSet *ADODataSetHistory;
TAutoIncField *ADODataSetHistoryCod;
TIntegerField *ADODataSetHistoryCodComputerTehnika;
TIntegerField *ADODataSetHistoryCodManager;
TDateTimeField *ADODataSetHistoryDataProdazhi;
TBCDField *ADODataSetHistoryCena;
TDateField *ADODataSetComputerTehnikaDataProdazhi;
void __fastcall QuickRep1AfterPreview(TObject *Sender);
void __fastcall FormActivate(TObject *Sender);
void __fastcall FormShow(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TFormReport2(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TFormReport2 *FormReport2;
//---------------------------------------------------------------------------
#endif
//---------------------------------------------------------------------------
#ifndef VidTehnikiH
#define VidTehnikiH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ADODB.hpp>
#include <DB.hpp>
#include <DBGrids.hpp>
#include <Grids.hpp>
#include <DBCtrls.hpp>
#include <ExtCtrls.hpp>
#include <Mask.hpp>
//---------------------------------------------------------------------------
class TFormVidTehniki : public TForm
{
__published: // IDE-managed Components
TDBGrid *DBGridVidTehniki;
TADODataSet *ADODataSetVidTehniki;
TDataSource *DataSourceVidTehniki;
TDataSource *DataSourceManager;
TADODataSet *ADODataSetComputerTehnika;
TGroupBox *GroupBox1;
TDBEdit *DBEditName;
TPanel *Panel1;
TButton *ButtonAdd;
TButton *ButtonDelete;
TButton *ButtonChange;
TButton *ButtonExit;
TPanel *Panel2;
TButton *ButtonPost;
TButton *ButtonOtmen;
TAutoIncField *ADODataSetVidTehnikiCod;
TWideStringField *ADODataSetVidTehnikiName;
TAutoIncField *ADODataSetComputerTehnikaCod;
TWideStringField *ADODataSetComputerTehnikaName;
TBCDField *ADODataSetComputerTehnikaCena;
TDateTimeField *ADODataSetComputerTehnikaDataPostup;
TMemoField *ADODataSetComputerTehnikaOpisanie;
TBlobField *ADODataSetComputerTehnikaPicture;
TIntegerField *ADODataSetComputerTehnikaCodVidTehniki;
TBooleanField *ADODataSetComputerTehnikaProdan;
void __fastcall ButtonAddClick(TObject *Sender);
void __fastcall ButtonDeleteClick(TObject *Sender);
void __fastcall ButtonChangeClick(TObject *Sender);
void __fastcall ButtonExitClick(TObject *Sender);
void __fastcall ButtonPostClick(TObject *Sender);
void __fastcall ButtonOtmenClick(TObject *Sender);
void __fastcall FormShow(TObject *Sender);
void __fastcall DBEditNameKeyPress(TObject *Sender, char &Key);
private: // User declarations
public: // User declarations
__fastcall TFormVidTehniki(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TFormVidTehniki *FormVidTehniki;
//---------------------------------------------------------------------------
#endif
//---------------------------------------------------------------------------
#ifndef VnalichiiH
#define VnalichiiH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ADODB.hpp>
#include <DB.hpp>
#include <DBGrids.hpp>
#include <Grids.hpp>
#include <DBCtrls.hpp>
#include <Menus.hpp>
//---------------------------------------------------------------------------
class TFormVnalichii : public TForm
{
__published: // IDE-managed Components
TDBGrid *DBGridComputerTehnika;
TADODataSet *ADODataSetComputerTehnika;
TDataSource *DataSourceComputerTehnika;
TAutoIncField *ADODataSetComputerTehnikaCod;
TWideStringField *ADODataSetComputerTehnikaName;
TBCDField *ADODataSetComputerTehnikaCena;
TBooleanField *ADODataSetComputerTehnikaProdan;
TDateTimeField *ADODataSetComputerTehnikaDataPostup;
TMemoField *ADODataSetComputerTehnikaOpisanie;
TBlobField *ADODataSetComputerTehnikaPicture;
TIntegerField *ADODataSetComputerTehnikaCodVidTehniki;
TDataSource *DataSourceVidTehniki;
TADODataSet *ADODataSetVidTehniki;
TStringField *ADODataSetComputerTehnikaNameVidTehniki;
TDBImage *DBImageFoto;
TDBMemo *DBMemoOpisanie;
TButton *ButtonExit;
TButton *ButtonPrint;
TPopupMenu *PopupMenu1;
TMenuItem *N1;
TMenuItem *N2;
void __fastcall ButtonExitClick(TObject *Sender);
void __fastcall DBGridComputerTehnikaCellClick(TColumn *Column);
void __fastcall FormShow(TObject *Sender);
void __fastcall ButtonPrintClick(TObject *Sender);
void __fastcall N1Click(TObject *Sender);
void __fastcall N2Click(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TFormVnalichii(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TFormVnalichii *FormVnalichii;
//---------------------------------------------------------------------------
#endif
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "ComputerTehnika.h"
#include "DM.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormComputerTehnika *FormComputerTehnika;
//---------------------------------------------------------------------------
__fastcall TFormComputerTehnika::TFormComputerTehnika(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFormComputerTehnika::ButtonFotoClick(TObject *Sender)
{ char *s;
OpenDialogFoto->InitialDir= ExtractFileDir(Application->ExeName);
if(OpenDialogFoto->Execute()==true) //вызовдиалогавыборафайла
{DBImageFoto->Visible=true;
s= OpenDialogFoto->FileName.c_str(); //получитьнаименованиевыбранногофайласполнымпутем
DBImageFoto->Picture->LoadFromFile(s);
}
else
{if(ADODataSetComputerTehnikaPicture->Value=="")
DBImageFoto->Visible=false;
}
}
//---------------------------------------------------------------------------
void __fastcall TFormComputerTehnika::FormShow(TObject *Sender)
{
ADODataSetComputerTehnika->Close();
ADODataSetComputerTehnika->Open();
ADODataSetVidTehniki->Close();
ADODataSetVidTehniki->Open();
}
//---------------------------------------------------------------------------
//Выполняется при нажатии кнопки Добавить
void __fastcall TFormComputerTehnika::ButtonAddClick(TObject *Sender)
{
if(ADODataSetComputerTehnika->State==dsBrowse)
{ADODataSetComputerTehnika->Insert();
Panel1->Visible=false;
Panel2->Visible=true;
GroupBox1->Visible=true;
DateTimePickerDataPostup->Date= Date();
DBEditName->SetFocus();
}
}
//---------------------------------------------------------------------------
//Выполняется при нажатии кнопки Удалить
void __fastcall TFormComputerTehnika::ButtonDeleteClick(TObject *Sender)
{
if(ADODataSetComputerTehnika->RecordCount==0) //естьлиданныевБД
{ButtonChange->Enabled=false;//сделать кнопку Изменить недоступной
ButtonDelete->Enabled=false;//сделать кнопку Удалить недоступной
ShowMessage("Данные отсутствуют в БД!"); //вывести сообщение в виде окошка
return;//выходизформы
}
if(ADODataSetComputerTehnika->State==dsBrowse)
if(Application->MessageBoxA("Подтвердитеудалениезаписи
!","Внимание",MB_ICONWARNING+MB_YESNO)==IDYES)
ADODataSetComputerTehnika->Delete();//удалитьзаписьизтаблицыБД
}
//---------------------------------------------------------------------------
//ВыполняетсяпринажатиикнопкиИзменить
void __fastcall TFormComputerTehnika::ButtonChangeClick(TObject *Sender)
{
if(ADODataSetComputerTehnika->RecordCount==0) //есть ли данные в БД - кол-во записей в таблице БД
{ShowMessage("Данные отсутствуют в БД!");//вывести сообщение в виде окошка
return;//выходизформы
}
if(ADODataSetComputerTehnika->State==dsBrowse)
ADODataSetComputerTehnika->Edit();//перевести таблицу БД в режим редактирования
Panel1->Visible=false;//сделать панель невидимой
Panel2->Visible=true;//сделать панель видимой
GroupBox1->Visible=true;//сделать панель видимой
DateTimePickerDataPostup->Date= ADODataSetComputerTehnikaDataPostup->Value;
DBEditName->SetFocus(); //установить фокус в поле для ввода
}
//---------------------------------------------------------------------------
//Выполняется при нажатии кнопки Выход
void __fastcall TFormComputerTehnika::ButtonExitClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
//------Выполняется при нажатии кнопки Запомнить
void __fastcall TFormComputerTehnika::ButtonPostClick(TObject *Sender)
{
//------проверка всех введенных данных
if(DBEditName->Text=="" )//проверка введенных данных
{ShowMessage("Введите название !");//вывод диалогового окна с сообщением
return;//выход из процедуры
}
if(DBEditCena->Text=="" )//проверка введенных данных
{ShowMessage("Введите цену !");//вывод диалогового окна с сообщением
return;//выход из процедуры
}
if(DBMemoOpisanie->Text=="" )//проверка введенных данных
{ShowMessage("Введите описание !");//вывод диалогового окна с сообщением
return;//выход из процедуры
}
if(ADODataSetComputerTehnikaCodVidTehniki->Value==0 )//проверка введенных данных
{ShowMessage("Введите вид товара!");//вывод диалогового окна с сообщением
return;//выход из процедуры
}
//-----------
ADODataSetComputerTehnikaDataPostup->Value= DateTimePickerDataPostup->Date;
ADODataSetComputerTehnika->Post();//запомнить все изменения в таблице БД
Panel1->Visible=true;//сделать панель видимой
Panel2->Visible=false;//сделать панель невидимой
GroupBox1->Visible=false;//сделать панель невидимой
ButtonChange->Enabled=true;//сделать кнопку Изменить доступной
ButtonDelete->Enabled=true;//сделать кнопку Удалить доступной
}
//---------------------------------------------------------------------------
//Выполняется при нажатии кнопки Отменить
void __fastcall TFormComputerTehnika::ButtonOtmenClick(TObject *Sender)
{
ADODataSetComputerTehnika->Cancel();//отменить все изменения - данные в таблице БД не сохраняются
Panel1->Visible=true;//сделать панель видимой
Panel2->Visible=false;//сделать панель невидимой
GroupBox1->Visible=false;//сделать панель невидимой
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "DiagrammaOklad.h"
#include "DM.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormDiagrammaOklad *FormDiagrammaOklad;
//---------------------------------------------------------------------------
__fastcall TFormDiagrammaOklad::TFormDiagrammaOklad(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFormDiagrammaOklad::FormShow(TObject *Sender)
{
ADODataSetManager->Close();
ADODataSetManager->Open();
}
//---------------------------------------------------------------------------
void __fastcall TFormDiagrammaOklad::ADODataSetManagerCalcFields(
TDataSet *DataSet)
{
ADODataSetManagerFIO2->Value= ADODataSetManagerFIO->Value;
}
//---------------------------------------------------------------------------
void __fastcall TFormDiagrammaOklad::ButtonExitClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TFormDiagrammaOklad::N1Click(TObject *Sender)
{
ButtonExitClick(Sender);
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "DM.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TDM1 *DM1;
//---------------------------------------------------------------------------