📄 bossmanage.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "bossmanage.h"
#include <jpeg.hpp>
//#include "stdlib.h"
#include "AddDelete.h"
#include "ZoneDelete.h"
#include "QueryData.h"
#include "FormPrint1.h"
#include "WeiZhangDatOutDLg.h"
#include "WeiZhangDatInDLg.h"
#include "SetForm.h"
#include "InformationBrowAll.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TMainForm *MainForm;
bool DingWeiFlag=false;
//---------------------------------------------------------------------------
__fastcall TMainForm::TMainForm(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::EnterRecordClick(TObject *Sender)
{
SaveRec->Enabled=true;
CancelSave->Enabled=true;
EnterRecord->Enabled=false;
BrowseRecord->Enabled=true;
enterrecord=true;
browserecord=false;
if( !CheckUpdate ( ))
return;
EnterStatus->Caption="状态提醒:请您输入需要入库的记录";
Timer1->Enabled=true;
ClearInfo(false);
EnterDate->Text=Now().CurrentDate();
TableSpdCarInfo->Active=false;
ButtonStatus( );
DingWeiFlag = false;////
SetJLForm->QueryDingWei->Close();////
CashIn->Text="0.00";
CashOut->Text="0.00";
CashNet->Text="0.00";
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::BrowseRecordClick(TObject *Sender)
{
EnterStatus->Caption="状态提醒:请您浏览财务记录";
Timer1->Enabled=false;
SaveRec->Enabled=false;
CancelSave->Enabled=false;
EnterRecord->Enabled=true;
BrowseRecord->Enabled=false;
if(!TableSpdCarInfo->Active)
{
TableSpdCarInfo->Open();
}
TableSpdCarInfo->Last();
DisplayRecord( );
HaveModified = false;
browserecord=true;
enterrecord=false;
ButtonStatus( );
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::SaveRecClick(TObject *Sender)
{
CountBitBtnClick(NULL);
if(ComboBoxCity->Text.Trim()=="")
{
ShowMessage("地区/城市名不能为空,请重新输入!");
ComboBoxCity->SetFocus() ;
return ;
}
if(CashIn->Text.Trim()=="")
{
ShowMessage("资金收入不能为空,请重新输入!");
CashIn->SetFocus() ;
return ;
}
if(CashOut->Text.Trim()=="")
{
ShowMessage("资金支出不能为空,请重新输入!");
CashOut->SetFocus() ;
return;
}
if(AbstractEdit->Text.Trim()=="")
{
ShowMessage("财务记录摘要不能为空,请重新输入!");
AbstractEdit->SetFocus() ;
return;
}
if(EnterDate->Text.Trim()=="")
{
ShowMessage("入录日期不能为空,请重新输入!");
EnterDate->SetFocus() ;
return;
}
DateRecord=EnterDateTimePicker->Date;
DataEnterRecord= DateToStr(DateRecord);
bool Result;
Result=Add_Record();
StatusBarMain->Panels->Items[2]->Text = "第 " + String (TableSpdCarInfo->RecNo) + " / " + String(TableSpdCarInfo->RecordCount) + "个 记录";
if( Result )
{
// ButtonStatus();
// SnoEdit->Text = GenSno();
ClearInfo(false);
//HaveModified = false ;
}
CashIn->Text="0.00";
CashOut->Text="0.00";
CashNet->Text="0.00";
}
//---------------------------------------------------------------------------
bool __fastcall TMainForm::Add_Record()
{
if( !TableSpdCarInfo->Active )
TableSpdCarInfo->Open();
TableSpdCarInfo->Append() ;
TableSpdCarInfo->Edit();
//TableSpdCarInfo->Append() ;
TableSpdCarInfo->RecNo;
Update_Spd_Record();
return true;
}
//---------------------------------------------------------------------------
bool __fastcall TMainForm::Update_Spd_Record()
{
if(DingWeiFlag)
{
SetJLForm->QueryDingWei->Edit();
SetJLForm->QueryDingWei->FieldByName("DiShi")->AsString = ComboBoxCity->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("RiQi")->AsString = EnterDate->Text.Trim();
SetJLForm->QueryDingWei->FieldByName("ShiJian")->AsString = EnterTime->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("ShouRu")->AsString = CashIn->Text;
SetJLForm->QueryDingWei->FieldByName("ZhiChu")->AsString = CashOut->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("YuE")->AsString = CashNet->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("ZhaiYao")->AsString = AbstractEdit->Text.Trim() ;
SetJLForm->QueryDingWei->Post();
return true;
}
/* if(DingWeiFlag)
{
SetJLForm->QueryDingWei->Edit();
SetJLForm->QueryDingWei->FieldByName("Skey")->AsString = String(RecCRC);
SetJLForm->QueryDingWei->FieldByName("JiaShiYuan")->AsString = JiaShiYuanEdit->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("ZhengJianHao")->AsString = ZhengJianEdit->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("DanWei")->AsString = DanwiEdit->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("Cph")->AsString = cphEdit->Text;
SetJLForm->QueryDingWei->FieldByName("Scllx")->AsString = cllxComboBox->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("Spd")->AsString = SpdEdit->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("LimitSpd")->AsString = LimitSpdEdit->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("Wzrq")->AsString = wzrqEdit->Text;
SetJLForm->QueryDingWei->FieldByName("Sj")->AsString = sjEdit->Text;
SetJLForm->QueryDingWei->FieldByName("Dd")->AsString = ddComboBox->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("Xw")->AsString = xwComboBox->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("Xw2")->AsString = xw2ComboBox->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("Xw3")->AsString = xw3ComboBox->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("WeiFaYiJv")->AsString = WeiFaYiJvComboBox->Text.Trim() ;
SetJLForm->QueryDingWei->FieldByName("ChuFaYiJv")->AsString = ChuFaYiJvComboBox->Text.Trim() ;
SetJLForm->QueryDingWei->Post();
return true;
} */
else
{
if(!TableSpdCarInfo->Active)
TableSpdCarInfo->Active=true;
TableSpdCarInfo->Edit();
//TableSpdCarInfo->FieldByName("Skey")->AsString = String(RecCRC);
TableSpdCarInfo->FieldByName("DiShi")->AsString = ComboBoxCity->Text.Trim() ;
TableSpdCarInfo->FieldByName("RiQi")->AsString = EnterDate->Text.Trim();
TableSpdCarInfo->FieldByName("ShiJian")->AsString = EnterTime->Text.Trim() ;
TableSpdCarInfo->FieldByName("ShouRu")->AsString = CashIn->Text;
TableSpdCarInfo->FieldByName("ZhiChu")->AsString = CashOut->Text.Trim() ;
TableSpdCarInfo->FieldByName("YuE")->AsString = CashNet->Text.Trim() ;
TableSpdCarInfo->FieldByName("ZhaiYao")->AsString = AbstractEdit->Text.Trim() ;
TableSpdCarInfo->Post() ;
//TableSpdCarInfo->Active=false;
return true;
}
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::ClearInfo(bool Restore)
{
//ComboBoxCity->Text = "";
//EnterDateTimePicker->Text = "";
//EnterTime->Text = "";
CashIn->Text = "";
CashOut->Text = "";
CashNet->Text = "";
AbstractEdit->Text = "";
// HaveModified = false ;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::Timer1Timer(TObject *Sender)
{
EnterTime->Text=Now().CurrentTime();
TDateTime CurrentDate = Now();
AnsiString s1 = CurrentDate.FormatString("yyyy'年'mm'月'dd'日 'hh'时'nn'分'ss'秒'");
StatusBarMain->Panels->Items[3]->Text = s1;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::CancelSaveClick(TObject *Sender)
{
ClearInfo(false);
CashIn->Text="0.00";
CashOut->Text="0.00";
CashNet->Text="0.00";
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormShow(TObject *Sender)
{
ResetParame();
//Timer1->Enabled=false;
EnterDate->Text=Now().CurrentDate();
MakerNameComboBox->Text="";
ClearInfo(false);
//enterrecord=false;
if(!TableSpdCarInfo->Active)
{
TableSpdCarInfo->Active=true;
TableSpdCarInfo->Last();
StatusBarMain->Panels->Items[2]->Text = "第 " + String (TableSpdCarInfo->RecNo) + " / " + String(TableSpdCarInfo->RecordCount) + "个 记录";
}
TableSpdCarInfo->Active=false;
CashIn->Text="0.00";
CashOut->Text="0.00";
CashNet->Text="0.00";
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::DisplayRecord( )
{
try
{
if( !TableSpdCarInfo->Active )
TableSpdCarInfo->Open();
if( TableSpdCarInfo->RecordCount <=0 )
{
StatusBarMain->Panels->Items[2]->Text = "第 0 / 0 个 记录";
ClearInfo(false);
EnterRecordClick(NULL);
return;
}
mDisplayRecord = true;
StatusBarMain->Panels->Items[2]->Text = "第 " + String (TableSpdCarInfo->RecNo) + " / " + String(TableSpdCarInfo->RecordCount) + "个 记录";
ComboBoxCity->Text = TableSpdCarInfo->FieldByName("DiShi")->AsString.Trim();
EnterDate->Text = TableSpdCarInfo->FieldByName("RiQi")->AsString.Trim();
EnterTime->Text = TableSpdCarInfo->FieldByName("ShiJian")->AsString.Trim();
CashIn->Text = TableSpdCarInfo->FieldByName("ShouRu")->AsString.Trim();
CashOut->Text = TableSpdCarInfo->FieldByName("ZhiChu")->AsString.Trim();
CashNet->Text = TableSpdCarInfo->FieldByName("YuE")->AsString.Trim() ;
AbstractEdit->Text = TableSpdCarInfo->FieldByName("ZhaiYao")->AsString.Trim() ;
}
__finally
{
HaveModified = false;
UpdateRecord->Enabled = false;
mDisplayRecord = false;
};
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::CountBitBtnClick(TObject *Sender)
{
AnsiString cashin,cashout;
double cashin1,cashout1,cashnet;
cashin=CashIn->Text.Trim();
cashout=CashOut->Text.Trim();
cashin1=StrToFloat(cashin);
cashout1=StrToFloat(cashout);
cashnet=cashin1-cashout1;
CashNet->Text=FloatToStr(cashnet);
AnsiString MiddleName;
MiddleName=CashNet->Text;
int index;
index=MiddleName.LastDelimiter("\.");
if(index>0)
{
MiddleName=MiddleName.SubString(1,index+2);
CashNet->Text=MiddleName;
}
else
{
CashNet->Text=MiddleName;
}
}
//---------------------------------------------------------------------------
bool __fastcall TMainForm::CheckUpdate ( )
{
if( HaveModified )
{ int ret = Application->MessageBox("当前记录已被修改,是否更新到数据库中?", "确认", MB_YESNOCANCEL );
if ( ret == IDYES )
{// 更新当前记录
// 1. 保存Skey, 产生新Skey,2.更新spdinfo ,3删除原spdpic中旧skey记录 4. 插入新spdpi记录
if(!TableSpdCarInfo->Active)
TableSpdCarInfo->Active=true;
// AnsiString Skey = TableSpdCarInfo->FieldByName("Skey")->AsString;
// long RecCrc = Rec_CRC();
Update_Spd_Record();
return true;
}
else if( ret == IDNO )
return true;
else if(ret == IDCANCEL )
return false;
}
return true;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormCreate(TObject *Sender)
{
mDisplayRecord = false;
HaveModified = false ;
browserecord=false;
enterrecord=false;
AnsiString selfPath = ExtractFilePath( Application->ExeName );
AnsiString xianshi=selfPath+"\\"+"Boss.jpg";
if( xianshi.IsEmpty() )
return;
Graphics::TBitmap *pBitmap = new Graphics::TBitmap();
TJPEGImage *pJpg = new TJPEGImage();
try
{
if(FileExists (xianshi) )
{
pJpg->LoadFromFile(xianshi);
pBitmap->Assign(pJpg);
ImagePic->Canvas->StretchDraw(ImagePic->ClientRect , pBitmap);
}
}
__finally
{
delete pBitmap;
delete pJpg;
}
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::ComboBoxCityChange(TObject *Sender)
{
if( mDisplayRecord )
return;
HaveModified = true ;
if( browserecord)
UpdateRecord->Enabled = true;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::UpdateRecordClick(TObject *Sender)
{
if( HaveModified )
{
if(DingWeiFlag)
{
Update_Spd_Record();
HaveModified = false;
UpdateRecord->Enabled = false;
return;
}
else
{
// 更新当前记录
Update_Spd_Record();
HaveModified = false;
UpdateRecord->Enabled = false;
return;
}
}
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::ComboBoxCityKeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
TComboBox *Combox0;
if (Sender->ClassNameIs("TComboBox") )
Combox0 = (TComboBox *)Sender;
else
return;
AnsiString s1 = Combox0->Text;
if(Key == 0xd)
{
if( Combox0->Items->IndexOf(s1) == -1)
Combox0->Items->Add( s1 );
}
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action)
{
if(enterrecord&&HaveModified )
{
int ret = Application->MessageBox(AnsiString( "已经录入的数据还没有保存!是否保存?").c_str(), "确认", MB_YESNOCANCEL );
if ( ret == IDYES )
{
SaveRecClick(Sender);
}
else if(ret == IDNO )
{
}
else if( ret == IDCANCEL )
{ Action = caNone;
return;
}
}
else if(browserecord )
{ if( !CheckUpdate ( ))
{ Action = caNone;
return;
}
}
try
{
SaveParame();
}
catch(...)
{}
TableSpdCarInfo->Close() ;
}
//---------------------------------------------------------------------------
//保存卡的当前属性,以备下次连接时重新设回
void __fastcall TMainForm::SaveCombox(TIniFile *ini, TComboBox *mBox )
{
AnsiString sval, sSection = mBox->Name;
try{
ini->WriteInteger( sSection , "Count" , mBox->Items->Count );
ini->WriteString( sSection , "Txt" , mBox->Text );
for ( int i = 0; i < mBox->Items->Count ; i++ )
{
sval = mBox->Items->Strings[i];
ini->WriteString(sSection , "Item" + IntToStr(i), sval);
}
}
catch(...)
{
}
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -