📄 main.pas
字号:
tmpsql:='select * from goodsflowbase where ';
tmpsql:=tmpsql+'操作日期<='''+formatdatetime('yyyy-mm-dd',DateTimePicker6.datetime)+'''';
tmpsqlx:='select a=sum(销售金额) from goodsflowbase where 操作日期<='''+formatdatetime('yyyy-mm-dd',DateTimePicker6.datetime)+'''';
tmpsqly:='select b=sum(销售金额) from goodsflowbase where 支付方式=''现金'' and 操作日期<='''+formatdatetime('yyyy-mm-dd',DateTimePicker6.datetime)+'''';
tmpsqlz:='select c=sum(销售金额) from goodsflowbase where 支付方式=''支票'' and 操作日期<='''+formatdatetime('yyyy-mm-dd',DateTimePicker6.datetime)+'''';
tmpsqls:='select d=sum(销售金额) from goodsflowbase where 支付方式=''信用卡'' and 操作日期<='''+formatdatetime('yyyy-mm-dd',DateTimePicker6.datetime)+'''';
if edit29.Text='' then
begin
tmpsql:=tmpsql;
tmpsqlx:=tmpsqlx;
tmpsqly:=tmpsqly;
tmpsqlz:=tmpsqlz;
tmpsqls:=tmpsqls;
end
else
begin
tmpsql:=tmpsql+'and 品名 like ''%'+trim(edit29.text)+'%''';
tmpsqlx:=tmpsqlx+'and 品名 like ''%'+trim(edit29.text)+'%''';
tmpsqly:=tmpsqly+'and 品名 like ''%'+trim(edit29.text)+'%''';
tmpsqlz:=tmpsqlz+'and 品名 like ''%'+trim(edit29.text)+'%''';
tmpsqls:=tmpsqls+'and 品名 like ''%'+trim(edit29.text)+'%''';
end;
if edit34.Text='' then
begin
tmpsql:=tmpsql;
tmpsqlx:=tmpsqlx;
tmpsqly:=tmpsqly;
tmpsqlz:=tmpsqlz;
tmpsqls:=tmpsqls;
end
else
begin
tmpsql:=tmpsql+'and 物流来源 like ''%'+trim(edit34.text)+'%''';
tmpsqlx:=tmpsqlx+'and 物流来源 like ''%'+trim(edit34.text)+'%''';
tmpsqly:=tmpsqly+'and 物流来源 like ''%'+trim(edit34.text)+'%''';
tmpsqlz:=tmpsqlz+'and 物流来源 like ''%'+trim(edit34.text)+'%''';
tmpsqls:=tmpsqls+'and 物流来源 like ''%'+trim(edit34.text)+'%''';
end;
if edit17.Text='' then
begin
tmpsql:=tmpsql;;
tmpsqlx:=tmpsqlx;
tmpsqly:=tmpsqly;
tmpsqlz:=tmpsqlz;
tmpsqls:=tmpsqls;
end
else
begin
tmpsql:=tmpsql+'and 条码='''+trim(edit17.Text)+'''';
tmpsqlx:=tmpsqlx+'and 条码='''+trim(edit17.Text)+'''';
tmpsqly:=tmpsqly+'and 条码='''+trim(edit17.Text)+'''';
tmpsqlz:=tmpsqlz+'and 条码='''+trim(edit17.Text)+'''';
tmpsqls:=tmpsqls+'and 条码='''+trim(edit17.Text)+'''';
end;
with querygoodsflow do
begin
close;
sql.clear;
//showmessage(tmpsql);
sql.add(tmpsqlx);
prepare;
open;
end;
if querygoodsflow['a']=null then edit5.text:='0'
else edit5.Text:=querygoodsflow['a'];
with querygoodsflow do
begin
close;
sql.clear;
//showmessage(tmpsql);
sql.add(tmpsqly);
prepare;
open;
end;
if querygoodsflow['b']=null then edit6.text:='0'
else edit6.Text:=querygoodsflow['b'];
with querygoodsflow do
begin
close;
sql.clear;
//showmessage(tmpsql);
sql.add(tmpsqlz);
prepare;
open;
end;
if querygoodsflow['c']=null then edit7.Text:='0'
else edit7.Text:=querygoodsflow['c'];
with querygoodsflow do
begin
close;
sql.clear;
//showmessage(tmpsql);
sql.add(tmpsqls);
prepare;
open;
end;
if querygoodsflow['d']=null then edit8.Text:='0'
else edit8.Text:=querygoodsflow['d'];
with querygoodsflow do
begin
close;
sql.clear;
//showmessage(tmpsql);
sql.add(tmpsql);
prepare;
open;
end;
if querygoodsflow.Eof then
begin
tmpsql:='select * from goodsflowbase';
querygoodsflow.Close;
querygoodsflow.SQL.Clear;
querygoodsflow.SQL.Add(tmpsql);
querygoodsflow.Prepare;
querygoodsflow.Open;
showmessage('没有要查询的纪录');
Exit;
end;
end;
procedure Tmainfm.sbutchangesClick(Sender: TObject);
begin
if tmpqueryspe2.Eof then
begin
showmessage('没有选择的商品');
exit;
end;
Application.CreateForm(Tfrmdepchange, frmdepchange);
frmdepchange.ShowModal;
tempint:=tabdepappend['id'];
//showmessage(inttostr(frmmain.id));
end;
procedure Tmainfm.sbutchangeClick(Sender: TObject);
begin
Application.CreateForm(Tfrmdepbackchange, frmdepbackchange);
frmdepbackchange.ShowModal;
tempint:=tmpqueryspe2['id'];
//showmessage(inttostr(frmmain.id));
end;
procedure Tmainfm.SpeedButton22Click(Sender: TObject);
var
tmpsql:string;
begin
{ if (edit25.Text='') and (edit26.Text='') and (edit22.Text='') and (edit28.Text='') and (edit20.Text='') and (edit21.Text='') and (edit27.Text='') and (edit30.text='') and (edit24.Text='') and (edit31.Text='') and (edit23.Text='') and (datetimepicker5.DateTime>now)
then
begin
showmessage('您没有输入查询条件,请输入!');
exit;
end;}
tmpsql:='select * from goodsbase where ';
tmpsql:=tmpsql+'最后更新日期<='''+formatdatetime('yyyy-mm-dd',DateTimePicker5.datetime)+'''';
if edit25.Text='' then tmpsql:=tmpsql
else
begin
tmpsql:=tmpsql+'and 品名 like ''%';
tmpsql:=tmpsql+''+trim(edit25.text)+'';
tmpsql:=tmpsql+'%''';
end;
if edit26.Text='' then tmpsql:=tmpsql
else tmpsql:=tmpsql+'and 牌号 like ''%'+trim(edit26.text)+'%''';
if edit22.Text='' then tmpsql:=tmpsql
else tmpsql:=tmpsql+'and 规格 like ''%'+trim(edit22.text)+'%''';
if edit23.text='' then tmpsql:=tmpsql
else tmpsql:=tmpsql+'and 分类 like ''%'+trim(edit23.text)+'%''';
if edit28.Text='' then tmpsql:=tmpsql
else tmpsql:=tmpsql+'and 等级 like ''%'+trim(edit28.text)+'%''';
if edit20.Text='' then tmpsql:=tmpsql
else tmpsql:=tmpsql+'and 厂家 like ''%'+trim(edit20.text)+'%''';
if edit21.Text='' then tmpsql:=tmpsql
else tmpsql:=tmpsql+'and 进价 ='+edit21.text+'';
if edit27.Text='' then tmpsql:=tmpsql
else tmpsql:=tmpsql+'and 售价 ='+trim(edit27.text)+'';
if edit30.Text='' then tmpsql:=tmpsql
else tmpsql:=tmpsql+'and 销售部门 like ''%'+trim(edit30.text)+'%''';
if edit24.Text=''then tmpsql:=tmpsql
else tmpsql:=tmpsql+tmpsqls;
if edit31.Text=''then tmpsql:=tmpsql
else tmpsql:=tmpsql+'and 备注 like ''%'+trim(edit31.text)+'%''';
with Querygoodsquery do
begin
close;
sql.clear;
//showmessage(tmpsqls);
//showmessage(tmpsql);
sql.add(tmpsql);
prepare;
open;
end;
if Querygoodsquery.Eof then
begin
tmpsql:='select * from goodsbase';
Querygoodsquery.Close;
Querygoodsquery.SQL.Clear;
Querygoodsquery.SQL.Add(tmpsql);
Querygoodsquery.Prepare;
Querygoodsquery.Open;
showmessage('没有要查询的纪录');
Exit;
end;
end;
procedure Tmainfm.SpeedButton23Click(Sender: TObject);
var
tmpSql:string;
begin
if dbgrid7.SelectedField.Text='' then exit
else
begin
tmpSql:='delete goodsbase where id='+Trim(dbgrid7.SelectedField.Text)+'';
showmessage(tmpSql);
if messagedlg('此记录将从库中删除,是否继续?',mtInformation,mbYesNoCancel,0)<>mrYes then Exit
else
begin
Querygoodsquery.Close;
Querygoodsquery.SQL.Clear;
Querygoodsquery.SQL.Add(tmpSql);
Querygoodsquery.Prepare;
Querygoodsquery.ExecSQL;
end;
tmpSql:='select * from goodsbase';
Querygoodsquery.Close;
Querygoodsquery.SQL.Clear;
Querygoodsquery.SQL.Add(tmpSql);
Querygoodsquery.Prepare;
Querygoodsquery.open;
end;
end;
procedure Tmainfm.SpeedButton2Click(Sender: TObject);
begin
Application.CreateForm(TDepartment,Department);
Department.ShowModal;
end;
procedure Tmainfm.SpeedButton7Click(Sender: TObject);
begin
Query2.Close;
Query2.Sql.Clear ;
Query2.Sql.Add('select * from zjlshtab ');
query2.prepare;
Query2.Open;
notebook1.PageIndex:=2;
end;
procedure Tmainfm.SpeedButton9Click(Sender: TObject);
var
tmpsql : string;
begin
tmpsql:='select * from supplierlistbase';
with Querysupplier do
begin
close;
sql.Clear;
sql.Add(tmpsql);
prepare;
open;
notebook1.PageIndex:=1;
//dsgoodsquery.DataSet:=querygoodsquery;
treeview1.Items[2].selected:=True;
end;
end;
procedure Tmainfm.SpeedButton21Click(Sender: TObject);
begin
Application.CreateForm(Tfraddsupplier, fraddsupplier);
fraddsupplier.ShowModal;
end;
procedure Tmainfm.SpeedButton25Click(Sender: TObject);
begin
begin
winexec('e:\guohua\new\imppart.exe foxpart.dbf part.dbf',1);
if fileexists('e:\guohua\new\part.dbf') then
begin
copyfile('e:\guohua\new\part.dbf','\\server\posfile\database\part.dbf',false);
end
else
showmessage('The file doesn`t exis');
end;
end;
procedure Tmainfm.SpeedButton27Click(Sender: TObject);
begin
tabdelgoods.Refresh;
end;
procedure Tmainfm.SpeedButton28Click(Sender: TObject);
begin
tabdepappend.Refresh;
end;
procedure Tmainfm.SpeedButton29Click(Sender: TObject);
begin
tabdepback.Refresh;
end;
procedure Tmainfm.SbutrefreshClick(Sender: TObject);
var
tmpsql,wuliumubiao,tmpfile,wuliubiaoji,wuliulaiyuan,jinjia,shoujia,cbje,xsje,sday,tmptime2,fillname,filldata,sdate:string;
tmpquery2,tmpquery1,tmpquery3:Tquery;
tmpint:integer;
tmpbiaozhi:integer;
tmptime,present,tmptime1:tdatetime;
Year, Month, Day: Word;
Query:TQuery;
panduan:boolean;
begin
//将数据写入sql库中//
present:=now; //写入goodsflowbase
DecodeDate(Present, Year, Month, Day);
filldata:=formatdatetime('yymmdd',now);
fillname:='Xs'+filldata+'.dbf';
{if day<10 then sday:='0'+inttostr(day)
else sday:=inttostr(day);}
if fileexists(fillname) then //当当天销售文件存在
begin
tmpsql:='select a=max(修改纪录时间) from goodsflowbase where 物流方向标记=''售出'' or 物流方向标记=''退货''';
tmpquery1:=tquery.Create(self);
tmpquery1.Databasename:='guohua1';
tmpquery1.Close;
tmpquery1.SQL.Clear;
tmpquery1.SQL.Add(tmpsql);
tmpquery1.Prepare;
tmpquery1.Open;
//if tmpquery1['a']=Null then showmessage('a');
tmpsql:='select b=max(修改纪录日期) from goodsflowbase where 物流方向标记=''售出'' or 物流方向标记=''退货''';
tmpquery3:=tquery.Create(self);
tmpquery3.Databasename:='guohua1';
tmpquery3.Close;
tmpquery3.SQL.Clear;
tmpquery3.SQL.Add(tmpsql);
tmpquery3.Prepare;
tmpquery3.Open;
//tmpquery3.Free;
//showmessage(tmpquery1['a']);
tmpfile:=fillname;
tmpquery2:=tquery.create(self);
tmpquery2.Databasename:='E:\guohua\new\';
tmpsql:='select * from '''+tmpfile+''' where op='''+trim('.')+'''';
tmpquery2.close;
tmpquery2.SQL.Clear;
tmpquery2.SQL.Add(tmpsql);
tmpquery2.Prepare;
tmpquery2.open;
//formatdatetime('hh:mm:ss',tmpquery1['a']);
if tmpquery1['a']<>Null then
begin
present:=tmpquery3['b'];
DecodeDate(Present, Year, Month, Day);
sdate:=copy(IntToStr(year-100),3,2)+'/'+IntToStr(Month)+'/'+IntToStr(Day);
present:=strtodatetime(sdate);
formatdatetime('yy/mm/dd',present);
tmpsql:='select * from '+''+tmpfile+''+' where op='''+trim('.')+''' and saledate>='''+trim(datetimetostr(present))+'''';// and saletime>'''+formatdatetime('hh:mm:ss',tmpquery1['a'])+'''';
tmpquery2.close;
tmpquery2.SQL.Clear;
tmpquery2.SQL.Add(tmpsql);
tmpquery2.Prepare;
tmpquery2.open;
end;
while not tmpquery2.Eof do
begin
tmpsql:='select * from goodsbase where 条码='''+tmpquery2['code']+'''';
tmpquery1:=tquery.Create(self);
tmpquery1.Databasename:='guohua1';
tmpquery1.Close;
tmpquery1.SQL.Clear;
tmpquery1.SQL.Add(tmpsql);
tmpquery1.Open;
{while not tmpquery2.Eof do //判断库中记录是否比当前纪录新
begin
panduan:=false;
if tmpquery1['条码']= null then break
else
begin
if tmpquery1['操作日期']>tmpquery2.fieldbyname('saledate').asdatetime then tmpquery2.Next
else
begin
if tmpquery1['操作日期']<tmpquery2.fieldbyname('saledate').asdatetime then tmpquery1.Next
else if (tmpquery1['操作日期']=tmpquery2.fieldbyname('saledate').asdatetime) and (tmpquery1['修改纪录时间']<tmpquery2.fieldbyname('saletime').asdatetime) then tmpquery1.Next
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -