📄 outstorefind.~pas
字号:
unit outstorefind;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, StdCtrls, ComCtrls, DB, ADODB, DBClient,product_unit,
operator_unit,list_unit, Buttons, ExtCtrls;
type
Toutstorefindfrm = class(TForm)
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
GroupBox3: TGroupBox;
GroupBox4: TGroupBox;
GroupBox5: TGroupBox;
list_codelb: TLabel;
Label2: TLabel;
Label3: TLabel;
pro_codelb: TLabel;
operator_idlb: TLabel;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
DBGrid1: TDBGrid;
outstorefind_ds1: TDataSource;
outstorefind_cds1: TClientDataSet;
BitBtn1: TBitBtn;
list_code_btn: TBitBtn;
list_date_btn: TBitBtn;
pro_code_btn: TBitBtn;
operator_id_btn: TBitBtn;
pro_codeed: TComboBox;
operator_ided: TComboBox;
Label1: TLabel;
list_codeed: TComboBox;
procedure list_code_btnClick(Sender: TObject);
procedure list_date_btnClick(Sender: TObject);
procedure pro_code_btnClick(Sender: TObject);
procedure operator_id_btnClick(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure list_code_btnMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure list_code_btnMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure list_date_btnMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure list_date_btnMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure pro_code_btnMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure pro_code_btnMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure operator_id_btnMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure operator_id_btnMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
list:Tlist;
operator:Toperator;
product:Tproduct;
datestr:string;
{ Private declarations }
public
{ Public declarations }
end;
var
outstorefindfrm: Toutstorefindfrm;
implementation
uses main;
{$R *.dfm}
procedure Toutstorefindfrm.list_code_btnClick(Sender: TObject);
var
sql:string;
begin
list:=Tlist.create ;
if list_codeed.Text='' then
begin
showmessage('出库单编号不能为空!');
exit;
end;
if copy(list_codeed.Text,1,1)<>'O' then
begin
showmessage('出库单编号首部为O,请更改!');
exit;
end;
if length(list_codeed.Text)<>15 then
begin
showmessage('对不起,出库单编号位数不对!');
exit;
end;
if list.ListRec(list_codeed.Text)=false then
begin
showmessage('该出库单编号不存在!');
exit;
end;
sql:='select list_code as 出库单编号,operator_id as 操作员代号,'
+'list_date as 出库日期,pro_code as 出库物品编码,pro_num as 出库物品数量,'
+'unit as 物品单位,place_code as 物品库位代号'
+' from list_info where list_code='''+list_codeed.Text+'''';
outstorefind_cds1.Data:=list.Lists(sql) ;
list_codeed.Text :='';
list.Free;
end;
procedure Toutstorefindfrm.list_date_btnClick(Sender: TObject);
var
tt1,tt2,sql:string;
begin
list:=Tlist.create ;
if datetimepicker1.Date>datetimepicker2.Date then
begin
showmessage('对不起,前后时间矛盾,请核查!');
exit;
end;
tt1:=datetostr(datetimepicker1.Date);
tt2:=datetostr(datetimepicker2.Date);
sql:='select list_code as 出库单编号,operator_id as 操作员代号,'
+'list_date as 出库日期,pro_code as 出库物品编码,pro_num as 出库物品数量,'
+'unit as 物品单位,place_code as 物品库位代号'
+' from list_info where list_code like ''O%'' and '
+'list_date between '''+tt1+''' and '''+tt2+''' ';
if list.ListsFind(sql)=false then
begin
showmessage('该段时间没有出库信息!');
exit;
end;
outstorefind_cds1.Data :=list.Lists(sql) ;
list_codeed.Text :='';
list.Free;
end;
procedure Toutstorefindfrm.pro_code_btnClick(Sender: TObject);
var
sql:string;
begin
list:=Tlist.create ;
product:=Tproduct.create ;
if pro_codeed.Text ='' then
begin
showmessage('请输入物品编码!');
exit;
end;
if product.CheckProRec(pro_codeed.Text)=false then
begin
showmessage('该物品编码为非法编码!');
exit;
end;
sql:='select list_code as 出库单编号,operator_id as 操作员代号,'
+'list_date as 出库日期,pro_code as 出库物品编码,pro_num as 出库物品数量,'
+'unit as 物品单位,place_code as 物品库位代号'
+' from list_info where list_code like ''O%'' and '
+'pro_code='''+pro_codeed.Text+''' ';
if list.ListsFind(sql)=false then
begin
showmessage('有关该物品的出库信息不存在!');
exit;
end;
outstorefind_cds1.Data :=list.Lists(sql) ;
pro_codeed.Text :='';
list.Free;
product.Free;
end;
procedure Toutstorefindfrm.operator_id_btnClick(Sender: TObject);
var
sql:string;
begin
list:=Tlist.create ;
operator:=Toperator.create ;
if operator_ided.Text ='' then
begin
showmessage('请输入操作员ID号进行查询!');
exit;
end;
if operator.OperatorRec(operator_ided.Text)=false then
begin
showmessage('该操作员ID为非法ID!');
exit;
end;
sql:='select list_code as 出库单编号,operator_id as 操作员代号,'
+'list_date as 出库日期,pro_code as 出库物品编码,pro_num as 出库物品数量,'
+'unit as 物品单位,place_code as 物品库位代号'
+' from list_info where list_code like ''O%'' and '
+'operator_id='''+operator_ided.Text+''' ';
if list.ListsFind(sql)=false then
begin
showmessage('该操作员经手的出库信息不存在!');
exit;
end;
outstorefind_cds1.Data :=list.Lists(sql);
operator_ided.Text :='';
list.Free;
operator.Free;
end;
procedure Toutstorefindfrm.BitBtn1Click(Sender: TObject);
begin
mainfrm.show;
outstorefindfrm.Close ;
end;
procedure Toutstorefindfrm.FormActivate(Sender: TObject);
begin
product:=Tproduct.create;
operator:=Toperator.create ;
list:=tlist.create ;
pro_codeed.Items:=product.GetProIdList();
operator_ided.Items:=operator.GetIdList();
list_codeed.Items :=list.GetlistIdList ();
end;
procedure Toutstorefindfrm.FormShow(Sender: TObject);
begin
DateTimePicker1.DateTime :=date;
DateTimePicker2.DateTime :=date;
end;
procedure Toutstorefindfrm.FormCreate(Sender: TObject);
begin
shortdateformat:='YYYY-MM-DD';
longdateformat:= 'YYYY-MM-DD';
dateseparator:='-';
datestr:=datetostr(date);
end;
procedure Toutstorefindfrm.list_code_btnMouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
TBitBtn(Sender).Font.Color := clblue;
end;
procedure Toutstorefindfrm.list_code_btnMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
TBitBtn(Sender).Font.Color := clRed;
end;
procedure Toutstorefindfrm.list_date_btnMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
TBitBtn(Sender).Font.Color := clRed;
end;
procedure Toutstorefindfrm.list_date_btnMouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
TBitBtn(Sender).Font.Color := clblue;
end;
procedure Toutstorefindfrm.pro_code_btnMouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
TBitBtn(Sender).Font.Color := clblue;
end;
procedure Toutstorefindfrm.pro_code_btnMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
TBitBtn(Sender).Font.Color := clRed;
end;
procedure Toutstorefindfrm.operator_id_btnMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
TBitBtn(Sender).Font.Color := clRed;
end;
procedure Toutstorefindfrm.operator_id_btnMouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
TBitBtn(Sender).Font.Color := clblue;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -