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

📄 u_statistic.pas

📁 员工培训系统 数据库系列
💻 PAS
字号:
unit u_statistic;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Mask, ExtCtrls;

type
  TF_statistic = class(TForm)
    i_stat: TRadioGroup;
    Label1: TLabel;
    i_depart_name: TEdit;
    i_depart_id: TMaskEdit;
    Label2: TLabel;
    i_person_id: TMaskEdit;
    i_person_name: TEdit;
    Label3: TLabel;
    i_start_date: TMaskEdit;
    i_end_date: TMaskEdit;
    Label4: TLabel;
    Button1: TButton;
    procedure i_depart_idChange(Sender: TObject);
    procedure i_person_idChange(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  F_statistic: TF_statistic;

implementation

uses u_datamodule, u_report;

{$R *.DFM}

procedure TF_statistic.i_depart_idChange(Sender: TObject);
begin
  with DM_main.Q_depart do
  begin
    Params[0].AsString:=i_depart_id.Text;
    Open;
    if RecordCount=1 then
      i_depart_name.Text:=FieldValues['NAME']
    else
      i_depart_name.Text:='';
    Close;
  end;
end;

procedure TF_statistic.i_person_idChange(Sender: TObject);
begin
  with DM_main.Q_person do
  begin
    Params[0].AsString:=i_person_id.Text;
    Open;
    if RecordCount=1 then
    begin
      i_person_name.Text:=FieldValues['NAME'];
      i_depart_id.Text:=FieldValues['DEPARTMENT'];
    end
    else
      i_person_name.Text:='';
    Close;
  end;
end;

procedure TF_statistic.FormShow(Sender: TObject);
begin
  i_start_date.Text:=FormatDateTime('yyyy-mm-dd', now-30);
  i_end_date.Text:=FormatDateTime('yyyy-mm-dd', now);
end;

procedure TF_statistic.Button1Click(Sender: TObject);
begin
  with DM_main.Q_stat do
  begin
    if SQL.Count>9 then //恢复初始SQL
      SQL.Delete(9);
    Case i_stat.ItemIndex of
      1: SQL.Add('AND P.DEPARTMENT='''+i_depart_id.Text+'''');
      2: SQL.Add('AND T.PERSON='''+i_person_id.Text+'''');
    end;
    Params[0].AsDate:=StrToDate(i_start_date.Text);
    Params[1].AsDate:=StrToDate(i_end_date.Text);
    Open;
    F_report.QuickRep1.PreviewModal;
    Close;
  end;
end;

end.

⌨️ 快捷键说明

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