pfm_spbmlb.pas

来自「超市的销售」· PAS 代码 · 共 79 行

PAS
79
字号
unit pfm_spbmlb;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Db, DBTables, ExtCtrls, Grids, DBGrids, Mask, DBCtrls, Buttons,
  ADODB, ado_dm;

type
  Tfm_spbmlb = class(TForm)
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    DataSource1: TDataSource;
    DataSource2: TDataSource;
    DBGrid1: TDBGrid;
    Panel1: TPanel;
    DBGrid2: TDBGrid;
    Panel2: TPanel;
    DBNavigator1: TDBNavigator;
    DBNavigator2: TDBNavigator;
    lbltishi: TLabel;
    ADOquery1: TADOQuery;
    ADOquery2: TADOQuery;
    procedure adoquery2BeforeInsert(DataSet: TDataSet);
    procedure adoquery2BeforePost(DataSet: TDataSet);
    procedure adoquery1BeforePost(DataSet: TDataSet);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  fm_spbmlb: Tfm_spbmlb;

implementation

{$R *.DFM}

procedure Tfm_spbmlb.adoquery2BeforeInsert(DataSet: TDataSet);
begin
    if adoquery1.Eof or adoquery1.Bof then
    begin
        lbltishi.caption:='要先加入大类';
        abort;
    end;
end;

procedure Tfm_spbmlb.adoquery2BeforePost(DataSet: TDataSet);
begin
    if length(adoquery2.FieldByName('xlbm').asstring)<>2 then
    begin
        lbltishi.caption:='小类编码要输入2个字符';
        abort;
    end;
    adoquery2.FieldByName('dlbm').asstring:=adoquery1.FieldByName('dlbm').asstring;
    adoquery2.FieldByName('lb').asstring:='小类';
end;

procedure Tfm_spbmlb.adoquery1BeforePost(DataSet: TDataSet);
begin
    if length(adoquery1.FieldByName('dlbm').asstring)<>1 then
    begin
        lbltishi.caption:='大类编码要输入1个字符';
        abort;
    end;
    adoquery1.FieldByName('lb').asstring:='大类';
end;

procedure Tfm_spbmlb.FormCreate(Sender: TObject);
begin
    adoquery1.Active:=true;
    adoquery2.active:=true;
end;

end.

⌨️ 快捷键说明

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