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

📄 querymemberunit.pas

📁 Delphi 编写的"会员销售管理系统",源码全,数据库全,未经测试,请有兴趣的朋友自己测试!
💻 PAS
字号:
unit querymemberunit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, ExtCtrls, DBCtrls, DB, ADODB, Grids, DBGrids;

type
  Tfrm_querymember = class(TForm)
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    memberid: TEdit;
    membername: TEdit;
    Label10: TLabel;
    sex: TComboBox;
    folk: TComboBox;
    GroupBox2: TGroupBox;
    qbirthday: TDateTimePicker;
    Label11: TLabel;
    zbirthday: TDateTimePicker;
    GroupBox3: TGroupBox;
    Label12: TLabel;
    qtime: TDateTimePicker;
    ztime: TDateTimePicker;
    edulevel: TComboBox;
    address: TEdit;
    tel: TEdit;
    profession: TComboBox;
    jb: TComboBox;
    b_query: TButton;
    b_clear: TButton;
    GroupBox4: TGroupBox;
    DBNavigator1: TDBNavigator;
    GroupBox5: TGroupBox;
    b_modify: TButton;
    b_del: TButton;
    GroupBox6: TGroupBox;
    GroupBox7: TGroupBox;
    inc: TRadioButton;
    desc: TRadioButton;
    id: TRadioButton;
    name: TRadioButton;
    hyjb: TRadioButton;
    jointime: TRadioButton;
    DBGrid1: TDBGrid;
    q_member: TADOQuery;
    ds_q_member: TDataSource;
    delquery: TADOQuery;
    procedure b_clearClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure b_queryClick(Sender: TObject);
    procedure b_modifyClick(Sender: TObject);
    procedure DBGrid1DblClick(Sender: TObject);
    procedure incClick(Sender: TObject);
    procedure descClick(Sender: TObject);
    procedure idClick(Sender: TObject);
    procedure nameClick(Sender: TObject);
    procedure hyjbClick(Sender: TObject);
    procedure jointimeClick(Sender: TObject);
  private
    { Private declarations }
    she,yhe:string;
  public
    { Public declarations }
   end;

var
  frm_querymember: Tfrm_querymember;

implementation
  uses datamoduleunit, changememberunit;
{$R *.dfm}
procedure Tfrm_querymember.b_clearClick(Sender: TObject);
begin
memberid.Clear;
membername.Clear;
address.Clear;
tel.Clear;
qbirthday.Date:=strtodate('1953-6-27');
zbirthday.Date:=now;
qtime.Date:=strtodate('1953-6-27');
ztime.Date:=now;
folk.Text:='';
sex.Text:='';
profession.Text:='';
edulevel.Text:='';
jb.Text:='';
q_member.Close;
q_member.SQL.Clear;
q_member.SQL.Add('select * from member');
she:='';
yhe:='';
q_member.Open;

end;

procedure Tfrm_querymember.FormShow(Sender: TObject);
begin
frm_querymember.b_clearClick(nil);
//q_member.Open;
//frm_querymember.b_queryClick(nil);
end;

procedure Tfrm_querymember.b_queryClick(Sender: TObject);
var s:string;
 i:integer;
 low,high:integer;
begin
s:='select * from member';
i:=0;
if memberid.Text<>'' then
 begin
   s:=s+' where 会员编号='+memberid.text;
   i:=i+1;
 end;
if membername.Text<>'' then
 begin
   if i=0 then
     s:=s+' where 会员姓名='''+membername.Text+''''
    else
     s:=s+' and 会员姓名='''+membername.Text+'''';
  i:=i+1;
  end;
if sex.Text<>'' then
begin
  if i=0 then
   s:=s+' where 性别='''+sex.Text+''''
  else
   s:=s+' and 性别='''+sex.Text+'''';
  i:=i+1;
 end;
if folk.Text<>'' then
  begin
  if i=0 then
   s:=s+' where 民族='''+folk.Text+''''
  else
   s:=s+' and 民族='''+folk.Text+'''';
  i:=i+1;
 end;
if profession.Text<>'' then
  begin
  if i=0 then
   s:=s+' where 职业='''+profession.Text+''''
  else
   s:=s+' and 职业='''+profession.Text+'''';
  i:=i+1;
 end;
if i=0 then  s:=s+' where ' else   s:=s+' and';
   s:=s+' 生日>='''+datetostr(qbirthday.Date)+'''';
   s:=s+' and 生日<='''+datetostr(zbirthday.Date)+'''';
   s:=s+' and 入会时间>='''+datetostr(qtime.Date)+'''';
   s:=s+' and 入会时间<='''+datetostr(ztime.Date)+'''';
   i:=i+1;
if edulevel.Text<>'' then
  begin
  if i=0 then
   s:=s+' where 学历='''+edulevel.Text+''''
  else
   s:=s+' and 学历='''+edulevel.Text+'''';
  i:=i+1;
 end;
if jb.Text<>'' then
  begin
  if i=0 then
   s:=s+' where 级别='''+jb.Text+''''
  else
   s:=s+' and 级别='''+jb.Text+'''';
  i:=i+1;
 end;
if tel.Text<>'' then
  begin
  if i=0 then
   s:=s+' where 电话='''+tel.Text+''''
  else
   s:=s+' and 电话='''+tel.Text+'''';
  i:=i+1;
 end;
if address.Text<>'' then
  begin
  if i=0 then
   s:=s+' where 地址='''+address.Text+''''
  else
   s:=s+' and 地址='''+address.Text+'''';
  i:=i+1;
 end;
she:=s;       //目的是害怕累积查询语句;   
yhe:=s;
q_member.Close;
q_member.SQL.Clear;
q_member.SQL.Add(s);
try
  q_member.Open;
 except
  q_member.ExecSQL;
 end;
end;

procedure Tfrm_querymember.b_modifyClick(Sender: TObject);
begin
frm_changemember:=tfrm_changemember.Create(self);
 if sender=b_del
  then frm_changemember.b_modify.Visible:=false
  else frm_changemember.b_del.Visible:=false;
frm_changemember.ShowModal;
 frm_changemember.Destroy;
end;

procedure Tfrm_querymember.DBGrid1DblClick(Sender: TObject);
begin
if b_modify.Enabled=false then exit;
frm_querymember.b_modifyClick(nil);
end;

procedure Tfrm_querymember.incClick(Sender: TObject);
var col:string;
begin
 if she='' then begin
  she:='select * from member';             //chax为操作查询出来后的sql语句;
  yhe:=she;
 end;
 if id.Checked then col:='会员编号'
  else if name.Checked then col:='会员姓名'
    else if hyjb.Checked then col:='级别'
     else col:='入会时间';
 she:=she+' order by '+col+' asc';
 q_member.Close;
 q_member.SQL.Clear;
 q_member.SQL.Add(she);
 try
  q_member.Open;
  except
  q_member.ExecSQL;
 end;
   she:=yhe;
end;

procedure Tfrm_querymember.descClick(Sender: TObject);
var col:string;
begin
 if she='' then begin
 she:='select * from member';
 yhe:='select * from member';
 end;
 if id.Checked then col:='会员编号'
  else if name.Checked then col:='会员姓名'
    else if hyjb.Checked then col:='级别'
     else col:='入会时间';

 she:=she+' order by '+col+' desc';
 q_member.Close;
 q_member.SQL.Clear;
 q_member.SQL.Add(she);
 try
  q_member.Open;
  except
  q_member.ExecSQL;
 end;
   she:=yhe;

end;

procedure Tfrm_querymember.idClick(Sender: TObject);
var s:string;
  x:string;
begin
 if inc.Checked then s:=' asc' else  s:=' desc';
   if she='' then
    begin
     she:='select * from member';
     yhe:='select * from member';
    end;
 x:=she+' order by 会员编号'+s;
 q_member.Close;
 q_member.SQL.Clear;
 q_member.SQL.Add(x);
 try
  q_member.Open;
 except
  q_member.ExecSQL;
 end;
 she:=yhe;

end;

procedure Tfrm_querymember.nameClick(Sender: TObject);
var s:string;
  x:string;
begin
 if inc.Checked then s:=' asc' else  s:=' desc';
   if she='' then begin
    she:='select * from member';
    yhe:='select * from member';
   end;
 x:=she+' order by 会员姓名'+s;
 q_member.Close;
 q_member.SQL.Clear;
 q_member.SQL.Add(x);
 try
  q_member.Open;
 except
  q_member.ExecSQL;
 end;
 she:=yhe;

end;

procedure Tfrm_querymember.hyjbClick(Sender: TObject);
var s:string;
  x:string;
begin
 if inc.Checked then s:=' asc' else  s:=' desc';
   if she='' then begin
    she:='select * from member';
    yhe:='select * from member';
   end;
 x:=she+' order by 级别'+s;
 q_member.Close;
 q_member.SQL.Clear;
 q_member.SQL.Add(x);
 try
  q_member.Open;
 except
  q_member.ExecSQL;
 end;
she:=yhe;

end;

procedure Tfrm_querymember.jointimeClick(Sender: TObject);
var s:string;
  x:string;
begin
 if inc.Checked then s:=' asc' else  s:=' desc';
   if she='' then begin
    she:='select * from member';
    yhe:='select * from member';
   end;
 x:=she+' order by 入会时间'+s;
 q_member.Close;
 q_member.SQL.Clear;
 q_member.SQL.Add(x);
 try
  q_member.Open;
 except
  q_member.ExecSQL;
 end;
 she:=yhe;

end;

end.

⌨️ 快捷键说明

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