//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit2.h" //需要获得当前登录用户的Id , 使用全局变量LoginId
#include "Unit29.h"
#include "Unit31.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFsale1 *Fsale1;
//---------------------------------------------------------------------------
__fastcall TFsale1::TFsale1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFsale1::Button2Click(TObject *Sender)
{ //结账
//首先检查信息完整性
if(Edit1->Text!=""||Edit5->Text!="")
{
if(Edit1->Text==""||Edit5->Text==""||Edit9->Text==""||Edit13->Text=="")
{
Application->MessageBoxA("请输入完整的商品信息!","系统提示",64);
return;
}
}
if(Edit2->Text!=""||Edit6->Text!="")
{
if(Edit2->Text==""||Edit6->Text==""||Edit10->Text==""||Edit14->Text=="")
{
Application->MessageBoxA("请输入完整的商品信息!","系统提示",64);
return;
}
}
if(Edit3->Text!=""||Edit7->Text!="")
{
if(Edit3->Text==""||Edit7->Text==""||Edit11->Text==""||Edit15->Text=="")
{
Application->MessageBoxA("请输入完整的商品信息!","系统提示",64);
return;
}
}
if(Edit4->Text!=""||Edit8->Text!="")
{
if(Edit4->Text==""||Edit8->Text==""||Edit12->Text==""||Edit16->Text=="")
{
Application->MessageBoxA("请输入完整的商品信息!","系统提示",64);
return;
}
}
//b = StrToInt(a);
int q1,q2,q3,q4; //出售数量
q1 = StrToInt(Edit9->Text);
q2 = StrToInt(Edit10->Text);
q3 = StrToInt(Edit11->Text);
q4 = StrToInt(Edit12->Text);
//检查出售数量是否合法
if(q1<0||q2<0||q3<0||q4<0) //本if语句一般不会执行,因为相应文本框无法输入负号只允许输入数字和退格键
{
Application->MessageBoxA("数量不能为负数!","系统提示",64);
return;
}
if(Edit1->Text!=""&&Edit5->Text!=""&&Edit9->Text!=""&&Edit13->Text!="")
{
if(q1==0)
{
Application->MessageBoxA("出售数量不能为 0 !","系统提示",64);
return;
}
}
if(Edit2->Text!=""&&Edit6->Text!=""&&Edit10->Text!=""&&Edit14->Text!="")
{
if(q2==0)
{
Application->MessageBoxA("出售数量不能为 0 !","系统提示",64);
return;
}
}
if(Edit3->Text!=""&&Edit7->Text!=""&&Edit11->Text!=""&&Edit15->Text!="")
{
if(q3==0)
{
Application->MessageBoxA("出售数量不能为 0 !","系统提示",64);
return;
}
}
if(Edit4->Text!=""&&Edit8->Text!=""&&Edit12->Text!=""&&Edit16->Text!="")
{
if(q4==0)
{
Application->MessageBoxA("出售数量不能为 0 !","系统提示",64);
return;
}
}
/*
AnsiString Test = "123";
long double d = StrToFloat( Test );
//double转AnsiString并四舍五入
long double d = 123.456121212;
AnsiString str = FloatToStrF( d , ffFixed ,5 , 4 );
//说明FloatTostrF里5代表从第几个数字的后一位开始四舍五入,4代表取4位小数。
//执行后得到str是123.4600。
*/
//开始写入销售记录表!!
AnsiString sql,barcode,shopid,RackQ,message,message1;
int rq=0,temp=0;//RackQ架存数量
sql="select 商店编号 from 店员信息 where 店员编号 = "+LoginId;
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(sql);
ADOQuery1->Open();
shopid=ADOQuery1->FieldByName("商店编号")->AsString; //获得当前登录店员所在商店编号
if(Edit1->Text!=""&&Edit5->Text!=""&&Edit9->Text!=""&&Edit13->Text!="")
{
barcode=Edit1->Text;
//先判断该商品架存数量是否足够
sql="select 架存数量 from 架存商品信息 where 条形码 = "+barcode;
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(sql);
//ADOQuery1->ExecSQL();
ADOQuery1->Open();
RackQ=ADOQuery1->FieldByName("架存数量")->AsString;
rq=StrToInt(RackQ);//架存数量 string 转 int
temp=rq-q1;
if(temp>0||temp==0)
{//该商品架存量大于或等于要出售的数量
sql="insert into 销售记录(条形码,商店编号,店员编号,销售数量) values('"+barcode;
sql=sql+"','"+shopid; //商店编号
sql=sql+"','"+LoginId; //店员编号
sql=sql+"','"+q1; //出售数量
sql=sql+"')";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(sql);
ADOQuery1->ExecSQL();
}
else
{ //该商品架存量为 0
if(rq == 0 || rq < 0)
{
Application->MessageBoxA("对不起,第一件商品已经售完!","系统提示",64);
Edit1->Text="";
Edit5->Text="";
Edit9->Text=0;
Edit13->Text=0;
goto flag01;
}
//如果该商品还有架存但存量不足,询问是否购买全部剩余商品
if(rq>0&&rq<q1)
{
Edit9->Text = rq;
if(Application->MessageBoxA("第一件商品架存不足,是否将剩余该商品出售?","系统提示",MB_YESNO)==IDYES)
{
sql="insert into 销售记录(条形码,商店编号,店员编号,销售数量) values('"+barcode;
sql=sql+"','"+shopid; //商店编号
sql=sql+"','"+LoginId; //店员编号
sql=sql+"','"+rq; //出售剩余架存的全部该商品
sql=sql+"')";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(sql);
ADOQuery1->ExecSQL();
}
else
{
Edit1->Text="";
Edit5->Text="";
Edit9->Text=0;
Edit13->Text=0;
}
}
}
}
flag01:
if(Edit2->Text!=""&&Edit6->Text!=""&&Edit10->Text!=""&&Edit14->Text!="")
{
barcode=Edit2->Text;
//先判断架存数量是否足够
sql="select 架存数量 from 架存商品信息 where 条形码 = "+barcode;
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(sql);
//ADOQuery1->ExecSQL();
ADOQuery1->Open();
RackQ=ADOQuery1->FieldByName("架存数量")->AsString;
rq=StrToInt(RackQ);//架存数量 string 转 int
temp=rq-q1;
if(temp>0||temp==0)
{//该商品架存充足,可以出售
sql="insert into 销售记录(条形码,商店编号,店员编号,销售数量) values('"+barcode;
sql=sql+"','"+shopid; //商店编号
sql=sql+"','"+LoginId; //店员编号
sql=sql+"','"+q1; //出售数量
sql=sql+"')";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(sql);
ADOQuery1->ExecSQL();
}
else
{ //该商品架存量为 0
if(rq == 0 || rq < 0)
{
Application->MessageBoxA("对不起,第二件商品已经售完!","系统提示",64);
Edit2->Text="";
Edit6->Text="";
Edit10->Text=0;
Edit14->Text=0;
goto flag02;
}
//如果该商品还有架存但存量不足,询问是否购买全部剩余商品
if(rq>0&&rq<q1)
{
Edit10->Text = rq;
if(Application->MessageBoxA("第二件商品架存不足,是否将剩余该商品出售?","系统提示",MB_YESNO)==IDYES)
{
sql="insert into 销售记录(条形码,商店编号,店员编号,销售数量) values('"+barcode;
sql=sql+"','"+shopid; //商店编号
sql=sql+"','"+LoginId; //店员编�
没有合适的资源?快使用搜索试试~ 我知道了~
影像店管理系统正式版.rar
共320个文件
h:33个
obj:33个
cpp:33个
5星 · 超过95%的资源 需积分: 10 8 下载量 116 浏览量
2011-05-08
17:43:36
上传
评论
收藏 3.96MB RAR 举报
温馨提示
本人使用C++Builder6.0 写的一个管理系统,数据库使用MS SQL Server2000或者更高版本。采用两层的C/S结构。里面附带了mdf文件和建库脚本(sql脚本)。打开程序后提示选择链接远程数据库或者使用本地数据库,成功登录数据库服务器后提示登录影像店管理系统,系统权限分为管理员、店长、普通店员三个级别,分别有不同的权限和功能。源代码中有非常详细的注释,希望对初学者有所帮助。
资源推荐
资源详情
资源评论
收起资源包目录
影像店管理系统正式版.rar (320个子文件)
Unit4.h.bak 2KB
exit.bmp 617KB
shangdian.bmp 64KB
empl.bmp 64KB
ccc1.bmp 25KB
goods.bmp 16KB
ka.bmp 15KB
cut.bmp 15KB
ee.bmp 15KB
sol.bmp 14KB
sal.bmp 14KB
3.bmp 14KB
ddd.bmp 14KB
xie.bmp 13KB
sale.bmp 13KB
shangpin.bmp 12KB
quit.bmp 9KB
help.bmp 9KB
op.bmp 8KB
close.bmp 1KB
Project1.bpr 8KB
Unit29.cpp 39KB
Unit6.cpp 16KB
Unit5.cpp 8KB
Unit8.cpp 8KB
Unit4.cpp 7KB
Unit28.cpp 7KB
Unit3.cpp 7KB
Unit25.cpp 7KB
Unit2.cpp 7KB
Unit15.cpp 6KB
Unit1.cpp 6KB
Unit10.cpp 6KB
Unit22.cpp 5KB
Unit26.cpp 5KB
Unit27.cpp 5KB
Unit14.cpp 5KB
Unit19.cpp 4KB
Unit18.cpp 4KB
Unit20.cpp 4KB
Unit17.cpp 4KB
Unit24.cpp 4KB
Unit7.cpp 3KB
Unit16.cpp 3KB
Unit23.cpp 3KB
Unit31.cpp 3KB
Unit12.cpp 2KB
Unit13.cpp 2KB
Project1.cpp 2KB
Unit11.cpp 2KB
Unit21.cpp 2KB
Unit30.cpp 819B
Unit32.cpp 528B
Unit9.cpp 523B
Thumbs.db 112KB
Thumbs.db 45KB
Unit29.ddp 51B
Unit19.ddp 51B
Unit23.ddp 51B
Unit2.ddp 51B
Unit28.ddp 51B
Unit17.ddp 51B
Unit3.ddp 51B
Unit27.ddp 51B
Unit4.ddp 51B
Unit22.ddp 51B
Unit10.ddp 51B
Unit16.ddp 51B
Unit18.ddp 51B
Unit13.ddp 51B
Unit12.ddp 51B
Unit30.ddp 51B
Unit20.ddp 51B
Unit8.ddp 51B
Unit11.ddp 51B
Unit5.ddp 51B
Unit15.ddp 51B
Unit21.ddp 51B
Unit14.ddp 51B
Unit25.ddp 51B
Unit6.ddp 51B
Unit1.ddp 51B
Unit31.ddp 51B
Unit26.ddp 51B
Unit7.ddp 51B
Unit3.dfm 1.99MB
Unit20.dfm 1.84MB
Unit29.dfm 129KB
Unit25.dfm 122KB
Unit22.dfm 121KB
Unit28.dfm 120KB
Unit23.dfm 119KB
Unit27.dfm 119KB
Unit26.dfm 118KB
Unit21.dfm 118KB
Unit31.dfm 117KB
Unit8.dfm 35KB
Unit1.dfm 19KB
Unit6.dfm 7KB
Unit2.dfm 7KB
共 320 条
- 1
- 2
- 3
- 4
资源评论
- HelloYAW2015-06-06系统很详细,很值得学习
千年小妖
- 粉丝: 6
- 资源: 37
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功