Файл: Проектирование реализации операций бизнес-процесса «Управление документооборотом» (Информационная модель и её описание).pdf
Добавлен: 27.05.2023
Просмотров: 112
Скачиваний: 3
СОДЕРЖАНИЕ
1.3 Определение места проектируемой задачи в комплексе задач и ее описание
2.1 Информационная модель и её описание
2.2 Характеристика нормативно-справочной, входной и оперативной информации
2.3 Характеристика результатной информации
2.4 Программное обеспечение задачи
2.5 Дерево вызова программных модулей
DataModule2->ADOQuery2->SQL->Clear();
DataModule2->ADOQuery2->SQL->Add("UPDATE Printer SET POtdel='"+Edit2->Text+"' WHERE PInv_num="+ComboBox1->Text+";");
DataModule2->ADOQuery2->ExecSQL();
DataModule2->ADOQuery2->Close();
DataModule2->ADOQuery2->SQL->Clear();
DataModule2->ADOQuery2->SQL->Add("INSERT INTO Movement VALUES ("+ComboBox1->Text+", '"+Edit1->Text+"', '"+Edit2->Text+"');");
DataModule2->ADOQuery2->ExecSQL();
ComboBox1Change(NULL);
}TForm8 *Form8;
__fastcall TForm8::TForm8(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall TForm8::Button3Click(TObject *Sender)
{
int result=Application->MessageBox(L"¬ы уверены что хотите удалить выбранный принтер?",L"ѕодтверждение", MB_YESNO);
if(result == IDYES)
{DBGrid1->DataSource->DataSet->Delete();}
Button4->Enabled=false;
Button3->Enabled=false;
}
void __fastcall TForm8::DBGrid1CellClick(TColumn *Column)
{
if (DBGrid1->DataSource->DataSet->RecordCount>0) {
Button4->Enabled=true;
Button3->Enabled=true;
}
else
{
Button4->Enabled=false;
Button3->Enabled=false;
}
}
void __fastcall TForm8::FormClose(TObject *Sender, TCloseAction &Action)
{
Form1->Show();
}
void __fastcall TForm8::Button1Click(TObject *Sender)
{
Form8->Close();
}
void __fastcall TForm8::FormShow(TObject *Sender)
{
DataModule2->ADOQuery1->Close();
DataModule2->ADOQuery1->SQL->Clear();
DataModule2->ADOQuery1->SQL->Add("SELECT * FROM Admiss;");
DataModule2->ADOQuery1->Open();
}
void __fastcall TForm8::Button2Click(TObject *Sender)
{
Form8->Hide();
Form9->Caption="ƒобавление нового поступившего принтера";
Form9->Show();
}
void __fastcall TForm8::Button4Click(TObject *Sender)
{
Form8->Hide();
Form9->Caption="»зменение выбранного поступившего принтера";
Form9->Edit1->Text=DBGrid1->DataSource->DataSet->FieldByName("AInv_num")->Text;
Form9->DateTimePicker1->DateTime=DBGrid1->DataSource->DataSet->FieldByName("ADate")->AsDateTime;
Form9->Edit2->Text=DBGrid1->DataSource->DataSet->FieldByName("AFrom")->Text;
Form9->Edit3->Text=DBGrid1->DataSource->DataSet->FieldByName("ACost")->Text;
Form9->Edit4->Text=DBGrid1->DataSource->DataSet->FieldByName("AName")->Text;
Form9->Edit5->Text=DBGrid1->DataSource->DataSet->FieldByName("AOtdel")->Text;
Form9->Edit6->Text=DBGrid1->DataSource->DataSet->FieldByName("AInv_num")->Text;
Form9->Edit7->Text=DBGrid1->DataSource->DataSet->FieldByName("ADate")->Text;
Form9->Edit8->Text=DBGrid1->DataSource->DataSet->FieldByName("AFrom")->Text;
Form9->Edit9->Text=DBGrid1->DataSource->DataSet->FieldByName("ACost")->Text;
Form9->Edit10->Text=DBGrid1->DataSource->DataSet->FieldByName("AName")->Text;
Form9->Edit11->Text=DBGrid1->DataSource->DataSet->FieldByName("AOtdel")->Text;
DBGrid1->DataSource->DataSet->Delete();
Form9->Show();
}
TForm9 *Form9;
bool otmena=true;
__fastcall TForm9::TForm9(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall TForm9::FormShow(TObject *Sender)
{
if(Form9->Caption=="Изменение выбранного принтера")
{Button2->Caption="Изменить";
CheckBox1->Visible=false;
CheckBox1->Checked=false;}
else{Button2->Caption="Добавить";
CheckBox1->Visible=true;
CheckBox1->Checked=true;}
}
void __fastcall TForm9::Button1Click(TObject *Sender)
{
Form9->Close();
}
void __fastcall TForm9::Button2Click(TObject *Sender)
{
int d=1;
if(Edit1->Text.IsEmpty() || Edit2->Text.IsEmpty() || Edit3->Text.IsEmpty() || isalpha(Edit1->Text[1]) || isalpha(Edit3->Text[1]) || Edit4->Text.IsEmpty() || Edit5->Text.IsEmpty() )
{Application->MessageBox(L"Не все поля заполнены либо заполнены не верно!",L"Ошибка!", MB_OK);}
else{
DataModule2->ADOQuery2->Close();
DataModule2->ADOQuery2->SQL->Clear();
DataModule2->ADOQuery2->SQL->Add("SELECT COUNT(*) AS Pole FROM Printer WHERE PInv_num ="+Edit1->Text+";");
DataModule2->ADOQuery2->Open();
d = DataModule2->ADOQuery2->FieldByName("Pole")->AsInteger;
if(d==0)
{
DataModule2->ADOQuery2->Close();
DataModule2->ADOQuery2->SQL->Clear();
DataModule2->ADOQuery2->SQL->Add("INSERT INTO Admiss VALUES ("+Edit1->Text+", '"+DateTimePicker1->DateTime+"', '"+Edit2->Text+"', '"+Edit3->Text+"', '"+Edit4->Text+"', '"+Edit5->Text+"');");
DataModule2->ADOQuery2->ExecSQL();
otmena=false;
if(CheckBox1->Checked)
{
DataModule2->ADOQuery2->Close();
DataModule2->ADOQuery2->SQL->Clear();
DataModule2->ADOQuery2->SQL->Add("INSERT INTO Printer VALUES ("+Edit1->Text+", '"+Edit4->Text+"', '"+Edit5->Text+"');");
DataModule2->ADOQuery2->ExecSQL();
}
Form9->Close();
}
else{Application->MessageBox(L"Данный инвентарный номер уже существует!",L"Ошибка!", MB_OK);}}
}
void __fastcall TForm9::FormClose(TObject *Sender, TCloseAction &Action)
{
if(Button2->Caption=="Изменить" && otmena==true){
DataModule2->ADOQuery2->Close();
DataModule2->ADOQuery2->SQL->Clear();
DataModule2->ADOQuery2->SQL->Add("INSERT INTO Admiss VALUES ("+Edit6->Text+", '"+Edit7->Text+"', '"+Edit8->Text+"', '"+Edit9->Text+"', '"+Edit10->Text+"', '"+Edit11->Text+"');");
DataModule2->ADOQuery2->ExecSQL(); }
otmena=true;
Edit1->Text="";
Edit2->Text="";
Edit3->Text="";
Edit4->Text="";
Edit5->Text="";
Form8->Show();
}
TForm10 *Form10;
__fastcall TForm10::TForm10(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall TForm10::FormShow(TObject *Sender)
{
DBGrid1->Visible=false;
DBGrid2->Visible=false;
DBGrid3->Visible=false;
ComboBox1->Items->Clear();
DataModule2->ADOQuery2->Close();
DataModule2->ADOQuery2->SQL->Clear();
DataModule2->ADOQuery2->SQL->Add("SELECT PInv_num FROM Printer;");
DataModule2->ADOQuery2->Open();
DataModule2->ADOQuery2->First();
for(int i=0;i<DataModule2->ADOQuery2->RecordCount;i++)
{ComboBox1->Items->Add(DataModule2->ADOQuery2->FieldValues["PInv_num"]);
DataModule2->ADOQuery2->Next();}
}
void __fastcall TForm10::Button1Click(TObject *Sender)
{
Form10->Close();
}
void __fastcall TForm10::FormClose(TObject *Sender, TCloseAction &Action)
{
Form1->Show();
}
void __fastcall TForm10::ComboBox1Change(TObject *Sender)
{
DataModule2->ADOQuery1->Close();
DataModule2->ADOQuery1->SQL->Clear();
DataModule2->ADOQuery1->SQL->Add("SELECT * FROM Printer WHERE PInv_num LIKE '"+ComboBox1->Text+"';");
DataModule2->ADOQuery1->Open();
DataModule2->ADOQuery2->Close();
DataModule2->ADOQuery2->SQL->Clear();
DataModule2->ADOQuery2->SQL->Add("SELECT * FROM Remont WHERE RInv_num LIKE '"+ComboBox1->Text+"';");
DataModule2->ADOQuery2->Open();
DataModule2->ADOQuery3->Close();
DataModule2->ADOQuery3->SQL->Clear();
DataModule2->ADOQuery3->SQL->Add("SELECT * FROM Movement WHERE MInv_num LIKE '"+ComboBox1->Text+"';");
DataModule2->ADOQuery3->Open();
DBGrid1->Visible=true;
DBGrid2->Visible=true;
DBGrid3->Visible=true;
}
__fastcall TForm11::TForm11(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall
TForm11::Button1Click(TObject *Sender)
{
DataModule2->ADOQuery2->Close();
DataModule2->ADOQuery2->SQL->Clear();
DataModule2->ADOQuery2->SQL->Add("SELECT * FROM tmp;");
DataModule2->ADOQuery2->Open();
DataModule2->ADOQuery2->First();
}
vBorder(Variant& vVarCell,int Weight,
int LineStyle,int ColorIndex)
{
for(int i=8; i <= 10; i++)
{
switch(LineStyle)
{
case 1:
case -4115:
case 4:
case 5:
case -4118:
case -4119:
case 13:
case -4142:
vVarCell.OlePropertyGet("Borders",10).
OlePropertySet("LineStyle",LineStyle);
break;
default:
vVarCell.OlePropertyGet("Borders",i).
OlePropertySet("LineStyle",1);
}
switch(Weight)
{
case 1:
case -4138:
case 2:
case 4:
vVarCell.OlePropertyGet("Borders",i).
OlePropertySet("Weight",Weight);
break;
default:
vVarCell.OlePropertyGet("Borders",i).
OlePropertySet("Weight",1);
}
vVarCell.OlePropertyGet("Borders",i).
OlePropertySet("ColorIndex",ColorIndex);
}
}
{
Variant v;
if(!fStart)
{
try
{
vVarApp=CreateOleObject("Excel.Application");
fStart=true;
}
else return;
vVarApp.OlePropertySet("Visible",true);
vVarBooks=vVarApp.OlePropertyGet("Workbooks");
vVarApp.OlePropertySet("SheetsInNewWorkbook",2);
vVarBooks.OleProcedure("Add");
vVarSheet.OleProcedure("Activate");
vAsCurDir=GetCurrentDir();
vVarBook.OlePropertyGet("ActiveSheet").
vVarSheet=vVarSheets.OlePropertyGet("Item",1);
vVarSheet.OlePropertySet("Name","Учетная карточка");
vVarSheet.OleProcedure("Activate");
vVarBook.OlePropertyGet("ActiveSheet");
vVarSheets.OlePropertyGet("Item",2).
OlePropertySet("Name","Отчет по материалам");
vVarSheet.OleProcedure("Activate");
vVarBook.OlePropertyGet("ActiveSheet");
vVarSheet=vVarSheets.OlePropertyGet("Item",1);
vVarSheet.OleProcedure("Activate");
for (int i=2; i < 11; i++)
{
vVarCell=vVarSheet.OlePropertyGet("Cells").
OlePropertyGet("Item",2,i);
vBorder(vVarCell,2,1,55);
vVarCell.OlePropertySet("Value",tName);
vVarCell=vVarSheet.OlePropertyGet("Cells").
OlePropertyGet("Item",3,tMatlico);
vBorder(vVarCell,2,1,55);
vVarCell.OlePropertySet("Value",tPrih);
vVarCell=vVarSheet.OlePropertyGet("Cells").
OlePropertyGet("Item",4,i);
vBorder(vVarCell,2,1,55);
vVarCell.OlePropertySet("Value",tRash);
vVarCell=vVarSheet.OlePropertyGet("Cells").
OlePropertyGet("Item",5,i);
vBorder(vVarCell,2,1,55);
vVarCell.OlePropertySet("Value","Остаток");
//добавить формулы подсчета суммы в строки
vVarCell=vVarSheet.OlePropertyGet("Cells").
OlePropertyGet("Item",5,i);
vBorder(vVarCell,2,1,55);
vVarCell.OlePropertySet("Value","=СУММ(A2:E2)");
vVarCell=vVarSheet.OlePropertyGet("Cells").
vVarCell.OlePropertySet("Value", "Наименование");
vVarCell=vVarSheet.OlePropertyGet("Value ","А1");
vVarCell.OleProcedure("Merge");
vBorder(vVarCell,2,1,55);
vVarCell.OlePropertySet("Value", "Номер:");
vVarCell=vVarSheet.OlePropertyGet("Value ","B1");
vVarCell.OleProcedure("Merge");
vBorder(vVarCell,2,1,55);
vVarCell.OlePropertySet("Value", "Приход");
vVarCell=vVarSheet.OlePropertyGet("Value ","А1");
vVarCell.OleProcedure("Merge");
vBorder(vVarCell,2,1,55);
vVarCell.OlePropertySet("Value", "Расход");
vVarCell=vVarSheet.OlePropertyGet("Value ","B1");
vVarCell.OleProcedure("Merge");
vBorder(vVarCell,2,1,55);
vVarSheet=vVarSheets.OlePropertyGet("Item",2);
vVarSheet.OleProcedure("Activate");
for (int i=2; i < 11; i++)
{
vVarCell=vVarSheet.OlePropertyGet("Cells").
OlePropertyGet("Item",1,2);
vBorder(vVarCell,2,1,55);
vVarCell.OlePropertySet("Value",tDate);
vVarCell=vVarSheet.OlePropertyGet("Cells").
OlePropertyGet("Item",2,i);
vBorder(vVarCell,2,1,55);
vVarCell.OlePropertySet("Value", tMatlico);
vVarCell=vVarSheet.OlePropertyGet("Cells").
OlePropertyGet("Item",3, tName);
vBorder(vVarCell,2,1,55);
vVarCell=vVarSheet.OlePropertyGet("Cells").