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

📄 category.~pa

📁 一个典当行的业务管理系统程序
💻 ~PA
字号:
unit Category;

interface

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

type
  TfrmCategory = class(TForm)
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    txtCode: TEdit;
    GroupBox1: TGroupBox;
    dgCategory: TDBGrid;
    cmdAdd: TBitBtn;
    cmdModify: TBitBtn;
    cmdSave: TBitBtn;
    cmdDel: TButton;
    cmdQuery: TButton;
    cmdExit: TButton;
    txtName: TEdit;
    procedure cmdQueryClick(Sender: TObject);
    procedure cmdExitClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure txtCodeKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure txtNameKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure cmdAddClick(Sender: TObject);
    procedure cmdModifyClick(Sender: TObject);
    procedure cmdSaveClick(Sender: TObject);
    procedure cmdDelClick(Sender: TObject);
    procedure dgCategoryCellClick(Column: TColumn);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmCategory: TfrmCategory;

implementation

uses dmPawn, Msg;

{$R *.DFM}
var
   QueryOpenMark:Boolean;
   
procedure TfrmCategory.cmdQueryClick(Sender: TObject);
var
   Sql:string;
begin
     if cmdSave.Enabled=True then
        cmdSave.Enabled:=False;
     if cmdAdd.Enabled=False then
        cmdAdd.Enabled:=True;
     if cmdModify.Enabled=False then
        cmdModify.Enabled:=True;
     if txtCode.ReadOnly=True then
        txtCode.ReadOnly:=False;
              
     dgCategory.DataSource:=dmPawnFrm.dsQCategory;
     Sql:='select * from Category_Tbl where True ';
     if txtCode.Text<>'' then
     begin
          Sql:=Sql+ 'and Code=:Code ';
     end;
     with dmPawnFrm do
     begin
          dqCategory.Close;
          dqCategory.SQL.Clear;
          dqCategory.SQL.Add(Sql);
          if txtCode.Text<>'' then
          begin
               dqCategory.ParamByName('Code').asstring:=trim(txtCode.text);
          end;
          dqCategory.Open;
          if QueryOpenMark=False then
          begin
               QueryOpenMark:=True;
          end;
     end;
end;

procedure TfrmCategory.cmdExitClick(Sender: TObject);
begin
     close;
end;

procedure TfrmCategory.FormShow(Sender: TObject);
begin
     dmPawnFrm.dqCategory.Close;
     if QueryOpenMark=True then
     begin
          QueryOpenMark:=False;
     end;
end;

procedure TfrmCategory.txtCodeKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
     if key=VK_RETURN then
        txtName.SetFocus ;
end;

procedure TfrmCategory.txtNameKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
     if key=VK_RETURN then
        cmdSave.SetFocus ;
end;

procedure TfrmCategory.cmdAddClick(Sender: TObject);
begin
     txtCode.Text:='';
     txtName.Text:='';
     if txtCode.ReadOnly=True then
        txtCode.ReadOnly:=False;
     if cmdModify.Enabled=True then
        self.cmdModify.Enabled:=False;
     if cmdSave.Enabled=False then
        cmdSave.Enabled:=True;
     txtCode.SetFocus ;
end;

procedure TfrmCategory.cmdModifyClick(Sender: TObject);
begin
     if txtCode.ReadOnly=False then
        txtCode.ReadOnly:=True;
     if cmdAdd.Enabled=True then
          cmdAdd.Enabled:=False;
     if cmdSave.Enabled=False then
        cmdSave.Enabled:=True;
     txtName.SetFocus ;
end;

procedure TfrmCategory.cmdSaveClick(Sender: TObject);
begin
     if txtCode.Text='' then
     begin
          messagedlg(Msg.MsgCategoryCode,mtWarning,[mbYes],0);
          exit;
     end;
     if txtName.Text='' then
     begin
          messagedlg(Msg.MsgCategoryName,mtWarning,[mbYes],0);
          exit;
     end;
     if cmdAdd.Enabled=False then  //是修改
     begin
          with dmPawnFrm do
          begin
               tblCategory.Open;
               tblCategory.IndexFieldNames:='Code';
               tblCategory.SetKey;
               tblCategory.FieldByName('Code').Asstring:=trim(txtCode.Text);
               if tblCategory.GotoKey then
               begin
                    tblCategory.DisableControls ;
                    tblCategory.Edit;
                    tblCategoryName.Value:=trim(txtName.text);
                    tblCategoryCode.Value:=trim(txtCode.text);
                    tblCategory.Post;
                    tblCategory.EnableControls ;
               end;
               tblCategory.Close;

          end;
          cmdAdd.Enabled:=True;
     end;
     if cmdModify.Enabled=False then  //是新增
     begin
           with dmPawnFrm do
           begin
               tblCategory.Open;
               tblCategory.Insert;
               tblCategory.DisableControls ;
               tblCategoryCode.Value:=trim(txtCode.Text);
               tblCategoryName.Value:=trim(txtName.text);
               tblCategory.Post;
               tblCategory.EnableControls ;
               tblCategory.Close;
          end;
          cmdModify.Enabled:=True;
     end;
     dgCategory.DataSource:=dmPawnFrm.dsCategory;
     dmPawnFrm.tblCategory.Open;
     cmdSave.Enabled:=False;
end;

procedure TfrmCategory.cmdDelClick(Sender: TObject);
begin
     if cmdAdd.Enabled=False then
        cmdAdd.Enabled:=True;
     if txtCode.Text='' then
     begin
          messagedlg(Msg.MsgCategory,mtWarning,[mbYes],0);
          exit;
     end;
     with dmPawnFrm do
     begin
           tblCategory.Open;
           tblCategory.SetKey;
           tblCategory.FieldByName('Code').Asstring:=trim(txtCode.Text);
           if tblCategory.GotoKey then
           begin
                tblCategory.Delete;
           end;
           tblCategory.Close;
     end;
     dgCategory.DataSource:=dmPawnFrm.dsCategory;
     dmPawnFrm.tblCategory.Open;
end;

procedure TfrmCategory.dgCategoryCellClick(Column: TColumn);
begin
     if QueryOpenMark=True then
     begin
          if dgCategory.Columns[0].Field.IsNull then
             txtCode.Text:=''
          else
              txtCode.Text:=dgCategory.Columns[0].Field.AsString;
          if dgCategory.Columns[1].Field.IsNull then
             txtName.Text:=''
          else
              txtName.Text:=dgCategory.Columns[1].Field.AsString;
     end
     else
     begin
          txtCode.Text:='';
          txtName.Text:='';
          txtCode.SetFocus;
     end;

end;

end.

⌨️ 快捷键说明

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