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

📄 untquery.pas

📁 数据库实习个人作品
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit untQuery;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, OleServer, Excel2000, StdCtrls, ExtCtrls, Grids,
  DBGrids, DB, Buttons, ADODB, DBClient, DBTables;

type
  TfrmQuery = class(TForm)
    pgcQuery: TPageControl;
    pgcQryCust: TTabSheet;
    pgcQryStock: TTabSheet;
    pgcQryInStock: TTabSheet;
    pgcQryOutStock: TTabSheet;
    gbCustInfo: TGroupBox;
    gbQryCust: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    edtCode: TEdit;
    Label3: TLabel;
    edtCustName: TEdit;
    Bevel1: TBevel;
    Label4: TLabel;
    rdoSexMale: TRadioButton;
    rdoSexFemale: TRadioButton;
    Label5: TLabel;
    edtZip: TEdit;
    Label6: TLabel;
    edtAddress: TEdit;
    grdQryCust: TDBGrid;
    Label7: TLabel;
    cbBeginYear0: TComboBox;
    Label8: TLabel;
    cbBeginMonth0: TComboBox;
    Label9: TLabel;
    cbBeginDay0: TComboBox;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    cbEndDay0: TComboBox;
    Label13: TLabel;
    cbEndMonth0: TComboBox;
    Label14: TLabel;
    cbEndYear0: TComboBox;
    gbGoodsStock: TGroupBox;
    Label15: TLabel;
    Label16: TLabel;
    edtStockGoodsName: TEdit;
    gbQryStock: TGroupBox;
    grdQryStock: TDBGrid;
    gbGoodsInStock: TGroupBox;
    Label17: TLabel;
    Label18: TLabel;
    edtInStockGoodsName: TEdit;
    Label19: TLabel;
    cbBeginYear2: TComboBox;
    Label20: TLabel;
    cbBeginMonth2: TComboBox;
    Label21: TLabel;
    cbBeginDay2: TComboBox;
    Label22: TLabel;
    Label23: TLabel;
    cbEndYear2: TComboBox;
    Label24: TLabel;
    cbEndMonth2: TComboBox;
    Label25: TLabel;
    cbEndDay2: TComboBox;
    Label26: TLabel;
    gbQryInStock: TGroupBox;
    grdQryInStock: TDBGrid;
    gbGoodsOutStock: TGroupBox;
    Label27: TLabel;
    Label28: TLabel;
    edtOutStockGoodsName: TEdit;
    Label29: TLabel;
    cbBeginYear3: TComboBox;
    Label30: TLabel;
    cbBeginMonth3: TComboBox;
    Label31: TLabel;
    cbBeginDay3: TComboBox;
    Label32: TLabel;
    Label33: TLabel;
    cbEndYear3: TComboBox;
    Label34: TLabel;
    cbEndMonth3: TComboBox;
    Label35: TLabel;
    cbEndDay3: TComboBox;
    Label36: TLabel;
    gbQryOutStock: TGroupBox;
    grdQryOutStock: TDBGrid;
    btnClose0: TButton;
    btnClose1: TButton;
    btnClose2: TButton;
    btnClose3: TButton;
    Label37: TLabel;
    edtTel: TEdit;
    btnUpdateCust: TButton;
    ShowDate0: TLabel;
    ShowDate1: TLabel;
    ShowDate2: TLabel;
    ShowDate3: TLabel;
    Bevel2: TBevel;
    cbGoodsCode1: TComboBox;
    Label38: TLabel;
    edtUnit: TEdit;
    Label39: TLabel;
    edtPrice: TEdit;
    Label40: TLabel;
    edtSafeStock: TEdit;
    Label41: TLabel;
    edtQtyBuyMin: TEdit;
    btnUpdateGoods: TButton;
    cbCustID: TComboBox;
    Label42: TLabel;
    Label43: TLabel;
    Label44: TLabel;
    cbGoodsCode2: TComboBox;
    cbGoodsCode3: TComboBox;
    Label45: TLabel;
    labTotalStock: TLabel;
    Label46: TLabel;
    labShowSum1: TLabel;
    Label48: TLabel;
    Label50: TLabel;
    labTotalInStock: TLabel;
    Label52: TLabel;
    labShowSum2: TLabel;
    Label54: TLabel;
    labTotalOutStock: TLabel;
    Label56: TLabel;
    labShowSum3: TLabel;
    btnQry3: TBitBtn;
    btnQry2: TBitBtn;
    btnQry0: TBitBtn;
    souQryGrd: TDataSource;
    qryFromGrd: TADOQuery;
    labShowSum0: TLabel;
    Label47: TLabel;
    procedure btnClose_Click(Sender: TObject);
    procedure cbCustIDChange(Sender: TObject);
    procedure btnUpdateCustClick(Sender: TObject);
    procedure btnQry0Click(Sender: TObject);
    procedure cbGoodsCode1Change(Sender: TObject);
    procedure btnUpdateGoodsClick(Sender: TObject);
    procedure cbGoodsCode2Change(Sender: TObject);
    procedure btnQry2Click(Sender: TObject);
    procedure cbGoodsCode3Change(Sender: TObject);
    procedure btnQry3Click(Sender: TObject);
  private
    procedure QryCustInfo(CustID: string;BeginDate: string;EndDate: string);
    { Private declarations }
  public
    function Execute(QryStr: string):boolean;
    { Public declarations }
  end;

var
  frmQuery: TfrmQuery;

implementation

uses untGoodsOrderDat;

{$R *.dfm}

function TfrmQuery.Execute(QryStr: string):boolean;
var
  i : Integer;      //  循环计数器
  dateStr : string; //  日期字符串
begin
  // 初始化顾客查询选项卡
  edtCode.Text := '';
  edtCustName.Text := '';
  edtTel.Text := '';
  edtZip.Text := '';
  edtAddress.Text := '';
  rdoSexMale.Checked := true;
  //  初始化库存查询选项卡
  edtUnit.Text := '';
  edtPrice.Text := '';
  edtSafeStock.Text := '';
  edtQtyBuyMin.Text := '';
  edtStockGoodsName.Text := '';
  //  初始化入库查询选项卡
  edtInStockGoodsName.Text := '';
  //  初始化出库查询选项卡
  edtOutStockGoodsName.Text := '';
  //  初始化系统日期显示
  dateStr := FormatDateTime('YYYY年MM月DD日',now);
  ShowDate0.Caption := ShowDate0.Caption + dateStr;
  ShowDate1.Caption := ShowDate1.Caption + dateStr;
  ShowDate2.Caption := ShowDate2.Caption + dateStr;
  ShowDate3.Caption := ShowDate3.Caption + dateStr;
  //  初始化所有下拉列表框
  with datGoodsOrder do
  begin //  初始化顾客号和商品号列表
    //  打开商品表和顾客表
    qryGoods.SQL.Text := 'SELECT GoodsCode FROM Goods';
    qryGoods.Open;
    qryCustomer.SQL.Text := 'SELECT CustID FROM Customer';
    qryCustomer.Open;
    //  初始化商品编号列表框和顾客编号列表框
    qryGoods.First;
    while not qryGoods.Eof do
    begin
      cbGoodsCode1.Items.Add(qryGoods.FieldByName('GoodsCode').AsString);
      cbGoodsCode2.Items.Add(qryGoods.FieldByName('GoodsCode').AsString);
      cbGoodsCode3.Items.Add(qryGoods.FieldByName('GoodsCode').AsString);
      qryGoods.Next;
    end;
    qryGoods.Close;
    qryCustomer.First;
    while not qryCustomer.Eof do
    begin
      cbCustID.Items.Add(qryCustomer.FieldByName('CustID').AsString);
      qryCustomer.Next;
    end;
    qryCustomer.Close;
  end;
  for i := 2000 to 2100 do
  begin   //  初始化年     注:月份和日期直接在控件属性里面设置
    cbBeginYear0.Items.Add(IntToStr(i));
    cbBeginYear2.Items.Add(IntToStr(i));
    cbBeginYear3.Items.Add(IntToStr(i));
    cbEndYear0.Items.Add(IntToStr(i));
    cbEndYear2.Items.Add(IntToStr(i));
    cbEndYear3.Items.Add(IntToStr(i));
  end;

  //  选择要显示的选项卡
  if 'Cust'=QryStr then
    pgcQuery.ActivePage := pgcQryCust //注意:如果后面跟else,这里不能有";"
  else if 'Stock'=QryStr then
    pgcQuery.ActivePage := pgcQryStock
  else if 'InStock'=QryStr then
    pgcQuery.ActivePage := pgcQryInStock
  else
    pgcQuery.ActivePage := pgcQryOutStock;  //结束语句必须有";"

  //  显示窗体,并返回函数结果
  Result := ShowModal = mrOK;
end;

procedure TfrmQuery.btnClose_Click(Sender: TObject);
begin
  Close;
end;

////////////////////////////////////////////////////////////////////////////////
//  顾客查询选项卡

procedure TfrmQuery.cbCustIDChange(Sender: TObject);
begin
  with datGoodsOrder do
  begin
    qryCustomer.SQL.Text := 'SELECT * FROM Customer WHERE CustID=' + Trim(cbCustID.Text);
    qryCustomer.Open;

    edtCode.Text := qryCustomer.FieldByName('Code').AsString;
    edtCustName.Text := qryCustomer.FieldByName('CustName').AsString;
    edtAddress.Text := qryCustomer.FieldByName('Address').AsString;
    edtZip.Text := qryCustomer.FieldByName('Zip').AsString;
    edtTel.Text := qryCustomer.FieldByName('Tel').AsString;

⌨️ 快捷键说明

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