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

📄 warehouseoutsearch_unit.pas

📁 仓库管理系统 貌似是ACCESS的数据库
💻 PAS
字号:
unit WarehouseOutSearch_Unit;

interface

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

type
  TfrmWarehouseOutSearch = class(TForm)
    GroupBox1: TGroupBox;
    Label2: TLabel;
    Label3: TLabel;
    CloseBtn: TBitBtn;
    DtpBegin: TDateTimePicker;
    DtpEnd: TDateTimePicker;
    FindBtn: TBitBtn;
    CB1: TCheckBox;
    edtCustomer: TEdit;
    StatusBar1: TStatusBar;
    Panel1: TPanel;
    dbgWareOutSearch: TDBGrid;
    printBtn: TBitBtn;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure DtpBeginChange(Sender: TObject);
    procedure DtpBeginKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DtpEndKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure CB1Click(Sender: TObject);
    procedure CloseBtnClick(Sender: TObject);
    procedure FindBtnClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure edtCustomerKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure printBtnClick(Sender: TObject);
  private
    ACoulmnName,ACoulmnID,ACode,AName:string;
    SumMoney:string;
  public
    { Public declarations }
  end;

var
  frmWarehouseOutSearch: TfrmWarehouseOutSearch;

implementation

uses SpellInputUnit, DM_Unit, WarehouseOutPrintUnit;

{$R *.dfm}

procedure TfrmWarehouseOutSearch.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  DM.sdsWarehouseOutSearch.Close;
  Action:=caFree;
  frmWarehouseOutSearch:=nil;
end;

procedure TfrmWarehouseOutSearch.DtpBeginChange(Sender: TObject);
begin
  StatusBar1.Panels[0].text:=' 请选择要查询的出库时间范围。';
end;

procedure TfrmWarehouseOutSearch.DtpBeginKeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
  if key=VK_RETURN then DtpEnd.setfocus;
end;

procedure TfrmWarehouseOutSearch.DtpEndKeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
  if key=VK_RETURN then FindBtn.setfocus;
end;

procedure TfrmWarehouseOutSearch.CB1Click(Sender: TObject);
begin
  edtCustomer.Text:='';
  DtpBeginChange(Sender);
  if CB1.Checked then
  begin
     edtCustomer.Color:=clinfobk;
     edtCustomer.SetFocus;
  end else
  begin
     edtCustomer.Color:=clbtnface;
     FindBtn.SetFocus;
  end;
end;

procedure TfrmWarehouseOutSearch.CloseBtnClick(Sender: TObject);
begin
  Close;
end;

procedure TfrmWarehouseOutSearch.FindBtnClick(Sender: TObject);
var
  Abegintime,Aendtime:string;
  Customer:string;
begin
  Abegintime:=formatdatetime('yyyy-mm-dd',DtpBegin.date);
  Aendtime:=formatdatetime('yyyy-mm-dd',DtpEnd.date);
  Customer := edtCustomer.Text;

  if (CB1.Checked) and (edtCustomer.Text='') then
  begin
     Application.MessageBox('请输入客户名称!','信息',MB_OK+MB_ICONINFORMATION);
     edtCustomer.SetFocus;
     abort;
  end;
  if edtCustomer.Text='' then Customer:='';

  DM.OfferWarehouseOutInfo(AbeginTime,AEndtime,SumMoney,SumMoney);
  if DM.sdsWarehouseOutSearch.RecordCount>0 then
  begin
    dbgWareOutSearch.DataSource:=DM.dsWarehouseOutSearch;
    StatusBar1.Panels[0].text:=' 自 '+Abegintime+' 至 '+Aendtime+' 共出库 '+
                               inttostr(DM.sdsWarehouseOutSearch.RecordCount)+' 种物品。'+
                               '  合计金额: '+SumMoney+'元';
    DtpBegin.setfocus;
  end
  else
  begin
    StatusBar1.Panels[0].text:=' 请选择要查询的出库时间范围。';
    Application.MessageBox('没有符合条件的记录!请重新选择时间范围。','信息',MB_OK+MB_ICONINFORMATION);
    DtpBegin.SetFocus;
  end;
end;

procedure TfrmWarehouseOutSearch.FormShow(Sender: TObject);
begin
  DtpBegin.date:=now-30;
  DtpEnd.date:=now;
  DM.sdsWarehouseOutSearch.Open;
  edtCustomer.Text:='';
  CB1.Checked:=false;
  edtCustomer.Color:=clbtnface;
  DtpBegin.SetFocus;
  StatusBar1.Panels[0].text:=' 请选择要查询的出库时间范围。';
end;

procedure TfrmWarehouseOutSearch.edtCustomerKeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
  if key=VK_SPACE then
  begin
    frmSpellInput.showFormData('WMS_Customer','CustomerName','CustomerSpell',ACode,AName);
    edtCustomer.Text:=AName;
    edtCustomer.SetFocus;
  end;
end;

procedure TfrmWarehouseOutSearch.printBtnClick(Sender: TObject);
var
    WarehouseOutQRP:TWarehouseOutQRP;
begin
  WarehouseOutQRP:=TWarehouseOutQRP.Create(Application);
  WarehouseOutQRP.dataset:=DM.sdsWarehouseOutSearch;
  with  WarehouseOutQRP do
  begin
    QRLOperator.caption:=DM.OperatorName;
    //QRLInNo.caption:=trim(EdtBillNo.text);
    QRDB1.dataset := DM.sdsWarehouseOutSearch;
    QRDB1.datafield:='INVOICENO';
    QRDB2.dataset:=DM.sdsWarehouseOutSearch;
    QRDB2.datafield:='VENDORDEPT';
    QRDB3.dataset:=DM.sdsWarehouseOutSearch;
    QRDB3.datafield:='MATERIALNAME';
    QRDB4.dataset:=DM.sdsWarehouseOutSearch;
    QRDB4.datafield:='MaterialType';
    QRDB5.dataset:=DM.sdsWarehouseOutSearch;
    QRDB5.DataField:='INRECEIVEDATE';
    QRDB6.dataset:=DM.sdsWarehouseOutSearch;
    QRDB6.datafield:='MaterialModel';
    QRDB7.dataset:=DM.sdsWarehouseOutSearch;
    QRDB7.datafield:='MaterialSpecs';
    QRDB8.dataset:=DM.sdsWarehouseOutSearch;
    QRDB8.datafield:='MaterialUnit';
    QRDB9.dataset:=DM.sdsWarehouseOutSearch;
    QRDB9.DataField:='MaterialNum';
    QRDB10.DataSet:=DM.sdsWarehouseOutSearch;
    QRDB10.datafield:='MaterialPrice';
    QRDB11.dataset:=DM.sdsWarehouseOutSearch;
    QRDB11.datafield:='MaterialMoney';
    QRDB12.dataset:=DM.sdsWarehouseOutSearch;
    QRDB12.datafield:='Remark';
    QRLabel2.Caption:=SumMoney;
  end;
  WarehouseOutQRP.Preview;
  WarehouseOutQRP.Free;
end;

end.

⌨️ 快捷键说明

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