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

📄 editemgrup.pas

📁 this is sample for traders
💻 PAS
字号:
unit edItemGrup;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, Buttons, StdCtrls, Grids, DBGrids, JvExDBGrids,
  JvDBGrid, JvDBUltimGrid, DB, ZAbstractRODataset, ZDataset, ImgList,
  Menus, ComCtrls, JvExControls, JvComponent, JvStaticText, Mask, DBCtrls;

type
  TedItemGrupForm = class(TForm)
    GroupBox2: TGroupBox;
    btnAdd: TSpeedButton;
    edFind: TEdit;
    JvStaticText2: TJvStaticText;
    GroupBox4: TGroupBox;
    GrupItemGrid: TJvDBUltimGrid;
    dsItemgrup: TDataSource;
    PopupMenu1: TPopupMenu;
    EditName: TMenuItem;
    DBEdit1: TDBEdit;
    Memo1: TMemo;
    procedure btnAddClick(Sender: TObject);
    procedure edFindChange(Sender: TObject);
    procedure EditNameClick(Sender: TObject);
    procedure DBEdit1Exit(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure GrupItemGridKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
  private
  public
  end;

var
  edItemGrupForm: TedItemGrupForm;

implementation

{$R *.dfm}

uses DataMod, Funclib;

{ TedItemGrupForm }

procedure TedItemGrupForm.btnAddClick(Sender: TObject);
var
  Fdb: TZQuery;
begin
  Fdb := TZQuery.Create(nil); Fdb.Connection := DM.dtaCon; Fdb.Close;
  Fdb.Sql.Text := 'SELECT MAX(GRUPCODE)+1 AS LASTCODE FROM ITEM_GRUP ';
  try
    Fdb.Open;
    DM.qItemGrup.AppendRecord([Fdb.FieldValues['LASTCODE'],EdFind.Text]);
  except
    on E : Exception do raise Exception.Create(E.Message);
  end;
  RefreshRec(DM.qItemGrup);
  edFind.Clear;
end;

procedure TedItemGrupForm.edFindChange(Sender: TObject);
begin
  with DM.qItemGrup do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT * FROM ITEM_GRUP WHERE GRUPNAME LIKE:nFind ORDER BY GRUPNAME ASC ');
    ParamByName('nFind').AsString:=Edfind.Text+'%';
    Open;
    if Recordcount = 0 then BtnAdd.Enabled := True else BtnAdd.Enabled := False;
  end;
end;

procedure TedItemGrupForm.EditNameClick(Sender: TObject);
begin
  if dsItemGrup.DataSet.FieldByName('GRUPCODE').Value<>0 then
  GrupItemGrid.Columns[1].ReadOnly:=False;
end;

procedure TedItemGrupForm.DBEdit1Exit(Sender: TObject);
begin
  GrupItemGrid.Columns[1].ReadOnly:=True;
end;

procedure TedItemGrupForm.FormCreate(Sender: TObject);
var
  sqltext: String;
begin
  QueryPerformanceFrequency(Frequency);
  QueryPerformanceCounter(start);
  with DM.qItemgrup do
  begin
    DisableControls;
    Close;
    SQL.Clear;
        sqltext:=('SELECT GRUPCODE,GRUPNAME ')+
                 ('FROM ITEM_GRUP ')+
                 ('ORDER BY GRUPCODE, GRUPNAME ASC ');
    SQL.Add(sqltext);
    Open;
    EnableControls;
  end;
  QueryPerformanceCounter(stop);
end;

procedure TedItemGrupForm.GrupItemGridKeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
  if (Shift = [ssCtrl]) and (Key = VK_DELETE) then Key := 0;
end;

end.

⌨️ 快捷键说明

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