⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.pas

📁 PosEasy收银系统源码,Pos机前后台管理代码
💻 PAS
📖 第 1 页 / 共 5 页
字号:
  mainfm: Tmainfm;
  sflag:integer;
implementation

uses   repli, details, confirmed, unit8, unit10, Unitsupplier,
  Unitaddsupplier, Unitchangesuppliermessage, Uprice, USellPrice,
  UDepartment, UManufacturer, UPurchaseRecord, Unit2, UParticular,
  ModuleUnit1, Unitdeptab1, Unitsuptab1, Unitsuptab2, Unitchange1,
  Unitshenhe, Unitxianjinjinhuo;

{$R *.DFM}
procedure AlignGrid(dbgrid:Tdbgrid);
var
  Loop,Stop:integer;
begin
  Stop:=dbgrid.Columns.Count;
  for Loop:=0 to Stop-1 do
    begin
      dbgrid.Columns[loop].Alignment:=taCenter;
      dbgrid.Columns[loop].Title.Alignment:=taCenter;
    end;
end;

procedure Tmainfm.TreeView1Change(Sender: TObject; Node: TTreeNode);
var
 tmpsql,tmpflag : string;
begin



 if treeview1.Selected.Text='新增商品' then
  begin

   tmpsql:='select iscode, cname as 厂家名称, cstyle as 厂家类型, caddress as 厂家地址, ';
   tmpsql:=tmpsql+'cconnector as 厂家联系人, ccreatedate as 创建日期, cratifier as 批准人,';
   tmpsql:=tmpsql+'cbooker as 登记人, cnote as 备注 from supplierlistbase';
   with Querysupplier do
     begin
       close;
       sql.Clear;
       sql.Add(tmpsql);
       prepare;
       open;
     end;
    notebook1.PageIndex:=1; 
  end;
 if treeview1.Selected.Text='取消商品' then
   begin
     tmpsql:='select  * from deptnamebase';
     tmpqueryspe.Close;
     tmpqueryspe.SQL.Clear;
     tmpqueryspe.SQL.Add(tmpsql);
     tmpqueryspe.Prepare;
     tmpqueryspe.Open;
     ComboBox2.Items.Clear;
     while not tmpqueryspe.Eof do
       begin
        ComboBox2.Items.Add(tmpqueryspe['部门名称']);
        tmpqueryspe.Next;
       end;
    SpeedButton20.Enabled:=false;   
    notebook1.PageIndex:=2;
    tabdelgoods.active:=false;
    tabdelgoods.active:=true;
  end;
 if treeview1.Selected.Text='部门进货' then
  begin
     sbutchanges.Enabled:=false;
     SButxianjinjinhuo.Enabled:=false;
     tmpsql:='select  * from deptnamebase ';
     tmpqueryspe.Close;
     tmpqueryspe.SQL.Clear;
     tmpqueryspe.SQL.Add(tmpsql);
     tmpqueryspe.Prepare;
     tmpqueryspe.Open;
     ComboBoxdep.Items.Clear;
     while not tmpqueryspe.Eof do
       begin
        ComboBoxdep.Items.Add(tmpqueryspe['部门名称']);
        tmpqueryspe.Next;
       end;
     notebook1.PageIndex:=3;
     tabdepappend.Active:=false;
     tabdepappend.Active:=true;
     //tmpqueryspe.Free;
  end;
 if treeview1.Selected.Text='部门返货' then
  begin
     sbutchange.Enabled:=false;
     tmpsql:='select  * from deptnamebase';
     tmpqueryspe1:=tquery.create(self);
     tmpqueryspe1.DatabaseName:='guohua1';
     tmpqueryspe1.Close;
     tmpqueryspe1.SQL.Clear;
     tmpqueryspe1.SQL.Add(tmpsql);
     tmpqueryspe1.Prepare;
     tmpqueryspe1.Open;
     ComboBox1.Items.Clear;
     while not tmpqueryspe1.Eof do
       begin
        ComboBox1.Items.Add(tmpqueryspe1['部门名称']);
        tmpqueryspe1.Next;
       end;
     notebook1.PageIndex:=4;
     tabdepback.Active:=false;
     tabdepback.Active:=true;
   end;
 if treeview1.Selected.Text='部门库存查询' then
   begin
    tmpsql:='select * from goodsbase';
    with querygoodsquery do
    begin
      close;
      sql.Clear;
      sql.Add(tmpsql);
      prepare;
      open;
      notebook1.PageIndex:=5;
      dsgoodsquery.DataSet:=querygoodsquery;
      DateTimePicker5.DateTime:=now;
    end;
   end;
 if treeview1.Selected.Text='销售查询' then
   begin
 DateTimePicker6.DateTime:=now;
 tmpsql:='select * from goodsflowbase';
   with Querygoodsflow do
    begin
      close;
      sql.Clear;
      sql.Add(tmpsql);
      prepare;
      open;
      notebook1.PageIndex:=6;
      dsgoodsquery.DataSet:=querygoodsquery;
    end;
    tmpsql:='select a=sum(销售金额) from goodsflowbase';
    querygoodsflow.Close;
    querygoodsflow.SQL.Clear;
    querygoodsflow.SQL.Add(tmpsql);
    querygoodsflow.Prepare;
    querygoodsflow.Open;
    if querygoodsflow['a']=null then edit5.Text:='0'
    else edit5.Text:=querygoodsflow['a'];
    tmpsql:='select b=sum(销售金额) from goodsflowbase where 支付方式=''现金''';
    querygoodsflow.Close;
    querygoodsflow.SQL.Clear;
    querygoodsflow.SQL.Add(tmpsql);
    querygoodsflow.Prepare;
    querygoodsflow.Open;
    if querygoodsflow['b']=null then edit6.Text:='0'
    else edit6.Text:=querygoodsflow['b'];
    tmpsql:='select c=sum(销售金额) from goodsflowbase where 支付方式=''支票''';
    querygoodsflow.Close;
    querygoodsflow.SQL.Clear;
    querygoodsflow.SQL.Add(tmpsql);
    querygoodsflow.Prepare;
    querygoodsflow.Open;
    if querygoodsflow['c']=null then edit7.Text:='0'
    else edit7.Text:=querygoodsflow['c'];
    tmpsql:='select d=(销售金额) from goodsflowbase where 支付方式=''信用卡''';
    querygoodsflow.Close;
    querygoodsflow.SQL.Clear;
    querygoodsflow.SQL.Add(tmpsql);
    querygoodsflow.Prepare;
    querygoodsflow.Open;
    if querygoodsflow['d']=null then edit8.Text:='0'
    else edit8.Text:=querygoodsflow['d'];
   end;
 {if treeview1.Selected.Text='更新销售纪录' then
   begin
      tmpsql:='select * from goodsbase';
      queryrefresh.Close;
      queryrefresh.SQL.Clear;
      queryrefresh.SQL.Add(tmpsql);
      queryrefresh.Prepare;
      queryrefresh.Open;
      notebook1.PageIndex:=7;
   end;}
 if treeview1.Selected.Text='进货查询' then
   begin
      tmpsql:='select * from storebase';
      Querystorequery.Close;
      Querystorequery.SQL.Clear;
      Querystorequery.SQL.Add(tmpsql);
      Querystorequery.Prepare;
      Querystorequery.Open;
      notebook1.PageIndex:=7;
   end;
 if treeview1.Selected.Text='进价变更' then
   begin
      try
    tmpsql:='select * from supplierlistbase';
    Querystory.Close;
    Querystory.sql.Clear;
    Querystory.SQL.Add(tmpsql);
    Querystory.Prepare;
    Querystory.Open;
    AlignGrid(dbgrid1);
    notebook1.PageIndex:=8;
  except
    Application.MessageBox('系统忙!','消息',MB_IconInformation);
  end;
   end; 
 if treeview1.Selected.Text='售价变更' then
 begin
    try
    tmpsql:='select * from supplierlistbase';
    QuerySell.Close;
    QuerySell.sql.Clear;
    QuerySell.SQL.Add(tmpsql);
    QuerySell.Prepare;
    QuerySell.Open;
    AlignGrid(dbgrid1);
    notebook1.PageIndex:=9;
      except
    Application.MessageBox('系统忙!','消息',MB_IconInformation);
 end;
 end;
 if treeview1.Selected.Text='库存查询' then
 begin
  //notebook1.PageIndex:=10;
  TempQuery.Close;
  TempQuery.SQL.Clear;
  TempQuery.SQL.Add('create table #temp (品名 char(20),当前库存 int,库存结算金额 money,进货数量 int,进货结算金额 money,销售数量 int,销售结算金额 money)');
  TempQuery.ExecSQL;
  TempQuery.Close;
  TempQuery.SQL.Clear;
  TempQuery.SQL.Add('select distinct 品名 from goodsbase');
  TempQuery.Open;
  if not Tempquery.Eof then
  begin
  while not TempQuery.eof do
    begin
      tmpflag:=TempQuery.Fields[0].AsString;
      Query.Close;
      Query.SQL.Clear;
      Query.SQL.Add('insert into #temp(品名) values('''+tmpflag+''')');
      Query.ExecSQL;
      Query.Close;
      Query.SQL.Clear;
      Query.SQL.Add('select 品名,(进价*进货数量)as total into #aa from goodsbase where 品名='''+tmpflag+'''');
      Query.ExecSQL;
      tmpsql:='update #temp set 当前库存=(select sum(当前库存) from goodsbase where 品名=';
      tmpsql:=tmpsql+''''+tmpflag+'''),库存结算金额=(select sum(库存结算金额) from goodsbase where ';
      tmpsql:=tmpsql+'品名='''+tmpflag+'''),进货数量=(select sum(进货数量) from goodsbase where ';
      tmpsql:=tmpsql+'品名='''+tmpflag+'''),进货结算金额=(select sum(total) from #aa where 品名='''+tmpflag+'''';
      tmpsql:=tmpsql+'),销售数量=(select sum(销售数量) from goodsbase ';
      tmpsql:=tmpsql+'where 品名='''+tmpflag+'''),销售结算金额=(select sum(销售结算金额) from ';
      tmpsql:=tmpsql+'goodsbase where 品名='''+tmpflag+''') where 品名='''+tmpflag+'''';
      StockQuery.Close;
      StockQuery.SQL.Clear;
      StockQuery.SQL.Add(tmpsql);
      StockQuery.ExecSQL;
      StockQuery.Close;
      StockQuery.SQL.Clear;
      StockQuery.SQL.Add('select * from #temp');
      StockQuery.Open;
      TempQuery.Next;
      Query.Close;
      Query.SQL.Clear;
      Query.SQL.Add('drop table #aa');
      Query.ExecSQL;
    end;
  AlignGrid(dbgrid4);
  //Dbgrid1.Columns[0].Width:=100;
  Dbgrid4.Columns[1].Width:=50;
  Dbgrid4.Columns[2].Width:=100;
  Dbgrid4.Columns[3].Width:=80;
  Dbgrid4.Columns[4].Width:=100;
  Dbgrid4.Columns[5].Width:=100;
  Dbgrid4.Columns[6].Width:=100;
  end;
  Query.Close;
  Query.SQL.Clear;
  Query.SQL.Add('delete #temp');
  Query.ExecSQL;
  Query.Close;
  Query.SQL.Clear;
  Query.SQL.Add('drop table #temp');
  Query.ExecSQL;
  notebook1.PageIndex:=10;
 end;
 if treeview1.Selected.Text='盘库' then
    begin
       application.CreateForm(tform2,form2);
       form2.ShowModal;
    end;
  if treeview1.Selected.Text='部门管理' then
     begin
       selecttabname:='DeptNameBase';
       selectname:='部门名称';
       application.CreateForm(TModuleForm1,ModuleForm1);
       ModuleForm1.showmodal;
     end;
  if treeview1.Selected.Text='分类管理' then
     begin
       selecttabname:='goodclassingbase';
       selectname:='商品名称';
       application.CreateForm(TModuleForm1,ModuleForm1);
       ModuleForm1.showmodal;
     end;
    
  if treeview1.Selected.Text='部门销售报表' then
     begin
       application.CreateForm(TFrmdeptab1,Frmdeptab1);
       Frmdeptab1.showmodal;
     end;
  if treeview1.Selected.Text='厂家销售报表' then
     begin
        application.CreateForm(TFrmsuptab2,Frmsuptab2);
        Frmsuptab2.showmodal;
     end;   
  if treeview1.Selected.Text='修改商品基本信息' then
     begin
        application.CreateForm(TFormchange1,Formchange1);
        Formchange1.showmodal;
     end;
  if treeview1.Selected.Text='新增商品审核' then
     begin
        shenheint:=0;
        application.CreateForm(Tfrmshenhe,Frmshenhe);
        Frmshenhe.ShowModal;
     end;
  if treeview1.Selected.Text='进货审核' then
     begin
        shenheint:=1;
        application.CreateForm(TFrmshenhe,Frmshenhe);
        Frmshenhe.ShowModal;
     end;
end;




procedure Tmainfm.RadioButton7Click(Sender: TObject);

begin
     if edit24.Text='' then tmpsqls:=''
     else tmpsqls:='and 当前库存>'+edit24.text;
     {ADateAndTime := datetimepicker1.datetime ;
     Query1.Close;
     Query1.Sql.Clear ;
     Query1.Sql.Add('select * from jkdtab ');
     Query1.Sql.Add('where dptime<:pDateTime');

     query1.parambyname('pDateTime').AsDatetime := ADateAndTime;
     query1.prepare;
     Query1.Open;
     dbgrid2.SetFocus ;}
end;

procedure Tmainfm.RadioButton8Click(Sender: TObject);

begin
      if edit24.Text='' then tmpsqls:=''
       else tmpsqls:='and 当前库存<'+(edit24.text) ;
     {ADateAndTime := datetimepicker1.datetime ;
     Query1.Close;
     Query1.Sql.Clear ;
     Query1.Sql.Add('select * from jkdtab ');
     Query1.Sql.Add('where dptime>:pDateTime');

     Query1.ParamByName('pDateTime').AsDatetime := ADateAndTime;
     query1.prepare;
     Query1.Open;
     dbgrid2.SetFocus ;}
end;

procedure Tmainfm.sbutchangeposClick(Sender: TObject);
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;

procedure Tmainfm.SpeedButton20Click(Sender: TObject);
var
 tiaoma,tmpsql:string;
 tmpquery:tquery;
begin
if MessageDlg('你确实想删除当前的这条纪录吗?',mtinformation,mbYesNoCancel,0)<>mrYes then exit;
tiaoma:=tmpqueryspe2['条码'];
tmpsql:='select * from goodsbase where 条码='+tiaoma+'';
tmpquery:=tquery.Create(self);
tmpquery.DatabaseName:='guohua1';
tmpquery.Close;
tmpquery.SQL.Clear;
tmpquery.SQL.Add(tmpsql);
tmpquery.Prepare;
tmpquery.Open;
if tmpquery['当前库存']<>'0'  then
  begin
     if tmpquery['当前库存']=null then
       begin
          tmpsql:='delete goodsbase where 条码='+tiaoma+'';
          tmpquery.Close;
          tmpquery.SQL.Clear;
          tmpquery.SQL.Add(tmpsql);
          tmpquery.Prepare;
          tmpquery.ExecSQL;
          tmpsql:='delete pricebase where 条码='+tiaoma+'';
          tmpquery.Close;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -