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

📄 p_rkcx.pas

📁 超市系统超市系统超市系统超市系统超市系统超市系统超市系统超市系统超市系统超市系统超市系统超市系统超市系统超市系统
💻 PAS
字号:
unit p_rkcx;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,p_mc, StdCtrls, Buttons, ComCtrls, SUIEdit, SUIButton, Grids,
  DBGrids, ExtCtrls;

type
  Tf_rkcx = class(Tf_mc)
    Bevel1: TBevel;
    Label1: TLabel;
    Label2: TLabel;
    zjsl: TLabel;
    DBGrid1: TDBGrid;
    cb_spm: TsuiCheckBox;
    espm: TsuiEdit;
    cb_c: TsuiCheckBox;
    ehcl: TsuiEdit;
    cb_hcl: TsuiCheckBox;
    ec: TsuiEdit;
    cb_spxh: TsuiCheckBox;
    espxh: TsuiEdit;
    cb_szmd: TsuiCheckBox;
    eszmd: TsuiEdit;
    cb_ysx: TsuiCheckBox;
    eysx: TsuiEdit;
    cb_rq: TsuiCheckBox;
    dt1: TDateTimePicker;
    dt2: TDateTimePicker;
    b_cx: TBitBtn;
    b_all: TBitBtn;
    b_print: TBitBtn;
    b_exit: TBitBtn;
    ejbr: TsuiEdit;
    cb_jbr: TsuiCheckBox;
    procedure b_cxClick(Sender: TObject);
    procedure b_allClick(Sender: TObject);
    procedure b_exitClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure cb_rqClick(Sender: TObject);
    procedure cb_spmClick(Sender: TObject);
    procedure cb_spxhClick(Sender: TObject);
    procedure cb_cClick(Sender: TObject);
    procedure cb_hclClick(Sender: TObject);
    procedure cb_szmdClick(Sender: TObject);
    procedure cb_ysxClick(Sender: TObject);
    procedure cb_jbrClick(Sender: TObject);
    procedure ecKeyPress(Sender: TObject; var Key: Char);
    procedure ehclKeyPress(Sender: TObject; var Key: Char);
  private
    sl:real;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  f_rkcx: Tf_rkcx;

implementation

uses p_dm;

{$R *.dfm}

procedure Tf_rkcx.b_cxClick(Sender: TObject);
begin
  if cb_c.Checked then
     try
       strtofloat(ec.Text);
     except
       ec.SetFocus;
       exit;
     end;
  if cb_hcl.Checked then
     try
       strtofloat(ehcl.Text);
     except
       ehcl.SetFocus;
       exit;
     end;
  sl:=0;
  with dm do
  begin
    if (not cb_rq.Checked)and(not cb_spm.Checked) and (not cb_spxh.Checked) and (not cb_c.Checked) and (not cb_hcl.Checked) and (not cb_szmd.Checked) and (not cb_ysx.Checked) then
    begin
      query.SQL.Clear;
      query.SQL.Add('select * from rk_st');
      query.Open;
      query.First;
      while not query.Eof do
      begin
        sl:=sl+query['sl'];
        query.Next;
      end;
      query.First;
      zjsl.Caption:=floattostr(sl)+' 吨';
      exit;
    end;
    query.SQL.Clear;
    query.SQL.Add('select * from rk_st where');
    if cb_rq.Checked then
    begin
      query.SQL.Add('ddh>=:dt1 and ddh<=:dt2');
      query.Parameters.ParamValues['dt1']:='ck'+formatdatetime('yyyymmdd',dt1.Date)+'0000';
      query.Parameters.ParamValues['dt2']:='ck'+formatdatetime('yyyymmdd',dt2.Date)+'9999';
    end;
    if cb_spm.Checked then
    begin
       if cb_rq.Checked then
          query.SQL.Add('and spm like :spm')
       else
          query.SQL.Add('spm like :spm');
       query.Parameters.ParamValues['spm']:=trim(espm.Text)+'%';
    end;
    if cb_spxh.Checked then
    begin
       if cb_rq.Checked or cb_spm.Checked then
          query.SQL.Add('and xhm like :xhm')
       else
          query.SQL.Add('xhm like :xhm');
       query.Parameters.ParamValues['xhm']:=trim(espxh.Text)+'%';
    end;
    if cb_c.Checked then
    begin
       if cb_rq.Checked or cb_spm.Checked or cb_spxh.Checked then
          query.SQL.Add('and c=:c')
       else
          query.SQL.Add('c=:c');
       query.Parameters.ParamValues['c']:=trim(ec.Text);
    end;
    if cb_hcl.Checked then
    begin
       if cb_rq.Checked or cb_spm.Checked or cb_spxh.Checked or cb_c.Checked then
          query.SQL.Add('and hcl=:hcl')
       else
          query.SQL.Add('hcl=:hcl');
       query.Parameters.ParamValues['hcl']:=trim(ehcl.Text);
    end;
    if cb_szmd.Checked then
    begin
       if cb_rq.Checked or cb_spm.Checked or cb_spxh.Checked or cb_c.Checked or cb_hcl.Checked then
          query.SQL.Add('and szmd=:szmd')
       else
          query.SQL.Add('szmd=:szmd');
       query.Parameters.ParamValues['szmd']:=trim(eszmd.Text);
    end;
    if cb_ysx.Checked then
    begin
       if cb_szmd.Checked or cb_rq.Checked or cb_spm.Checked or cb_spxh.Checked or cb_c.Checked or cb_hcl.Checked then
          query.SQL.Add('and ysx=:ysx')
       else
          query.SQL.Add('ysx=:ysx');
       query.Parameters.ParamValues['ysx']:=trim(eysx.Text);
    end;
    if cb_jbr.Checked then
    begin
       if cb_ysx.Checked or cb_szmd.Checked or cb_rq.Checked or cb_spm.Checked or cb_spxh.Checked or cb_c.Checked or cb_hcl.Checked then
          query.SQL.Add('and jbr like :jbr')
       else
          query.SQL.Add('jbr like :jbr');
       query.Parameters.ParamValues['jbr']:=trim(ejbr.Text)+'%';
    end;
    query.Open;
    query.First;
    while not query.Eof do
    begin
      sl:=sl+query['sl'];
      query.Next;
    end;
    query.First;
    zjsl.Caption:=floattostr(sl)+' 吨';
  end;

end;

procedure Tf_rkcx.b_allClick(Sender: TObject);
begin
  sl:=0;
  with dm do
  begin
      query.SQL.Clear;
      query.SQL.Add('select * from rk_st');
      query.Open;
      query.First;
      while not query.Eof do
      begin
        sl:=sl+query['sl'];
        query.Next;
      end;
      query.First;
      zjsl.Caption:=floattostr(sl)+' 吨';
  end;

end;

procedure Tf_rkcx.b_exitClick(Sender: TObject);
begin
  close;
end;

procedure Tf_rkcx.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  inherited;
  dm.query.close;
end;

procedure Tf_rkcx.FormCreate(Sender: TObject);
begin
  dt1.Date:=now;
  dt2.Date:=now;
  b_all.OnClick(self);
end;

procedure Tf_rkcx.cb_rqClick(Sender: TObject);
begin
  if cb_rq.Checked then
  begin
    dt1.Enabled:=true;
    dt2.Enabled:=true;
  end else
  begin
    dt1.Enabled:=false;
    dt2.Enabled:=false;
  end;
end;

procedure Tf_rkcx.cb_spmClick(Sender: TObject);
begin
  if cb_spm.Checked then
  begin
    espm.Enabled:=true;
    espm.SetFocus;
  end else
  begin
    espm.Enabled:=false;
  end;
end;

procedure Tf_rkcx.cb_spxhClick(Sender: TObject);
begin
  if cb_spxh.Checked then
  begin
    espxh.Enabled:=true;
    espxh.SetFocus;
  end else
  begin
    espxh.Enabled:=false;
  end;
end;

procedure Tf_rkcx.cb_cClick(Sender: TObject);
begin
  if cb_c.Checked then
  begin
    ec.Enabled:=true;
    ec.SetFocus;
  end else
  begin
    ec.Enabled:=false;
  end;
end;

procedure Tf_rkcx.cb_hclClick(Sender: TObject);
begin
  if cb_hcl.Checked then
  begin
    ehcl.Enabled:=true;
    ehcl.SetFocus;
  end else
  begin
    ehcl.Enabled:=false;
  end;
end;

procedure Tf_rkcx.cb_szmdClick(Sender: TObject);
begin
  if cb_szmd.Checked then
  begin
    eszmd.Enabled:=true;
    eszmd.SetFocus;
  end else
  begin
    eszmd.Enabled:=false;
  end;
end;

procedure Tf_rkcx.cb_ysxClick(Sender: TObject);
begin
  if cb_ysx.Checked then
  begin
    eysx.Enabled:=true;
    eysx.SetFocus;
  end else
  begin
    eysx.Enabled:=false;
  end;
end;

procedure Tf_rkcx.cb_jbrClick(Sender: TObject);
begin
  if cb_jbr.Checked then
  begin
    ejbr.Enabled:=true;
    ejbr.SetFocus;
  end else
  begin
    ejbr.Enabled:=false;
  end;
end;

procedure Tf_rkcx.ecKeyPress(Sender: TObject; var Key: Char);
begin
  if not(key in['0'..'9',#8,'.']) then
  begin
    key:=#0;
  end;
end;

procedure Tf_rkcx.ehclKeyPress(Sender: TObject; var Key: Char);
begin
  if not(key in['0'..'9',#8,'.']) then
  begin
    key:=#0;
  end;
end;

end.

⌨️ 快捷键说明

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