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

📄 unit1.pas

📁 是分布式粮库程序,是采用Delphi实现的
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit Unit1;

interface

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

Const
  editINSERT = 1;
  editUPDATE = 2;

type
  Tfrmsetup = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    TabSheet4: TTabSheet;
    TabSheet5: TTabSheet;
    TabSheet6: TTabSheet;
    btnnew: TBitBtn;
    btndelete: TBitBtn;
    btnmodify: TBitBtn;
    btnabandon: TBitBtn;
    edtinput: TEdit;
    btnapply: TBitBtn;
    Panel1: TPanel;
    Label1: TLabel;
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    btnexit: TBitBtn;
    DataSource2: TDataSource;
    DataSource4: TDataSource;
    DataSource5: TDataSource;
    DataSource6: TDataSource;
    DBGrid2: TDBGrid;
    DBGrid4: TDBGrid;
    DBGrid5: TDBGrid;
    DBGrid6: TDBGrid;
    Table1: TTable;
    Table2: TTable;
    Table4: TTable;
    Table5: TTable;
    Table6: TTable;
    qrycommon: TQuery;
    procedure btnapplyClick(Sender: TObject);
    procedure edtinputkeypress(Sender: TObject; var Key: Char);
    procedure edtinputChange(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure dealapply;
    procedure btnnewClick(Sender: TObject);
    procedure btndeleteClick(Sender: TObject);
 //   procedure btnokClick(Sender: TObject);
    procedure btnabandonClick(Sender: TObject);
    procedure PageControl1Change(Sender: TObject);
    procedure btnexitClick(Sender: TObject);
    procedure btnmodifyClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    OptionModified : boolean;
    ApplyOK : boolean;
    editMode : integer;
    LastKey : integer;
  end;

var
  frmsetup: Tfrmsetup;

implementation
   uses unitdatamodul;
{$R *.dfm}


procedure Tfrmsetup.btnapplyClick(Sender: TObject);
begin
// 有改动,处理变更
  if OptionModified then
    DealApply;
  // 处理是否成功
  if OptionModified then
  begin
    edtInput.SelectAll;
    edtInput.SetFocus;
  end
  else
  begin
    edtInput.Text :='';
    edtInput.Enabled :=False;
    edtInput.Color :=clBtnFace;
    btnNew.Enabled :=True;
    btnDelete.Enabled :=True;
    btnModify.Enabled :=True;
    PageControl1.Enabled :=True;   
  end; 
end;

procedure Tfrmsetup.edtinputkeypress(Sender: TObject; var Key: Char);
begin
LastKey := Ord(Key);
  if Key=#13 then
  begin
    btnApplyClick(Sender);
  end;
end;

procedure Tfrmsetup.edtinputChange(Sender: TObject);
begin
  if length(edtInput.text)=0 then
        btnApply.Enabled := False
  else
        btnApply.Enabled := true;

  if LastKey=13 then
    OptionModified :=False
  else
    OptionModified :=True;
end;

procedure Tfrmsetup.FormCreate(Sender: TObject);
begin
  OptionModified :=False;
  table1.Open;
  table2.Open;
  table4.Open;
  table5.Open;
  table6.Open;
end;

procedure TfrmSetup.DealApply;
var s: string;
begin
  if OptionModified then
  begin
    case PageControl1.ActivePageIndex of
      0: begin    // 结算方式
           if editMode = editINSERT then
           begin  // 新建记录
             s := 'select settlement from ENT_SETTLEMENT where SETTLEMENT='''+trim(edtInput.Text)+'''';
             qryCommon.SQL.Clear;
             qryCommon.SQL.Add(s);
             qryCommon.Open;
             if qryCommon.IsEmpty then
             begin
               s :='insert ENT_SETTLEMENT Values('''+trim(edtInput.Text)+''','''','''')';
               qryCommon.SQL.Clear;
               qryCommon.SQL.Add(s);
               try
                 qryCommon.ExecSQL;
               except
                 Application.MessageBox('保存结算方式时出错!','系统错误',MB_OK+MB_ICONERROR);
                 Exit;
               end;
               OptionModified :=False;
             end
             else
             begin
               Application.MessageBox('该结算方式已经存在!','系统错误',MB_OK+MB_ICONERROR);
               Exit;
             end;
           end
           else
           begin  // 修改记录
             s :='update ENT_SETTLEMENT set SETTLEMENT='''+trim(edtInput.Text)+''' where SETTLEMENT='''+table1.fieldbyname('SETTLEMENT').AsString+'''';
             qryCommon.SQL.Clear;
             qryCommon.SQL.Add(s);
             try
               qryCommon.ExecSQL;
             except
               Application.MessageBox('修改结算方式时出错!','系统错误',MB_OK+MB_ICONERROR);
               Exit;
             end;
             OptionModified := False;
           end;
           //ADOQuery1.Refresh;
           table1.Close;
           table1.Open;
         end;
     1: begin    // 业务性质
           if editMode = editINSERT then
           begin  // 新建记录
             s := 'select * from ENT_BUSINESS_TYPE where BUSINES_STYPE='''+trim(edtInput.Text)+'''';
             qryCommon.SQL.Clear;
             qryCommon.SQL.Add(s);
             qryCommon.Open;
             if qryCommon.IsEmpty then
             begin
               s :='insert ENT_BUSINESS_TYPE Values('''+trim(edtInput.Text)+''','''','''')';
               qryCommon.SQL.Clear;
               qryCommon.SQL.Add(s);
               try
                 qryCommon.ExecSQL;
               except
                 Application.MessageBox('保存业务性质时出错!','系统错误',MB_OK+MB_ICONERROR);
                 Exit;
               end;
               OptionModified :=False;
             end
             else
             begin
               Application.MessageBox('该业务性质已经存在!','系统错误',MB_OK+MB_ICONERROR);
               Exit;
             end;
           end
           else
           begin  // 修改记录
             s :='update ENT_BUSINESS_TYPE set BUSINES_STYPE='''+trim(edtInput.Text)+''' where BUSINES_STYPE='''+table2.FieldByName('BUSINES_STYPE').AsString+'''';
             qryCommon.SQL.Clear;
             qryCommon.SQL.Add(s);
             try
               qryCommon.ExecSQL;
             except
               Application.MessageBox('修改业务性质时出错!','系统错误',MB_OK+MB_ICONERROR);
               Exit;
             end;
             OptionModified := False;
           end;
           table2.close;
           table2.Open;
         end;

{      2: begin    // 粮油品种
           if editMode = editINSERT then
           begin  // 新建记录
             s := 'select * from ENT_FOOD_TYPE where FOOD_TYPE='''+trim(edtInput.Text)+'''';
             qryCommon.SQL.Clear;
             qryCommon.SQL.Add(s);
             qryCommon.Open;
             if qryCommon.IsEmpty then
             begin
               s :='insert ENT_FOOD_TYPE Values('''+trim(edtInput.Text)+''','''','''')';
               qryCommon.SQL.Clear;
               qryCommon.SQL.Add(s);
               try
                 qryCommon.ExecSQL;
               except
                 Application.MessageBox('保存粮油品种时出错!','系统错误',MB_OK+MB_ICONERROR);
                 Exit;
               end;
               OptionModified :=False;
             end
             else
             begin
               Application.MessageBox('该粮油品种已经存在!','系统错误',MB_OK+MB_ICONERROR);
               Exit;
             end;
           end
           else
           begin  // 修改记录
             s :='update ENT_FOOD_TYPE set FOOD_TYPE='''+trim(edtInput.Text)+''' where FOOD_TYPE='''+table3.FieldByName('FOOD_TYPE').AsString+'''';
             qryCommon.SQL.Clear;
             qryCommon.SQL.Add(s);
             try
               qryCommon.ExecSQL;
             except
               Application.MessageBox('修改粮油品种时出错!','系统错误',MB_OK+MB_ICONERROR);
               Exit;
             end;
             OptionModified := False;
           end;
           table3.close;
           table3.Open;
         end;
}
      2: begin    // 储备性质
           if editMode = editINSERT then
           begin  // 新建记录
             s := 'select * from ENT_ATTRIBUTE where ATTRIBUTE='''+trim(edtInput.Text)+'''';
             qryCommon.SQL.Clear;
             qryCommon.SQL.Add(s);
             qryCommon.Open;
             if qryCommon.IsEmpty then
             begin
               s :='insert ENT_ATTRIBUTE Values('''+trim(edtInput.Text)+''','''','''')';
               qryCommon.SQL.Clear;
               qryCommon.SQL.Add(s);
               try
                 qryCommon.ExecSQL;
               except
                 Application.MessageBox('保存储备性质时出错!','系统错误',MB_OK+MB_ICONERROR);
                 Exit;
               end;
               OptionModified :=False;
             end
             else
             begin
               Application.MessageBox('该储备性质已经存在!','系统错误',MB_OK+MB_ICONERROR);
               Exit;
             end;
           end
           else
           begin  // 修改记录
             s :='update ENT_ATTRIBUTE set ATTRIBUTE='''+trim(edtInput.Text)+''' where ATTRIBUTE='''+table4.FieldByName('ATTRIBUTE').AsString+'''';
             qryCommon.SQL.Clear;
             qryCommon.SQL.Add(s);
             try
               qryCommon.ExecSQL;
             except
               Application.MessageBox('修改储备性质时出错!','系统错误',MB_OK+MB_ICONERROR);
               Exit;
             end;
             OptionModified := False;
           end;
           table4.close;
           table4.Open;
         end;
      3: begin    // 直管属性
           if editMode = editINSERT then
           begin  // 新建记录
             s := 'select * from ENT_ATTACHMENT where ATTACHMENT='''+trim(edtInput.Text)+'''';

⌨️ 快捷键说明

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