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

📄 zygl.~pas

📁 一个比较实用的凭证管理系统,Delphi+SQL开发
💻 ~PAS
字号:
unit zygl;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, Grids, DBGrids, Buttons, DB;

type
  TForm3 = class(TForm)
    Panel1: TPanel;
    DBGrid1: TDBGrid;
    Panel2: TPanel;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    Panel3: TPanel;
    Label2: TLabel;
    Edit1: TEdit;
    Label1: TLabel;
    Label3: TLabel;
    DataSource1: TDataSource;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    procedure FormShow(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure BitBtn1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure BitBtn1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form3: TForm3;

implementation
  uses DataModal4;
{$R *.dfm}

procedure TForm3.FormShow(Sender: TObject);
begin
  with Da.ADOQuery1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('select * from 摘要表');
    Open;
  end;
  if Da.ADOQuery1.RecordCount>0 then
    DataSource1.DataSet := Da.ADOQuery1
  else
  begin
    DataSource1.DataSet := Nil;
    BitBtn2.Enabled := False;
  end;
end;

procedure TForm3.BitBtn1Click(Sender: TObject);
var
  s,m: String;
  i: integer;
begin
  s:= 'Z'+ FormatDateTime('yyyy',Now());
  With Da.ADOQuery2 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('select max(摘要编号) as ss From 摘要表 ');
    Open;
  end;
  If Da.ADOQuery2.FieldByName('ss').Value = null then
    s := s + '001'
  else
  begin
    m:= Trim(Da.ADOQuery2.FieldByName('ss').Value) ;
    i:= StrToInt(Trim(Copy(m,6,8))) ;
    if i<9 then
      s:= s + '00'+ InttoStr(i +1)
    else if i<99 then
      s:= s + '0'+ InttoStr(i +1)
    else
      s:= s +InttoStr(i +1);
  end;
  Label3.Caption := s;
  Edit1.SetFocus;
end;

procedure TForm3.BitBtn5Click(Sender: TObject);
begin
  Edit1.Clear;
  Label3.Caption := '';
end;

procedure TForm3.BitBtn4Click(Sender: TObject);
begin
  if (Trim(Edit1.Text)<>'') and(Trim(Label3.Caption)<>'') then
  begin
    Try
      with Da.ADOQuery2 do
      begin
        Close;
        SQL.Clear;
        SQL.Add('Insert 摘要表 values (:a,:b)');
        Parameters.ParamByName('a').Value := Trim(Label3.Caption);
        Parameters.ParamByName('b').Value := Trim(Edit1.Text);
        ExecSQL;
      end;
      Application.MessageBox('添加成功。','提示',64);
      BitBtn2.Enabled := True;
      BitBtn5.OnClick(Sender);
      Self.OnShow(Sender);
      BitBtn1.SetFocus;
    Except
      Application.MessageBox('系统出错。','提示',64);
      Close;
    end;
  end
  else
  begin
    Application.MessageBox('请添加摘要编号或摘要名称。','提示',64);
    BitBtn1.SetFocus;
  end;
end;

procedure TForm3.BitBtn2Click(Sender: TObject);
begin
  if Da.ADOQuery1.RecordCount>0 then
    if Application.MessageBox(Pchar('确实要删除摘要编号为' + Trim(Da.ADOQuery1.FieldByName('摘要编号').Value)+'的摘要吗?'),'提示',MB_YesNo)= ID_Yes then
    begin
      Da.ADOQuery1.Delete;
      self.OnShow(Sender);
    end;
end;

procedure TForm3.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_ReTurn then
    if Trim(Edit1.Text)<>'' then
      BitBtn4.SetFocus;
end;

procedure TForm3.BitBtn1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  TBitBtn(Sender).Font.Color := clRed;
end;

procedure TForm3.BitBtn1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  TBitBtn(Sender).Font.Color := clBlue;
end;

end.

⌨️ 快捷键说明

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