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

📄 unit2.pas

📁 利用Acess数据库
💻 PAS
字号:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  DBTables, ComCtrls,  Menus, Db, StdCtrls, Buttons, ExtCtrls, Grids,
  DBGrids, DBCtrls, Mask, CheckLst,shellapi;//, CheckLs, CheckLst;

type
  TNormal = class(TForm)
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    N7: TMenuItem;
    N8: TMenuItem;
    Query1: TQuery;
    Panel1: TPanel;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    DataSourceQry: TDataSource;
    GroupBox3: TGroupBox;
    DBGrid1: TDBGrid;
    DBMemo1: TDBMemo;
    BitBtn3: TBitBtn;
    DBNavigator1: TDBNavigator;
    Label5: TLabel;
    PageControl2: TPageControl;
    TabSheet3: TTabSheet;
    Label1: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Label3: TLabel;
    Edit3: TEdit;
    Label4: TLabel;
    ComboBox1: TComboBox;
    Label2: TLabel;
    Label6: TLabel;
    StatusBar1: TStatusBar;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    TabSheet4: TTabSheet;
    Label29: TLabel;
    Label30: TLabel;
    Label31: TLabel;
    Label32: TLabel;
    Label35: TLabel;
    Label39: TLabel;
    Label41: TLabel;
    Label42: TLabel;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit8: TEdit;
    Edit10: TEdit;
    Edit11: TEdit;
    Edit12: TEdit;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    TabSheet2: TTabSheet;
    Label7: TLabel;
    DBEdit1: TDBEdit;
    Label8: TLabel;
    DBEdit2: TDBEdit;
    Label9: TLabel;
    DBEdit3: TDBEdit;
    Label10: TLabel;
    DBEdit4: TDBEdit;
    Label11: TLabel;
    DBEdit5: TDBEdit;
    Label12: TLabel;
    DBEdit6: TDBEdit;
    Label13: TLabel;
    DBEdit7: TDBEdit;
    Label14: TLabel;
    DBMemo2: TDBMemo;
    Label15: TLabel;
    DBMemo3: TDBMemo;
    Label16: TLabel;
    DBEdit8: TDBEdit;
    Label17: TLabel;
    DBEdit9: TDBEdit;
    Label18: TLabel;
    DBEdit10: TDBEdit;
    Label19: TLabel;
    DBEdit11: TDBEdit;
    Label20: TLabel;
    DBEdit12: TDBEdit;
    Label21: TLabel;
    DBEdit13: TDBEdit;
    Label22: TLabel;
    DBEdit14: TDBEdit;
    Label23: TLabel;
    DBEdit15: TDBEdit;
    Label24: TLabel;
    DBEdit16: TDBEdit;
    Label25: TLabel;
    DBEdit17: TDBEdit;
    Label26: TLabel;
    DBEdit18: TDBEdit;
    Label27: TLabel;
    DBMemo4: TDBMemo;
    Label28: TLabel;
    DBEdit19: TDBEdit;
    Label33: TLabel;
    DBEdit20: TDBEdit;
    Label34: TLabel;
    DBEdit21: TDBEdit;
    Label36: TLabel;
    DataSourcedetail: TDataSource;
    Querydetail: TQuery;
    N9: TMenuItem;
    N10: TMenuItem;
    N11: TMenuItem;
    N12: TMenuItem;
    TabSheet5: TTabSheet;
    Label38: TLabel;
    Label40: TLabel;
    Label43: TLabel;
    Edit9: TEdit;
    Edit13: TEdit;
    Edit14: TEdit;
    BitBtn8: TBitBtn;
    BitBtn9: TBitBtn;
    BitBtn10: TBitBtn;
    N13: TMenuItem;
    N14: TMenuItem;
    N15: TMenuItem;
    N16: TMenuItem;
    GroupBox1: TGroupBox;
    Label37: TLabel;
    BitBtn6: TBitBtn;
    BitBtn7: TBitBtn;
    CheckListBox1: TCheckListBox;
    Label44: TLabel;
    DBEdit22: TDBEdit;
    Edit15: TEdit;
    Label45: TLabel;
    Label46: TLabel;
    DBEdit23: TDBEdit;
    procedure BitBtn1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure TabSheet2Show(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure N11Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure BitBtn7Click(Sender: TObject);
    procedure N9Click(Sender: TObject);
    procedure N10Click(Sender: TObject);
    procedure BitBtn8Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure BitBtn9Click(Sender: TObject);
    procedure BitBtn10Click(Sender: TObject);
    procedure N16Click(Sender: TObject);
    procedure N14Click(Sender: TObject);
    procedure N15Click(Sender: TObject);
    procedure DBEdit23DblClick(Sender: TObject);

    { Private declarations }
  public
    { Public declarations }
    checkedflag:boolean; //为了解决页面的切换问题
    display:integer;
  end;

var
  Normal: TNormal;

implementation
uses
unit1,unit6,unit3,unit4,unit5, Unit9;

{$R *.DFM}

procedure TNormal.BitBtn1Click(Sender: TObject);
begin
  if (edit2.Text='') and  (edit15.Text='') and (edit3.Text='')and (combobox1.Text='') then
  begin
    Query1.close;
    Query1.sql.clear ;
    Query1.sql.Add('select 单位名称,联系电话,地址,行业分类,产品与服务,修改日期,单位代码,优先级,联系人 from company ');
    Query1.sql.Add('where 单位名称 like :name');
    case display of
    1:query1.SQL.Add('order by  单位代码 asc');
    2:query1.SQL.Add('order by  修改日期 desc');
    3:query1.SQL.Add('order by  优先级  asc');
    end;

    if edit1.text<>'' then
    Query1.paramByName('name').asstring:='*'+edit1.Text+'*'
    else
    Query1.paramByName('name').asstring:='*';
    Query1.Open;
  end
  else
    if (edit2.Text='') and  (edit1.Text='') and  (combobox1.Text='') then
    begin
    Query1.close;
    Query1.sql.clear ;
    Query1.sql.Add('select 单位名称,联系电话,地址,行业分类,产品与服务,修改日期,单位代码,优先级 from company ');
    Query1.sql.Add('where 产品与服务 like :service1 and 产品与服务 like :service2');
    case display of
    1:query1.SQL.Add('order by  单位代码 asc');
    2:query1.SQL.Add('order by  修改日期 desc');
    3:query1.SQL.Add('order by  优先级  asc');
    end;

    if edit3.text<>'' then
    Query1.paramByName('service1').asstring:='*'+edit3.Text+'*'
    else
    Query1.paramByName('service1').asstring:='*';
    if edit15.text<>'' then
    Query1.paramByName('service2').asstring:='*'+edit15.Text+'*'
    else
    Query1.paramByName('service2').asstring:='*';

    Query1.Open;
  end
  else
    with normal.Query1 do
     begin
     close;
     sql.Clear;
     sql.Add('select 单位名称,联系电话,地址,行业分类,产品与服务,修改日期,单位代码,优先级,联系人 from company ');
     sql.Add('where 单位名称 like :name And 地址 like :address  ');
     sql.Add('and 产品与服务 like :service1 and 产品与服务 like :service2');
     sql.Add('and 行业分类 like :industry ');
     case display of
    1:query1.SQL.Add('order by  单位代码 asc');
    2:query1.SQL.Add('order by  修改日期 desc');
    3:query1.SQL.Add('order by  优先级  asc');
    end;


     if edit1.text<>'' then
     paramByName('name').asstring:='*'+edit1.Text+'*'
     else
     paramByName('name').asstring:='*';
     if edit2.Text<>'' then
     paramByName('address').asstring:='*'+edit2.Text+'*'
     else
     paramByName('address').asstring:='*';
     if edit3.Text<>'' then
     paramByName('service1').asstring:='*'+edit3.Text+'*'
     else
     paramByName('service1').asstring:='*';
     if edit15.Text<>'' then
     paramByName('service2').asstring:='*'+edit15.Text+'*'
     else
     paramByName('service2').asstring:='*';
     if combobox1.Text<> '' then
     paramByName('industry').asstring:='*'+combobox1.Text+'*'
     else
     paramByName('industry').asstring:='*';
     open;
     end;
  label6.Caption:='共返回'+inttostr(query1.RecordCount)+'条查询记录';
  normal.DBGrid1.Columns[0].Fieldname:=normal.Query1.Fields[0].FieldName;
  normal.DBGrid1.Columns[1].FieldName:=normal.Query1.Fields[1].FieldName;
  normal.DBGrid1.Columns[2].FieldName:=normal.Query1.Fields[2].FieldName;
  normal.DBGrid1.Columns[3].FieldName:=normal.Query1.Fields[3].FieldName;
  normal.DBMemo1.DataField:=normal.Query1.Fields[4].FieldName;
  {normal.DBGrid1.Columns[0].Width:=250;
  normal.DBGrid1.Columns[1].Width:=100;
  normal.DBGrid1.Columns[2].Width:=200;
  normal.DBGrid1.Columns[3].Width:=64;}
  normal.checkedflag:=true;//
  end;

procedure TNormal.FormCreate(Sender: TObject);
begin
  //normal.Table1.Active:=true;
  //table1.ReadOnly:=true;
 // TABLE1.Open;
  display:=3;
  normal.DBMemo1.Clear;
  edit1.Text:='';
  edit2.Text:='';
  edit3.Text:='';
  combobox1.Text:='';
  normal.TabSheet1.show;
  normal.TabSheet3.Show;
  normal.checkedflag:=false; //?????
end;

procedure TNormal.BitBtn5Click(Sender: TObject);
begin
   with normal.Query1 do
     begin
     close;
     sql.Clear;
     sql.Add('select 单位名称,联系电话,地址,行业分类,产品与服务,联系人  from company ');
     sql.Add('where  单位名称 like :name  And 联系人 like :lxr');
     sql.Add('and 联系电话 like :phone');
     sql.Add('and 法人代表 like :Fax and 网址 like :Web');
     sql.Add('and  所属行政区 like :area');
     sql.Add('and  关键词 like :keyword and 产品与服务 like :account');
     if edit4.text<>'' then
     paramByName('name').asstring:='*'+edit4.Text+'*'  //邮编:)
     else
     paramByName('name').asstring:='*';
     if edit5.Text<>'' then
     paramByName('lxr').asstring:='*'+edit5.Text+'*'
     else

     paramByName('lxr').asstring:='*';
     if edit6.Text<>'' then
     paramByName('phone').asstring:='*'+edit6.Text+'*'
     else
     paramByName('phone').asstring:='*';
     if edit7.Text<> '' then
     paramByName('Fax').asstring:='*'+edit7.Text+'*'
     else
     paramByName('Fax').asstring:='*';
     if edit8.Text<> '' then
     paramByName('Web').asstring:='*'+edit8.Text+'*'
     else
     paramByName('Web').asstring:='*';
     if edit10.Text<> '' then
     paramByName('area').asstring:='*'+edit10.Text+'*'
     else
     paramByName('area').asstring:='*';
     if edit11.Text<> '' then
     paramByName('keyword').asstring:='*'+edit11.Text+'*'
     else
     paramByName('keyword').asstring:='*';
     if edit12.Text<> '' then
     paramByName('account').asstring:='*'+edit12.Text+'*'
     else
     paramByName('account').asstring:='*';
     open;
     end;
    label6.Caption:='共返回'+inttostr(query1.RecordCount)+'条查询记录';
    normal.DBGrid1.Columns[0].Fieldname:=normal.Query1.Fields[0].FieldName;
    normal.DBGrid1.Columns[1].FieldName:=normal.Query1.Fields[1].FieldName;
    normal.DBGrid1.Columns[2].FieldName:=normal.Query1.Fields[2].FieldName;
    normal.DBGrid1.Columns[3].FieldName:=normal.Query1.Fields[3].FieldName;
    normal.DBMemo1.DataField:=normal.Query1.Fields[4].FieldName;
    normal.DBGrid1.Columns[0].Width:=250;
    normal.DBGrid1.Columns[1].Width:=100;
    normal.DBGrid1.Columns[2].Width:=200;
    normal.DBGrid1.Columns[3].Width:=64;
    checkedflag:=true;

end;
procedure TNormal.BitBtn2Click(Sender: TObject);
begin
  edit15.text:='';
  edit1.Text:='';
  edit2.Text:='';
  edit3.Text:='';
  combobox1.Text:='';
  MessageBox(Normal.Handle , '找不到指定的文件。是否继续?' , '警告',MB_YESNO+MB_ICONWARNING+MB_DEFBUTTON2+MB_SYSTEMMODAL);
 // if  not checkedflag then showmessage('请先做浏览查询');
end;

procedure TNormal.BitBtn4Click(Sender: TObject);
begin
  edit4.Text:='';
  edit5.Text:='';
  edit6.Text:='';
  edit7.Text:='';
  edit8.Text:='';
  edit10.Text:='';
  edit11.Text:='';
  edit12.Text:='';

end;

procedure TNormal.TabSheet2Show(Sender: TObject);
begin
 if not checkedflag  then
  begin
  // normal.TabSheet1.show;
   showmessage('请先做浏览查询');
  // normal.TabSheet1.Show;
  end
 else if query1.RecordCount=0 then
  begin
   // normal.TabSheet1.show;
   showmessage('零记录无法查询');
   // normal.TabSheet1.show;
  end
 else
   with normal.Querydetail do
   begin
    close;
    sql.Clear;
    sql.Add('select * from company  where 单位名称=:namedtl');
    parambyname('namedtl').asstring:=query1.Fields[0].AsString;
    open;
   end;
end;

procedure TNormal.BitBtn3Click(Sender: TObject);
begin
  normal.TabSheet2.Show;
end;

procedure TNormal.N3Click(Sender: TObject);
begin
  login.Close;   //退出系统
end;

procedure TNormal.N11Click(Sender: TObject);
begin
  printform.quickrep1.preview;
end;

procedure TNormal.BitBtn6Click(Sender: TObject);
begin
  printform.QRDBText1.DataField:=query1.Fields[0].FieldName;
  printform.QRDBText2.DataField:=query1.Fields[1].FieldName;
  printform.QRDBText3.DataField:=query1.Fields[2].FieldName;
 // printform.QRDBText4.DataField:=query1.Fields[3].FieldName;
  printform.QRDBRichText5.DataField:=query1.Fields[4].FieldName;
  printform.QuickRep1.Print;
end;

procedure TNormal.BitBtn7Click(Sender: TObject);
begin
  Normal.N11Click(sender);
end;

procedure TNormal.N9Click(Sender: TObject);
begin
   inputform.Show;
end;

procedure TNormal.N10Click(Sender: TObject);
begin
  superform.Show;
end;

procedure TNormal.BitBtn8Click(Sender: TObject);
begin
  bus.show;
end;

procedure TNormal.N2Click(Sender: TObject);
begin
  inputform.close;
  superform.Close;
  normal.Close;
  login.Show;

end;

procedure TNormal.BitBtn9Click(Sender: TObject);
begin
if normal.Querydetail.CanModify=true then
   begin
   normal.Querydetail.Edit;
   dbedit19.Text:=datetimetostr(now);
   dbedit20.text:=login.logname;
   normal.Querydetail.Post;
   normal.Query1.Refresh;
   showmessage('修改完毕!');
   end;
end;

procedure TNormal.BitBtn10Click(Sender: TObject);
begin
  if messageDlg ('确定要删除吗?',mtconfirmation,[mbyes,mbno],0)=mryes then
   begin
   if normal.Querydetail.CanModify=true  then
   begin
   normal.Querydetail.Edit;
   normal.Querydetail.Delete;
   showmessage('删除完毕!');
   end;
   end;
end;

procedure TNormal.N16Click(Sender: TObject);
begin
  display:=1;
  normal.N16.Checked:=true;
end;

procedure TNormal.N14Click(Sender: TObject);
begin
  display:=2;
   normal.N14.Checked:=true;
end;

procedure TNormal.N15Click(Sender: TObject);
begin
  display:=3;
 normal.N15.Checked:=true;
end;

procedure TNormal.DBEdit23DblClick(Sender: TObject);
begin
ShellExecute(Application.Handle, 'Open',Pchar('mailto:'+Dbedit23.Text),'', '', SW_SHOW);
end;

end.

⌨️ 快捷键说明

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