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

📄 utxtjsz.pas

📁 小型企业物品管理系统,DELPHI源码+ACCESS数据库
💻 PAS
字号:
unit Utxtjsz;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, RzBckgnd, StdCtrls, Mask, DBCtrls, RzButton, RzRadChk, ExtCtrls,
  RzPanel, RzEdit, RzDBEdit, TeEngine, Series, TeeProcs, Chart, DbChart,
  TeeFunci, DB, ADODB, RzTabs, RzSplit, DBGridEh, DBCtrlsEh, DBLookupEh,
  Grids;

type
  TFckpicture = class(TForm)
    RzStatusBar1: TRzStatusBar;
    RzToolbar1: TRzToolbar;
    RzToolButton4: TRzToolButton;
    qrywptj: TADOQuery;
    qryllrtj: TADOQuery;
    RzSizePanel1: TRzSizePanel;
    RzPanel1: TRzPanel;
    RzGroupBox1: TRzGroupBox;
    rcb1: TRzCheckBox;
    dbclass: TDBLookupComboboxEh;
    RzGroupBox2: TRzGroupBox;
    wpname: TDBLookupComboboxEh;
    rcb2: TRzCheckBox;
    RzGroupBox3: TRzGroupBox;
    llname: TDBLookupComboboxEh;
    rcb3: TRzCheckBox;
    RzGroupBox4: TRzGroupBox;
    rcb4: TRzCheckBox;
    ks: TDBDateTimeEditEh;
    js: TDBDateTimeEditEh;
    lbl3: TLabel;
    lbl4: TLabel;
    dsclass: TDataSource;
    dswp: TDataSource;
    dsllname: TDataSource;
    qrywptjbwid: TAutoIncField;
    qrywptjbwname: TStringField;
    qrywptjclid: TIntegerField;
    qrywptjbwunit: TStringField;
    qrywptjbwprice: TBCDField;
    qrywptjbwmemo: TStringField;
    qryllrtjemid: TAutoIncField;
    qryllrtjemname: TStringField;
    qryllrtjemsex: TBooleanField;
    qryllrtjdeid: TIntegerField;
    qryllrtjemjob: TStringField;
    qryllrtjemindate: TDateTimeField;
    qryllrtjemmemo: TStringField;
    RzBitBtn1: TRzBitBtn;
    dbcht1: TDBChart;
    Series1: TPieSeries;
    qrytj: TADOQuery;
    qrytjbwname: TStringField;
    qrytjrkzs: TIntegerField;
    RzSpacer1: TRzSpacer;
    RzToolButton1: TRzToolButton;
    RzSizePanel2: TRzSizePanel;
    RzPanel2: TRzPanel;
    DBGridEh1: TDBGridEh;
    dstj: TDataSource;
    procedure RzToolButton4Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure rcb1Click(Sender: TObject);
    procedure rcb2Click(Sender: TObject);
    procedure rcb3Click(Sender: TObject);
    procedure rcb4Click(Sender: TObject);
    procedure RzBitBtn1Click(Sender: TObject);
    procedure RzToolButton1Click(Sender: TObject);
   
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Fckpicture: TFckpicture;

implementation

uses Udate, Urctx, Urktj, Ucktjxx;

{$R *.dfm}




procedure TFckpicture.RzToolButton4Click(Sender: TObject);
begin
  close;
end;

procedure TFckpicture.FormShow(Sender: TObject);
begin
 RzToolButton1.Click;
end;

procedure TFckpicture.rcb1Click(Sender: TObject);
begin
  if rcb1.Checked then begin
     fdate.qryclass.Close;
      fdate.qryclass.Open;
    dbclass.ReadOnly:=False;
  end
  else
    dbclass.ReadOnly:=True;
end;

procedure TFckpicture.rcb2Click(Sender: TObject);
begin
  if rcb1.Checked then begin
    if dbclass.Text='' then begin
      MessageDlg('请选择物品类型!',mtError,[mbyes],0);
      dbclass.SetFocus;Exit;
    end;
  end;
  if rcb2.Checked then begin
    if rcb1.Checked then begin
      with qrywptj do begin
        close;sql.clear;sql.add('select * from tbwpb where clid='''+inttostr(dbclass.KeyValue)+'''');
        Open;
      end;
      if qrywptj.RecordCount=0 then begin
        MessageDlg('该类型下没有物品!请重新选择物品类型!',mtError,[mbyes],0);
        dbclass.SetFocus;
        Exit;
      end;
    end
    else if rcb1.Checked=false then begin
      with qrywptj do begin
        Close;SQL.Clear;SQL.Add('select * from tbwpb');Open;
      end;
      if qrywptj.RecordCount=0 then begin
        MessageDlg('目前没有物品入库记录!请先入库',mtError,[mbyes],0);
        Exit;
      end;
    end;
    wpname.ReadOnly:=False;
  end
  else
    wpname.ReadOnly:=True;
end;

procedure TFckpicture.rcb3Click(Sender: TObject);
begin
  if rcb2.Checked then begin
    if wpname.Text='' then begin
      MessageDlg('请选择物品名称',mtError,[mbYes],0);
      wpname.SetFocus;Exit;
    end;
  end;
  if rcb3.Checked then begin
    qryllrtj.Close;qryllrtj.Open;
    if qryllrtj.RecordCount=0 then begin
      MessageDlg('目前没有领料人信息!',mtError,[mbyes],0);
      Exit;
    end;
    llname.ReadOnly:=False;
  end
  else
    llname.ReadOnly:=True;
end;

procedure TFckpicture.rcb4Click(Sender: TObject);
begin
  if rcb3.Checked then begin
    if llname.Text='' then begin
      MessageDlg('请选择领料人的姓名!',mtError,[mbyes],0);
      llname.SetFocus;
      Exit;
    end;
  end;
  if rcb4.Checked then begin
    ks.ReadOnly:=False;
    js.ReadOnly:=False;
  end
  else begin
    ks.ReadOnly:=True;
    js.ReadOnly:=True;
  end;
end;

procedure TFckpicture.RzBitBtn1Click(Sender: TObject);
var t,tell:string;
begin
   t:='select wp.bwname,sum(sequanty) as ckzs from tbsell se join tbwpb wp on se.bwid=wp.bwid where ';
  if rcb1.Checked then begin
    if dbclass.text='' then begin
      MessageDlg('请选择类型!',mtError,[mbyes],0);
      dbclass.SetFocus;
      Exit;
    end;
    t:=t+'wp.clid='''+inttostr(dbclass.KeyValue)+'''';
    tell:='类型名称为['+''+dbclass.Text+''+']';
  end;
  if rcb2.Checked then begin
    if wpname.Text='' then begin
      MessageDlg('请选择物品名称!',mtError,[mbyes],0);
      wpname.SetFocus;Exit;
    end;
    if rcb1.Checked then
      t:=t+' and wp.bwid='''+inttostr(wpname.KeyValue)+''''
    else
      t:=t+'wp.bwid='''+inttostr(wpname.KeyValue)+'''';
    tell:=tell+'物品名称为['+''+wpname.Text+''+']';
  end;
  if rcb3.Checked then begin
    if llname.Text='' then begin
      MessageDlg('请选择领料人的姓名!',mtError,[mbYes],0);
      llname.SetFocus;Exit;
    end;
    if (rcb1.Checked) or (rcb2.Checked) then
      t:=t+' and se.llid='''+inttostr(llname.KeyValue)+''''
    else
      t:=t+'se.llid='''+inttostr(llname.KeyValue)+'''';
    tell:=tell+'领料人姓名为['+''+llname.Text+''+']';
  end;
  if rcb4.Checked then begin
    if ks.Value=null then begin
      MessageDlg('请选择开始时间!',mtError,[mbyes],0);
      ks.SetFocus;Exit;
    end;
    if (rcb1.Checked) or (rcb2.Checked) or (rcb3.Checked) then
      t:=t+' and se.sedate>='''+datetostr(ks.Value)+''''
    else
      t:=t+'se.sedate>='''+datetostr(ks.Value)+'''';
    tell:=tell+'时间从['+''+ks.Text+''+']到';
    if js.Value=null then begin
      t:=t+' and se.sedate<='''+datetostr(now)+'''';
      tell:=tell+'['+''+datetostr(now)+''+']';
    end
    else begin
      t:=t+' and se.sedate<='''+datetostr(js.Value)+'''';
      tell:=tell+'['+''+js.text+''+']';
    end;
  end;
  if (rcb1.Checked=false) and (rcb2.Checked=false) and (rcb3.Checked=false) and (rcb4.Checked=false) then begin
    t:='select wp.bwname,sum(sequanty) as ckzs from tbsell se join tbwpb wp on se.bwid=wp.bwid group by wp.bwname';
    tell:='所有的领料信息统计视图!';
    end
  else
    t:=t+' group by wp.bwname';
  with qrytj do begin
    Close;SQL.Clear;SQL.Add(t);Open;
  end;
  if qrytj.RecordCount=0 then begin
    MessageDlg('没有满足条件的信息统计!',mtError,[mbyes],0);
    dbcht1.Title.Text.CommaText:='没有满足'+tell+'的统计信息!';
    Exit;
  end;
  dbcht1.Title.Text.CommaText:=tell;
end;

procedure TFckpicture.RzToolButton1Click(Sender: TObject);
begin
  fdate.qryclass.Close;qrywptj.Close;qryllrtj.Close;
  rcb1.Checked:=False;rcb2.Checked:=False;rcb3.Checked:=False;rcb4.Checked:=False;
  ks.Value:=null;js.Value:=null;
  with qrytj do begin
    Close;SQL.Clear;
    SQL.Add('select wp.bwname,sum(sequanty) as ckzs from tbsell se join tbwpb wp on se.bwid=wp.bwid group by wp.bwname');
    Open;
  end;
  dbcht1.Title.Text.CommaText:='所有的领料信息统计视图!';
end;

end.

⌨️ 快捷键说明

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