📄 bjls.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "ShFwMain.h"
#include "BjLs.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "ColorButton"
#pragma resource "*.dfm"
TBjLsForm *BjLsForm;
//---------------------------------------------------------------------------
__fastcall TBjLsForm::TBjLsForm(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TBjLsForm::FormClose(TObject *Sender, TCloseAction &Action)
{
MainForm->ADOConnection1->Close();
}
//---------------------------------------------------------------------------
void __fastcall TBjLsForm::FormCreate(TObject *Sender)
{
MainForm->ADOConnection1->Open();
Button1->Enabled = false;
ADOQuery1->Close();
ADOQuery2->Close();
ADOTable1->Close();
ADOTable1->Open();
if(ADOTable1->RecordCount > 0) {
DBLookupComboBox1->KeyValue = ADOTable1->FieldByName("flbh")->AsString;
ADOQuery2->Open();
if(ADOQuery2->RecordCount > 0) {
DBLookupComboBox2->KeyValue = ADOQuery2->FieldByName("pzbh")->AsString;
ADOQuery1->Open();
}
}
}
//---------------------------------------------------------------------------
void __fastcall TBjLsForm::DBLookupComboBox1Click(TObject *Sender)
{
ADOQuery1->Close();
ADOQuery2->Close();
if( DBLookupComboBox1->Text.Trim()=="")
Abort();
ADOQuery2->Open();
if(ADOQuery2->RecordCount > 0)
ADOQuery1->Open();
MaskEdit1->Text = "";
Edit4->Text = "";
}
//---------------------------------------------------------------------------
void __fastcall TBjLsForm::Button1Click(TObject *Sender)
{
AnsiString str,ss;
ss = MaskEdit1->Text.Trim();
if( ss == "" || ss.ToInt() < 1) {
Application->MessageBox("请输入数量","错误",MB_OK+MB_ICONERROR);
Abort();
}
str="当前库存数量为"+ADOQuery1->FieldByName("kcsl")->AsString+",零售"+ss+"吗?";
if( Application->MessageBox(str.c_str(),"确认",MB_OKCANCEL+MB_ICONERROR)!=IDOK)
Abort();
if(ADOQuery1->FieldByName("kcsl")->AsString.ToInt() - ss.ToInt() < 0) {
Application->MessageBox("库存数量不足","错误",MB_OK+MB_ICONERROR);
Abort();
}
ADOQuery1->Edit();
ADOQuery1->FieldByName("kcsl")->Value = ADOQuery1->FieldByName("kcsl")->AsString.ToInt() - ss.ToInt();
ADOQuery1->Post();
}
//---------------------------------------------------------------------------
void __fastcall TBjLsForm::ADOQuery1AfterPost(TDataSet *DataSet)
{
AnsiString sql;
ADOQuerytmp->Close();
ADOQuerytmp->SQL->Clear();
sql = "insert into wxpjxx values(:P_dabh,:P_khbh,:P_rybh,:P_clrm,:P_pjbh,:P_pjmc,:P_gsfl,:P_flmc,:P_gspz,:P_pzmc,";
sql += ":P_lx,:P_dj,:P_sl,:P_je,:P_clrq,:P_slrq,:P_cllx,:P_bz,:P_endflag,:P_sjsl,:P_cbdj,:P_lsdj)";
ADOQuerytmp->SQL->Add(sql);
ADOQuerytmp->Parameters->ParamByName("P_dabh")->Value = 0;
ADOQuerytmp->Parameters->ParamByName("P_khbh")->Value = 0;
ADOQuerytmp->Parameters->ParamByName("P_rybh")->Value = MainForm->MyLoginBh;
ADOQuerytmp->Parameters->ParamByName("P_clrm")->Value = MainForm->MyLoginName;
ADOQuerytmp->Parameters->ParamByName("P_pjbh")->Value = ADOQuery1->FieldByName("pjbh")->AsString;
ADOQuerytmp->Parameters->ParamByName("P_pjmc")->Value = ADOQuery1->FieldByName("mc")->AsString;
ADOQuerytmp->Parameters->ParamByName("P_gsfl")->Value = ADOQuery1->FieldByName("flbh")->AsString;
ADOQuerytmp->Parameters->ParamByName("P_flmc")->Value = DBLookupComboBox1->Text;
ADOQuerytmp->Parameters->ParamByName("P_gspz")->Value = ADOQuery1->FieldByName("pzbh")->AsString;
ADOQuerytmp->Parameters->ParamByName("P_pzmc")->Value = DBLookupComboBox2->Text;
ADOQuerytmp->Parameters->ParamByName("P_lx")->Value = "自费";
ADOQuerytmp->Parameters->ParamByName("P_dj")->Value = ADOQuery1->FieldByName("lsdj")->AsString;
ADOQuerytmp->Parameters->ParamByName("P_sl")->Value = MaskEdit1->Text;
ADOQuerytmp->Parameters->ParamByName("P_je")->Value = Edit4->Text;
ADOQuerytmp->Parameters->ParamByName("P_clrq")->Value = Date();
ADOQuerytmp->Parameters->ParamByName("P_slrq")->Value = Date();
ADOQuerytmp->Parameters->ParamByName("P_cllx")->Value = "零售";
ADOQuerytmp->Parameters->ParamByName("P_bz")->Value = Edit1->Text;
ADOQuerytmp->Parameters->ParamByName("P_sjsl")->Value = 0;
ADOQuerytmp->Parameters->ParamByName("P_endflag")->Value = "是";
ADOQuerytmp->Parameters->ParamByName("P_cbdj")->Value = ADOQuery1->FieldByName("bxdj")->AsString;
ADOQuerytmp->Parameters->ParamByName("P_lsdj")->Value = ADOQuery1->FieldByName("lsdj")->AsString;
ADOQuerytmp->ExecSQL();
Edit1->Text ="";
MaskEdit1->Text ="";
Edit4->Text ="";
}
//---------------------------------------------------------------------------
void __fastcall TBjLsForm::Button2Click(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TBjLsForm::DBLookupComboBox2Click(TObject *Sender)
{
ADOQuery1->Close();
if( DBLookupComboBox1->Text.Trim()=="")
Abort();
if( DBLookupComboBox2->Text.Trim()=="")
Abort();
ADOQuery1->Open();
MaskEdit1->Text = "";
Edit4->Text = "";
}
//---------------------------------------------------------------------------
void __fastcall TBjLsForm::DataSource4DataChange(TObject *Sender,
TField *Field)
{
AnsiString ss;
ss = MaskEdit1->Text.Trim();
if(ADOQuery1->RecordCount < 1 || ss == "")
Edit4->Text = "";
else
Edit4->Text = String(ss.ToInt() * ADOQuery1->FieldByName("lsdj")->AsFloat);
}
//---------------------------------------------------------------------------
void __fastcall TBjLsForm::MaskEdit1Change(TObject *Sender)
{
AnsiString ss;
if(ADOQuery1->State != dsBrowse )
Abort();
ss = MaskEdit1->Text.Trim();
if(ADOQuery1->RecordCount < 1 || ss == "")
Edit4->Text = "";
else
Edit4->Text = String(ss.ToInt() * ADOQuery1->FieldByName("lsdj")->AsFloat);
}
//---------------------------------------------------------------------------
void __fastcall TBjLsForm::DataSource4StateChange(TObject *Sender)
{
if(ADOQuery1->State == dsBrowse && ADOQuery1->RecordCount > 0 )
Button1->Enabled = true;
else
Button1->Enabled = false;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -