basegroup.pas

来自「产品信息系统!关于产品基础信息的系统!功能强大!」· PAS 代码 · 共 103 行

PAS
103
字号
unit BaseGroup;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, BaseInfoBase, wwDialog, wwidlg, DB, ADODB, ActnList, ComCtrls,
  ToolWin, StdCtrls, DBCtrls, Mask, ExtCtrls, Grids, DBGrids;

type
  TfrmBaseGroup = class(TfrmBaseInfoBase)
    dbgGroup: TDBGrid;
    Panel1: TPanel;
    Panel2: TPanel;
    Splitter1: TSplitter;
    QBaseInfofCode: TWideStringField;
    QBaseInfofName: TWideStringField;
    QBaseInfofAdminName: TWideStringField;
    QBaseInfofAdminPWD: TWideStringField;
    QBaseInfofStatus: TBooleanField;
    QBaseInfofNotes: TWideStringField;
    Label1: TLabel;
    Label2: TLabel;
    DBEdit2: TDBEdit;
    DBEdit1: TDBEdit;
    Label3: TLabel;
    DBMemo1: TDBMemo;
    procedure QBaseInfofCodeValidate(Sender: TField);
    procedure QBaseInfoBeforePost(DataSet: TDataSet);
    procedure dsBaseInfoStateChange(Sender: TObject);
    procedure QBaseInfoAfterInsert(DataSet: TDataSet);
    procedure acSaveExecute(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmBaseGroup      : TfrmBaseGroup;

implementation

{$R *.dfm}

procedure TfrmBaseGroup.QBaseInfofCodeValidate(Sender: TField);
begin
  inherited;
  if not IsUnique('Code', Sender.asString) then
  begin
    showmessage('编码重复,请重新输入');
    abort;
  end;
end;

procedure TfrmBaseGroup.QBaseInfoBeforePost(DataSet: TDataSet);
begin
  if (QBaseInfo.FieldbyName('fCode').asString = '') then
  begin
    showmessage('编号不能为空,请重新输入!');
    abort;
  end;
  inherited;

end;

procedure TfrmBaseGroup.dsBaseInfoStateChange(Sender: TObject);
var
  i                 : Integer;
begin
  inherited;
  with Panel2 do
    for i := 0 to ControlCount - 1 do
      if Controls[i] is TDBEdit then
        (Controls[i] as TDBEdit).ReadOnly := not acSave.Enabled
      else if Controls[i] is TDBMemo then
        (Controls[i] as TDBMemo).ReadOnly := not acSave.Enabled;
end;

procedure TfrmBaseGroup.QBaseInfoAfterInsert(DataSet: TDataSet);
begin
  inherited;
  DBEdit1.SetFocus;
end;

procedure TfrmBaseGroup.acSaveExecute(Sender: TObject);
begin
    QBaseInfo.Edit;
    QBaseInfo.Post;
    QBaseInfo.Edit;
  inherited;

end;

procedure TfrmBaseGroup.FormDestroy(Sender: TObject);
begin
  inherited;
    frmBaseGroup := nil;
end;

end.

⌨️ 快捷键说明

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