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

📄 p_ckcx.pas

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

interface

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

type
  Tf_ckcx = class(Tf_mc)
    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;
    Panel1: TPanel;
    QR: TQuickRep;
    TitleBand1: TQRBand;
    QRSysData2: TQRSysData;
    QRLabel5: TQRLabel;
    QRLabel1: TQRLabel;
    kc: TQRBand;
    QRDBText3: TQRDBText;
    QRDBText4: TQRDBText;
    QRDBText5: TQRDBText;
    QRDBText6: TQRDBText;
    QRDBText7: TQRDBText;
    QRDBText8: TQRDBText;
    QRDBText9: TQRDBText;
    QRDBText1: TQRDBText;
    QRShape8: TQRShape;
    QRShape9: TQRShape;
    QRShape10: TQRShape;
    QRShape11: TQRShape;
    QRShape12: TQRShape;
    QRShape13: TQRShape;
    QRShape14: TQRShape;
    ColumnHeaderBand1: TQRBand;
    QRLabel2: TQRLabel;
    QRLabel7: TQRLabel;
    QRLabel8: TQRLabel;
    QRLabel9: TQRLabel;
    QRLabel10: TQRLabel;
    QRLabel11: TQRLabel;
    QRLabel12: TQRLabel;
    QRLabel13: TQRLabel;
    QRShape1: TQRShape;
    QRShape2: TQRShape;
    QRShape3: TQRShape;
    QRShape4: TQRShape;
    QRShape5: TQRShape;
    QRShape6: TQRShape;
    QRShape7: TQRShape;
    PageFooterBand1: TQRBand;
    QRLabel14: TQRLabel;
    QRLabel15: TQRLabel;
    QRSysData1: TQRSysData;
    QRLabel16: TQRLabel;
    QRLabel17: TQRLabel;
    QRExpr2: TQRExpr;
    QRLabel6: TQRLabel;
    QRLabel18: TQRLabel;
    SummaryBand2: TQRBand;
    QRLabel3: TQRLabel;
    QRLabel4: TQRLabel;
    QRExpr1: TQRExpr;
    Bevel1: TBevel;
    cb_khm: TsuiCheckBox;
    ekhm: TsuiEdit;
    procedure FormCreate(Sender: TObject);
    procedure b_cxClick(Sender: TObject);
    procedure b_allClick(Sender: TObject);
    procedure b_printClick(Sender: TObject);
    procedure b_exitClick(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_khmClick(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_ckcx: Tf_ckcx;

implementation

uses p_dm;

{$R *.dfm}

procedure Tf_ckcx.FormCreate(Sender: TObject);
begin
  inherited;
  dt1.Date:=now;
  dt2.Date:=now-5;
  b_all.OnClick(self);
end;

procedure Tf_ckcx.b_cxClick(Sender: TObject);
begin
  inherited;
  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 ck_st');
      query.Open;
      query.First;
      while not query.Eof do
      begin
        if query['cklx']='出库' then
          sl:=sl+query['scsl'];
        query.Next;
      end;
      query.First;
      zjsl.Caption:=floattostr(sl)+' 吨';
      exit;
    end;
    query.SQL.Clear;
    query.SQL.Add('select * from ck_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_khm.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 khm like :khm')
       else
          query.SQL.Add('khm like :khm');
       query.Parameters.ParamValues['khm']:=trim(ekhm.Text)+'%';
    end;
    query.Open;
    query.First;
    while not query.Eof do
    begin
      if query['cklx']='出库' then
         sl:=sl+query['scsl'];
      query.Next;
    end;
    query.First;
    zjsl.Caption:=floattostr(sl)+' 吨';
  end;
end;

procedure Tf_ckcx.b_allClick(Sender: TObject);
begin
  inherited;
  sl:=0;
  with dm do
  begin
      query.SQL.Clear;
      query.SQL.Add('select * from ck_st');
      query.Open;
      query.First;
      while not query.Eof do
      begin
        if query['cklx']='出库' then
          sl:=sl+query['scsl'];
        query.Next;
      end;
      query.First;
      zjsl.Caption:=floattostr(sl)+' 吨';
  end;
end;

procedure Tf_ckcx.b_printClick(Sender: TObject);
begin
  inherited;
  qr.Preview;
end;

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

procedure Tf_ckcx.cb_rqClick(Sender: TObject);
begin
  inherited;
  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_ckcx.cb_spmClick(Sender: TObject);
begin
  inherited;
  if cb_spm.Checked then
  begin
    espm.Enabled:=true;
    espm.SetFocus;
  end else
  begin
    espm.Enabled:=false;
  end;
end;

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

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

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

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

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

procedure Tf_ckcx.cb_khmClick(Sender: TObject);
begin
  inherited;
  if cb_khm.Checked then
  begin
    ekhm.Enabled:=true;
    ekhm.SetFocus;
  end else
  begin
    ekhm.Enabled:=false;
  end;
end;

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

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

end.

⌨️ 快捷键说明

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