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

📄 warehouseinsearch_unit.pas

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

interface

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

type
  TfrmWarehouseInSearch = class(TForm)
    GroupBox1: TGroupBox;
    Label2: TLabel;
    Label3: TLabel;
    CloseBtn: TBitBtn;
    DtpBegin: TDateTimePicker;
    DtpEnd: TDateTimePicker;
    FindBtn: TBitBtn;
    CB1: TCheckBox;
    EdtSupplier: TEdit;
    StatusBar1: TStatusBar;
    Panel1: TPanel;
    dbgWearInSearch: TDBGrid;
    printBtn: TBitBtn;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure EdtSupplierKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure FindBtnClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure CloseBtnClick(Sender: TObject);
    procedure DtpEndKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure DtpBeginKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure CB1Click(Sender: TObject);
    procedure DtpBeginChange(Sender: TObject);
    procedure printBtnClick(Sender: TObject);

  private
    ACoulmnName,ACoulmnID,ACode,AName:string;
    SumMoney:string;
  public
    { Public declarations }
  end;

var
  frmWarehouseInSearch: TfrmWarehouseInSearch;

implementation

uses SpellInputUnit, DM_Unit, WarehouseInPrint;

{$R *.dfm}



procedure TfrmWarehouseInSearch.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  DM.sdsWarehouseInSearch.Close;
  Action:=caFree;
  frmWarehouseInSearch:=nil;
end;

procedure TfrmWarehouseInSearch.EdtSupplierKeyDown(Sender: TObject;
  var Key: Word; Shift: TShiftState);
begin
  if key=VK_SPACE then
  begin
    frmSpellInput.showFormData('WMS_Vendor','VendorName','VendorSpell',ACode,AName);
    EdtSupplier.Text:=AName;
    EdtSupplier.SetFocus;
  end;
end;

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

  if (CB1.Checked) and (EdtSupplier.Text='') then
  begin
     Application.MessageBox('请输入供应商!','信息',MB_OK+MB_ICONINFORMATION);
     EdtSupplier.SetFocus;
     abort;
  end;
  if EdtSupplier.Text='' then Vendor:='';

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

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

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

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

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

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

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

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

end.

⌨️ 快捷键说明

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