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

📄 editghs1.pas

📁 思微POS连锁超市管理系统 (商业代码),几年前的东西了
💻 PAS
字号:
unit editghs1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  dxExEdtr, dxEdLib, dxDBELib, wwSpeedButton, wwDBNavigator, ExtCtrls,
  wwclearpanel, dxEditor, dxCntner, ImgList, Db, StdCtrls, ADODB;

type
  Teditghs = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    DataSource1: TDataSource;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label16: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    ImageList1: TImageList;
    Label19: TLabel;
    Label20: TLabel;
    dxDBEdit1: TdxDBEdit;
    dxDBEdit2: TdxDBEdit;
    dxDBButtonEdit1: TdxDBButtonEdit;
    dxDBEdit3: TdxDBEdit;
    dxDBEdit4: TdxDBEdit;
    dxDBEdit5: TdxDBEdit;
    dxDBEdit6: TdxDBEdit;
    dxDBEdit7: TdxDBEdit;
    wwDBNavigator1: TwwDBNavigator;
    wwDBNavigator1Insert: TwwNavButton;
    wwDBNavigator1Edit: TwwNavButton;
    wwDBNavigator1Post: TwwNavButton;
    wwDBNavigator1Cancel: TwwNavButton;
    wwDBNavigator1RestoreBookmark: TwwNavButton;
    wwDBNavigator1Button: TwwNavButton;
    dxDBCurrencyEdit1: TdxDBCurrencyEdit;
    wwDBNavigator1Button2: TwwNavButton;
    wwDBNavigator1Button3: TwwNavButton;
    wwDBNavigator1Button4: TwwNavButton;
    wwDBNavigator1Button5: TwwNavButton;
    Query1: TADOQuery;
    procedure dxDBEdit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure wwDBNavigator1ButtonClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure wwDBNavigator1PostClick(Sender: TObject);
    procedure wwDBNavigator1InsertClick(Sender: TObject);
    procedure dxDBButtonEdit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure dxDBButtonEdit1ButtonClick(Sender: TObject;
      AbsoluteIndex: Integer);
    procedure NewCode(Sender: integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  editghs: Teditghs;

implementation

uses MainForm1, xzdq1, ghsda1;

{$R *.DFM}

procedure Teditghs.dxDBEdit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if key = 13 then
  begin
    key := 0;
    perform(WM_NEXTDLGCTL, 0, 0); {移动到下一个控件}
  end;
end;

procedure Teditghs.wwDBNavigator1ButtonClick(Sender: TObject);
begin
  close;
end;

procedure Teditghs.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  ghsdawh.Table1.Cancel;
  Action := cafree;
end;

procedure Teditghs.wwDBNavigator1PostClick(Sender: TObject);
begin
  if Trim(dxDBEdit2.Text) = '' then
  begin
    Application.MessageBox('请输入供货商名称.', '提示', MB_OK + MB_ICONWARNING);
    dxDBEdit2.SetFocus;
    exit;
  end;
  if Trim(dxDBButtonEdit1.Text) = '' then
  begin
    Application.MessageBox('请输入供货商所属地区.', '提示', MB_OK + MB_ICONWARNING);
    dxDBButtonEdit1.SetFocus; ;
    exit;
  end;
  if Trim(dxDBEdit1.Text) = '' then
  begin
    NewCode(0);
  end;
  try
    ghsdawh.Table1.Edit;
    ghsdawh.Table1.Post;
  except
    Application.MessageBox('供货商代号和名称不能有重复.', '提示', MB_OK + MB_ICONWARNING);
    dxDBEdit1.SetFocus;
  end;
  dxDBEdit1.ReadOnly := true;
end;

procedure Teditghs.NewCode(Sender: integer);
var code: string;
begin
  Query1.Close;
  Query1.sql.text := 'select count(*) from ghsda';
  Query1.open;
  code := floattostr(10000 + Query1.Fields[0].asfloat + Sender);
  Query1.Close;
  Query1.sql.text := 'select count(*) from ghsda where code=:code';
  Query1.Parameters[0].Value := code;
  Query1.open;
  if Query1.Fields[0].Value > 0 then
  begin
    Sender := sender + 1;
    Newcode(sender);
  end
  else
  begin
    ghsdawh.Table1.FieldByName('code').value := code;
  end;
end;

procedure Teditghs.wwDBNavigator1InsertClick(Sender: TObject);
begin
  ghsdawh.Table1.Insert;
  dxDBEdit1.ReadOnly := false;
  wwDBNavigator1Insert.Enabled := false;
  wwDBNavigator1Post.Enabled := true;
end;

procedure Teditghs.dxDBButtonEdit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (key = 13) and (Shift = [ssCtrl]) then
  begin
    Application.CreateForm(Txzdq, xzdq);
    xzdq.Table1.close;
    xzdq.Table1.open;
    xzdq.dxDBTreeList1.FullExpand;
    xzdq.Table1.Locate('dqname', ghsdawh.Table1.fieldbyname('dq').asstring, [loPartialKey]);
    if xzdq.ShowModal = 1 then
    begin
      ghsdawh.Table1.Edit;
      ghsdawh.Table1.fieldbyname('dq').asstring := xzdq.Table1.fieldbyname('dqname').asstring;
    end;
  end;
  if key = 13 then perform(WM_NEXTDLGCTL, 0, 0); {移动到下一个控件}
end;

procedure Teditghs.dxDBButtonEdit1ButtonClick(Sender: TObject;
  AbsoluteIndex: Integer);
begin
  Application.CreateForm(Txzdq, xzdq);
  xzdq.Table1.close;
  xzdq.Table1.open;
  xzdq.dxDBTreeList1.FullExpand;
  xzdq.Table1.Locate('dqname', ghsdawh.Table1.fieldbyname('dq').asstring, [loPartialKey]);
  if xzdq.ShowModal = 1 then
  begin
    ghsdawh.Table1.Edit;
    ghsdawh.Table1.fieldbyname('dq').asstring := xzdq.Table1.fieldbyname('dqname').asstring;
  end;

end;

end.

⌨️ 快捷键说明

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