📄 uproject.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "UProject.h"
#include "UDM.h"
#include "UMsgBox.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "UTemplate"
#pragma resource "*.dfm"
bool isadding,ismodify;
//---------------------------------------------------------------------------
__fastcall TFormProject::TFormProject(TComponent* Owner)
: TFormTemplate(Owner)
{
//LabelCaption->Caption="工程管理";
//SBtnMax->Enabled=false;
}
//---------------------------------------------------------------------------
void __fastcall TFormProject::FormCloseQuery(TObject *Sender,
bool &CanClose)
{
/* TFormMsgBox *MsgBox=new TFormMsgBox(Application);
MsgBox->MsgBox("提示"," 是否关闭窗口?",MBOKCANCEL,MBINFORMATION);
if(MsgBox->Id==IDYES)
{*/
DM->ADOQProject->Active=false;
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("select * from attender order by pno");
DM->ADOQAttender->Active=false;
DM->ADOQTeacher->Active=false;
Close();
/*}
else
{
delete MsgBox;
Abort();
}*/
}
//---------------------------------------------------------------------------
void __fastcall TFormProject::SBtnNextClick(TObject *Sender)
{
DM->ADOQProject->Next();
}
//---------------------------------------------------------------------------
void __fastcall TFormProject::DBEPNoChange(TObject *Sender)
{
DisplayAttender();
}
//---------------------------------------------------------------------------
void __fastcall TFormProject::FormShow(TObject *Sender)
{
//显示主要参加表;
DM->ADOQAttender->Close();
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("select tname from teacher where tno in(select tno from Attender where pno='"+DBEPNo->Text+"')");
DM->ADOQAttender->Open();
//显示一般参加表;
//建立教师姓名选择下拉框,防止添加工程时输入非法数据;
DM->ADOQTeacher->Active=true;
while(!DM->ADOQTeacher->Eof)
{
CBTName->AddItem(DM->ADOQTeacher->FieldByName("TName")->AsString,0);
DM->ADOQTeacher->Next();
}
DM->ADOQTeacher->Prior();
DM->ADOQTeacher->Active=false;
CBTName->ItemIndex=0;
CBTName1->Items=CBTName->Items;
CBTName2->Items=CBTName->Items;
CBTName3->Items=CBTName->Items;
CBTName4->Items=CBTName->Items;
CBTName5->Items=CBTName->Items;
CBTName6->Items=CBTName->Items;
}
//---------------------------------------------------------------------------
void __fastcall TFormProject::SBtnPriClick(TObject *Sender)
{
DM->ADOQProject->Prior();
}
//---------------------------------------------------------------------------
void __fastcall TFormProject::SBtnAddClick(TObject *Sender)
{
isadding=true;
ismodify=false;
DataControlState(false);
DM->ADOQProject->Append();
DBEManager->Text=CBTName->Text;
//DM->ADOQMainAttender->Append();
//DM->ADOQNormalAttender->Append();
}
//---------------------------------------------------------------------------
void __fastcall TFormProject::DataControlState(bool ReadOnly)
{
DBCBProject->Enabled=!ReadOnly;
DBEManager->ReadOnly=ReadOnly;
DBEPName->ReadOnly=ReadOnly;
DBEPNo->ReadOnly=ReadOnly;
DBETime->ReadOnly=ReadOnly;
DBETreasure->ReadOnly=ReadOnly;
DBGrid->Enabled=ReadOnly;
DBGrid->Refresh();
EMA1->ReadOnly=ReadOnly;
EMA2->ReadOnly=ReadOnly;
EMA3->ReadOnly=ReadOnly;
ENA1->ReadOnly=ReadOnly;
ENA2->ReadOnly=ReadOnly;
ENA3->ReadOnly=ReadOnly;
CBTName->Visible=!ReadOnly;
CBTName1->Visible=!ReadOnly;
CBTName2->Visible=!ReadOnly;
CBTName3->Visible=!ReadOnly;
CBTName4->Visible=!ReadOnly;
CBTName5->Visible=!ReadOnly;
CBTName6->Visible=!ReadOnly;
SBtnPri->Enabled=ReadOnly;
SBtnNext->Enabled=ReadOnly;
SBtnAdd->Enabled=ReadOnly;
SBtnModify->Enabled=ReadOnly;
SBtnDelete->Enabled=ReadOnly;
SBtnCommit->Enabled=!ReadOnly;
}
void __fastcall TFormProject::SBtnCommitClick(TObject *Sender)
{
try
{
DM->ADOQProject->Post();
DataControlState(true);
//依次添加参加者信息;
if(isadding)
{
if(CBTName1->Text!="")
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName1->Text+"','主要参加')");
DM->ADOQAttender->ExecSQL();
}
if(CBTName2->Text!=""&&CBTName2->Text!=CBTName1->Text)
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName2->Text+"','主要参加')");
DM->ADOQAttender->ExecSQL();
}
if(CBTName3->Text!=""&&CBTName3->Text!=CBTName1->Text&&CBTName3->Text!=CBTName2->Text)
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName3->Text+"','主要参加')");
DM->ADOQAttender->ExecSQL();
}
if(CBTName4->Text!="")
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName4->Text+"','一般参加')");
DM->ADOQAttender->ExecSQL();
}
if(CBTName5->Text!=""&&CBTName5->Text!=CBTName4->Text)
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName5->Text+"','一般参加')");
DM->ADOQAttender->ExecSQL();
}
if(CBTName6->Text!=""&&CBTName6->Text!=CBTName4->Text&&CBTName6->Text!=CBTName5->Text)
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName6->Text+"','一般参加')");
DM->ADOQAttender->ExecSQL();
}
}
//依次修改参加者信息;
if(ismodify)
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("delete * from attender where pno='"+DBEPNo->Text+"'");
DM->ADOQAttender->ExecSQL();
if(CBTName1->Text!="")
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName1->Text+"','主要参加')");
DM->ADOQAttender->ExecSQL();
}
if(CBTName2->Text!=""&&CBTName2->Text!=CBTName1->Text)
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName2->Text+"','主要参加')");
DM->ADOQAttender->ExecSQL();
}
if(CBTName3->Text!=""&&CBTName3->Text!=CBTName1->Text&&CBTName3->Text!=CBTName2->Text)
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName3->Text+"','主要参加')");
DM->ADOQAttender->ExecSQL();
}
if(CBTName4->Text!="")
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName4->Text+"','一般参加')");
DM->ADOQAttender->ExecSQL();
}
if(CBTName5->Text!=""&&CBTName5->Text!=CBTName4->Text)
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName5->Text+"','一般参加')");
DM->ADOQAttender->ExecSQL();
}
if(CBTName6->Text!=""&&CBTName6->Text!=CBTName4->Text&&CBTName6->Text!=CBTName5->Text)
{
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("insert into attender values('"+DBEPNo->Text+"','"+CBTName6->Text+"','一般参加')");
DM->ADOQAttender->ExecSQL();
}
}
DisplayAttender();
}
catch(...)
{
}
}
//---------------------------------------------------------------------------
void __fastcall TFormProject::Button1Click(TObject *Sender)
{
DataControlState(true);
}
//---------------------------------------------------------------------------
void __fastcall TFormProject::DisplayAttender()
{
//TODO: Add your source code here
EMA1->Text="";
EMA2->Text="";
EMA3->Text="";
ENA1->Text="";
ENA2->Text="";
ENA3->Text="";
//查找主要参加者
DM->ADOQAttender->Close();
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("select tname from Attender where pno='"+DBEPNo->Text+"' and charactor='主要参加'");
DM->ADOQAttender->Open();
//依次显示主要参加者表中的人员名单
if(DM->ADOQAttender->Eof);
else
{
EMA1->Text=DM->ADOQAttender->FieldByName("Tname")->AsString;
DM->ADOQAttender->Next();
}
if(DM->ADOQAttender->Eof);
else
{
EMA2->Text=DM->ADOQAttender->FieldByName("Tname")->AsString;
DM->ADOQAttender->Next();
}
if(DM->ADOQAttender->Eof);
else
EMA3->Text=DM->ADOQAttender->FieldByName("Tname")->AsString;
//查找一般参加者
DM->ADOQAttender->Close();
DM->ADOQAttender->SQL->Clear();
DM->ADOQAttender->SQL->Add("select tname from Attender where pno='"+DBEPNo->Text+"' and charactor='一般参加'");
DM->ADOQAttender->Open();
//依次显示一般参加者表中的人员名单
if(DM->ADOQAttender->Eof);
else
{
ENA1->Text=DM->ADOQAttender->FieldByName("Tname")->AsString;
DM->ADOQAttender->Next();
}
if(DM->ADOQAttender->Eof);
else
{
ENA2->Text=DM->ADOQAttender->FieldByName("Tname")->AsString;
DM->ADOQAttender->Next();
}
if(DM->ADOQAttender->Eof);
else
ENA3->Text=DM->ADOQAttender->FieldByName("Tname")->AsString;
}
void __fastcall TFormProject::CBTNameChange(TObject *Sender)
{
DBEManager->Text=CBTName->Text;
}
//---------------------------------------------------------------------------
void __fastcall TFormProject::SBtnDeleteClick(TObject *Sender)
{
DM->ADOQProject->Delete();
}
//---------------------------------------------------------------------------
void __fastcall TFormProject::SBtnModifyClick(TObject *Sender)
{
isadding=false;
ismodify=true;
DataControlState(false);
DM->ADOQProject->Edit();
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -